@@ -162,29 +162,29 @@ discard block |
||
162 | 162 | // Remove the original style tag |
163 | 163 | $this->content = str_replace($tag,'',$this->content); |
164 | 164 | } else { |
165 | - // excluded CSS, minify if getpath |
|
166 | - if (preg_match('#<link.*href=("|\')(.*)("|\')#Usmi',$tag,$source)) { |
|
167 | - $url = current(explode('?',$source[2],2)); |
|
165 | + // excluded CSS, minify if getpath |
|
166 | + if (preg_match('#<link.*href=("|\')(.*)("|\')#Usmi',$tag,$source)) { |
|
167 | + $url = current(explode('?',$source[2],2)); |
|
168 | 168 | $path = $this->getpath($url); |
169 | 169 | |
170 | - if ($path && apply_filters('autoptimize_filter_css_minify_excluded',false)) { |
|
171 | - $_CachedMinifiedUrl = $this->minify_single($path); |
|
172 | - |
|
173 | - if (!empty($_CachedMinifiedUrl)) { |
|
174 | - // replace orig URL with URL to cache |
|
175 | - $newTag = str_replace($url, $_CachedMinifiedUrl, $tag); |
|
176 | - } else { |
|
177 | - $newTag = $tag; |
|
178 | - } |
|
170 | + if ($path && apply_filters('autoptimize_filter_css_minify_excluded',false)) { |
|
171 | + $_CachedMinifiedUrl = $this->minify_single($path); |
|
172 | + |
|
173 | + if (!empty($_CachedMinifiedUrl)) { |
|
174 | + // replace orig URL with URL to cache |
|
175 | + $newTag = str_replace($url, $_CachedMinifiedUrl, $tag); |
|
176 | + } else { |
|
177 | + $newTag = $tag; |
|
178 | + } |
|
179 | 179 | |
180 | - // remove querystring from URL |
|
181 | - $_querystr = next(explode('?',$source[2],2)); |
|
182 | - $newTag = str_replace("?".$_querystr,"",$newTag); |
|
183 | - // and replace |
|
184 | - $this->content = str_replace($tag,$newTag,$this->content); |
|
185 | - } |
|
186 | - } |
|
187 | - } |
|
180 | + // remove querystring from URL |
|
181 | + $_querystr = next(explode('?',$source[2],2)); |
|
182 | + $newTag = str_replace("?".$_querystr,"",$newTag); |
|
183 | + // and replace |
|
184 | + $this->content = str_replace($tag,$newTag,$this->content); |
|
185 | + } |
|
186 | + } |
|
187 | + } |
|
188 | 188 | } |
189 | 189 | return true; |
190 | 190 | } |
@@ -657,8 +657,8 @@ discard block |
||
657 | 657 | } |
658 | 658 | |
659 | 659 | private function ismovable($tag) { |
660 | - if (apply_filters('autoptimize_filter_css_dontaggregate',false)) { |
|
661 | - return false; |
|
660 | + if (apply_filters('autoptimize_filter_css_dontaggregate',false)) { |
|
661 | + return false; |
|
662 | 662 | } else if (!empty($this->whitelist)) { |
663 | 663 | foreach ($this->whitelist as $match) { |
664 | 664 | if(strpos($tag,$match)!==false) { |
@@ -341,43 +341,43 @@ discard block |
||
341 | 341 | } |
342 | 342 | |
343 | 343 | protected function minify_single($pathIn) { |
344 | - // determine JS or CSS and set var (also mimetype), return false if neither |
|
345 | - if ( $this->str_ends_in($pathIn,".js") === true ) { |
|
346 | - $codeType="js"; |
|
347 | - $codeMime="text/javascript"; |
|
348 | - } else if ( $this->str_ends_in($pathIn,".css") === true ) { |
|
349 | - $codeType="css"; |
|
350 | - $codeMime="text/css"; |
|
351 | - } else { |
|
352 | - return false; |
|
353 | - } |
|
344 | + // determine JS or CSS and set var (also mimetype), return false if neither |
|
345 | + if ( $this->str_ends_in($pathIn,".js") === true ) { |
|
346 | + $codeType="js"; |
|
347 | + $codeMime="text/javascript"; |
|
348 | + } else if ( $this->str_ends_in($pathIn,".css") === true ) { |
|
349 | + $codeType="css"; |
|
350 | + $codeMime="text/css"; |
|
351 | + } else { |
|
352 | + return false; |
|
353 | + } |
|
354 | 354 | |
355 | - // if min.js or min.css return false |
|
356 | - if (( $this->str_ends_in($pathIn,"-min.".$codeType) === true ) || ( $this->str_ends_in($pathIn,".min.".$codeType) === true ) || ( $this->str_ends_in($pathIn,"js/jquery/jquery.js") === true ) ) { |
|
357 | - return false; |
|
358 | - } |
|
355 | + // if min.js or min.css return false |
|
356 | + if (( $this->str_ends_in($pathIn,"-min.".$codeType) === true ) || ( $this->str_ends_in($pathIn,".min.".$codeType) === true ) || ( $this->str_ends_in($pathIn,"js/jquery/jquery.js") === true ) ) { |
|
357 | + return false; |
|
358 | + } |
|
359 | 359 | |
360 | - // read file, return false if empty |
|
361 | - $_toMinify = file_get_contents($pathIn); |
|
362 | - if ( empty($_toMinify) ) return false; |
|
360 | + // read file, return false if empty |
|
361 | + $_toMinify = file_get_contents($pathIn); |
|
362 | + if ( empty($_toMinify) ) return false; |
|
363 | 363 | |
364 | - // check cache |
|
365 | - $_md5hash = "single_".md5($_toMinify); |
|
366 | - $_cache = new autoptimizeCache($_md5hash,$codeType); |
|
367 | - if ($_cache->check() ) { |
|
368 | - $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
|
369 | - } else { |
|
370 | - // if not in cache first minify |
|
371 | - $_Minified = $_toMinify; |
|
372 | - if ($codeType === "js") { |
|
373 | - if (class_exists('JSMin') && apply_filters( 'autoptimize_js_do_minify' , true)) { |
|
374 | - if (@is_callable(array("JSMin","minify"))) { |
|
375 | - $tmp_code = trim(JSMin::minify($_toMinify)); |
|
376 | - } |
|
377 | - } |
|
378 | - } else if ($codeType === "css") { |
|
364 | + // check cache |
|
365 | + $_md5hash = "single_".md5($_toMinify); |
|
366 | + $_cache = new autoptimizeCache($_md5hash,$codeType); |
|
367 | + if ($_cache->check() ) { |
|
368 | + $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
|
369 | + } else { |
|
370 | + // if not in cache first minify |
|
371 | + $_Minified = $_toMinify; |
|
372 | + if ($codeType === "js") { |
|
373 | + if (class_exists('JSMin') && apply_filters( 'autoptimize_js_do_minify' , true)) { |
|
374 | + if (@is_callable(array("JSMin","minify"))) { |
|
375 | + $tmp_code = trim(JSMin::minify($_toMinify)); |
|
376 | + } |
|
377 | + } |
|
378 | + } else if ($codeType === "css") { |
|
379 | 379 | if (class_exists('Minify_CSS_Compressor')) { |
380 | - $tmp_code = trim(Minify_CSS_Compressor::process($_toMinify)); |
|
380 | + $tmp_code = trim(Minify_CSS_Compressor::process($_toMinify)); |
|
381 | 381 | } else if(class_exists('CSSmin')) { |
382 | 382 | $cssmin = new CSSmin(); |
383 | 383 | if (method_exists($cssmin,"run")) { |
@@ -386,31 +386,31 @@ discard block |
||
386 | 386 | $tmp_code = trim(CssMin::minify($_toMinify)); |
387 | 387 | } |
388 | 388 | } |
389 | - } |
|
390 | - if (!empty($tmp_code)) { |
|
391 | - $_Minified = $tmp_code; |
|
392 | - unset($tmp_code); |
|
393 | - } |
|
394 | - // and then cache |
|
395 | - $_cache->cache($_Minified,$codeMime); |
|
396 | - $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
|
397 | - } |
|
398 | - unset($_cache); |
|
389 | + } |
|
390 | + if (!empty($tmp_code)) { |
|
391 | + $_Minified = $tmp_code; |
|
392 | + unset($tmp_code); |
|
393 | + } |
|
394 | + // and then cache |
|
395 | + $_cache->cache($_Minified,$codeMime); |
|
396 | + $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
|
397 | + } |
|
398 | + unset($_cache); |
|
399 | 399 | |
400 | - // if CDN, then CDN |
|
401 | - $_CachedMinfiedUrl = $this->url_replace_cdn($_CachedMinifiedUrl); |
|
400 | + // if CDN, then CDN |
|
401 | + $_CachedMinfiedUrl = $this->url_replace_cdn($_CachedMinifiedUrl); |
|
402 | 402 | |
403 | - return $_CachedMinifiedUrl; |
|
404 | - } |
|
403 | + return $_CachedMinifiedUrl; |
|
404 | + } |
|
405 | 405 | |
406 | - protected function str_ends_in($haystack,$needle) { |
|
407 | - $needleLength = strlen($needle); |
|
408 | - $haystackLength = strlen($haystack); |
|
409 | - $lastPos=strrpos($haystack,$needle); |
|
410 | - if ($lastPos === $haystackLength - $needleLength) { |
|
411 | - return true; |
|
412 | - } else { |
|
413 | - return false; |
|
414 | - } |
|
415 | - } |
|
406 | + protected function str_ends_in($haystack,$needle) { |
|
407 | + $needleLength = strlen($needle); |
|
408 | + $haystackLength = strlen($haystack); |
|
409 | + $lastPos=strrpos($haystack,$needle); |
|
410 | + if ($lastPos === $haystackLength - $needleLength) { |
|
411 | + return true; |
|
412 | + } else { |
|
413 | + return false; |
|
414 | + } |
|
415 | + } |
|
416 | 416 | } |
@@ -128,26 +128,26 @@ discard block |
||
128 | 128 | // should we add flags? |
129 | 129 | foreach ($excludeJS as $exclTag => $exclFlags) { |
130 | 130 | if ( strpos($origTag,$exclTag)!==false && in_array($exclFlags,array("async","defer")) ) { |
131 | - $newTag = str_replace('<script ','<script '.$exclFlags.' ',$newTag); |
|
131 | + $newTag = str_replace('<script ','<script '.$exclFlags.' ',$newTag); |
|
132 | 132 | } |
133 | 133 | } |
134 | 134 | } |
135 | 135 | |
136 | - // should we minify the non-aggregated script? |
|
137 | - if ($path && apply_filters('autoptimize_filter_js_minify_excluded',false)) { |
|
138 | - $_CachedMinifiedUrl = $this->minify_single($path); |
|
136 | + // should we minify the non-aggregated script? |
|
137 | + if ($path && apply_filters('autoptimize_filter_js_minify_excluded',false)) { |
|
138 | + $_CachedMinifiedUrl = $this->minify_single($path); |
|
139 | 139 | |
140 | - // replace orig URL with minified URL from cache if so |
|
141 | - if (!empty($_CachedMinifiedUrl)) { |
|
142 | - $newTag = str_replace($url, $_CachedMinifiedUrl, $newTag); |
|
143 | - } |
|
140 | + // replace orig URL with minified URL from cache if so |
|
141 | + if (!empty($_CachedMinifiedUrl)) { |
|
142 | + $newTag = str_replace($url, $_CachedMinifiedUrl, $newTag); |
|
143 | + } |
|
144 | 144 | |
145 | - // remove querystring from URL in newTag |
|
146 | - $_querystr = next(explode('?',$source[2],2)); |
|
147 | - $newTag = str_replace("?".$_querystr,"",$newTag); |
|
148 | - } |
|
145 | + // remove querystring from URL in newTag |
|
146 | + $_querystr = next(explode('?',$source[2],2)); |
|
147 | + $newTag = str_replace("?".$_querystr,"",$newTag); |
|
148 | + } |
|
149 | 149 | |
150 | - // should we move the non-aggregated script? |
|
150 | + // should we move the non-aggregated script? |
|
151 | 151 | if( $this->ismovable($newTag) ) { |
152 | 152 | // can be moved, flags and all |
153 | 153 | if( $this->movetolast($newTag) ) { |
@@ -260,7 +260,7 @@ discard block |
||
260 | 260 | |
261 | 261 | //$this->jscode has all the uncompressed code now. |
262 | 262 | if ($this->alreadyminified!==true) { |
263 | - if (class_exists('JSMin') && apply_filters( 'autoptimize_js_do_minify' , true)) { |
|
263 | + if (class_exists('JSMin') && apply_filters( 'autoptimize_js_do_minify' , true)) { |
|
264 | 264 | if (@is_callable(array("JSMin","minify"))) { |
265 | 265 | $tmp_jscode = trim(JSMin::minify($this->jscode)); |
266 | 266 | if (!empty($tmp_jscode)) { |
@@ -274,10 +274,10 @@ discard block |
||
274 | 274 | $this->jscode = $this->inject_minified($this->jscode); |
275 | 275 | return false; |
276 | 276 | } |
277 | - } else { |
|
278 | - $this->jscode = $this->inject_minified($this->jscode); |
|
277 | + } else { |
|
278 | + $this->jscode = $this->inject_minified($this->jscode); |
|
279 | 279 | return false; |
280 | - } |
|
280 | + } |
|
281 | 281 | } |
282 | 282 | return true; |
283 | 283 | } |
@@ -339,8 +339,8 @@ discard block |
||
339 | 339 | |
340 | 340 | // Checks against the white- and blacklists |
341 | 341 | private function ismergeable($tag) { |
342 | - if (apply_filters('autoptimize_filter_js_dontaggregate',false)) { |
|
343 | - return false; |
|
342 | + if (apply_filters('autoptimize_filter_js_dontaggregate',false)) { |
|
343 | + return false; |
|
344 | 344 | } else if (!empty($this->whitelist)) { |
345 | 345 | foreach ($this->whitelist as $match) { |
346 | 346 | if(strpos($tag,$match)!==false) { |