You are here

function _invoice_api_http_response_code in Invoice 7

Sets HTTP response code and message

Parameters

integer $code:

Return value

integer

10 calls to _invoice_api_http_response_code()
invoice_api_invoice in ./invoice_api.inc
GET / PUT / POST / DELETE an invoice
_invoice_api_check_allowed_ips in ./invoice_api.inc
Check if the request is from an allowed IP addresses
_invoice_api_check_allowed_templates in ./invoice_api.inc
Checks if the authenticated username has access to the defined template name
_invoice_api_check_response_format_support in ./invoice_api.inc
Checks if the specified response format is supported by the API
_invoice_api_check_user_pass in ./invoice_api.inc
Verifies the username and password

... See full list

File

./invoice_api.inc, line 556

Code

function _invoice_api_http_response_code($code = NULL) {
  if ($code !== NULL) {
    switch ($code) {
      case 100:
        $text = 'Continue';
        break;
      case 101:
        $text = 'Switching Protocols';
        break;
      case 200:
        $text = 'OK';
        break;
      case 201:
        $text = 'Created';
        break;
      case 202:
        $text = 'Accepted';
        break;
      case 203:
        $text = 'Non-Authoritative Information';
        break;
      case 204:
        $text = 'No Content';
        break;
      case 205:
        $text = 'Reset Content';
        break;
      case 206:
        $text = 'Partial Content';
        break;
      case 300:
        $text = 'Multiple Choices';
        break;
      case 301:
        $text = 'Moved Permanently';
        break;
      case 302:
        $text = 'Moved Temporarily';
        break;
      case 303:
        $text = 'See Other';
        break;
      case 304:
        $text = 'Not Modified';
        break;
      case 305:
        $text = 'Use Proxy';
        break;
      case 400:
        $text = 'Bad Request';
        break;
      case 401:
        $text = 'Unauthorized';
        break;
      case 402:
        $text = 'Payment Required';
        break;
      case 403:
        $text = 'Forbidden';
        break;
      case 404:
        $text = 'Not Found';
        break;
      case 405:
        $text = 'Method Not Allowed';
        break;
      case 406:
        $text = 'Not Acceptable';
        break;
      case 407:
        $text = 'Proxy Authentication Required';
        break;
      case 408:
        $text = 'Request Time-out';
        break;
      case 409:
        $text = 'Conflict';
        break;
      case 410:
        $text = 'Gone';
        break;
      case 411:
        $text = 'Length Required';
        break;
      case 412:
        $text = 'Precondition Failed';
        break;
      case 413:
        $text = 'Request Entity Too Large';
        break;
      case 414:
        $text = 'Request-URI Too Large';
        break;
      case 415:
        $text = 'Unsupported Media Type';
        break;
      case 500:
        $text = 'Internal Server Error';
        break;
      case 501:
        $text = 'Not Implemented';
        break;
      case 502:
        $text = 'Bad Gateway';
        break;
      case 503:
        $text = 'Service Unavailable';
        break;
      case 504:
        $text = 'Gateway Time-out';
        break;
      case 505:
        $text = 'HTTP Version not supported';
        break;
      default:
        exit('Unknown http status code "' . htmlentities($code) . '"');
        break;
    }
    $protocol = isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0';
    header($protocol . ' ' . $code . ' ' . $text);
    $GLOBALS['http_response_code'] = $code;
  }
  else {
    $code = isset($GLOBALS['http_response_code']) ? $GLOBALS['http_response_code'] : 200;
  }
  return $code;
}