fusionpbx/resources/templates/engine/smarty/plugins/modifiercompiler.default.php

33 lines
786 B
PHP
Raw Normal View History

2013-11-09 21:02:56 +01:00
<?php
/**
* Smarty plugin
*
2018-11-07 08:18:14 +01:00
* @package Smarty
2013-11-09 21:02:56 +01:00
* @subpackage PluginsModifierCompiler
*/
/**
* Smarty default modifier plugin
2018-11-07 08:18:14 +01:00
* Type: modifier
* Name: default
2013-11-09 21:02:56 +01:00
* Purpose: designate default value for empty variables
*
2023-05-08 17:50:42 +02:00
* @link https://www.smarty.net/manual/en/language.modifier.default.php default (Smarty online manual)
2013-11-09 21:02:56 +01:00
* @author Uwe Tews
2018-11-07 08:18:14 +01:00
*
2013-11-09 21:02:56 +01:00
* @param array $params parameters
2018-11-07 08:18:14 +01:00
*
2013-11-09 21:02:56 +01:00
* @return string with compiled code
*/
2018-11-07 08:18:14 +01:00
function smarty_modifiercompiler_default($params)
2013-11-09 21:02:56 +01:00
{
2018-11-07 08:18:14 +01:00
$output = $params[ 0 ];
if (!isset($params[ 1 ])) {
$params[ 1 ] = "''";
2013-11-09 21:02:56 +01:00
}
array_shift($params);
foreach ($params as $param) {
2023-05-08 17:50:42 +02:00
$output = '(($tmp = ' . $output . ' ?? null)===null||$tmp===\'\' ? ' . $param . ' ?? null : $tmp)';
2013-11-09 21:02:56 +01:00
}
return $output;
}