public function NotifyObservers($payment_status) { foreach (EVENT_HANDLER_PHACE::GetKeys() as $phace) { if (array_key_exists($phace, $this->Observers)) { foreach ($this->Observers[$phace] as $observer) { $observer->Notify($this, $payment_status); } } } }
public static function FireEvent($event_name) { try { $args = func_get_args(); array_shift($args); // First argument is event name Log::Log(sprintf('Fire %s', $event_name), E_USER_NOTICE); foreach (EVENT_HANDLER_PHACE::GetKeys() as $phace) { if (array_key_exists($phace, self::$Observers)) { foreach (self::$Observers[$phace] as $observer) { Log::Log(sprintf("Execute %s:On%s", get_class($observer), $event_name), E_USER_NOTICE); call_user_func_array(array($observer, "On{$event_name}"), $args); } } } } catch (Exception $e) { Log::Log(sprintf("Application::FireEvent thrown exception: %s, file: %s", $e->getMessage(), $e->getFile()), E_ERROR); } return; }
public function FireEvent($event_name) { if ($this->events_suspended) { return; } $args = func_get_args(); array_shift($args); // First argument is event name Log::Log(sprintf('Fire %s', $event_name), E_USER_NOTICE); foreach (EVENT_HANDLER_PHACE::GetKeys() as $phace) { if (array_key_exists($phace, self::$ClassObservers)) { foreach (self::$ClassObservers[$phace] as $observer) { Log::Log(sprintf("Execute %s:On%s", get_class($observer), $event_name), E_USER_NOTICE); call_user_func_array(array($observer, "On{$event_name}"), $args); } } } }