mirror of
https://github.com/Oreolek/ifhub.club.git
synced 2024-07-03 15:05:02 +03:00
fix Hook run
This commit is contained in:
parent
9dce2a45ed
commit
22874a3b8e
|
@ -34,7 +34,12 @@ class ModuleHook extends Module {
|
||||||
* )
|
* )
|
||||||
*/
|
*/
|
||||||
protected $aHooks=array();
|
protected $aHooks=array();
|
||||||
|
/**
|
||||||
|
* Hook objects
|
||||||
|
*
|
||||||
|
* @var unknown_type
|
||||||
|
*/
|
||||||
|
protected $aHooksObject=array();
|
||||||
/**
|
/**
|
||||||
* Инициализация модуля
|
* Инициализация модуля
|
||||||
*
|
*
|
||||||
|
@ -139,8 +144,14 @@ class ModuleHook extends Module {
|
||||||
$result=call_user_func_array($aHook['callback'],array(&$aVars));
|
$result=call_user_func_array($aHook['callback'],array(&$aVars));
|
||||||
break;
|
break;
|
||||||
case 'hook':
|
case 'hook':
|
||||||
if (isset($aHook['params']['sClassName']) and class_exists($aHook['params']['sClassName'])) {
|
$sHookClass=isset($aHook['params']['sClassName']) ? $aHook['params']['sClassName'] : null;
|
||||||
$oHook=new $aHook['params']['sClassName'];
|
if ($sHookClass and class_exists($sHookClass)) {
|
||||||
|
if (isset($this->aHooksObject[$sHookClass])) {
|
||||||
|
$oHook=$this->aHooksObject[$sHookClass];
|
||||||
|
} else {
|
||||||
|
$oHook=new $sHookClass;
|
||||||
|
$this->aHooksObject[$sHookClass]=$oHook;
|
||||||
|
}
|
||||||
$result=call_user_func_array(array($oHook,$aHook['callback']),array(&$aVars));
|
$result=call_user_func_array(array($oHook,$aHook['callback']),array(&$aVars));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in a new issue