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.
45 lines
1.3 KiB
45 lines
1.3 KiB
2 years ago
|
<?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 ];
|
||
|
}
|
||
|
}
|