diff options
Diffstat (limited to 'system/libraries/Kohana_404_Exception.php')
| -rw-r--r-- | system/libraries/Kohana_404_Exception.php | 56 | 
1 files changed, 56 insertions, 0 deletions
| diff --git a/system/libraries/Kohana_404_Exception.php b/system/libraries/Kohana_404_Exception.php new file mode 100644 index 00000000..8c7cc787 --- /dev/null +++ b/system/libraries/Kohana_404_Exception.php @@ -0,0 +1,56 @@ +<?php defined('SYSPATH') OR die('No direct access allowed.'); +/** + * Creates a "Page Not Found" exception. + * + * $Id: Kohana_404_Exception.php 4679 2009-11-10 01:45:52Z isaiah $ + * + * @package    Core + * @author     Kohana Team + * @copyright  (c) 2007-2009 Kohana Team + * @license    http://kohanaphp.com/license + */ + +class Kohana_404_Exception_Core extends Kohana_Exception { + +	protected $code = E_PAGE_NOT_FOUND; + +	/** +	 * Set internal properties. +	 * +	 * @param  string  URI of page +	 * @param  string  custom error template +	 */ +	public function __construct($page = NULL) +	{ +		if ($page === NULL) +		{ +			// Use the complete URI +			$page = Router::$complete_uri; +		} + +		parent::__construct('The page you requested, %page%, could not be found.', array('%page%' => $page)); +	} + +	/** +	 * Throws a new 404 exception. +	 * +	 * @throws  Kohana_404_Exception +	 * @return  void +	 */ +	public static function trigger($page = NULL) +	{ +		throw new Kohana_404_Exception($page); +	} + +	/** +	 * Sends 404 headers, to emulate server behavior. +	 * +	 * @return void +	 */ +	public function sendHeaders() +	{ +		// Send the 404 header +		header('HTTP/1.1 404 File Not Found'); +	} + +} // End Kohana 404 Exception
\ No newline at end of file | 
