From e8447e0bda25744c4836a8fdf009a98174264eda Mon Sep 17 00:00:00 2001 From: Brice Maron Date: Wed, 6 Jun 2012 21:11:15 +0000 Subject: Rework to fit with minizer --- lib/minimizer/css.php | 29 ++++++++++++++++++++--------- lib/minimizer/js.php | 17 +++++++++++------ 2 files changed, 31 insertions(+), 15 deletions(-) (limited to 'lib/minimizer') diff --git a/lib/minimizer/css.php b/lib/minimizer/css.php index 4637417579e..76dc99b335b 100644 --- a/lib/minimizer/css.php +++ b/lib/minimizer/css.php @@ -16,10 +16,6 @@ class OC_Minimizer_CSS extends OC_Minimizer // is it in 3rdparty? if($this->appendIfExist(OC::$THIRDPARTYROOT, OC::$THIRDPARTYWEBROOT, $style.'.css')) { - // or in apps? - }elseif($this->appendIfExist(OC::$APPSROOT, OC::$APPSWEBROOT, "apps/$style$fext.css" )) { - }elseif($this->appendIfExist(OC::$APPSROOT, OC::$APPSWEBROOT, "apps/$style.css" )) { - // or in the owncloud root? }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "$style$fext.css" )) { }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "$style.css" )) { @@ -29,8 +25,16 @@ class OC_Minimizer_CSS extends OC_Minimizer }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "core/$style.css" )) { }else{ - echo('css file not found: style:'.$style.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT); - die(); + $append = false; + foreach( OC::$APPSROOTS as $apps_dir) + { + if($this->appendIfExist('cssfiles', $apps_dir['path'], $apps_dir['web'], "$style$fext.css", true)) { $append =true; break; } + elseif($this->appendIfExist('cssfiles', $apps_dir['path'], $apps_dir['web'], "$style.css", true )) { $append =true; break; } + } + if(! $append) { + echo('css file not found: style:'.$script.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT); + die(); + } } } // Add the theme css files. you can override the default values here @@ -52,14 +56,21 @@ class OC_Minimizer_CSS extends OC_Minimizer public function minimizeFiles($files) { $css_out = ''; - $appswebroot = (string) OC::$APPSWEBROOT; $webroot = (string) OC::$WEBROOT; foreach($files as $file_info) { $file = $file_info[0] . '/' . $file_info[2]; $css_out .= '/* ' . $file . ' */' . "\n"; $css = file_get_contents($file); - if (strpos($file, OC::$APPSROOT) == 0) { - $css = str_replace('%appswebroot%', $appswebroot, $css); + + $in_root = false; + foreach(OC::$APPSROOTS as $app_root) { + if(strpos($file, $app_root['path']) == 0) { + $in_root = $app_root['web']; + break; + } + } + if ($in_root !== false) { + $css = str_replace('%appswebroot%', $in_root, $css); $css = str_replace('%webroot%', $webroot, $css); } $remote = $file_info[1]; diff --git a/lib/minimizer/js.php b/lib/minimizer/js.php index 4ddaa79d81a..aea8b66f912 100644 --- a/lib/minimizer/js.php +++ b/lib/minimizer/js.php @@ -21,10 +21,6 @@ class OC_Minimizer_JS extends OC_Minimizer }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/apps/$script$fext.js" )) { }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/apps/$script.js" )) { - // Is it part of an app? - }elseif($this->appendIfExist(OC::$APPSROOT, OC::$APPSWEBROOT, "apps/$script$fext.js" )) { - }elseif($this->appendIfExist(OC::$APPSROOT, OC::$APPSWEBROOT, "apps/$script.js" )) { - // Is it in the owncloud root but overwritten by the theme? }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/$script$fext.js" )) { }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "themes/$theme/$script.js" )) { @@ -42,8 +38,17 @@ class OC_Minimizer_JS extends OC_Minimizer }elseif($this->appendIfExist(OC::$SERVERROOT, OC::$WEBROOT, "core/$script.js" )) { }else{ - echo('js file not found: script:'.$script.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT); - die(); + // Is it part of an app? + $append = false; + foreach( OC::$APPSROOTS as $apps_dir) + { + if($page->appendIfExist('jsfiles', $apps_dir['path'], $apps_dir['web'], "$script$fext.js" , true)) { $append =true; break; } + elseif($page->appendIfExist('jsfiles', $apps_dir['path'], $apps_dir['web'], "$script.js", true )) { $append =true; break; } + } + if(! $append) { + echo('js file not found: script:'.$script.' formfactor:'.$fext.' webroot:'.OC::$WEBROOT.' serverroot:'.OC::$SERVERROOT); + die(); + } } } return $this->files; -- cgit v1.2.3