Smarty 4

From TMM Wiki
Revision as of 16:46, 16 November 2022 by Anacco (talk | contribs)
Jump to navigationJump to search

These changes will be required within any implemented smarty code when upgrading to Smarty 4.

Associative array keys are not automatically assigned as variables and logic like this will no longer work with Smarty4:

$smarty->assign($condition_data);

need to replace with:

if(is_array($condition_data)) {
foreach($condition_data as $key => $value) {
			$smarty->assign($key, $value); //assign the associative array keys as variables in smarty, except periods
		}
	}


{html_radios} function works for smarty2, however it does not work too well in Smarty4. For example:
Html radios.png

NATS sets the description inside of siteinfo. This displays fine in smarty2 but it will not work too well in smarty4

All the math might not work in the template like:

{$total_profit/100|currency_format:2}


this math logic above will need to replaced with a math equation similar to this:

{math equation="a/b" a=$total_profit b=100 assign="total_profit_final"}
		{$total_profit_final|currency_format:2}


In order for some variables to work with other sub templates, you will need to assign it as a smarty variable:

{assign var="folder" value="messages" scope="smarty"}