1 |
joko |
1.1 |
<?php |
2 |
|
|
/** |
3 |
|
|
* Smarty plugin |
4 |
|
|
* @package Smarty |
5 |
|
|
* @subpackage plugins |
6 |
|
|
*/ |
7 |
|
|
|
8 |
|
|
/** |
9 |
|
|
* called for included php files within templates |
10 |
|
|
* |
11 |
|
|
* @param string $smarty_file |
12 |
|
|
* @param string $smarty_assign variable to assign the included template's |
13 |
|
|
* output into |
14 |
|
|
* @param boolean $smarty_once uses include_once if this is true |
15 |
|
|
* @param array $smarty_include_vars associative array of vars from |
16 |
|
|
* {include file="blah" var=$var} |
17 |
|
|
*/ |
18 |
|
|
|
19 |
|
|
// $file, $assign, $once, $_smarty_include_vars |
20 |
|
|
|
21 |
|
|
function smarty_core_smarty_include_php($params, &$smarty) |
22 |
|
|
{ |
23 |
|
|
$_params = array('resource_name' => $params['smarty_file']); |
24 |
|
|
require_once(SMARTY_DIR . 'core' . DIRECTORY_SEPARATOR . 'core.get_php_resource.php'); |
25 |
|
|
smarty_core_get_php_resource($_params, $smarty); |
26 |
|
|
$_smarty_resource_type = $_params['resource_type']; |
27 |
|
|
$_smarty_php_resource = $_params['php_resource']; |
28 |
|
|
|
29 |
|
|
if (!empty($params['smarty_assign'])) { |
30 |
|
|
ob_start(); |
31 |
|
|
if ($_smarty_resource_type == 'file') { |
32 |
|
|
$smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); |
33 |
|
|
} else { |
34 |
|
|
$smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); |
35 |
|
|
} |
36 |
|
|
$smarty->assign($params['smarty_assign'], ob_get_contents()); |
37 |
|
|
ob_end_clean(); |
38 |
|
|
} else { |
39 |
|
|
if ($_smarty_resource_type == 'file') { |
40 |
|
|
$smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); |
41 |
|
|
} else { |
42 |
|
|
$smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); |
43 |
|
|
} |
44 |
|
|
} |
45 |
|
|
} |
46 |
|
|
|
47 |
|
|
|
48 |
|
|
/* vim: set expandtab: */ |
49 |
|
|
|
50 |
|
|
?> |