$this->message) ); if (!empty($_REQUEST['callback'])) { $message = $_REQUEST['callback'] . "(" . $message . ");"; } echo($message); exit; } elseif ((Debugger::isActive() || defined('DEVELOPMENT') || defined('CONSOLE'))) { echo($this->printDebug(defined('CONSOLE'))); } else { $debug = ""; Development::showStub(array( '[title]' => 'Service unavailable', '[banner]' => 'Service
unavailable', '[message]' => 'Sorry, service is temporarily unavailable.' ), $debug); } } /** * Prints out debug information * @param boolean $plain_text output as plain text */ protected function printDebug($plain_text = false) { $file = str_replace(DIR_ROOT . '/', '', $this->file); $trace = <<< EOU

Message

{$this->message}

Error at

{$file}, line: {$this->line}

Backtrace

EOU; $i = 0; if ($backtrace = $this->getTrace()) { $func = ''; foreach ($backtrace as $v) { if (empty($v['file'])) { $func = $v['function']; continue; } elseif (!empty($func)) { $v['function'] = $func; $func = ''; } $i = ($i == 0) ? 1 : 0; $color = ($i == 0) ? "#CCCCCC" : "#EEEEEE"; if (strpos($v['file'], DIR_ROOT) !== false) { $v['file'] = str_replace(DIR_ROOT . '/', '', $v['file']); } $trace .= "\n"; $trace .= "\n"; $trace .= "\n\n"; } } $trace .= '
File:$v[file]
Line:$v[line]
Function:$v[function]
'; if ($plain_text) { $trace = strip_tags($trace); } return $trace; } }