|
|
|
|
@ -7,7 +7,9 @@ |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
class OC_Response { |
|
|
|
|
const STATUS_FOUND = 304; |
|
|
|
|
const STATUS_NOT_MODIFIED = 304; |
|
|
|
|
const STATUS_TEMPORARY_REDIRECT = 307; |
|
|
|
|
|
|
|
|
|
static public function enableCaching() { |
|
|
|
|
header('Cache-Control: cache'); |
|
|
|
|
@ -15,12 +17,29 @@ class OC_Response { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static public function setStatus($status) { |
|
|
|
|
$protocol = $_SERVER['SERVER_PROTOCOL']; |
|
|
|
|
switch($status) { |
|
|
|
|
case self::STATUS_NOT_MODIFIED: |
|
|
|
|
$status = $status . ' Not Modified'; |
|
|
|
|
break; |
|
|
|
|
case self::STATUS_TEMPORARY_REDIRECT: |
|
|
|
|
if ($protocol == 'HTTP/1.1') { |
|
|
|
|
$status = $status . ' Temporary Redirect'; |
|
|
|
|
break; |
|
|
|
|
} else { |
|
|
|
|
$status = self::STATUS_FOUND; |
|
|
|
|
// fallthrough |
|
|
|
|
} |
|
|
|
|
case self::STATUS_FOUND; |
|
|
|
|
$status = $status . ' Found'; |
|
|
|
|
break; |
|
|
|
|
} |
|
|
|
|
header($_SERVER["SERVER_PROTOCOL"].' '.$status); |
|
|
|
|
header($protocol.' '.$status); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static public function redirect($location) { |
|
|
|
|
self::setStatus(self::STATUS_TEMPORARY_REDIRECT); |
|
|
|
|
header('Location: '.$location); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static public function setETagHeader($etag) { |
|
|
|
|
|