Modified show_error() to allow sending of HTTP server response codes.

Added set_status_header() to the Common functions to allow use when the Output class is unavailable.

Fixed a bug where the 400 status header sent with the 'disallowed URI characters' was not compatible with CGI environments.
diff --git a/system/libraries/Output.php b/system/libraries/Output.php
index 6bfb9c7..4423ac7 100644
--- a/system/libraries/Output.php
+++ b/system/libraries/Output.php
@@ -116,7 +116,8 @@
 	
 	/**
 	 * Set HTTP Status Header
-	 *
+	 * moved to Common procedural functions in 1.7.2
+	 * 
 	 * @access	public
 	 * @param	int 	the status code
 	 * @param	string	
@@ -124,77 +125,7 @@
 	 */	
 	function set_status_header($code = '200', $text = '')
 	{
-		$stati = array(
-							'200'	=> 'OK',
-							'201'	=> 'Created',
-							'202'	=> 'Accepted',
-							'203'	=> 'Non-Authoritative Information',
-							'204'	=> 'No Content',
-							'205'	=> 'Reset Content',
-							'206'	=> 'Partial Content',
-							
-							'300'	=> 'Multiple Choices',
-							'301'	=> 'Moved Permanently',
-							'302'	=> 'Found',
-							'304'	=> 'Not Modified',
-							'305'	=> 'Use Proxy',
-							'307'	=> 'Temporary Redirect',
-							
-							'400'	=> 'Bad Request',
-							'401'	=> 'Unauthorized',
-							'403'	=> 'Forbidden',
-							'404'	=> 'Not Found',
-							'405'	=> 'Method Not Allowed',
-							'406'	=> 'Not Acceptable',
-							'407'	=> 'Proxy Authentication Required',
-							'408'	=> 'Request Timeout',
-							'409'	=> 'Conflict',
-							'410'	=> 'Gone',
-							'411'	=> 'Length Required',
-							'412'	=> 'Precondition Failed',
-							'413'	=> 'Request Entity Too Large',
-							'414'	=> 'Request-URI Too Long',
-							'415'	=> 'Unsupported Media Type',
-							'416'	=> 'Requested Range Not Satisfiable',
-							'417'	=> 'Expectation Failed',
-		
-							'500'	=> 'Internal Server Error',
-							'501'	=> 'Not Implemented',
-							'502'	=> 'Bad Gateway',
-							'503'	=> 'Service Unavailable',
-							'504'	=> 'Gateway Timeout',
-							'505'	=> 'HTTP Version Not Supported'
-						);
-
-		if ($code == '' OR ! is_numeric($code))
-		{
-			show_error('Status codes must be numeric');
-		}
-
-		if (isset($stati[$code]) AND $text == '')
-		{				
-			$text = $stati[$code];
-		}
-		
-		if ($text == '')
-		{
-			show_error('No status text available.  Please check your status code number or supply your own message text.');
-		}
-		
-		$server_protocol = (isset($_SERVER['SERVER_PROTOCOL'])) ? $_SERVER['SERVER_PROTOCOL'] : FALSE;
-	
-		if (substr(php_sapi_name(), 0, 3) == 'cgi')
-		{
-			header("Status: {$code} {$text}", TRUE);
-		}
-		elseif ($server_protocol == 'HTTP/1.1' OR $server_protocol == 'HTTP/1.0')
-		{
-			header($server_protocol." {$code} {$text}", TRUE, $code);
-		}
-		else
-		{
-			header("HTTP/1.1 {$code} {$text}", TRUE, $code);
-		}
+		set_status_header($code, $text);
 	}
 	
 	// --------------------------------------------------------------------