| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | <?php | 
					
						
							|  |  |  | /** | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |  * Smarty Internal Plugin Data | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |  * This file contains the basic classes and methods for template and variable creation | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |  * @package    Smarty | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * @subpackage Template | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |  * @author     Uwe Tews | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |  */ | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | /** | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |  * Base class with template and variable methods | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |  * @package    Smarty | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * @subpackage Template | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2016-09-11 04:35:52 +02:00
										 |  |  |  * @property int    $scope | 
					
						
							|  |  |  |  * @property Smarty $smarty | 
					
						
							| 
									
										
										
										
											2015-12-27 07:18:35 +01:00
										 |  |  |  * The following methods will be dynamically loaded by the extension handler when they are called. | 
					
						
							|  |  |  |  * They are located in a corresponding Smarty_Internal_Method_xxxx class | 
					
						
							|  |  |  |  * | 
					
						
							| 
									
										
										
										
											2017-10-26 10:25:41 +02:00
										 |  |  |  * @method mixed _getConfigVariable(string $varName, bool $errorEnable = true) | 
					
						
							| 
									
										
										
										
											2016-09-08 22:28:06 +02:00
										 |  |  |  * @method mixed getConfigVariable(string $varName, bool $errorEnable = true) | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |  * @method mixed getConfigVars(string $varName = null, bool $searchParents = true) | 
					
						
							| 
									
										
										
										
											2015-12-27 07:18:35 +01:00
										 |  |  |  * @method mixed getGlobal(string $varName = null) | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |  * @method mixed getStreamVariable(string $variable) | 
					
						
							|  |  |  |  * @method Smarty_Internal_Data clearAssign(mixed $tpl_var) | 
					
						
							|  |  |  |  * @method Smarty_Internal_Data clearAllAssign() | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |  * @method Smarty_Internal_Data clearConfig(string $varName = null) | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |  * @method Smarty_Internal_Data configLoad(string $config_file, mixed $sections = null, string $scope = 'local') | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |  */ | 
					
						
							| 
									
										
										
										
											2017-11-06 01:02:56 +01:00
										 |  |  | abstract class Smarty_Internal_Data | 
					
						
							| 
									
										
										
										
											2013-07-14 22:15:45 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * This object type (Smarty = 1, template = 2, data = 4) | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var int | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public $_objType = 4; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * name of class used for templates | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @var string | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2009-09-29 22:58:54 +00:00
										 |  |  |     public $template_class = 'Smarty_Internal_Template'; | 
					
						
							| 
									
										
										
										
											2015-07-12 07:03:55 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * template variables | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |      * @var Smarty_Variable[] | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |      */ | 
					
						
							|  |  |  |     public $tpl_vars = array(); | 
					
						
							| 
									
										
										
										
											2015-07-12 07:03:55 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * parent template (if any) | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2017-11-06 01:02:56 +01:00
										 |  |  |      * @var Smarty|Smarty_Internal_Template|Smarty_Data | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |      */ | 
					
						
							|  |  |  |     public $parent = null; | 
					
						
							| 
									
										
										
										
											2015-07-12 07:03:55 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * configuration settings | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |      * @var string[] | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |      */ | 
					
						
							|  |  |  |     public $config_vars = array(); | 
					
						
							| 
									
										
										
										
											2009-08-18 16:53:33 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * extension handler | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @var Smarty_Internal_Extension_Handler | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public $ext = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Smarty_Internal_Data constructor. | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * Install extension handler | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |     public function __construct() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         $this->ext = new Smarty_Internal_Extension_Handler(); | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |         $this->ext->objType = $this->_objType; | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      * assigns a Smarty variable | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * @param  array|string $tpl_var the template variable name(s) | 
					
						
							|  |  |  |      * @param  mixed        $value   the value to assign | 
					
						
							|  |  |  |      * @param  boolean      $nocache if true any output of this variable will be not cached | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-07-12 07:03:55 +02:00
										 |  |  |      * @return Smarty_Internal_Data current Smarty_Internal_Data (or Smarty or Smarty_Internal_Template) instance for | 
					
						
							|  |  |  |      *                              chaining | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2010-11-11 21:34:36 +00:00
										 |  |  |     public function assign($tpl_var, $value = null, $nocache = false) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							|  |  |  |         if (is_array($tpl_var)) { | 
					
						
							|  |  |  |             foreach ($tpl_var as $_key => $_val) { | 
					
						
							| 
									
										
										
										
											2016-02-19 09:44:07 +01:00
										 |  |  |                 $this->assign($_key, $_val, $nocache); | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |             } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |         } else { | 
					
						
							| 
									
										
										
										
											2017-11-06 01:02:56 +01:00
										 |  |  |             if ($tpl_var !== '') { | 
					
						
							| 
									
										
										
										
											2016-09-11 04:35:52 +02:00
										 |  |  |                 if ($this->_objType === 2) { | 
					
						
							| 
									
										
										
										
											2016-02-09 23:27:07 +01:00
										 |  |  |                     /** @var  Smarty_Internal_Template $this */ | 
					
						
							|  |  |  |                     $this->_assignInScope($tpl_var, $value, $nocache); | 
					
						
							|  |  |  |                 } else { | 
					
						
							|  |  |  |                     $this->tpl_vars[ $tpl_var ] = new Smarty_Variable($value, $nocache); | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |                 } | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |             } | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2011-09-27 12:36:50 +00:00
										 |  |  |         return $this; | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * appends values to template variables | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @api  Smarty::append() | 
					
						
							|  |  |  |      * @link http://www.smarty.net/docs/en/api.append.tpl | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @param  array|string $tpl_var                                           the template variable name(s) | 
					
						
							|  |  |  |      * @param  mixed        $value                                             the value to append | 
					
						
							|  |  |  |      * @param  bool         $merge                                             flag if array elements shall be merged | 
					
						
							|  |  |  |      * @param  bool         $nocache                                           if true any output of this variable will | 
					
						
							|  |  |  |      *                                                                         be not cached | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return \Smarty_Internal_Data|\Smarty_Internal_Template|\Smarty | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |     public function append($tpl_var, $value = null, $merge = false, $nocache = false) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |         return $this->ext->append->append($this, $tpl_var, $value, $merge, $nocache); | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * assigns a global Smarty variable | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @param  string  $varName the global variable name | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @param  mixed   $value   the value to assign | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * @param  boolean $nocache if true any output of this variable will be not cached | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @return \Smarty_Internal_Data|\Smarty_Internal_Template|\Smarty | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |     public function assignGlobal($varName, $value = null, $nocache = false) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |         return $this->ext->assignGlobal->assignGlobal($this, $varName, $value, $nocache); | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2009-04-12 22:26:02 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      * appends values to template variables by reference | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * @param  string  $tpl_var the template variable name | 
					
						
							|  |  |  |      * @param  mixed   &$value  the referenced value to append | 
					
						
							|  |  |  |      * @param  boolean $merge   flag if array elements shall be merged | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @return \Smarty_Internal_Data|\Smarty_Internal_Template|\Smarty | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2010-02-06 22:11:10 +00:00
										 |  |  |     public function appendByRef($tpl_var, &$value, $merge = false) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |         return $this->ext->appendByRef->appendByRef($this, $tpl_var, $value, $merge); | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-08 17:31:15 +00:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * assigns values to template variables by reference | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @param string   $tpl_var the template variable name | 
					
						
							|  |  |  |      * @param          $value | 
					
						
							|  |  |  |      * @param  boolean $nocache if true any output of this variable will be not cached | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @return \Smarty_Internal_Data|\Smarty_Internal_Template|\Smarty | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |     public function assignByRef($tpl_var, &$value, $nocache = false) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |         return $this->ext->assignByRef->assignByRef($this, $tpl_var, $value, $nocache); | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |     } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * Returns a single or all template variables | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @api  Smarty::getTemplateVars() | 
					
						
							|  |  |  |      * @link http://www.smarty.net/docs/en/api.get.template.vars.tpl | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |      * @param  string                                                 $varName       variable name or null | 
					
						
							|  |  |  |      * @param \Smarty_Internal_Data|\Smarty_Internal_Template|\Smarty $_ptr          optional pointer to data object | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |      * @param  bool                                                   $searchParents include parent templates? | 
					
						
							| 
									
										
										
										
											2014-06-06 02:40:04 +00:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @return mixed variable value or or array of variables | 
					
						
							| 
									
										
										
										
											2010-06-18 15:10:35 +00:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |     public function getTemplateVars($varName = null, Smarty_Internal_Data $_ptr = null, $searchParents = true) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |         return $this->ext->getTemplateVars->getTemplateVars($this, $varName, $_ptr, $searchParents); | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-12-15 08:54:21 +01:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * gets the object of a Smarty variable | 
					
						
							|  |  |  |      * | 
					
						
							| 
									
										
										
										
											2016-02-09 01:27:15 +01:00
										 |  |  |      * @param  string               $variable      the name of the Smarty variable | 
					
						
							|  |  |  |      * @param  Smarty_Internal_Data $_ptr          optional pointer to data object | 
					
						
							|  |  |  |      * @param  boolean              $searchParents search also in parent data | 
					
						
							|  |  |  |      * @param bool                  $error_enable | 
					
						
							| 
									
										
										
										
											2015-12-15 08:54:21 +01:00
										 |  |  |      * | 
					
						
							|  |  |  |      * @return Smarty_Variable|Smarty_Undefined_Variable the object of the variable | 
					
						
							|  |  |  |      * @deprecated since 3.1.28 please use Smarty_Internal_Data::getTemplateVars() instead. | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2016-02-09 01:27:15 +01:00
										 |  |  |     public function getVariable($variable = null, Smarty_Internal_Data $_ptr = null, $searchParents = true, | 
					
						
							|  |  |  |                                 $error_enable = true) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-12-15 08:54:21 +01:00
										 |  |  |         return $this->ext->getTemplateVars->_getVariable($this, $variable, $_ptr, $searchParents, $error_enable); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2016-02-09 01:27:15 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-10-24 22:43:19 +02:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Follow the parent chain an merge template and config variables | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @param \Smarty_Internal_Data|null $data | 
					
						
							|  |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |     public function _mergeVars(Smarty_Internal_Data $data = null) | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 22:43:19 +02:00
										 |  |  |         if (isset($data)) { | 
					
						
							|  |  |  |             if (!empty($this->tpl_vars)) { | 
					
						
							|  |  |  |                 $data->tpl_vars = array_merge($this->tpl_vars, $data->tpl_vars); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             if (!empty($this->config_vars)) { | 
					
						
							|  |  |  |                 $data->config_vars = array_merge($this->config_vars, $data->config_vars); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |             $data = $this; | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2015-10-29 22:17:35 +01:00
										 |  |  |         if (isset($this->parent)) { | 
					
						
							| 
									
										
										
										
											2015-10-24 22:43:19 +02:00
										 |  |  |             $this->parent->_mergeVars($data); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-09-11 04:35:52 +02:00
										 |  |  |     /** | 
					
						
							|  |  |  |      * Return true if this instance is a Data obj | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return bool | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function _isDataObj() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         return $this->_objType === 4; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Return true if this instance is a template obj | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return bool | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function _isTplObj() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         return $this->_objType === 2; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Return true if this instance is a Smarty obj | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return bool | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function _isSmartyObj() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         return $this->_objType === 1; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     /** | 
					
						
							|  |  |  |      * Get Smarty object | 
					
						
							|  |  |  |      * | 
					
						
							|  |  |  |      * @return Smarty | 
					
						
							|  |  |  |      */ | 
					
						
							|  |  |  |     public function _getSmartyObj() | 
					
						
							|  |  |  |     { | 
					
						
							| 
									
										
										
										
											2017-10-26 10:25:41 +02:00
										 |  |  |         return $this->smarty; | 
					
						
							| 
									
										
										
										
											2016-09-11 04:35:52 +02:00
										 |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |     /** | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * Handle unknown class methods | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @param string $name unknown method-name | 
					
						
							|  |  |  |      * @param array  $args argument array | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |      * | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |      * @return mixed | 
					
						
							|  |  |  |      * @throws SmartyException | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |      */ | 
					
						
							| 
									
										
										
										
											2015-08-17 21:52:32 +02:00
										 |  |  |     public function __call($name, $args) | 
					
						
							| 
									
										
										
										
											2015-01-02 12:11:21 +01:00
										 |  |  |     { | 
					
						
							| 
									
										
										
										
											2015-10-24 05:02:24 +02:00
										 |  |  |         return $this->ext->_callExternalMethod($this, $name, $args); | 
					
						
							| 
									
										
										
										
											2011-05-14 11:11:52 +00:00
										 |  |  |     } | 
					
						
							|  |  |  | } |