X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fservererroraction.php;h=c8e3067b825c7098d27a8372cd3652bcfbada196;hb=4ea396f8718648ef6b900ea2aa8a7cad9f14d721;hp=0993a63bca506149dcecddf892b6d264d4b1cd8e;hpb=fe7848e8b87b6a3f44fc8b7a58f79812d197dec2;p=quix0rs-gnu-social.git diff --git a/lib/servererroraction.php b/lib/servererroraction.php index 0993a63bca..c8e3067b82 100644 --- a/lib/servererroraction.php +++ b/lib/servererroraction.php @@ -62,22 +62,25 @@ class ServerErrorAction extends ErrorAction 504 => 'Gateway Timeout', 505 => 'HTTP Version Not Supported'); - function __construct($message='Error', $code=500) + function __construct($message='Error', $code=500, $ex=null) { parent::__construct($message, $code); $this->default = 500; // Server errors must be logged. - - common_log(LOG_ERR, "ServerErrorAction: $code $message"); + $log = "ServerErrorAction: $code $message"; + if ($ex) { + $log .= "\n" . $ex->getTraceAsString(); + } + common_log(LOG_ERR, $log); } // XXX: Should these error actions even be invokable via URI? - function handle($args) + protected function handle() { - parent::handle($args); + parent::handle(); $this->code = $this->trimmed('code'); @@ -93,4 +96,27 @@ class ServerErrorAction extends ErrorAction $this->showPage(); } + + /** + * To specify additional HTTP headers for the action + * + * @return void + */ + function extraHeaders() + { + $status_string = @self::$status[$this->code]; + header('HTTP/1.1 '.$this->code.' '.$status_string); + } + + /** + * Page title. + * + * @return page title + */ + + function title() + { + return @self::$status[$this->code]; + } + }