35 lines
1.0 KiB
PHP
35 lines
1.0 KiB
PHP
|
<?php defined('SYSPATH') or die('No direct access allowed.');
|
||
|
|
||
|
/**
|
||
|
* This class provides a custom 501 Exception to catch OSB specific errors.
|
||
|
*
|
||
|
* @package OSB
|
||
|
* @category Exceptions
|
||
|
* @author Deon George
|
||
|
* @copyright (c) 2009-2013 Open Source Billing
|
||
|
* @license http://dev.osbill.net/license.html
|
||
|
*/
|
||
|
class HTTP_Exception_501 extends Kohana_HTTP_Exception {
|
||
|
protected $_code = 501;
|
||
|
|
||
|
public function __construct($message='',array $variables=NULL,$code=0) {
|
||
|
parent::__construct($message,$variables,$code);
|
||
|
|
||
|
$response = Response::factory();
|
||
|
$response->status($this->_code);
|
||
|
|
||
|
// @todo This is not working as cleanly as I would like - ie: we shouldnt need to publish the headers ourselves?
|
||
|
header(':', true, 501);
|
||
|
|
||
|
if (Kohana::$config->load('debug')->show_errors)
|
||
|
$response->body(View::factory('errors/501')->set('message',$this->getMessage())->render());
|
||
|
else
|
||
|
$response->body('Dang, something went wrong, tell us how we got here...');
|
||
|
|
||
|
echo $response->render();
|
||
|
|
||
|
exit (501);
|
||
|
}
|
||
|
}
|
||
|
?>
|