<?php 
/** 
 * Smarty plugin 
 * @package Smarty 
 * @subpackage plugins 
 */ 
 
/** 
 * called for included php files within templates 
 * 
 * @param string $smarty_file 
 * @param string $smarty_assign variable to assign the included template's 
 *               output into 
 * @param boolean $smarty_once uses include_once if this is true 
 * @param array $smarty_include_vars associative array of vars from 
 *              {include file="blah" var=$var} 
 */ 
 
//  $file, $assign, $once, $_smarty_include_vars 
 
function smarty_core_smarty_include_php($params, &$smarty) 
{ 
    $_params = array('resource_name' => $params['smarty_file']); 
    require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); 
    smarty_core_get_php_resource($_params, $smarty); 
    $_smarty_resource_type = $_params['resource_type']; 
    $_smarty_php_resource = $_params['php_resource']; 
 
    if (!empty($params['smarty_assign'])) { 
        ob_start(); 
        if ($_smarty_resource_type == 'file') { 
            $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); 
        } else { 
            $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); 
        } 
        $smarty->assign($params['smarty_assign'], ob_get_contents()); 
        ob_end_clean(); 
    } else { 
        if ($_smarty_resource_type == 'file') { 
            $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); 
        } else { 
            $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); 
        } 
    } 
} 
 
 
/* vim: set expandtab: */ 
 
?> 
 
 |