Example #1
0
 header("Cache-Control: max-age=315360000");
 header("Expires: " . date("D, j M Y H:i:s", strtotime("now + 10 years")) . " GMT");
 header("Content-Type: " . $contentType);
 if ($contentType == "application/x-javascript") {
     $rawScript = $loader->script_raw();
     if (APC_AVAIL === true) {
         apc_store(server(true), $rawScript, APC_TTL);
     }
     echo $rawScript;
 } else {
     $rawCss = '';
     $cssResourceList = $loader->css_data();
     foreach ($cssResourceList["css"] as $cssResource => $val) {
         foreach ($cssResourceList["css"][$cssResource] as $key => $value) {
             $crtResourceBase = substr($key, 0, strrpos($key, "/") + 1);
             $crtResourceContent = $loader->getRemoteContent($key);
             //Handle image path corrections (order is important)
             $crtResourceContent = preg_replace('/((url\\()([^\\.\\.|^http]\\S+)(\\)))/', '${2}' . $crtResourceBase . '${3}${4}', $crtResourceContent);
             // just filename or subdirs/filename (e.g) url(foo.png),
             // url(foo/foo.png)
             $crtResourceContent = str_replace("url(/", "url({$crtResourceBase}", $crtResourceContent);
             // slash filename (e.g.) url(/whatever)
             $crtResourceContent = preg_replace('/(url\\()(\\.\\.\\/)+/', 'url(' . $base, $crtResourceContent);
             // relative paths (e.g.) url(../../foo.png)
             $crtResourceContent = preg_replace_callback('/AlphaImageLoader\\(src=[\'"](.*?)[\'"]/', 'alphaImageLoaderPathCorrection', $crtResourceContent);
             // AlphaImageLoader relative paths (e.g.)
             // AlphaImageLoader(src='../../foo.png')
             $rawCss .= $crtResourceContent;
         }
     }
     //Cleanup build path dups caused by relative paths that already