From 38f56bff745c0010f5a3d0e13c2de33373616d0e Mon Sep 17 00:00:00 2001
From: Ben Coburn <btcoburn@silicodon.net>
Date: Wed, 15 Mar 2006 12:57:45 +0100
Subject: [PATCH] Enable '304 Not Modified' responses for CSS and JS.

darcs-hash:20060315115745-05dcb-6f50f3a070d2898ab51a32e59395631cab2ae09c.gz
---
 lib/exe/css.php | 7 ++++++-
 lib/exe/js.php  | 7 ++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/lib/exe/css.php b/lib/exe/css.php
index 061df662d..ad47647f0 100644
--- a/lib/exe/css.php
+++ b/lib/exe/css.php
@@ -67,10 +67,15 @@ function css_out(){
         $files[DOKU_CONF.'userstyle.css'] = '';
     }
 
-    // check cache age 
+    // check cache age & handle conditional request
+    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
+    header('Pragma: public');
     if(css_cacheok($cache,array_keys($files))){
+        http_conditionalRequest(filemtime($cache));
         readfile($cache);
         return;
+    } else {
+        http_conditionalRequest(time());
     }
 
     // start output buffering and build the stylesheet
diff --git a/lib/exe/js.php b/lib/exe/js.php
index 9cc4a863c..0615db374 100644
--- a/lib/exe/js.php
+++ b/lib/exe/js.php
@@ -55,10 +55,15 @@ function js_out(){
     // get possible plugin scripts
     $plugins = js_pluginscripts();
 
-    // check cache age here
+    // check cache age & handle conditional request
+    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
+    header('Pragma: public');
     if(js_cacheok($cache,array_merge($files,$plugins))){
+        http_conditionalRequest(filemtime($cache));
         readfile($cache);
         return;
+    } else {
+        http_conditionalRequest(time());
     }
 
     // start output buffering and build the script
-- 
GitLab