forked from SimplesIP/pabx-app
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.3 KiB
44 lines
1.3 KiB
<?php |
|
|
|
/** |
|
* Smarty Method GetRegisteredObject |
|
* |
|
* Smarty::getRegisteredObject() method |
|
* |
|
* @package Smarty |
|
* @subpackage PluginsInternal |
|
* @author Uwe Tews |
|
*/ |
|
class Smarty_Internal_Method_GetRegisteredObject |
|
{ |
|
/** |
|
* Valid for Smarty and template object |
|
* |
|
* @var int |
|
*/ |
|
public $objMap = 3; |
|
|
|
/** |
|
* return a reference to a registered object |
|
* |
|
* @api Smarty::getRegisteredObject() |
|
* @link https://www.smarty.net/docs/en/api.get.registered.object.tpl |
|
* |
|
* @param \Smarty_Internal_TemplateBase|\Smarty_Internal_Template|\Smarty $obj |
|
* @param string $object_name object name |
|
* |
|
* @return object |
|
* @throws \SmartyException if no such object is found |
|
*/ |
|
public function getRegisteredObject(Smarty_Internal_TemplateBase $obj, $object_name) |
|
{ |
|
$smarty = $obj->_getSmartyObj(); |
|
if (!isset($smarty->registered_objects[ $object_name ])) { |
|
throw new SmartyException("'$object_name' is not a registered object"); |
|
} |
|
if (!is_object($smarty->registered_objects[ $object_name ][ 0 ])) { |
|
throw new SmartyException("registered '$object_name' is not an object"); |
|
} |
|
return $smarty->registered_objects[ $object_name ][ 0 ]; |
|
} |
|
}
|
|
|