00001 <?php
00021 function smarty_function_eval($params, &$smarty)
00022 {
00023
00024 if (!isset($params['var'])) {
00025 $smarty->trigger_error("eval: missing 'var' parameter");
00026 return;
00027 }
00028
00029 if($params['var'] == '') {
00030 return;
00031 }
00032
00033 $smarty->_compile_source('evaluated template', $params['var'], $_var_compiled);
00034
00035 ob_start();
00036 $smarty->_eval('?>' . $_var_compiled);
00037 $_contents = ob_get_contents();
00038 ob_end_clean();
00039
00040 if (!empty($params['assign'])) {
00041 $smarty->assign($params['assign'], $_contents);
00042 } else {
00043 return $_contents;
00044 }
00045 }
00046
00047
00048
00049 ?>