return call_user_func_array($function, array
($new_args,
$this));
} } // compile registered function or block function
if ($plugin_type == Smarty::PLUGIN_FUNCTION ||
$plugin_type == Smarty::PLUGIN_BLOCK
) { return $this->
callTagCompiler('private_registered_' .
$plugin_type,
$args,
$parameter,
$tag);
} } } // check plugins from plugins folder
foreach ($this->smarty->plugin_search_order
as $plugin_type) { if ($plugin_type == Smarty::PLUGIN_BLOCK &&
$this->smarty->
loadPlugin('smarty_compiler_' .
$tag) && (!
isset($this->smarty->security_policy
) ||
$this->smarty->security_policy->
isTrustedTag($tag,
$this))) { $plugin = 'smarty_compiler_' .
$tag;
if (is_callable($plugin)) { // convert arguments format for old compiler plugins
$new_args = array
();
foreach ($args as $key =>
$mixed) { if (is_array($mixed)) { $new_args =
array_merge($new_args,
$mixed);
} else { $new_args[$key] =
$mixed;
} }