diff index.php @ 16:a64e8f968e7e

Fast abort if cachehit.
author Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
date Wed, 19 Sep 2012 14:31:02 +0200
parents 91ee5f49907e
children ee2c31392ea3
line wrap: on
line diff
--- a/index.php	Wed Sep 19 14:17:35 2012 +0200
+++ b/index.php	Wed Sep 19 14:31:02 2012 +0200
@@ -145,11 +145,28 @@
 }
 
 foreach ($files as $file) {
-	$script=$file->getAttribute("script");
+  if ($file->getAttribute("script")) {
+    $cachable = false;
+    break;
+  }
+  else {
+    $src = $file->getAttribute("src");
+    $fname = "${lang}/${src}";
+    if (!file_exists($fname)) {
+      errorPage("Resource not found '${fname}'");
+    }
+    cache_time($fname);
+  }
+}
+
+if ($cachable)
+  cache_check($newest);
+
+foreach ($files as $file) {
+	$script = $file->getAttribute("script");
 	if ($script) {
-	  $cachable = false;
-	  $src="";
-	  $cwd=getcwd();
+	  $src = "";
+	  $cwd = getcwd();
 
 	  $matches=array();
 	  preg_match('/(.*\/)/', $script, $matches);
@@ -162,15 +179,11 @@
 	  chdir("${cwd}");
 	}
 	else {
-		$src=$file->getAttribute("src");
-		$fname = "${lang}/${src}";
-		$mtime = filemtime($fname);
-		if ($mtime > $newest) {
-		  $newest = $mtime;
-		}
-		$file_content=loadFile($fname);
+	  $src = $file->getAttribute("src");
+	  $fname = "${lang}/${src}";
+	  $file_content = loadFile($fname);
 	}
-	if(floatval($file_content)<0) {
+	if(floatval($file_content) < 0) {
 	  errorPage("Resource not found '${lang}/${src}'");
 	}
 
@@ -194,8 +207,7 @@
         }
         $out.= $file_content;
 }
-if ($cachable)
-  cache_check($newest);
+
 
 
 $out.='