Пример #1
0
 public function postError($pn_num, $ps_message, $ps_context, $ps_source = '')
 {
     $o_error = new ApplicationError();
     $o_error->setErrorOutput($this->error_output);
     $o_error->setError($pn_num, $ps_message, $ps_context, $ps_source);
     if (!$this->errors) {
         $this->errors = array();
     }
     array_push($this->errors, $o_error);
     if (($app = AppController::getInstance()) && ($o_request = $app->getRequest()) && defined('__CA_ENABLE_DEBUG_OUTPUT__') && __CA_ENABLE_DEBUG_OUTPUT__) {
         $va_trace = debug_backtrace();
         array_shift($va_trace);
         $vs_stacktrace = '';
         while ($va_source = array_shift($va_trace)) {
             $vs_stacktrace .= " [{$va_source['file']}:{$va_source['line']}]";
         }
         $o_notification = new NotificationManager($o_request);
         $o_notification->addNotification("[{$pn_num}] {$ps_message} ({$ps_context}" . ($ps_source ? "; {$ps_source}" : '') . $vs_stacktrace);
     }
     return true;
 }