Actions

Theme editor - Available Twig functions: Difference between revisions

From LimeSurvey Manual

(Update page)
(13 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Php included function =
== PHP included functions ==


* [http://php.net/array-flip array_flip]
* [http://php.net/array-flip array_flip]
Line 12: Line 12:
* [http://php.net/sprintf sprintf]
* [http://php.net/sprintf sprintf]


= Specific function for LimeSurvey =
== Specific function for LimeSurvey ==


== processString ==
=== Text update and management ===


Process Expression Manager with any string with current page information, return a string.  
==== flatString ====
Get html text and remove whole not clean string.
Parameters are
* the string to flatten
* a boolean encode html entities (default to false)
 
==== ellipsizeString ====
Get a flat and ellipsize string.
Parameters are
* the string to ellipsize
* an integer max length of the final string
* a float $position of the ellipsis in string (between 0 and 1), default to 1 mean the string is ellipsize at end.
* a string ellipsis string to shown in place of removed part, default to …
 
==== processString ====
 
Process ExpressionScript with any string with current page information, return a string.  
Parameters are
Parameters are
* the string to be processed
* the string to be processed
* a boolean : return static string (or not), default to no.
* a boolean : return static string (or not), default to no.
* an integer : recursion (max) level to do, default to 3
* an integer : recursion (max) level to do, default to 3
* an array of string: replacement out of current expression know vars. The jey is the value to be replaced, the value is the replacement.
* an array of string: replacement out of current expression know vars. The key is the value to be replaced, the value is the replacement.
 
=== Language management ===


== getAllAnswers ==
==== gT ====


Return an array with all current response of the survey in parameters.
==== ngT ====
Parameters are
 
* The surveId to get response
=== Get information ===
 
==== getConfig ====
Get the current config part for this instance of LimeSurvey for the parameter. Return the existing config, false if not set.
 
=== getPost ===
Get the current $_POST value for the parameter. Return the existing $_POST, null if not set.
 
==== getQuery ====
Get the current $_GET value for the parameter. Return the existing $_GET, null if not set.
 
==== getParam ====
Get the current $_PARAM value for the parameter. Returns the existing $_PARAM, null if not set.
 
=== Script and css management ===
 
* registerPublicCssFile
* registerTemplateCssFile
* registerGeneralScript
* registerTemplateScript
* registerScript
* registerPackage
* unregisterPackage
* registerCssFile
* registerScriptFile
* unregisterScriptFile
* unregisterScriptForAjax
* listCoreScripts
* listScriptFiles
 
=== Others ===
 
==== getAllTokenAnswers ====


= Adding a function =
== Adding a function ==


You can add any PHP existing function easily in your config.php file. This is done adding the function in twigRenderer.
=== By updating config.php ===
You can add any PHP existing function easily in your config.php file. This is done by adding the function in twigRenderer.


<syntaxhighlight lang="php" enclose="pre">
<syntaxhighlight lang="php" enclose="pre">
Line 45: Line 96:
),
),
</syntaxhighlight>
</syntaxhighlight>
=== By extension ===
See [https://github.com/LimeSurvey/LimeSurvey/tree/master/upload/twig/extensions Custom Twig Extension for LimeSurvey]
[[Category:Theme]]
[[Category:Twig]]
[[Category:Development]]

Revision as of 17:12, 22 June 2021

PHP included functions

Specific function for LimeSurvey

Text update and management

flatString

Get html text and remove whole not clean string. Parameters are

  • the string to flatten
  • a boolean encode html entities (default to false)

ellipsizeString

Get a flat and ellipsize string. Parameters are

  • the string to ellipsize
  • an integer max length of the final string
  • a float $position of the ellipsis in string (between 0 and 1), default to 1 mean the string is ellipsize at end.
  • a string ellipsis string to shown in place of removed part, default to …

processString

Process ExpressionScript with any string with current page information, return a string. Parameters are

  • the string to be processed
  • a boolean : return static string (or not), default to no.
  • an integer : recursion (max) level to do, default to 3
  • an array of string: replacement out of current expression know vars. The key is the value to be replaced, the value is the replacement.

Language management

gT

ngT

Get information

getConfig

Get the current config part for this instance of LimeSurvey for the parameter. Return the existing config, false if not set.

getPost

Get the current $_POST value for the parameter. Return the existing $_POST, null if not set.

getQuery

Get the current $_GET value for the parameter. Return the existing $_GET, null if not set.

getParam

Get the current $_PARAM value for the parameter. Returns the existing $_PARAM, null if not set.

Script and css management

  • registerPublicCssFile
  • registerTemplateCssFile
  • registerGeneralScript
  • registerTemplateScript
  • registerScript
  • registerPackage
  • unregisterPackage
  • registerCssFile
  • registerScriptFile
  • unregisterScriptFile
  • unregisterScriptForAjax
  • listCoreScripts
  • listScriptFiles

Others

getAllTokenAnswers

Adding a function

By updating config.php

You can add any PHP existing function easily in your config.php file. This is done by adding the function in twigRenderer.

		'twigRenderer' => array(
			'functions' => array(
				'strlen' => 'strlen',
			),
			'sandboxConfig' => array(
				'functions' => array(
					'strlen',
				),
			),
		),

By extension

See Custom Twig Extension for LimeSurvey