1 <?php
2
3 class Kint_Objects_Smarty extends KintObject
4 {
5 public function parse( & $variable )
6 {
7 if ( !$variable instanceof Smarty
8 || !defined( 'Smarty::SMARTY_VERSION' )
9 ) return false;
10
11
12 $this->name = 'object Smarty (v' . substr( Smarty::SMARTY_VERSION, 7 ) . ')';
13
14 $assigned = $globalAssigns = array();
15 foreach ( $variable->tpl_vars as $name => $var ) {
16 $assigned[ $name ] = $var->value;
17 }
18 foreach ( Smarty::$global_tpl_vars as $name => $var ) {
19 if ( $name === 'SCRIPT_NAME' ) continue;
20
21 $globalAssigns[ $name ] = $var->value;
22 }
23
24 return array(
25 'Assigned' => $assigned,
26 'Assigned globally' => $globalAssigns,
27 'Configuration' => array(
28 'Compiled files stored in' => isset($variable->compile_dir)
29 ? $variable->compile_dir
30 : $variable->getCompileDir(),
31 )
32 );
33
34 }
35 }
36