summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/Minify/MinifyPlugin.php26
-rw-r--r--plugins/Minify/README5
2 files changed, 21 insertions, 10 deletions
diff --git a/plugins/Minify/MinifyPlugin.php b/plugins/Minify/MinifyPlugin.php
index 4d37fbc70..77fd76a84 100644
--- a/plugins/Minify/MinifyPlugin.php
+++ b/plugins/Minify/MinifyPlugin.php
@@ -79,23 +79,33 @@ class MinifyPlugin extends Plugin
$url = parse_url($src);
if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
{
- $src = common_path('main/min?f='.$src.'&v=' . STATUSNET_VERSION);
+ $src = $this->minifyUrl($src);
}
}
function onStartCssLinkElement($action,&$src,&$theme,&$media) {
+ $allowThemeMinification =
+ is_null(common_config('theme', 'dir'))
+ && is_null(common_config('theme', 'path'))
+ && is_null(common_config('theme', 'server'));
$url = parse_url($src);
if( empty($url->scheme) && empty($url->host) && empty($url->query) && empty($url->fragment))
{
- if(file_exists(Theme::file($src,$theme))){
- //src is a relative path, so we can do minification
- if(isset($theme)) {
- $src = common_path('main/min?f=theme/'.$theme.'/'.$src.'&v=' . STATUSNET_VERSION);
- } else {
- $src = common_path('main/min?f=theme/default/'.$src.'&v=' . STATUSNET_VERSION);
- }
+ if(!isset($theme)) {
+ $theme = common_config('site', 'theme');
+ }
+ if($allowThemeMinification && file_exists(INSTALLDIR.'/local/theme/'.$theme.'/'.$src)) {
+ $src = $this->minifyUrl('local/theme/'.$theme.'/'.$src);
+ } else if($allowThemeMinification && file_exists(INSTALLDIR.'/theme/'.$theme.'/'.$src)) {
+ $src = $this->minifyUrl('theme/'.$theme.'/'.$src);
+ }else if(file_exists(INSTALLDIR.'/'.$src)){
+ $src = $this->minifyUrl($src);
}
}
}
+
+ function minifyUrl($src) {
+ return common_local_url('minify',null,array('f' => $src ,v => STATUSNET_VERSION));
+ }
}
diff --git a/plugins/Minify/README b/plugins/Minify/README
index 7fb7e239a..8f2eefa2c 100644
--- a/plugins/Minify/README
+++ b/plugins/Minify/README
@@ -1,7 +1,8 @@
The Minify plugin minifies your CSS and Javascript, removing whitespace and comments.
-Note that if enabled this plugin and use a theme server
- ($config['theme']['server']), your theme server will not be used.
+Note that if enabled this plugin and use a theme server,
+ (if any of $config['theme']['server'], $config['theme']['path'],
+ $config['theme']['dir'] are set) theme CSS will not be minified.
Installation
============