]> source.dussan.org Git - nextcloud-server.git/commitdiff
OC_Response: Set Expire and Cache-Control headers in enableCaching
authorBart Visscher <bartv@thisnet.nl>
Mon, 13 Feb 2012 21:37:27 +0000 (22:37 +0100)
committerBart Visscher <bartv@thisnet.nl>
Mon, 13 Feb 2012 21:37:27 +0000 (22:37 +0100)
lib/response.php

index f0d1aaab53033fd84aa509552ab276109b558865..b5fca1cb2279cbb1f313b205e59d37d250b23cd5 100644 (file)
@@ -11,9 +11,23 @@ class OC_Response {
        const STATUS_NOT_MODIFIED = 304;
        const STATUS_TEMPORARY_REDIRECT = 307;
 
-       static public function enableCaching() {
-               header('Cache-Control: cache');
-               header('Pragma: cache');
+       static public function enableCaching($cache_time = null) {
+               if (is_numeric($cache_time)) {
+                       header('Pragma: public');// enable caching in IE
+                       if ($cache_time > 0) {
+                               self::setExpiresHeader('PT'.$cache_time.'S');
+                               header('Cache-Control: max-age='.$cache_time.', must-revalidate');
+                       }
+                       else {
+                               self::setExpiresHeader(0);
+                               header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
+                       }
+               }
+               else {
+                       header('Cache-Control: cache');
+                       header('Pragma: cache');
+               }
+
        }
 
        static public function setStatus($status) {