Mercurial > SimpleWebPresenter
comparison 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 |
comparison
equal
deleted
inserted
replaced
| 15:f51be7b9711a | 16:a64e8f968e7e |
|---|---|
| 143 } | 143 } |
| 144 return $param_value; | 144 return $param_value; |
| 145 } | 145 } |
| 146 | 146 |
| 147 foreach ($files as $file) { | 147 foreach ($files as $file) { |
| 148 $script=$file->getAttribute("script"); | 148 if ($file->getAttribute("script")) { |
| 149 $cachable = false; | |
| 150 break; | |
| 151 } | |
| 152 else { | |
| 153 $src = $file->getAttribute("src"); | |
| 154 $fname = "${lang}/${src}"; | |
| 155 if (!file_exists($fname)) { | |
| 156 errorPage("Resource not found '${fname}'"); | |
| 157 } | |
| 158 cache_time($fname); | |
| 159 } | |
| 160 } | |
| 161 | |
| 162 if ($cachable) | |
| 163 cache_check($newest); | |
| 164 | |
| 165 foreach ($files as $file) { | |
| 166 $script = $file->getAttribute("script"); | |
| 149 if ($script) { | 167 if ($script) { |
| 150 $cachable = false; | 168 $src = ""; |
| 151 $src=""; | 169 $cwd = getcwd(); |
| 152 $cwd=getcwd(); | |
| 153 | 170 |
| 154 $matches=array(); | 171 $matches=array(); |
| 155 preg_match('/(.*\/)/', $script, $matches); | 172 preg_match('/(.*\/)/', $script, $matches); |
| 156 $dirname=$matches[0]; | 173 $dirname=$matches[0]; |
| 157 preg_match('/([^\/]*)$/', $script, $matches); | 174 preg_match('/([^\/]*)$/', $script, $matches); |
| 160 $pipe=popen("php ${filename}","r"); | 177 $pipe=popen("php ${filename}","r"); |
| 161 $file_content = stream_get_contents($pipe); | 178 $file_content = stream_get_contents($pipe); |
| 162 chdir("${cwd}"); | 179 chdir("${cwd}"); |
| 163 } | 180 } |
| 164 else { | 181 else { |
| 165 $src=$file->getAttribute("src"); | 182 $src = $file->getAttribute("src"); |
| 166 $fname = "${lang}/${src}"; | 183 $fname = "${lang}/${src}"; |
| 167 $mtime = filemtime($fname); | 184 $file_content = loadFile($fname); |
| 168 if ($mtime > $newest) { | 185 } |
| 169 $newest = $mtime; | 186 if(floatval($file_content) < 0) { |
| 170 } | |
| 171 $file_content=loadFile($fname); | |
| 172 } | |
| 173 if(floatval($file_content)<0) { | |
| 174 errorPage("Resource not found '${lang}/${src}'"); | 187 errorPage("Resource not found '${lang}/${src}'"); |
| 175 } | 188 } |
| 176 | 189 |
| 177 $filters=$file->getElementsByTagName("filter"); | 190 $filters=$file->getElementsByTagName("filter"); |
| 178 foreach($filters as $filter) { | 191 foreach($filters as $filter) { |
| 192 $callString.=");"; | 205 $callString.=");"; |
| 193 eval($callString); | 206 eval($callString); |
| 194 } | 207 } |
| 195 $out.= $file_content; | 208 $out.= $file_content; |
| 196 } | 209 } |
| 197 if ($cachable) | 210 |
| 198 cache_check($newest); | |
| 199 | 211 |
| 200 | 212 |
| 201 $out.=' | 213 $out.=' |
| 202 </div> | 214 </div> |
| 203 </body> | 215 </body> |
