You are here

public static function InstapageCmsPluginHelper::httpResponseCode in Instapage plugin 8.3

Same name and namespace in other branches
  1. 7.3 core/InstapageCmsPluginHelper.php \InstapageCmsPluginHelper::httpResponseCode()

Sets a proper header with response code.

Parameters

int $code HTTP Response Code. Default: 200.:

1 call to InstapageCmsPluginHelper::httpResponseCode()
InstapageCmsPluginPageModel::display in core/models/InstapageCmsPluginPageModel.php
Displays the landing page.

File

core/InstapageCmsPluginHelper.php, line 430

Class

InstapageCmsPluginHelper
Helper containing commonly used static functions.

Code

public static function httpResponseCode($code = 200) {
  if (function_exists('http_response_code')) {
    http_response_code($code);
    return;
  }
  if ($code === null) {
    $code = 200;
  }
  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:
      $code = 200;
      $text = 'OK';
      break;
  }
  $protocol = isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.1';
  if (!headers_sent()) {
    header($protocol . ' ' . $code . ' ' . $text);
  }
  $GLOBALS['http_response_code'] = $code;
}