@@ -43,10 +43,10 @@ discard block |
||
43 | 43 | public function __construct($raise_php_limits = TRUE) |
44 | 44 | { |
45 | 45 | // Set suggested PHP limits |
46 | - $this->memory_limit = 128 * 1048576; // 128MB in bytes |
|
46 | + $this->memory_limit = 128*1048576; // 128MB in bytes |
|
47 | 47 | $this->max_execution_time = 60; // 1 min |
48 | - $this->pcre_backtrack_limit = 1000 * 1000; |
|
49 | - $this->pcre_recursion_limit = 500 * 1000; |
|
48 | + $this->pcre_backtrack_limit = 1000*1000; |
|
49 | + $this->pcre_recursion_limit = 500*1000; |
|
50 | 50 | |
51 | 51 | $this->raise_php_limits = (bool) $raise_php_limits; |
52 | 52 | } |
@@ -83,8 +83,8 @@ discard block |
||
83 | 83 | } |
84 | 84 | $comment_found = $this->str_slice($css, $start_index + 2, $end_index); |
85 | 85 | $this->comments[] = $comment_found; |
86 | - $comment_preserve_string = self::COMMENT . (count($this->comments) - 1) . '___'; |
|
87 | - $css = $this->str_slice($css, 0, $start_index + 2) . $comment_preserve_string . $this->str_slice($css, $end_index); |
|
86 | + $comment_preserve_string = self::COMMENT.(count($this->comments) - 1).'___'; |
|
87 | + $css = $this->str_slice($css, 0, $start_index + 2).$comment_preserve_string.$this->str_slice($css, $end_index); |
|
88 | 88 | // Set correct start_index: Fixes issue #2528130 |
89 | 89 | $start_index = $end_index + 2 + strlen($comment_preserve_string) - strlen($comment_found); |
90 | 90 | } |
@@ -137,14 +137,14 @@ discard block |
||
137 | 137 | $css_chunks[$i] = $this->minify($css_chunks[$i], $linebreak_pos); |
138 | 138 | // Keep the first @charset at-rule found |
139 | 139 | if (empty($charset) && preg_match($charset_regexp, $css_chunks[$i], $matches)) { |
140 | - $charset = strtolower($matches[1]) . $matches[2]; |
|
140 | + $charset = strtolower($matches[1]).$matches[2]; |
|
141 | 141 | } |
142 | 142 | // Delete all @charset at-rules |
143 | 143 | $css_chunks[$i] = preg_replace($charset_regexp, '', $css_chunks[$i]); |
144 | 144 | } |
145 | 145 | |
146 | 146 | // Update the first chunk and push the charset to the top of the file. |
147 | - $css_chunks[0] = $charset . $css_chunks[0]; |
|
147 | + $css_chunks[0] = $charset.$css_chunks[0]; |
|
148 | 148 | |
149 | 149 | return implode('', $css_chunks); |
150 | 150 | } |
@@ -219,17 +219,17 @@ discard block |
||
219 | 219 | for ($i = 0, $max = count($this->comments); $i < $max; $i++) { |
220 | 220 | |
221 | 221 | $token = $this->comments[$i]; |
222 | - $placeholder = '/' . self::COMMENT . $i . '___/'; |
|
222 | + $placeholder = '/'.self::COMMENT.$i.'___/'; |
|
223 | 223 | |
224 | 224 | // ! in the first position of the comment means preserve |
225 | 225 | // so push to the preserved tokens keeping the ! |
226 | 226 | if (substr($token, 0, 1) === '!') { |
227 | 227 | $this->preserved_tokens[] = $token; |
228 | - $token_tring = self::TOKEN . (count($this->preserved_tokens) - 1) . '___'; |
|
228 | + $token_tring = self::TOKEN.(count($this->preserved_tokens) - 1).'___'; |
|
229 | 229 | $css = preg_replace($placeholder, $token_tring, $css, 1); |
230 | 230 | // Preserve new lines for /*! important comments |
231 | - $css = preg_replace('/\s*[\n\r\f]+\s*(\/\*'. $token_tring .')/S', self::NL.'$1', $css); |
|
232 | - $css = preg_replace('/('. $token_tring .'\*\/)\s*[\n\r\f]+\s*/', '$1'.self::NL, $css); |
|
231 | + $css = preg_replace('/\s*[\n\r\f]+\s*(\/\*'.$token_tring.')/S', self::NL.'$1', $css); |
|
232 | + $css = preg_replace('/('.$token_tring.'\*\/)\s*[\n\r\f]+\s*/', '$1'.self::NL, $css); |
|
233 | 233 | continue; |
234 | 234 | } |
235 | 235 | |
@@ -237,10 +237,10 @@ discard block |
||
237 | 237 | // shorten that to /*\*/ and the next one to /**/ |
238 | 238 | if (substr($token, (strlen($token) - 1), 1) === '\\') { |
239 | 239 | $this->preserved_tokens[] = '\\'; |
240 | - $css = preg_replace($placeholder, self::TOKEN . (count($this->preserved_tokens) - 1) . '___', $css, 1); |
|
240 | + $css = preg_replace($placeholder, self::TOKEN.(count($this->preserved_tokens) - 1).'___', $css, 1); |
|
241 | 241 | $i = $i + 1; // attn: advancing the loop |
242 | 242 | $this->preserved_tokens[] = ''; |
243 | - $css = preg_replace('/' . self::COMMENT . $i . '___/', self::TOKEN . (count($this->preserved_tokens) - 1) . '___', $css, 1); |
|
243 | + $css = preg_replace('/'.self::COMMENT.$i.'___/', self::TOKEN.(count($this->preserved_tokens) - 1).'___', $css, 1); |
|
244 | 244 | continue; |
245 | 245 | } |
246 | 246 | |
@@ -251,13 +251,13 @@ discard block |
||
251 | 251 | if ($start_index > 2) { |
252 | 252 | if (substr($css, $start_index - 3, 1) === '>') { |
253 | 253 | $this->preserved_tokens[] = ''; |
254 | - $css = preg_replace($placeholder, self::TOKEN . (count($this->preserved_tokens) - 1) . '___', $css, 1); |
|
254 | + $css = preg_replace($placeholder, self::TOKEN.(count($this->preserved_tokens) - 1).'___', $css, 1); |
|
255 | 255 | } |
256 | 256 | } |
257 | 257 | } |
258 | 258 | |
259 | 259 | // in all other cases kill the comment |
260 | - $css = preg_replace('/\/\*' . $this->str_slice($placeholder, 1, -1) . '\*\//', '', $css, 1); |
|
260 | + $css = preg_replace('/\/\*'.$this->str_slice($placeholder, 1, -1).'\*\//', '', $css, 1); |
|
261 | 261 | } |
262 | 262 | |
263 | 263 | |
@@ -265,7 +265,7 @@ discard block |
||
265 | 265 | $css = preg_replace('/\s+/', ' ', $css); |
266 | 266 | |
267 | 267 | // preserve flex, keeping percentage even if 0 |
268 | - $css = preg_replace_callback('/flex\s?:\s?((?:[0-9 ]*)\s?(?:px|em|auto|%)?(?:calc\(.*\))?)/i',array($this, 'replace_flex'),$css); |
|
268 | + $css = preg_replace_callback('/flex\s?:\s?((?:[0-9 ]*)\s?(?:px|em|auto|%)?(?:calc\(.*\))?)/i', array($this, 'replace_flex'), $css); |
|
269 | 269 | |
270 | 270 | // Fix IE7 issue on matrix filters which browser accept whitespaces between Matrix parameters |
271 | 271 | $css = preg_replace_callback('/\s*filter\:\s*progid:DXImageTransform\.Microsoft\.Matrix\(([^\)]+)\)/', array($this, 'preserve_old_IE_specific_matrix_definition'), $css); |
@@ -303,7 +303,7 @@ discard block |
||
303 | 303 | $css = preg_replace('/\!important/i', ' !important', $css); |
304 | 304 | |
305 | 305 | // bring back the colon |
306 | - $css = preg_replace('/' . self::CLASSCOLON . '/', ':', $css); |
|
306 | + $css = preg_replace('/'.self::CLASSCOLON.'/', ':', $css); |
|
307 | 307 | |
308 | 308 | // retain space for special IE6 cases |
309 | 309 | $css = preg_replace_callback('/\:first\-(line|letter)(\{|,)/i', array($this, 'lowercase_pseudo_first'), $css); |
@@ -376,20 +376,20 @@ discard block |
||
376 | 376 | |
377 | 377 | // Find a fraction that is used for Opera's -o-device-pixel-ratio query |
378 | 378 | // Add token to add the "\" back in later |
379 | - $css = preg_replace('/\(([a-z\-]+):([0-9]+)\/([0-9]+)\)/i', '($1:$2'. self::QUERY_FRACTION .'$3)', $css); |
|
379 | + $css = preg_replace('/\(([a-z\-]+):([0-9]+)\/([0-9]+)\)/i', '($1:$2'.self::QUERY_FRACTION.'$3)', $css); |
|
380 | 380 | |
381 | 381 | // Remove empty rules. |
382 | 382 | $css = preg_replace('/[^\};\{\/]+\{\}/S', '', $css); |
383 | 383 | |
384 | 384 | // Add "/" back to fix Opera -o-device-pixel-ratio query |
385 | - $css = preg_replace('/'. self::QUERY_FRACTION .'/', '/', $css); |
|
385 | + $css = preg_replace('/'.self::QUERY_FRACTION.'/', '/', $css); |
|
386 | 386 | |
387 | 387 | // Replace multiple semi-colons in a row by a single one |
388 | 388 | // See SF bug #1980989 |
389 | 389 | $css = preg_replace('/;;+/', ';', $css); |
390 | 390 | |
391 | 391 | // Restore new lines for /*! important comments |
392 | - $css = preg_replace('/'. self::NL .'/', "\n", $css); |
|
392 | + $css = preg_replace('/'.self::NL.'/', "\n", $css); |
|
393 | 393 | |
394 | 394 | // Lowercase all uppercase properties |
395 | 395 | $css = preg_replace_callback('/(\{|\;)([A-Z\-]+)(\:)/', array($this, 'lowercase_properties'), $css); |
@@ -403,7 +403,7 @@ discard block |
||
403 | 403 | while ($i < strlen($css)) { |
404 | 404 | $i++; |
405 | 405 | if ($css[$i - 1] === '}' && $i - $start_index > $linebreak_pos) { |
406 | - $css = $this->str_slice($css, 0, $i) . "\n" . $this->str_slice($css, $i); |
|
406 | + $css = $this->str_slice($css, 0, $i)."\n".$this->str_slice($css, $i); |
|
407 | 407 | $start_index = $i; |
408 | 408 | } |
409 | 409 | } |
@@ -411,7 +411,7 @@ discard block |
||
411 | 411 | |
412 | 412 | // restore preserved comments and strings in reverse order |
413 | 413 | for ($i = count($this->preserved_tokens) - 1; $i >= 0; $i--) { |
414 | - $css = preg_replace('/' . self::TOKEN . $i . '___/', $this->preserved_tokens[$i], $css, 1); |
|
414 | + $css = preg_replace('/'.self::TOKEN.$i.'___/', $this->preserved_tokens[$i], $css, 1); |
|
415 | 415 | // $css.=$this->preserved_tokens[$i]; |
416 | 416 | } |
417 | 417 | |
@@ -452,7 +452,7 @@ discard block |
||
452 | 452 | $terminator = ')'; |
453 | 453 | } |
454 | 454 | |
455 | - while ($found_terminator === FALSE && $end_index+1 <= $max_index) { |
|
455 | + while ($found_terminator === FALSE && $end_index + 1 <= $max_index) { |
|
456 | 456 | $end_index = $this->index_of($css, $terminator, $end_index + 1); |
457 | 457 | |
458 | 458 | // endIndex == 0 doesn't really apply here |
@@ -469,12 +469,12 @@ discard block |
||
469 | 469 | |
470 | 470 | if ($found_terminator) { |
471 | 471 | $token = $this->str_slice($css, $start_index, $end_index); |
472 | - if (strpos($token,"<svg")===false && strpos($token,'svg+xml')===false) { |
|
472 | + if (strpos($token, "<svg") === false && strpos($token, 'svg+xml') === false) { |
|
473 | 473 | $token = preg_replace('/\s+/', '', $token); |
474 | 474 | } |
475 | 475 | $this->preserved_tokens[] = $token; |
476 | 476 | |
477 | - $preserver = 'url(' . self::TOKEN . (count($this->preserved_tokens) - 1) . '___)'; |
|
477 | + $preserver = 'url('.self::TOKEN.(count($this->preserved_tokens) - 1).'___)'; |
|
478 | 478 | $sb[] = $preserver; |
479 | 479 | |
480 | 480 | $append_index = $end_index + 1; |
@@ -536,16 +536,16 @@ discard block |
||
536 | 536 | |
537 | 537 | if ($is_filter) { |
538 | 538 | // Restore, maintain case, otherwise filter will break |
539 | - $sb[] = $m[1] . '#' . $m[2] . $m[3] . $m[4] . $m[5] . $m[6] . $m[7]; |
|
539 | + $sb[] = $m[1].'#'.$m[2].$m[3].$m[4].$m[5].$m[6].$m[7]; |
|
540 | 540 | } else { |
541 | 541 | if (strtolower($m[2]) == strtolower($m[3]) && |
542 | 542 | strtolower($m[4]) == strtolower($m[5]) && |
543 | 543 | strtolower($m[6]) == strtolower($m[7])) { |
544 | 544 | // Compress. |
545 | - $hex = '#' . strtolower($m[3] . $m[5] . $m[7]); |
|
545 | + $hex = '#'.strtolower($m[3].$m[5].$m[7]); |
|
546 | 546 | } else { |
547 | 547 | // Non compressible color, restore but lower case. |
548 | - $hex = '#' . strtolower($m[2] . $m[3] . $m[4] . $m[5] . $m[6] . $m[7]); |
|
548 | + $hex = '#'.strtolower($m[2].$m[3].$m[4].$m[5].$m[6].$m[7]); |
|
549 | 549 | } |
550 | 550 | // replace Hex colors to short safe color names |
551 | 551 | $sb[] = array_key_exists($hex, $short_safe) ? $short_safe[$hex] : $hex; |
@@ -574,7 +574,7 @@ discard block |
||
574 | 574 | // one, maybe more? put'em back then |
575 | 575 | if (($pos = $this->index_of($match, self::COMMENT)) >= 0) { |
576 | 576 | for ($i = 0, $max = count($this->comments); $i < $max; $i++) { |
577 | - $match = preg_replace('/' . self::COMMENT . $i . '___/', $this->comments[$i], $match, 1); |
|
577 | + $match = preg_replace('/'.self::COMMENT.$i.'___/', $this->comments[$i], $match, 1); |
|
578 | 578 | } |
579 | 579 | } |
580 | 580 | |
@@ -582,7 +582,7 @@ discard block |
||
582 | 582 | $match = preg_replace('/progid\:DXImageTransform\.Microsoft\.Alpha\(Opacity\=/i', 'alpha(opacity=', $match); |
583 | 583 | |
584 | 584 | $this->preserved_tokens[] = $match; |
585 | - return $quote . self::TOKEN . (count($this->preserved_tokens) - 1) . '___' . $quote; |
|
585 | + return $quote.self::TOKEN.(count($this->preserved_tokens) - 1).'___'.$quote; |
|
586 | 586 | } |
587 | 587 | |
588 | 588 | private function replace_colon($matches) |
@@ -592,34 +592,34 @@ discard block |
||
592 | 592 | |
593 | 593 | private function replace_calc($matches) |
594 | 594 | { |
595 | - $this->preserved_tokens[] = preg_replace('/\)([\+\-]{1})/',') $1',preg_replace('/([\+\-]{1})\(/','$1 (',trim(preg_replace('/\s*([\*\/\(\),])\s*/', '$1', $matches[2])))); |
|
596 | - return 'calc('. self::TOKEN . (count($this->preserved_tokens) - 1) . '___' . ')'; |
|
595 | + $this->preserved_tokens[] = preg_replace('/\)([\+\-]{1})/', ') $1', preg_replace('/([\+\-]{1})\(/', '$1 (', trim(preg_replace('/\s*([\*\/\(\),])\s*/', '$1', $matches[2])))); |
|
596 | + return 'calc('.self::TOKEN.(count($this->preserved_tokens) - 1).'___'.')'; |
|
597 | 597 | } |
598 | 598 | |
599 | 599 | private function replace_flex($matches) |
600 | 600 | { |
601 | 601 | $this->preserved_tokens[] = trim($matches[1]); |
602 | - return 'flex:'.self::TOKEN . (count($this->preserved_tokens) - 1) . '___'; |
|
602 | + return 'flex:'.self::TOKEN.(count($this->preserved_tokens) - 1).'___'; |
|
603 | 603 | } |
604 | 604 | |
605 | 605 | private function preserve_old_IE_specific_matrix_definition($matches) |
606 | 606 | { |
607 | 607 | $this->preserved_tokens[] = $matches[1]; |
608 | - return 'filter:progid:DXImageTransform.Microsoft.Matrix(' . self::TOKEN . (count($this->preserved_tokens) - 1) . '___' . ')'; |
|
608 | + return 'filter:progid:DXImageTransform.Microsoft.Matrix('.self::TOKEN.(count($this->preserved_tokens) - 1).'___'.')'; |
|
609 | 609 | } |
610 | 610 | |
611 | 611 | private function replace_keyframe_zero($matches) |
612 | 612 | { |
613 | - return $matches[1] . preg_replace('/0(\{|,[^\)\{]+\{)/', '0%$1', $matches[2]) . $matches[3]; |
|
613 | + return $matches[1].preg_replace('/0(\{|,[^\)\{]+\{)/', '0%$1', $matches[2]).$matches[3]; |
|
614 | 614 | } |
615 | 615 | |
616 | 616 | private function rgb_to_hex($matches) |
617 | 617 | { |
618 | 618 | // Support for percentage values rgb(100%, 0%, 45%); |
619 | - if ($this->index_of($matches[1], '%') >= 0){ |
|
619 | + if ($this->index_of($matches[1], '%') >= 0) { |
|
620 | 620 | $rgbcolors = explode(',', str_replace('%', '', $matches[1])); |
621 | 621 | for ($i = 0; $i < count($rgbcolors); $i++) { |
622 | - $rgbcolors[$i] = $this->round_number(floatval($rgbcolors[$i]) * 2.55); |
|
622 | + $rgbcolors[$i] = $this->round_number(floatval($rgbcolors[$i])*2.55); |
|
623 | 623 | } |
624 | 624 | } else { |
625 | 625 | $rgbcolors = explode(',', $matches[1]); |
@@ -632,11 +632,11 @@ discard block |
||
632 | 632 | } |
633 | 633 | |
634 | 634 | // Fix for issue #2528093 |
635 | - if (!preg_match('/[\s\,\);\}]/', $matches[2])){ |
|
636 | - $matches[2] = ' ' . $matches[2]; |
|
635 | + if (!preg_match('/[\s\,\);\}]/', $matches[2])) { |
|
636 | + $matches[2] = ' '.$matches[2]; |
|
637 | 637 | } |
638 | 638 | |
639 | - return '#' . implode('', $rgbcolors) . $matches[2]; |
|
639 | + return '#'.implode('', $rgbcolors).$matches[2]; |
|
640 | 640 | } |
641 | 641 | |
642 | 642 | private function hsl_to_hex($matches) |
@@ -647,18 +647,18 @@ discard block |
||
647 | 647 | $l = floatval($values[2]); |
648 | 648 | |
649 | 649 | // Wrap and clamp, then fraction! |
650 | - $h = ((($h % 360) + 360) % 360) / 360; |
|
651 | - $s = $this->clamp_number($s, 0, 100) / 100; |
|
652 | - $l = $this->clamp_number($l, 0, 100) / 100; |
|
650 | + $h = ((($h%360) + 360)%360)/360; |
|
651 | + $s = $this->clamp_number($s, 0, 100)/100; |
|
652 | + $l = $this->clamp_number($l, 0, 100)/100; |
|
653 | 653 | |
654 | 654 | if ($s == 0) { |
655 | - $r = $g = $b = $this->round_number(255 * $l); |
|
655 | + $r = $g = $b = $this->round_number(255*$l); |
|
656 | 656 | } else { |
657 | - $v2 = $l < 0.5 ? $l * (1 + $s) : ($l + $s) - ($s * $l); |
|
658 | - $v1 = (2 * $l) - $v2; |
|
659 | - $r = $this->round_number(255 * $this->hue_to_rgb($v1, $v2, $h + (1/3))); |
|
660 | - $g = $this->round_number(255 * $this->hue_to_rgb($v1, $v2, $h)); |
|
661 | - $b = $this->round_number(255 * $this->hue_to_rgb($v1, $v2, $h - (1/3))); |
|
657 | + $v2 = $l < 0.5 ? $l*(1 + $s) : ($l + $s) - ($s*$l); |
|
658 | + $v1 = (2*$l) - $v2; |
|
659 | + $r = $this->round_number(255*$this->hue_to_rgb($v1, $v2, $h + (1/3))); |
|
660 | + $g = $this->round_number(255*$this->hue_to_rgb($v1, $v2, $h)); |
|
661 | + $b = $this->round_number(255*$this->hue_to_rgb($v1, $v2, $h - (1/3))); |
|
662 | 662 | } |
663 | 663 | |
664 | 664 | return $this->rgb_to_hex(array('', $r.','.$g.','.$b, $matches[2])); |
@@ -666,27 +666,27 @@ discard block |
||
666 | 666 | |
667 | 667 | private function lowercase_pseudo_first($matches) |
668 | 668 | { |
669 | - return ':first-'. strtolower($matches[1]) .' '. $matches[2]; |
|
669 | + return ':first-'.strtolower($matches[1]).' '.$matches[2]; |
|
670 | 670 | } |
671 | 671 | |
672 | 672 | private function lowercase_directives($matches) |
673 | 673 | { |
674 | - return '@'. strtolower($matches[1]); |
|
674 | + return '@'.strtolower($matches[1]); |
|
675 | 675 | } |
676 | 676 | |
677 | 677 | private function lowercase_pseudo_elements($matches) |
678 | 678 | { |
679 | - return ':'. strtolower($matches[1]); |
|
679 | + return ':'.strtolower($matches[1]); |
|
680 | 680 | } |
681 | 681 | |
682 | 682 | private function lowercase_common_functions($matches) |
683 | 683 | { |
684 | - return ':'. strtolower($matches[1]) .'('; |
|
684 | + return ':'.strtolower($matches[1]).'('; |
|
685 | 685 | } |
686 | 686 | |
687 | 687 | private function lowercase_common_functions_values($matches) |
688 | 688 | { |
689 | - return $matches[1] . strtolower($matches[2]); |
|
689 | + return $matches[1].strtolower($matches[2]); |
|
690 | 690 | } |
691 | 691 | |
692 | 692 | private function lowercase_properties($matches) |
@@ -701,9 +701,9 @@ discard block |
||
701 | 701 | private function hue_to_rgb($v1, $v2, $vh) |
702 | 702 | { |
703 | 703 | $vh = $vh < 0 ? $vh + 1 : ($vh > 1 ? $vh - 1 : $vh); |
704 | - if ($vh * 6 < 1) return $v1 + ($v2 - $v1) * 6 * $vh; |
|
705 | - if ($vh * 2 < 1) return $v2; |
|
706 | - if ($vh * 3 < 2) return $v1 + ($v2 - $v1) * ((2/3) - $vh) * 6; |
|
704 | + if ($vh*6 < 1) return $v1 + ($v2 - $v1)*6*$vh; |
|
705 | + if ($vh*2 < 1) return $v2; |
|
706 | + if ($vh*3 < 2) return $v1 + ($v2 - $v1)*((2/3) - $vh)*6; |
|
707 | 707 | return $v1; |
708 | 708 | } |
709 | 709 | |
@@ -778,9 +778,9 @@ discard block |
||
778 | 778 | { |
779 | 779 | if (is_string($size)) { |
780 | 780 | switch (substr($size, -1)) { |
781 | - case 'M': case 'm': return (int) $size * 1048576; |
|
782 | - case 'K': case 'k': return (int) $size * 1024; |
|
783 | - case 'G': case 'g': return (int) $size * 1073741824; |
|
781 | + case 'M': case 'm': return (int) $size*1048576; |
|
782 | + case 'K': case 'k': return (int) $size*1024; |
|
783 | + case 'G': case 'g': return (int) $size*1073741824; |
|
784 | 784 | } |
785 | 785 | } |
786 | 786 |
@@ -5,20 +5,20 @@ discard block |
||
5 | 5 | |
6 | 6 | add_action('admin_init', 'ao_partner_tabs_preinit'); |
7 | 7 | function ao_partner_tabs_preinit() { |
8 | - if (apply_filters('autoptimize_filter_show_partner_tabs',true)) { |
|
9 | - add_filter('autoptimize_filter_settingsscreen_tabs','ao_add_partner_tabs'); |
|
8 | + if (apply_filters('autoptimize_filter_show_partner_tabs', true)) { |
|
9 | + add_filter('autoptimize_filter_settingsscreen_tabs', 'ao_add_partner_tabs'); |
|
10 | 10 | } |
11 | 11 | } |
12 | 12 | |
13 | 13 | function ao_add_partner_tabs($in) { |
14 | - $in=array_merge($in,array('ao_partners' => __('Optimize More!','autoptimize'))); |
|
14 | + $in = array_merge($in, array('ao_partners' => __('Optimize More!', 'autoptimize'))); |
|
15 | 15 | return $in; |
16 | 16 | } |
17 | 17 | |
18 | -add_action('admin_menu','ao_partners_init'); |
|
18 | +add_action('admin_menu', 'ao_partners_init'); |
|
19 | 19 | function ao_partners_init() { |
20 | - if (apply_filters('autoptimize_filter_show_partner_tabs',true)) { |
|
21 | - $hook=add_submenu_page(NULL,'AO partner','AO partner','manage_options','ao_partners','ao_partners'); |
|
20 | + if (apply_filters('autoptimize_filter_show_partner_tabs', true)) { |
|
21 | + $hook = add_submenu_page(NULL, 'AO partner', 'AO partner', 'manage_options', 'ao_partners', 'ao_partners'); |
|
22 | 22 | // register_settings here as well if needed |
23 | 23 | } |
24 | 24 | } |
@@ -69,10 +69,10 @@ discard block |
||
69 | 69 | } |
70 | 70 | </style> |
71 | 71 | <div class="wrap"> |
72 | - <h1><?php _e('Autoptimize Settings','autoptimize'); ?></h1> |
|
72 | + <h1><?php _e('Autoptimize Settings', 'autoptimize'); ?></h1> |
|
73 | 73 | <?php echo autoptimizeConfig::ao_admin_tabs(); ?> |
74 | 74 | <?php |
75 | - echo '<h2>'. __("These Autoptimize power-ups and related services will improve your site's performance even more!",'autoptimize') . '</h2>'; |
|
75 | + echo '<h2>'.__("These Autoptimize power-ups and related services will improve your site's performance even more!", 'autoptimize').'</h2>'; |
|
76 | 76 | ?> |
77 | 77 | <div> |
78 | 78 | <?php getAOPartnerFeed(); ?> |
@@ -82,32 +82,32 @@ discard block |
||
82 | 82 | } |
83 | 83 | |
84 | 84 | function getAOPartnerFeed() { |
85 | - $noFeedText=__( 'Have a look at <a href="http://optimizingmatters.com/">optimizingmatters.com</a> for Autoptimize power-ups!', 'autoptimize' ); |
|
85 | + $noFeedText = __('Have a look at <a href="http://optimizingmatters.com/">optimizingmatters.com</a> for Autoptimize power-ups!', 'autoptimize'); |
|
86 | 86 | |
87 | - if (apply_filters('autoptimize_settingsscreen_remotehttp',true)) { |
|
88 | - $rss = fetch_feed( "http://feeds.feedburner.com/OptimizingMattersDownloads" ); |
|
87 | + if (apply_filters('autoptimize_settingsscreen_remotehttp', true)) { |
|
88 | + $rss = fetch_feed("http://feeds.feedburner.com/OptimizingMattersDownloads"); |
|
89 | 89 | $maxitems = 0; |
90 | 90 | |
91 | - if ( ! is_wp_error( $rss ) ) { |
|
92 | - $maxitems = $rss->get_item_quantity( 20 ); |
|
93 | - $rss_items = $rss->get_items( 0, $maxitems ); |
|
91 | + if (!is_wp_error($rss)) { |
|
92 | + $maxitems = $rss->get_item_quantity(20); |
|
93 | + $rss_items = $rss->get_items(0, $maxitems); |
|
94 | 94 | } ?> |
95 | 95 | <ul> |
96 | 96 | <?php |
97 | - if ( $maxitems == 0 ) { |
|
97 | + if ($maxitems == 0) { |
|
98 | 98 | echo $noFeedText; |
99 | 99 | } else { |
100 | - foreach ( $rss_items as $item ) : |
|
101 | - $itemURL = esc_url( $item->get_permalink() ); ?> |
|
100 | + foreach ($rss_items as $item) : |
|
101 | + $itemURL = esc_url($item->get_permalink()); ?> |
|
102 | 102 | <li class="itemDetail"> |
103 | - <h3 class="itemTitle"><a href="<?php echo $itemURL; ?>" target="_blank"><?php echo esc_html( $item->get_title() ); ?></a></h3> |
|
103 | + <h3 class="itemTitle"><a href="<?php echo $itemURL; ?>" target="_blank"><?php echo esc_html($item->get_title()); ?></a></h3> |
|
104 | 104 | <?php |
105 | - if (($enclosure = $item->get_enclosure()) && (strpos($enclosure->get_type(),"image")!==false) ) { |
|
106 | - $itemImgURL=esc_url($enclosure->get_link()); |
|
105 | + if (($enclosure = $item->get_enclosure()) && (strpos($enclosure->get_type(), "image") !== false)) { |
|
106 | + $itemImgURL = esc_url($enclosure->get_link()); |
|
107 | 107 | echo "<div class=\"itemImage\"><a href=\"".$itemURL."\" target=\"_blank\"><img src=\"".$itemImgURL."\"/></a></div>"; |
108 | 108 | } |
109 | 109 | ?> |
110 | - <div class="itemDescription"><?php echo wp_kses_post($item -> get_description() ); ?></div> |
|
110 | + <div class="itemDescription"><?php echo wp_kses_post($item -> get_description()); ?></div> |
|
111 | 111 | <div class="itemButtonRow"><div class="itemButton button-secondary"><a href="<?php echo $itemURL; ?>" target="_blank">More info</a></div></div> |
112 | 112 | </li> |
113 | 113 | <?php endforeach; ?> |
@@ -1,35 +1,35 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
2 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
3 | 3 | class autoptimizeToolbar |
4 | 4 | { |
5 | 5 | public function __construct() |
6 | 6 | { |
7 | 7 | // If Cache is not available we don't add the Autoptimize Toolbar |
8 | - if( ! autoptimizeCache::cacheavail() ) { |
|
8 | + if (!autoptimizeCache::cacheavail()) { |
|
9 | 9 | return; |
10 | 10 | } |
11 | 11 | // Load admin toolbar feature once WordPress, all plugins, and the theme are fully loaded and instantiated. |
12 | - add_action( 'wp_loaded', array( $this, 'load_toolbar' ) ); |
|
12 | + add_action('wp_loaded', array($this, 'load_toolbar')); |
|
13 | 13 | } |
14 | 14 | |
15 | 15 | public function load_toolbar() |
16 | 16 | { |
17 | 17 | // Check permissions and that toolbar is not hidden via filter |
18 | - if ( current_user_can( 'manage_options' ) && apply_filters( 'autoptimize_filter_toolbar_show', true ) ) { |
|
18 | + if (current_user_can('manage_options') && apply_filters('autoptimize_filter_toolbar_show', true)) { |
|
19 | 19 | // Create a handler for the AJAX toolbar requests |
20 | - add_action( 'wp_ajax_autoptimize_delete_cache', array( $this, 'delete_cache' ) ); |
|
20 | + add_action('wp_ajax_autoptimize_delete_cache', array($this, 'delete_cache')); |
|
21 | 21 | |
22 | 22 | // Load custom styles, scripts and menu only when needed |
23 | - if ( is_admin_bar_showing() ) { |
|
24 | - if ( is_admin() ) { |
|
23 | + if (is_admin_bar_showing()) { |
|
24 | + if (is_admin()) { |
|
25 | 25 | // in the case of back-end |
26 | - add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); |
|
26 | + add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts')); |
|
27 | 27 | } else { |
28 | 28 | // in the case of front-end |
29 | - add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); |
|
29 | + add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts')); |
|
30 | 30 | } |
31 | 31 | // Add the Autoptimize Toolbar to the Admin bar |
32 | - add_action( 'admin_bar_menu', array( $this, 'add_toolbar' ), 100 ); |
|
32 | + add_action('admin_bar_menu', array($this, 'add_toolbar'), 100); |
|
33 | 33 | } |
34 | 34 | } |
35 | 35 | } |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | $stats = autoptimizeCache::stats(); |
43 | 43 | |
44 | 44 | // Set the Max Size recommended for cache files |
45 | - $max_size = apply_filters( 'autoptimize_filter_cachecheck_maxsize', 512 * 1024 * 1024 ); |
|
45 | + $max_size = apply_filters('autoptimize_filter_cachecheck_maxsize', 512*1024*1024); |
|
46 | 46 | |
47 | 47 | // Retrieve the current Total Files in cache |
48 | 48 | $files = $stats[0]; |
@@ -52,83 +52,83 @@ discard block |
||
52 | 52 | $size = $this->format_filesize($bytes); |
53 | 53 | |
54 | 54 | // We calculated the percentage of cache used |
55 | - $percentage = ceil( $bytes / $max_size * 100 ); |
|
56 | - if ( $percentage > 100 ) { |
|
55 | + $percentage = ceil($bytes/$max_size*100); |
|
56 | + if ($percentage > 100) { |
|
57 | 57 | $percentage = 100; |
58 | 58 | } |
59 | 59 | // We define the type of color indicator for the current state of cache size. |
60 | 60 | // "green" if the size is less than 80% of the total recommended |
61 | 61 | // "orange" if over 80% |
62 | 62 | // "red" if over 100% |
63 | - $color = ( $percentage == 100 ) ? 'red' : ( ( $percentage > 80 ) ? 'orange' : 'green' ); |
|
63 | + $color = ($percentage == 100) ? 'red' : (($percentage > 80) ? 'orange' : 'green'); |
|
64 | 64 | |
65 | 65 | // Create or add new items into the Admin Toolbar. |
66 | 66 | // Main Autoptimize node |
67 | - $wp_admin_bar->add_node( array( |
|
67 | + $wp_admin_bar->add_node(array( |
|
68 | 68 | 'id' => 'autoptimize', |
69 | - 'title' => '<span class="ab-icon"></span><span class="ab-label">' . __( "Autoptimize", 'autoptimize' ) . '</span>', |
|
70 | - 'href' => admin_url( 'options-general.php?page=autoptimize' ), |
|
71 | - 'meta' => array( 'class' => 'bullet-' . $color ) |
|
69 | + 'title' => '<span class="ab-icon"></span><span class="ab-label">'.__("Autoptimize", 'autoptimize').'</span>', |
|
70 | + 'href' => admin_url('options-general.php?page=autoptimize'), |
|
71 | + 'meta' => array('class' => 'bullet-'.$color) |
|
72 | 72 | )); |
73 | 73 | |
74 | 74 | // Cache Info node |
75 | - $wp_admin_bar->add_node( array( |
|
75 | + $wp_admin_bar->add_node(array( |
|
76 | 76 | 'id' => 'autoptimize-cache-info', |
77 | - 'title' => '<p>' . __( "Cache Info", 'autoptimize' ) . '</p>' . |
|
78 | - '<div class="autoptimize-radial-bar" percentage="' . $percentage . '">' . |
|
77 | + 'title' => '<p>'.__("Cache Info", 'autoptimize').'</p>'. |
|
78 | + '<div class="autoptimize-radial-bar" percentage="'.$percentage.'">'. |
|
79 | 79 | '<div class="circle">'. |
80 | - '<div class="mask full"><div class="fill bg-' . $color . '"></div></div>'. |
|
81 | - '<div class="mask half"><div class="fill bg-' . $color . '"></div></div>'. |
|
80 | + '<div class="mask full"><div class="fill bg-'.$color.'"></div></div>'. |
|
81 | + '<div class="mask half"><div class="fill bg-'.$color.'"></div></div>'. |
|
82 | 82 | '<div class="shadow"></div>'. |
83 | 83 | '</div>'. |
84 | - '<div class="inset"><div class="percentage"><div class="numbers ' . $color . '">' . $percentage . '%</div></div></div>'. |
|
85 | - '</div>' . |
|
86 | - '<table>' . |
|
87 | - '<tr><td>' . __( "Size", 'autoptimize' ) . ':</td><td class="size ' . $color . '">' . $size . '</td></tr>' . |
|
88 | - '<tr><td>' . __( "Files", 'autoptimize' ) . ':</td><td class="files white">' . $files . '</td></tr>' . |
|
84 | + '<div class="inset"><div class="percentage"><div class="numbers '.$color.'">'.$percentage.'%</div></div></div>'. |
|
85 | + '</div>'. |
|
86 | + '<table>'. |
|
87 | + '<tr><td>'.__("Size", 'autoptimize').':</td><td class="size '.$color.'">'.$size.'</td></tr>'. |
|
88 | + '<tr><td>'.__("Files", 'autoptimize').':</td><td class="files white">'.$files.'</td></tr>'. |
|
89 | 89 | '</table>', |
90 | 90 | 'parent' => 'autoptimize' |
91 | 91 | )); |
92 | 92 | |
93 | 93 | // Delete Cache node |
94 | - $wp_admin_bar->add_node( array( |
|
94 | + $wp_admin_bar->add_node(array( |
|
95 | 95 | 'id' => 'autoptimize-delete-cache', |
96 | - 'title' => __( "Delete Cache", 'autoptimize' ), |
|
96 | + 'title' => __("Delete Cache", 'autoptimize'), |
|
97 | 97 | 'parent' => 'autoptimize' |
98 | 98 | )); |
99 | 99 | } |
100 | 100 | |
101 | 101 | public function delete_cache() |
102 | 102 | { |
103 | - check_ajax_referer( 'ao_delcache_nonce', 'nonce' ); |
|
103 | + check_ajax_referer('ao_delcache_nonce', 'nonce'); |
|
104 | 104 | $result = false; |
105 | - if ( current_user_can( 'manage_options' ) ) |
|
105 | + if (current_user_can('manage_options')) |
|
106 | 106 | { |
107 | 107 | // We call the function for cleaning the Autoptimize cache |
108 | 108 | $result = autoptimizeCache::clearall(); |
109 | 109 | } |
110 | - wp_send_json( $result ); |
|
110 | + wp_send_json($result); |
|
111 | 111 | } |
112 | 112 | |
113 | 113 | public function enqueue_scripts() |
114 | 114 | { |
115 | 115 | // Autoptimize Toolbar Styles |
116 | - wp_enqueue_style( 'autoptimize-toolbar', plugins_url( '/static/toolbar.css', __FILE__ ), array(), time(), 'all' ); |
|
116 | + wp_enqueue_style('autoptimize-toolbar', plugins_url('/static/toolbar.css', __FILE__), array(), time(), 'all'); |
|
117 | 117 | // Autoptimize Toolbar Javascript |
118 | - wp_enqueue_script( 'autoptimize-toolbar', plugins_url( '/static/toolbar.js', __FILE__ ), array( 'jquery' ), time(), true ); |
|
118 | + wp_enqueue_script('autoptimize-toolbar', plugins_url('/static/toolbar.js', __FILE__), array('jquery'), time(), true); |
|
119 | 119 | // Localizes a registered script with data for a JavaScript variable. (We need this for the AJAX work properly in the front-end mode) |
120 | - wp_localize_script( 'autoptimize-toolbar', 'autoptimize_ajax_object', array( |
|
121 | - 'ajaxurl' => admin_url( 'admin-ajax.php' ), |
|
122 | - 'error_msg' => sprintf( __( 'Your Autoptimize cache might not have been purged successfully, please check on the <a href=%s>Autoptimize settings page</a>.', 'autoptimize' ), admin_url( 'options-general.php?page=autoptimize' ) . ' style="white-space:nowrap;"' ), |
|
123 | - 'dismiss_msg' => __( 'Dismiss this notice.' ), |
|
124 | - 'nonce' => wp_create_nonce( 'ao_delcache_nonce' ) |
|
125 | - ) ); |
|
120 | + wp_localize_script('autoptimize-toolbar', 'autoptimize_ajax_object', array( |
|
121 | + 'ajaxurl' => admin_url('admin-ajax.php'), |
|
122 | + 'error_msg' => sprintf(__('Your Autoptimize cache might not have been purged successfully, please check on the <a href=%s>Autoptimize settings page</a>.', 'autoptimize'), admin_url('options-general.php?page=autoptimize').' style="white-space:nowrap;"'), |
|
123 | + 'dismiss_msg' => __('Dismiss this notice.'), |
|
124 | + 'nonce' => wp_create_nonce('ao_delcache_nonce') |
|
125 | + )); |
|
126 | 126 | } |
127 | 127 | |
128 | 128 | public function format_filesize($bytes, $decimals = 2) |
129 | 129 | { |
130 | - $units = array( 'B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB' ); |
|
131 | - for ($i = 0; ($bytes / 1024) > 0.9; $i++, $bytes /= 1024) {} |
|
132 | - return sprintf( "%1.{$decimals}f %s", round( $bytes, $decimals ), $units[$i] ); |
|
130 | + $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'); |
|
131 | + for ($i = 0; ($bytes/1024) > 0.9; $i++, $bytes /= 1024) {} |
|
132 | + return sprintf("%1.{$decimals}f %s", round($bytes, $decimals), $units[$i]); |
|
133 | 133 | } |
134 | 134 | } |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
2 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
3 | 3 | |
4 | 4 | abstract class autoptimizeBase { |
5 | 5 | protected $content = ''; |
@@ -23,37 +23,37 @@ discard block |
||
23 | 23 | |
24 | 24 | //Converts an URL to a full path |
25 | 25 | protected function getpath($url) { |
26 | - $url=apply_filters( 'autoptimize_filter_cssjs_alter_url', $url); |
|
26 | + $url = apply_filters('autoptimize_filter_cssjs_alter_url', $url); |
|
27 | 27 | |
28 | - if (strpos($url,'%')!==false) { |
|
29 | - $url=urldecode($url); |
|
28 | + if (strpos($url, '%') !== false) { |
|
29 | + $url = urldecode($url); |
|
30 | 30 | } |
31 | 31 | |
32 | - $siteHost=parse_url(AUTOPTIMIZE_WP_SITE_URL,PHP_URL_HOST); |
|
33 | - $contentHost=parse_url(AUTOPTIMIZE_WP_ROOT_URL,PHP_URL_HOST); |
|
32 | + $siteHost = parse_url(AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST); |
|
33 | + $contentHost = parse_url(AUTOPTIMIZE_WP_ROOT_URL, PHP_URL_HOST); |
|
34 | 34 | |
35 | 35 | // normalize |
36 | - if (strpos($url,'//')===0) { |
|
36 | + if (strpos($url, '//') === 0) { |
|
37 | 37 | if (is_ssl()) { |
38 | 38 | $url = "https:".$url; |
39 | 39 | } else { |
40 | 40 | $url = "http:".$url; |
41 | 41 | } |
42 | - } else if ((strpos($url,'//')===false) && (strpos($url,$siteHost)===false)) { |
|
42 | + } else if ((strpos($url, '//') === false) && (strpos($url, $siteHost) === false)) { |
|
43 | 43 | if (AUTOPTIMIZE_WP_SITE_URL === $siteHost) { |
44 | 44 | $url = AUTOPTIMIZE_WP_SITE_URL.$url; |
45 | 45 | } else { |
46 | - $subdir_levels=substr_count(preg_replace("/https?:\/\//","",AUTOPTIMIZE_WP_SITE_URL),"/"); |
|
47 | - $url = AUTOPTIMIZE_WP_SITE_URL.str_repeat("/..",$subdir_levels).$url; |
|
46 | + $subdir_levels = substr_count(preg_replace("/https?:\/\//", "", AUTOPTIMIZE_WP_SITE_URL), "/"); |
|
47 | + $url = AUTOPTIMIZE_WP_SITE_URL.str_repeat("/..", $subdir_levels).$url; |
|
48 | 48 | } |
49 | 49 | } |
50 | 50 | |
51 | 51 | if ($siteHost !== $contentHost) { |
52 | - $url=str_replace(AUTOPTIMIZE_WP_CONTENT_URL,AUTOPTIMIZE_WP_SITE_URL.AUTOPTIMIZE_WP_CONTENT_NAME,$url); |
|
52 | + $url = str_replace(AUTOPTIMIZE_WP_CONTENT_URL, AUTOPTIMIZE_WP_SITE_URL.AUTOPTIMIZE_WP_CONTENT_NAME, $url); |
|
53 | 53 | } |
54 | 54 | |
55 | 55 | // first check; hostname wp site should be hostname of url |
56 | - $thisHost=@parse_url($url,PHP_URL_HOST); |
|
56 | + $thisHost = @parse_url($url, PHP_URL_HOST); |
|
57 | 57 | if ($thisHost !== $siteHost) { |
58 | 58 | /* |
59 | 59 | * first try to get all domains from WPML (if available) |
@@ -65,18 +65,18 @@ discard block |
||
65 | 65 | |
66 | 66 | $multidomainsWPML = apply_filters('wpml_setting', array(), 'language_domains'); |
67 | 67 | if (!empty($multidomainsWPML)) { |
68 | - $multidomains = array_map(array($this,"ao_getDomain"),$multidomainsWPML); |
|
68 | + $multidomains = array_map(array($this, "ao_getDomain"), $multidomainsWPML); |
|
69 | 69 | } |
70 | 70 | |
71 | 71 | if (!empty($this->cdn_url)) { |
72 | - $multidomains[]=parse_url($this->cdn_url,PHP_URL_HOST); |
|
72 | + $multidomains[] = parse_url($this->cdn_url, PHP_URL_HOST); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | $multidomains = apply_filters('autoptimize_filter_cssjs_multidomain', $multidomains); |
76 | 76 | |
77 | 77 | if (!empty($multidomains)) { |
78 | - if (in_array($thisHost,$multidomains)) { |
|
79 | - $url=str_replace($thisHost, parse_url(AUTOPTIMIZE_WP_SITE_URL,PHP_URL_HOST), $url); |
|
78 | + if (in_array($thisHost, $multidomains)) { |
|
79 | + $url = str_replace($thisHost, parse_url(AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST), $url); |
|
80 | 80 | } else { |
81 | 81 | return false; |
82 | 82 | } |
@@ -86,22 +86,22 @@ discard block |
||
86 | 86 | } |
87 | 87 | |
88 | 88 | // try to remove "wp root url" from url while not minding http<>https |
89 | - $tmp_ao_root = preg_replace('/https?:/','',AUTOPTIMIZE_WP_ROOT_URL); |
|
89 | + $tmp_ao_root = preg_replace('/https?:/', '', AUTOPTIMIZE_WP_ROOT_URL); |
|
90 | 90 | if ($siteHost !== $contentHost) { |
91 | 91 | // as we replaced the content-domain with the site-domain, we should match against that |
92 | - $tmp_ao_root = preg_replace('/https?:/','',AUTOPTIMIZE_WP_SITE_URL); |
|
92 | + $tmp_ao_root = preg_replace('/https?:/', '', AUTOPTIMIZE_WP_SITE_URL); |
|
93 | 93 | } |
94 | - $tmp_url = preg_replace('/https?:/','',$url); |
|
95 | - $path = str_replace($tmp_ao_root,'',$tmp_url); |
|
94 | + $tmp_url = preg_replace('/https?:/', '', $url); |
|
95 | + $path = str_replace($tmp_ao_root, '', $tmp_url); |
|
96 | 96 | |
97 | 97 | // if path starts with :// or //, this is not a URL in the WP context and we have to assume we can't aggregate |
98 | - if (preg_match('#^:?//#',$path)) { |
|
98 | + if (preg_match('#^:?//#', $path)) { |
|
99 | 99 | /** External script/css (adsense, etc) */ |
100 | 100 | return false; |
101 | 101 | } |
102 | 102 | |
103 | 103 | // prepend with WP_ROOT_DIR to have full path to file |
104 | - $path = str_replace('//','/',WP_ROOT_DIR.$path); |
|
104 | + $path = str_replace('//', '/', WP_ROOT_DIR.$path); |
|
105 | 105 | |
106 | 106 | // final check: does file exist and is it readable |
107 | 107 | if (file_exists($path) && is_file($path) && is_readable($path)) { |
@@ -114,25 +114,25 @@ discard block |
||
114 | 114 | // needed for WPML-filter |
115 | 115 | protected function ao_getDomain($in) { |
116 | 116 | // make sure the url starts with something vaguely resembling a protocol |
117 | - if ((strpos($in,"http")!==0) && (strpos($in,"//")!==0)) { |
|
118 | - $in="http://".$in; |
|
117 | + if ((strpos($in, "http") !== 0) && (strpos($in, "//") !== 0)) { |
|
118 | + $in = "http://".$in; |
|
119 | 119 | } |
120 | 120 | |
121 | 121 | // do the actual parse_url |
122 | - $out = parse_url($in,PHP_URL_HOST); |
|
122 | + $out = parse_url($in, PHP_URL_HOST); |
|
123 | 123 | |
124 | 124 | // fallback if parse_url does not understand the url is in fact a url |
125 | - if (empty($out)) $out=$in; |
|
125 | + if (empty($out)) $out = $in; |
|
126 | 126 | |
127 | 127 | return $out; |
128 | 128 | } |
129 | 129 | |
130 | 130 | |
131 | 131 | // logger |
132 | - protected function ao_logger($logmsg,$appendHTML=true) { |
|
132 | + protected function ao_logger($logmsg, $appendHTML = true) { |
|
133 | 133 | if ($appendHTML) { |
134 | - $logmsg="<!--noptimize--><!-- ".$logmsg." --><!--/noptimize-->"; |
|
135 | - $this->content.=$logmsg; |
|
134 | + $logmsg = "<!--noptimize--><!-- ".$logmsg." --><!--/noptimize-->"; |
|
135 | + $this->content .= $logmsg; |
|
136 | 136 | } else { |
137 | 137 | error_log("Autoptimize: ".$logmsg); |
138 | 138 | } |
@@ -140,7 +140,7 @@ discard block |
||
140 | 140 | |
141 | 141 | // hide everything between noptimize-comment tags |
142 | 142 | protected function hide_noptimize($noptimize_in) { |
143 | - if ( preg_match( '/<!--\s?noptimize\s?-->/', $noptimize_in ) ) { |
|
143 | + if (preg_match('/<!--\s?noptimize\s?-->/', $noptimize_in)) { |
|
144 | 144 | $noptimize_out = preg_replace_callback( |
145 | 145 | '#<!--\s?noptimize\s?-->.*?<!--\s?/\s?noptimize\s?-->#is', |
146 | 146 | create_function( |
@@ -157,7 +157,7 @@ discard block |
||
157 | 157 | |
158 | 158 | // unhide noptimize-tags |
159 | 159 | protected function restore_noptimize($noptimize_in) { |
160 | - if ( strpos( $noptimize_in, '%%NOPTIMIZE%%' ) !== false ) { |
|
160 | + if (strpos($noptimize_in, '%%NOPTIMIZE%%') !== false) { |
|
161 | 161 | $noptimize_out = preg_replace_callback( |
162 | 162 | '#%%NOPTIMIZE%%(.*?)%%NOPTIMIZE%%#is', |
163 | 163 | create_function( |
@@ -173,7 +173,7 @@ discard block |
||
173 | 173 | } |
174 | 174 | |
175 | 175 | protected function hide_iehacks($iehacks_in) { |
176 | - if ( strpos( $iehacks_in, '<!--[if' ) !== false ) { |
|
176 | + if (strpos($iehacks_in, '<!--[if') !== false) { |
|
177 | 177 | $iehacks_out = preg_replace_callback( |
178 | 178 | '#<!--\[if.*?\[endif\]-->#is', |
179 | 179 | create_function( |
@@ -189,7 +189,7 @@ discard block |
||
189 | 189 | } |
190 | 190 | |
191 | 191 | protected function restore_iehacks($iehacks_in) { |
192 | - if ( strpos( $iehacks_in, '%%IEHACK%%' ) !== false ) { |
|
192 | + if (strpos($iehacks_in, '%%IEHACK%%') !== false) { |
|
193 | 193 | $iehacks_out = preg_replace_callback( |
194 | 194 | '#%%IEHACK%%(.*?)%%IEHACK%%#is', |
195 | 195 | create_function( |
@@ -199,13 +199,13 @@ discard block |
||
199 | 199 | $iehacks_in |
200 | 200 | ); |
201 | 201 | } else { |
202 | - $iehacks_out=$iehacks_in; |
|
202 | + $iehacks_out = $iehacks_in; |
|
203 | 203 | } |
204 | 204 | return $iehacks_out; |
205 | 205 | } |
206 | 206 | |
207 | 207 | protected function hide_comments($comments_in) { |
208 | - if ( strpos( $comments_in, '<!--' ) !== false ) { |
|
208 | + if (strpos($comments_in, '<!--') !== false) { |
|
209 | 209 | $comments_out = preg_replace_callback( |
210 | 210 | '#<!--.*?-->#is', |
211 | 211 | create_function( |
@@ -221,7 +221,7 @@ discard block |
||
221 | 221 | } |
222 | 222 | |
223 | 223 | protected function restore_comments($comments_in) { |
224 | - if ( strpos( $comments_in, '%%COMMENTS%%' ) !== false ) { |
|
224 | + if (strpos($comments_in, '%%COMMENTS%%') !== false) { |
|
225 | 225 | $comments_out = preg_replace_callback( |
226 | 226 | '#%%COMMENTS%%(.*?)%%COMMENTS%%#is', |
227 | 227 | create_function( |
@@ -231,31 +231,31 @@ discard block |
||
231 | 231 | $comments_in |
232 | 232 | ); |
233 | 233 | } else { |
234 | - $comments_out=$comments_in; |
|
234 | + $comments_out = $comments_in; |
|
235 | 235 | } |
236 | 236 | return $comments_out; |
237 | 237 | } |
238 | 238 | |
239 | - protected function url_replace_cdn( $url ) { |
|
239 | + protected function url_replace_cdn($url) { |
|
240 | 240 | // API filter to change base CDN URL |
241 | - $cdn_url = apply_filters( 'autoptimize_filter_base_cdnurl', $this->cdn_url ); |
|
241 | + $cdn_url = apply_filters('autoptimize_filter_base_cdnurl', $this->cdn_url); |
|
242 | 242 | |
243 | - if ( !empty($cdn_url) ) { |
|
243 | + if (!empty($cdn_url)) { |
|
244 | 244 | // prepend domain-less absolute URL's |
245 | - if ( ( substr( $url, 0, 1 ) === '/' ) && ( substr( $url, 1, 1 ) !== '/' ) ) { |
|
246 | - $url = rtrim( $cdn_url, '/' ) . $url; |
|
245 | + if ((substr($url, 0, 1) === '/') && (substr($url, 1, 1) !== '/')) { |
|
246 | + $url = rtrim($cdn_url, '/').$url; |
|
247 | 247 | } else { |
248 | 248 | // get wordpress base URL |
249 | - $WPSiteBreakdown = parse_url( AUTOPTIMIZE_WP_SITE_URL ); |
|
250 | - $WPBaseUrl = $WPSiteBreakdown['scheme'] . '://' . $WPSiteBreakdown['host']; |
|
251 | - if ( ! empty( $WPSiteBreakdown['port'] ) ) { |
|
252 | - $WPBaseUrl .= ":" . $WPSiteBreakdown['port']; |
|
249 | + $WPSiteBreakdown = parse_url(AUTOPTIMIZE_WP_SITE_URL); |
|
250 | + $WPBaseUrl = $WPSiteBreakdown['scheme'].'://'.$WPSiteBreakdown['host']; |
|
251 | + if (!empty($WPSiteBreakdown['port'])) { |
|
252 | + $WPBaseUrl .= ":".$WPSiteBreakdown['port']; |
|
253 | 253 | } |
254 | 254 | // replace full url's with scheme |
255 | - $tmp_url = str_replace( $WPBaseUrl, rtrim( $cdn_url, '/' ), $url ); |
|
256 | - if ( $tmp_url === $url ) { |
|
255 | + $tmp_url = str_replace($WPBaseUrl, rtrim($cdn_url, '/'), $url); |
|
256 | + if ($tmp_url === $url) { |
|
257 | 257 | // last attempt; replace scheme-less URL's |
258 | - $url = str_replace( preg_replace( '/https?:/', '', $WPBaseUrl ), rtrim( $cdn_url, '/' ), $url ); |
|
258 | + $url = str_replace(preg_replace('/https?:/', '', $WPBaseUrl), rtrim($cdn_url, '/'), $url); |
|
259 | 259 | } else { |
260 | 260 | $url = $tmp_url; |
261 | 261 | } |
@@ -263,32 +263,32 @@ discard block |
||
263 | 263 | } |
264 | 264 | |
265 | 265 | // allow API filter to alter URL after CDN replacement |
266 | - $url = apply_filters( 'autoptimize_filter_base_replace_cdn', $url ); |
|
266 | + $url = apply_filters('autoptimize_filter_base_replace_cdn', $url); |
|
267 | 267 | return $url; |
268 | 268 | } |
269 | 269 | |
270 | - protected function inject_in_html($payload,$replaceTag) { |
|
271 | - if (strpos($this->content,$replaceTag[0])!== false) { |
|
272 | - if ($replaceTag[1]==="after") { |
|
273 | - $replaceBlock=$replaceTag[0].$payload; |
|
274 | - } else if ($replaceTag[1]==="replace"){ |
|
275 | - $replaceBlock=$payload; |
|
270 | + protected function inject_in_html($payload, $replaceTag) { |
|
271 | + if (strpos($this->content, $replaceTag[0]) !== false) { |
|
272 | + if ($replaceTag[1] === "after") { |
|
273 | + $replaceBlock = $replaceTag[0].$payload; |
|
274 | + } else if ($replaceTag[1] === "replace") { |
|
275 | + $replaceBlock = $payload; |
|
276 | 276 | } else { |
277 | - $replaceBlock=$payload.$replaceTag[0]; |
|
277 | + $replaceBlock = $payload.$replaceTag[0]; |
|
278 | 278 | } |
279 | - $this->content = substr_replace($this->content,$replaceBlock,strpos($this->content,$replaceTag[0]),strlen($replaceTag[0])); |
|
279 | + $this->content = substr_replace($this->content, $replaceBlock, strpos($this->content, $replaceTag[0]), strlen($replaceTag[0])); |
|
280 | 280 | } else { |
281 | 281 | $this->content .= $payload; |
282 | 282 | if (!$this->tagWarning) { |
283 | - $this->content .= "<!--noptimize--><!-- Autoptimize found a problem with the HTML in your Theme, tag \"".str_replace(array("<",">"),"",$replaceTag[0])."\" missing --><!--/noptimize-->"; |
|
284 | - $this->tagWarning=true; |
|
283 | + $this->content .= "<!--noptimize--><!-- Autoptimize found a problem with the HTML in your Theme, tag \"".str_replace(array("<", ">"), "", $replaceTag[0])."\" missing --><!--/noptimize-->"; |
|
284 | + $this->tagWarning = true; |
|
285 | 285 | } |
286 | 286 | } |
287 | 287 | } |
288 | 288 | |
289 | 289 | protected function isremovable($tag, $removables) { |
290 | 290 | foreach ($removables as $match) { |
291 | - if (strpos($tag,$match)!==false) { |
|
291 | + if (strpos($tag, $match) !== false) { |
|
292 | 292 | return true; |
293 | 293 | } |
294 | 294 | } |
@@ -297,7 +297,7 @@ discard block |
||
297 | 297 | |
298 | 298 | // inject already minified code in optimized JS/CSS |
299 | 299 | protected function inject_minified($in) { |
300 | - if ( strpos( $in, '%%INJECTLATER%%' ) !== false ) { |
|
300 | + if (strpos($in, '%%INJECTLATER%%') !== false) { |
|
301 | 301 | $out = preg_replace_callback( |
302 | 302 | '#\/\*\!%%INJECTLATER%%(.*?)%%INJECTLATER%%\*\/#is', |
303 | 303 | create_function( |
@@ -342,47 +342,47 @@ discard block |
||
342 | 342 | |
343 | 343 | protected function minify_single($pathIn) { |
344 | 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"; |
|
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 | 351 | } else { |
352 | 352 | return false; |
353 | 353 | } |
354 | 354 | |
355 | 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 ) ) { |
|
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 | 357 | return false; |
358 | 358 | } |
359 | 359 | |
360 | 360 | // read file, return false if empty |
361 | 361 | $_toMinify = file_get_contents($pathIn); |
362 | - if ( empty($_toMinify) ) return false; |
|
362 | + if (empty($_toMinify)) return false; |
|
363 | 363 | |
364 | 364 | // check cache |
365 | 365 | $_md5hash = "single_".md5($_toMinify); |
366 | - $_cache = new autoptimizeCache($_md5hash,$codeType); |
|
367 | - if ($_cache->check() ) { |
|
366 | + $_cache = new autoptimizeCache($_md5hash, $codeType); |
|
367 | + if ($_cache->check()) { |
|
368 | 368 | $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
369 | 369 | } else { |
370 | 370 | // if not in cache first minify |
371 | 371 | $_Minified = $_toMinify; |
372 | 372 | if ($codeType === "js") { |
373 | - if (class_exists('JSMin') && apply_filters( 'autoptimize_js_do_minify' , true)) { |
|
374 | - if (@is_callable(array("JSMin","minify"))) { |
|
373 | + if (class_exists('JSMin') && apply_filters('autoptimize_js_do_minify', true)) { |
|
374 | + if (@is_callable(array("JSMin", "minify"))) { |
|
375 | 375 | $tmp_code = trim(JSMin::minify($_toMinify)); |
376 | 376 | } |
377 | 377 | } |
378 | 378 | } else if ($codeType === "css") { |
379 | 379 | if (class_exists('Minify_CSS_Compressor')) { |
380 | 380 | $tmp_code = trim(Minify_CSS_Compressor::process($_toMinify)); |
381 | - } else if(class_exists('CSSmin')) { |
|
381 | + } else if (class_exists('CSSmin')) { |
|
382 | 382 | $cssmin = new CSSmin(); |
383 | - if (method_exists($cssmin,"run")) { |
|
383 | + if (method_exists($cssmin, "run")) { |
|
384 | 384 | $tmp_code = trim($cssmin->run($_toMinify)); |
385 | - } elseif (@is_callable(array($cssmin,"minify"))) { |
|
385 | + } elseif (@is_callable(array($cssmin, "minify"))) { |
|
386 | 386 | $tmp_code = trim(CssMin::minify($_toMinify)); |
387 | 387 | } |
388 | 388 | } |
@@ -392,7 +392,7 @@ discard block |
||
392 | 392 | unset($tmp_code); |
393 | 393 | } |
394 | 394 | // and then cache |
395 | - $_cache->cache($_Minified,$codeMime); |
|
395 | + $_cache->cache($_Minified, $codeMime); |
|
396 | 396 | $_CachedMinifiedUrl = AUTOPTIMIZE_CACHE_URL.$_cache->getname(); |
397 | 397 | } |
398 | 398 | unset($_cache); |
@@ -403,10 +403,10 @@ discard block |
||
403 | 403 | return $_CachedMinifiedUrl; |
404 | 404 | } |
405 | 405 | |
406 | - protected function str_ends_in($haystack,$needle) { |
|
406 | + protected function str_ends_in($haystack, $needle) { |
|
407 | 407 | $needleLength = strlen($needle); |
408 | 408 | $haystackLength = strlen($haystack); |
409 | - $lastPos=strrpos($haystack,$needle); |
|
409 | + $lastPos = strrpos($haystack, $needle); |
|
410 | 410 | if ($lastPos === $haystackLength - $needleLength) { |
411 | 411 | return true; |
412 | 412 | } else { |
@@ -49,13 +49,13 @@ discard block |
||
49 | 49 | */ |
50 | 50 | public function __construct($raisePhpLimits = true) |
51 | 51 | { |
52 | - $this->memoryLimit = 128 * 1048576; // 128MB in bytes |
|
53 | - $this->pcreBacktrackLimit = 1000 * 1000; |
|
54 | - $this->pcreRecursionLimit = 500 * 1000; |
|
52 | + $this->memoryLimit = 128*1048576; // 128MB in bytes |
|
53 | + $this->pcreBacktrackLimit = 1000*1000; |
|
54 | + $this->pcreRecursionLimit = 500*1000; |
|
55 | 55 | |
56 | 56 | $this->raisePhpLimits = (bool) $raisePhpLimits; |
57 | 57 | |
58 | - $this->numRegex = '(?:\+|-)?\d*\.?\d+' . $this->unitsGroupRegex .'?'; |
|
58 | + $this->numRegex = '(?:\+|-)?\d*\.?\d+'.$this->unitsGroupRegex.'?'; |
|
59 | 59 | } |
60 | 60 | |
61 | 61 | /** |
@@ -134,14 +134,14 @@ discard block |
||
134 | 134 | $cssChunks[$i] = $this->minify($cssChunks[$i], $linebreakPos); |
135 | 135 | // Keep the first @charset at-rule found |
136 | 136 | if (empty($charset) && preg_match($charsetRegexp, $cssChunks[$i], $matches)) { |
137 | - $charset = strtolower($matches[1]) . $matches[2]; |
|
137 | + $charset = strtolower($matches[1]).$matches[2]; |
|
138 | 138 | } |
139 | 139 | // Delete all @charset at-rules |
140 | 140 | $cssChunks[$i] = preg_replace($charsetRegexp, '', $cssChunks[$i]); |
141 | 141 | } |
142 | 142 | |
143 | 143 | // Update the first chunk and push the charset to the top of the file. |
144 | - $cssChunks[0] = $charset . $cssChunks[0]; |
|
144 | + $cssChunks[0] = $charset.$cssChunks[0]; |
|
145 | 145 | |
146 | 146 | return trim(implode('', $cssChunks)); |
147 | 147 | } |
@@ -235,7 +235,7 @@ discard block |
||
235 | 235 | private function registerPreservedToken($token) |
236 | 236 | { |
237 | 237 | $this->preservedTokens[] = $token; |
238 | - return self::TOKEN . (count($this->preservedTokens) - 1) .'___'; |
|
238 | + return self::TOKEN.(count($this->preservedTokens) - 1).'___'; |
|
239 | 239 | } |
240 | 240 | |
241 | 241 | /** |
@@ -245,7 +245,7 @@ discard block |
||
245 | 245 | */ |
246 | 246 | private function getPreservedTokenPlaceholderRegexById($id) |
247 | 247 | { |
248 | - return '/'. self::TOKEN . $id .'___/'; |
|
248 | + return '/'.self::TOKEN.$id.'___/'; |
|
249 | 249 | } |
250 | 250 | |
251 | 251 | /** |
@@ -256,7 +256,7 @@ discard block |
||
256 | 256 | private function registerComment($comment) |
257 | 257 | { |
258 | 258 | $this->comments[] = $comment; |
259 | - return '/*'. self::COMMENT . (count($this->comments) - 1) .'___*/'; |
|
259 | + return '/*'.self::COMMENT.(count($this->comments) - 1).'___*/'; |
|
260 | 260 | } |
261 | 261 | |
262 | 262 | /** |
@@ -266,7 +266,7 @@ discard block |
||
266 | 266 | */ |
267 | 267 | private function getCommentPlaceholderById($id) |
268 | 268 | { |
269 | - return self::COMMENT . $id .'___'; |
|
269 | + return self::COMMENT.$id.'___'; |
|
270 | 270 | } |
271 | 271 | |
272 | 272 | /** |
@@ -276,7 +276,7 @@ discard block |
||
276 | 276 | */ |
277 | 277 | private function getCommentPlaceholderRegexById($id) |
278 | 278 | { |
279 | - return '/'. $this->getCommentPlaceholderById($id) .'/'; |
|
279 | + return '/'.$this->getCommentPlaceholderById($id).'/'; |
|
280 | 280 | } |
281 | 281 | |
282 | 282 | /** |
@@ -287,7 +287,7 @@ discard block |
||
287 | 287 | private function registerAtRuleBlock($block) |
288 | 288 | { |
289 | 289 | $this->atRuleBlocks[] = $block; |
290 | - return self::AT_RULE_BLOCK . (count($this->atRuleBlocks) - 1) .'___'; |
|
290 | + return self::AT_RULE_BLOCK.(count($this->atRuleBlocks) - 1).'___'; |
|
291 | 291 | } |
292 | 292 | |
293 | 293 | /** |
@@ -297,7 +297,7 @@ discard block |
||
297 | 297 | */ |
298 | 298 | private function getAtRuleBlockPlaceholderRegexById($id) |
299 | 299 | { |
300 | - return '/'. self::AT_RULE_BLOCK . $id .'___/'; |
|
300 | + return '/'.self::AT_RULE_BLOCK.$id.'___/'; |
|
301 | 301 | } |
302 | 302 | |
303 | 303 | /** |
@@ -330,8 +330,8 @@ discard block |
||
330 | 330 | $preservedTokenPlaceholder = $this->registerPreservedToken($comment); |
331 | 331 | $css = preg_replace($commentPlaceholderRegex, $preservedTokenPlaceholder, $css, 1); |
332 | 332 | // Preserve new lines for /*! important comments |
333 | - $css = preg_replace('/\R+\s*(\/\*'. $preservedTokenPlaceholder .')/', self::NL.'$1', $css); |
|
334 | - $css = preg_replace('/('. $preservedTokenPlaceholder .'\*\/)\s*\R+/', '$1'.self::NL, $css); |
|
333 | + $css = preg_replace('/\R+\s*(\/\*'.$preservedTokenPlaceholder.')/', self::NL.'$1', $css); |
|
334 | + $css = preg_replace('/('.$preservedTokenPlaceholder.'\*\/)\s*\R+/', '$1'.self::NL, $css); |
|
335 | 335 | continue; |
336 | 336 | } |
337 | 337 | |
@@ -360,14 +360,14 @@ discard block |
||
360 | 360 | } |
361 | 361 | |
362 | 362 | // in all other cases kill the comment |
363 | - $css = preg_replace('/\/\*' . $commentPlaceholder . '\*\//', '', $css, 1); |
|
363 | + $css = preg_replace('/\/\*'.$commentPlaceholder.'\*\//', '', $css, 1); |
|
364 | 364 | } |
365 | 365 | |
366 | 366 | // Normalize all whitespace strings to single spaces. Easier to work with that way. |
367 | 367 | $css = preg_replace('/\s+/', ' ', $css); |
368 | 368 | |
369 | 369 | // Remove spaces before & after newlines |
370 | - $css = preg_replace('/\s*'. self::NL .'\s*/', self::NL, $css); |
|
370 | + $css = preg_replace('/\s*'.self::NL.'\s*/', self::NL, $css); |
|
371 | 371 | |
372 | 372 | // Fix IE7 issue on matrix filters which browser accept whitespaces between Matrix parameters |
373 | 373 | $css = preg_replace_callback( |
@@ -409,7 +409,7 @@ discard block |
||
409 | 409 | $css = preg_replace('/!important/i', ' !important', $css); |
410 | 410 | |
411 | 411 | // bring back the colon |
412 | - $css = preg_replace('/'. self::CLASSCOLON .'/', ':', $css); |
|
412 | + $css = preg_replace('/'.self::CLASSCOLON.'/', ':', $css); |
|
413 | 413 | |
414 | 414 | // retain space for special IE6 cases |
415 | 415 | $css = preg_replace_callback('/:first-(line|letter)(\{|,)/i', array($this, 'lowercasePseudoFirst'), $css); |
@@ -419,7 +419,7 @@ discard block |
||
419 | 419 | |
420 | 420 | // lowercase some popular @directives |
421 | 421 | $css = preg_replace_callback( |
422 | - '/@(document|font-face|import|(?:-(?:atsc|khtml|moz|ms|o|wap|webkit)-)?keyframes|media|namespace|page|' . |
|
422 | + '/@(document|font-face|import|(?:-(?:atsc|khtml|moz|ms|o|wap|webkit)-)?keyframes|media|namespace|page|'. |
|
423 | 423 | 'supports|viewport)/i', |
424 | 424 | array($this, 'lowercaseDirectives'), |
425 | 425 | $css |
@@ -427,7 +427,7 @@ discard block |
||
427 | 427 | |
428 | 428 | // lowercase some more common pseudo-elements |
429 | 429 | $css = preg_replace_callback( |
430 | - '/:(active|after|before|checked|disabled|empty|enabled|first-(?:child|of-type)|focus|hover|' . |
|
430 | + '/:(active|after|before|checked|disabled|empty|enabled|first-(?:child|of-type)|focus|hover|'. |
|
431 | 431 | 'last-(?:child|of-type)|link|only-(?:child|of-type)|root|:selection|target|visited)/i', |
432 | 432 | array($this, 'lowercasePseudoElements'), |
433 | 433 | $css |
@@ -443,7 +443,7 @@ discard block |
||
443 | 443 | // lower case some common function that can be values |
444 | 444 | // NOTE: rgb() isn't useful as we replace with #hex later, as well as and() is already done for us |
445 | 445 | $css = preg_replace_callback( |
446 | - '/([:,( ]\s*)(attr|color-stop|from|rgba|to|url|-webkit-gradient|' . |
|
446 | + '/([:,( ]\s*)(attr|color-stop|from|rgba|to|url|-webkit-gradient|'. |
|
447 | 447 | '(?:-(?:atsc|khtml|moz|ms|o|wap|webkit)-)?(?:calc|max|min|(?:repeating-)?(?:linear|radial)-gradient))/iS', |
448 | 448 | array($this, 'lowercaseCommonFunctionsValues'), |
449 | 449 | $css |
@@ -500,19 +500,19 @@ discard block |
||
500 | 500 | |
501 | 501 | // Find a fraction that is used for Opera's -o-device-pixel-ratio query |
502 | 502 | // Add token to add the "\" back in later |
503 | - $css = preg_replace('/\(([a-z\-]+):([0-9]+)\/([0-9]+)\)/i', '($1:$2'. self::QUERY_FRACTION .'$3)', $css); |
|
503 | + $css = preg_replace('/\(([a-z\-]+):([0-9]+)\/([0-9]+)\)/i', '($1:$2'.self::QUERY_FRACTION.'$3)', $css); |
|
504 | 504 | |
505 | 505 | // Patch new lines to avoid being removed when followed by empty rules cases |
506 | - $css = preg_replace('/'. self::NL .'/', self::NL .'}', $css); |
|
506 | + $css = preg_replace('/'.self::NL.'/', self::NL.'}', $css); |
|
507 | 507 | |
508 | 508 | // Remove empty rules. |
509 | 509 | $css = preg_replace('/[^{};\/]+\{\}/S', '', $css); |
510 | 510 | |
511 | 511 | // Restore new lines for /*! important comments |
512 | - $css = preg_replace('/'. self::NL .'}/', "\n", $css); |
|
512 | + $css = preg_replace('/'.self::NL.'}/', "\n", $css); |
|
513 | 513 | |
514 | 514 | // Add "/" back to fix Opera -o-device-pixel-ratio query |
515 | - $css = preg_replace('/'. self::QUERY_FRACTION .'/', '/', $css); |
|
515 | + $css = preg_replace('/'.self::QUERY_FRACTION.'/', '/', $css); |
|
516 | 516 | |
517 | 517 | // Replace multiple semi-colons in a row by a single one |
518 | 518 | // See SF bug #1980989 |
@@ -528,7 +528,7 @@ discard block |
||
528 | 528 | $linebreakPos = (int) $linebreakPos; |
529 | 529 | for ($startIndex = $i = 1, $l = strlen($css); $i < $l; $i++) { |
530 | 530 | if ($css[$i - 1] === '}' && $i - $startIndex > $linebreakPos) { |
531 | - $css = $this->strSlice($css, 0, $i) . "\n" . $this->strSlice($css, $i); |
|
531 | + $css = $this->strSlice($css, 0, $i)."\n".$this->strSlice($css, $i); |
|
532 | 532 | $l = strlen($css); |
533 | 533 | $startIndex = $i; |
534 | 534 | } |
@@ -581,7 +581,7 @@ discard block |
||
581 | 581 | $terminator = ')'; |
582 | 582 | } |
583 | 583 | |
584 | - while ($terminatorFound === false && $endIndex+1 <= $maxIndex) { |
|
584 | + while ($terminatorFound === false && $endIndex + 1 <= $maxIndex) { |
|
585 | 585 | $endIndex = $this->indexOf($css, $terminator, $endIndex + 1); |
586 | 586 | // endIndex == 0 doesn't really apply here |
587 | 587 | if ($endIndex > 0 && substr($css, $endIndex - 1, 1) !== '\\') { |
@@ -604,7 +604,7 @@ discard block |
||
604 | 604 | trim($token) |
605 | 605 | ); |
606 | 606 | $preservedTokenPlaceholder = $this->registerPreservedToken($token); |
607 | - $sb[] = 'url('. $preservedTokenPlaceholder .')'; |
|
607 | + $sb[] = 'url('.$preservedTokenPlaceholder.')'; |
|
608 | 608 | $appenIndex = $endIndex + 1; |
609 | 609 | } else { |
610 | 610 | // No end terminator found, re-add the whole match. Should we throw/warn here? |
@@ -630,7 +630,7 @@ discard block |
||
630 | 630 | private function shortenZeroValues($css) |
631 | 631 | { |
632 | 632 | $unitsGroupReg = $this->unitsGroupRegex; |
633 | - $numOrPosReg = '('. $this->numRegex .'|top|left|bottom|right|center)'; |
|
633 | + $numOrPosReg = '('.$this->numRegex.'|top|left|bottom|right|center)'; |
|
634 | 634 | $oneZeroSafeProperties = array( |
635 | 635 | '(?:line-)?height', |
636 | 636 | '(?:(?:min|max)-)?width', |
@@ -656,17 +656,17 @@ discard block |
||
656 | 656 | $regEnd = '/i'; |
657 | 657 | |
658 | 658 | // First zero regex start |
659 | - $oneZeroRegStart = $regStart .'('. implode('|', $oneZeroSafeProperties) .'):'; |
|
659 | + $oneZeroRegStart = $regStart.'('.implode('|', $oneZeroSafeProperties).'):'; |
|
660 | 660 | |
661 | 661 | // Multiple zeros regex start |
662 | - $nZerosRegStart = $regStart .'('. implode('|', $nZeroSafeProperties) .'):'; |
|
662 | + $nZerosRegStart = $regStart.'('.implode('|', $nZeroSafeProperties).'):'; |
|
663 | 663 | |
664 | 664 | $css = preg_replace( |
665 | 665 | array( |
666 | - $oneZeroRegStart .'0'. $unitsGroupReg . $regEnd, |
|
667 | - $nZerosRegStart . $numOrPosReg .' 0'. $unitsGroupReg . $regEnd, |
|
668 | - $nZerosRegStart . $numOrPosReg .' '. $numOrPosReg .' 0'. $unitsGroupReg . $regEnd, |
|
669 | - $nZerosRegStart . $numOrPosReg .' '. $numOrPosReg .' '. $numOrPosReg .' 0'. $unitsGroupReg . $regEnd |
|
666 | + $oneZeroRegStart.'0'.$unitsGroupReg.$regEnd, |
|
667 | + $nZerosRegStart.$numOrPosReg.' 0'.$unitsGroupReg.$regEnd, |
|
668 | + $nZerosRegStart.$numOrPosReg.' '.$numOrPosReg.' 0'.$unitsGroupReg.$regEnd, |
|
669 | + $nZerosRegStart.$numOrPosReg.' '.$numOrPosReg.' '.$numOrPosReg.' 0'.$unitsGroupReg.$regEnd |
|
670 | 670 | ), |
671 | 671 | array( |
672 | 672 | '$1$2:0', |
@@ -682,13 +682,13 @@ discard block |
||
682 | 682 | |
683 | 683 | // Replace 0 0; or 0 0 0; or 0 0 0 0; with 0 for safe properties only. |
684 | 684 | $css = preg_replace( |
685 | - '/('. implode('|', $nZeroSafeProperties) .'):0(?: 0){1,3}(;|\}| !)'. $regEnd, |
|
685 | + '/('.implode('|', $nZeroSafeProperties).'):0(?: 0){1,3}(;|\}| !)'.$regEnd, |
|
686 | 686 | '$1:0$2', |
687 | 687 | $css |
688 | 688 | ); |
689 | 689 | |
690 | 690 | // Replace 0 0 0; or 0 0 0 0; with 0 0 for background-position property. |
691 | - $css = preg_replace('/(background-position):0(?: 0){2,3}(;|\}| !)'. $regEnd, '$1:0 0$2', $css); |
|
691 | + $css = preg_replace('/(background-position):0(?: 0){2,3}(;|\}| !)'.$regEnd, '$1:0 0$2', $css); |
|
692 | 692 | |
693 | 693 | return $css; |
694 | 694 | } |
@@ -712,12 +712,12 @@ discard block |
||
712 | 712 | '(?:text|box)-shadow' |
713 | 713 | ); |
714 | 714 | |
715 | - $regStart = '/(;|\{)('. implode('|', $propertiesWithColors) .'):([^;}]*)\b'; |
|
715 | + $regStart = '/(;|\{)('.implode('|', $propertiesWithColors).'):([^;}]*)\b'; |
|
716 | 716 | $regEnd = '\b/iS'; |
717 | 717 | |
718 | 718 | foreach ($longNamedColors as $colorName => $colorCode) { |
719 | - $patterns[] = $regStart . $colorName . $regEnd; |
|
720 | - $replacements[] = '$1$2:$3'. $colorCode; |
|
719 | + $patterns[] = $regStart.$colorName.$regEnd; |
|
720 | + $replacements[] = '$1$2:$3'.$colorCode; |
|
721 | 721 | } |
722 | 722 | |
723 | 723 | // Run at least 4 times to cover most cases (same color used several times for the same property) |
@@ -762,16 +762,16 @@ discard block |
||
762 | 762 | |
763 | 763 | if ($isFilter) { |
764 | 764 | // Restore, maintain case, otherwise filter will break |
765 | - $sb[] = $m[1] .'#'. $m[2] . $m[3] . $m[4] . $m[5] . $m[6] . $m[7]; |
|
765 | + $sb[] = $m[1].'#'.$m[2].$m[3].$m[4].$m[5].$m[6].$m[7]; |
|
766 | 766 | } else { |
767 | 767 | if (strtolower($m[2]) == strtolower($m[3]) && |
768 | 768 | strtolower($m[4]) == strtolower($m[5]) && |
769 | 769 | strtolower($m[6]) == strtolower($m[7])) { |
770 | 770 | // Compress. |
771 | - $hex = '#'. strtolower($m[3] . $m[5] . $m[7]); |
|
771 | + $hex = '#'.strtolower($m[3].$m[5].$m[7]); |
|
772 | 772 | } else { |
773 | 773 | // Non compressible color, restore but lower case. |
774 | - $hex = '#'. strtolower($m[2] . $m[3] . $m[4] . $m[5] . $m[6] . $m[7]); |
|
774 | + $hex = '#'.strtolower($m[2].$m[3].$m[4].$m[5].$m[6].$m[7]); |
|
775 | 775 | } |
776 | 776 | // replace Hex colors with shorter color names |
777 | 777 | $sb[] = array_key_exists($hex, $longHexColors) ? $longHexColors[$hex] : $hex; |
@@ -818,7 +818,7 @@ discard block |
||
818 | 818 | $match = preg_replace('/progid:DXImageTransform\.Microsoft\.Alpha\(Opacity=/i', 'alpha(opacity=', $match); |
819 | 819 | |
820 | 820 | $preservedTokenPlaceholder = $this->registerPreservedToken($match); |
821 | - return $quote . $preservedTokenPlaceholder . $quote; |
|
821 | + return $quote.$preservedTokenPlaceholder.$quote; |
|
822 | 822 | } |
823 | 823 | |
824 | 824 | private function processAtRuleBlocks($matches) |
@@ -838,13 +838,13 @@ discard block |
||
838 | 838 | ) |
839 | 839 | ); |
840 | 840 | $preservedTokenPlaceholder = $this->registerPreservedToken($token); |
841 | - return 'calc('. $preservedTokenPlaceholder .')'; |
|
841 | + return 'calc('.$preservedTokenPlaceholder.')'; |
|
842 | 842 | } |
843 | 843 | |
844 | 844 | private function processOldIeSpecificMatrixDefinition($matches) |
845 | 845 | { |
846 | 846 | $preservedTokenPlaceholder = $this->registerPreservedToken($matches[1]); |
847 | - return 'filter:progid:DXImageTransform.Microsoft.Matrix('. $preservedTokenPlaceholder .')'; |
|
847 | + return 'filter:progid:DXImageTransform.Microsoft.Matrix('.$preservedTokenPlaceholder.')'; |
|
848 | 848 | } |
849 | 849 | |
850 | 850 | private function processColon($matches) |
@@ -869,10 +869,10 @@ discard block |
||
869 | 869 | |
870 | 870 | // Fix for issue #2528093 |
871 | 871 | if (!preg_match('/[\s,);}]/', $matches[2])) { |
872 | - $matches[2] = ' '. $matches[2]; |
|
872 | + $matches[2] = ' '.$matches[2]; |
|
873 | 873 | } |
874 | 874 | |
875 | - return '#'. implode('', $hexColors) . $matches[2]; |
|
875 | + return '#'.implode('', $hexColors).$matches[2]; |
|
876 | 876 | } |
877 | 877 | |
878 | 878 | private function hslToHex($matches) |
@@ -886,37 +886,37 @@ discard block |
||
886 | 886 | |
887 | 887 | private function processAtRulesOperators($matches) |
888 | 888 | { |
889 | - return $matches[1] . strtolower($matches[2]) .' ('; |
|
889 | + return $matches[1].strtolower($matches[2]).' ('; |
|
890 | 890 | } |
891 | 891 | |
892 | 892 | private function lowercasePseudoFirst($matches) |
893 | 893 | { |
894 | - return ':first-'. strtolower($matches[1]) .' '. $matches[2]; |
|
894 | + return ':first-'.strtolower($matches[1]).' '.$matches[2]; |
|
895 | 895 | } |
896 | 896 | |
897 | 897 | private function lowercaseDirectives($matches) |
898 | 898 | { |
899 | - return '@'. strtolower($matches[1]); |
|
899 | + return '@'.strtolower($matches[1]); |
|
900 | 900 | } |
901 | 901 | |
902 | 902 | private function lowercasePseudoElements($matches) |
903 | 903 | { |
904 | - return ':'. strtolower($matches[1]); |
|
904 | + return ':'.strtolower($matches[1]); |
|
905 | 905 | } |
906 | 906 | |
907 | 907 | private function lowercaseCommonFunctions($matches) |
908 | 908 | { |
909 | - return ':'. strtolower($matches[1]) .'('; |
|
909 | + return ':'.strtolower($matches[1]).'('; |
|
910 | 910 | } |
911 | 911 | |
912 | 912 | private function lowercaseCommonFunctionsValues($matches) |
913 | 913 | { |
914 | - return $matches[1] . strtolower($matches[2]); |
|
914 | + return $matches[1].strtolower($matches[2]); |
|
915 | 915 | } |
916 | 916 | |
917 | 917 | private function lowercaseProperties($matches) |
918 | 918 | { |
919 | - return $matches[1] . strtolower($matches[2]) . $matches[3]; |
|
919 | + return $matches[1].strtolower($matches[2]).$matches[3]; |
|
920 | 920 | } |
921 | 921 | |
922 | 922 | // --------------------------------------------------------------------------------------------- |
@@ -967,18 +967,18 @@ discard block |
||
967 | 967 | $l = floatval(str_replace('%', '', $hslValues[2])); |
968 | 968 | |
969 | 969 | // Wrap and clamp, then fraction! |
970 | - $h = ((($h % 360) + 360) % 360) / 360; |
|
971 | - $s = $this->clampNumber($s, 0, 100) / 100; |
|
972 | - $l = $this->clampNumber($l, 0, 100) / 100; |
|
970 | + $h = ((($h%360) + 360)%360)/360; |
|
971 | + $s = $this->clampNumber($s, 0, 100)/100; |
|
972 | + $l = $this->clampNumber($l, 0, 100)/100; |
|
973 | 973 | |
974 | 974 | if ($s == 0) { |
975 | - $r = $g = $b = $this->roundNumber(255 * $l); |
|
975 | + $r = $g = $b = $this->roundNumber(255*$l); |
|
976 | 976 | } else { |
977 | - $v2 = $l < 0.5 ? $l * (1 + $s) : ($l + $s) - ($s * $l); |
|
978 | - $v1 = (2 * $l) - $v2; |
|
979 | - $r = $this->roundNumber(255 * $this->hueToRgb($v1, $v2, $h + (1/3))); |
|
980 | - $g = $this->roundNumber(255 * $this->hueToRgb($v1, $v2, $h)); |
|
981 | - $b = $this->roundNumber(255 * $this->hueToRgb($v1, $v2, $h - (1/3))); |
|
977 | + $v2 = $l < 0.5 ? $l*(1 + $s) : ($l + $s) - ($s*$l); |
|
978 | + $v1 = (2*$l) - $v2; |
|
979 | + $r = $this->roundNumber(255*$this->hueToRgb($v1, $v2, $h + (1/3))); |
|
980 | + $g = $this->roundNumber(255*$this->hueToRgb($v1, $v2, $h)); |
|
981 | + $b = $this->roundNumber(255*$this->hueToRgb($v1, $v2, $h - (1/3))); |
|
982 | 982 | } |
983 | 983 | |
984 | 984 | return array($r, $g, $b); |
@@ -995,16 +995,16 @@ discard block |
||
995 | 995 | { |
996 | 996 | $vh = $vh < 0 ? $vh + 1 : ($vh > 1 ? $vh - 1 : $vh); |
997 | 997 | |
998 | - if ($vh * 6 < 1) { |
|
999 | - return $v1 + ($v2 - $v1) * 6 * $vh; |
|
998 | + if ($vh*6 < 1) { |
|
999 | + return $v1 + ($v2 - $v1)*6*$vh; |
|
1000 | 1000 | } |
1001 | 1001 | |
1002 | - if ($vh * 2 < 1) { |
|
1002 | + if ($vh*2 < 1) { |
|
1003 | 1003 | return $v2; |
1004 | 1004 | } |
1005 | 1005 | |
1006 | - if ($vh * 3 < 2) { |
|
1007 | - return $v1 + ($v2 - $v1) * ((2 / 3) - $vh) * 6; |
|
1006 | + if ($vh*3 < 2) { |
|
1007 | + return $v1 + ($v2 - $v1)*((2/3) - $vh)*6; |
|
1008 | 1008 | } |
1009 | 1009 | |
1010 | 1010 | return $v1; |
@@ -1039,13 +1039,13 @@ discard block |
||
1039 | 1039 | switch ($letter) { |
1040 | 1040 | case 'M': |
1041 | 1041 | case 'm': |
1042 | - return (int) $size * 1048576; |
|
1042 | + return (int) $size*1048576; |
|
1043 | 1043 | case 'K': |
1044 | 1044 | case 'k': |
1045 | - return (int) $size * 1024; |
|
1045 | + return (int) $size*1024; |
|
1046 | 1046 | case 'G': |
1047 | 1047 | case 'g': |
1048 | - return (int) $size * 1073741824; |
|
1048 | + return (int) $size*1073741824; |
|
1049 | 1049 | } |
1050 | 1050 | } |
1051 | 1051 | return (int) $size; |
@@ -1059,7 +1059,7 @@ discard block |
||
1059 | 1059 | private function rgbPercentageToRgbInteger($rgbPercentage) |
1060 | 1060 | { |
1061 | 1061 | if (strpos($rgbPercentage, '%') !== false) { |
1062 | - $rgbPercentage = $this->roundNumber(floatval(str_replace('%', '', $rgbPercentage)) * 2.55); |
|
1062 | + $rgbPercentage = $this->roundNumber(floatval(str_replace('%', '', $rgbPercentage))*2.55); |
|
1063 | 1063 | } |
1064 | 1064 | |
1065 | 1065 | return intval($rgbPercentage, 10); |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | { |
71 | 71 | $this->_html = str_replace("\r\n", "\n", trim($html)); |
72 | 72 | if (isset($options['xhtml'])) { |
73 | - $this->_isXhtml = (bool)$options['xhtml']; |
|
73 | + $this->_isXhtml = (bool) $options['xhtml']; |
|
74 | 74 | } |
75 | 75 | if (isset($options['cssMinifier'])) { |
76 | 76 | $this->_cssMinifier = $options['cssMinifier']; |
@@ -95,7 +95,7 @@ discard block |
||
95 | 95 | $this->_isXhtml = (false !== strpos($this->_html, '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML')); |
96 | 96 | } |
97 | 97 | |
98 | - $this->_replacementHash = 'MINIFYHTML' . md5($_SERVER['REQUEST_TIME']); |
|
98 | + $this->_replacementHash = 'MINIFYHTML'.md5($_SERVER['REQUEST_TIME']); |
|
99 | 99 | $this->_placeholders = array(); |
100 | 100 | |
101 | 101 | // replace SCRIPTs (and minify) with placeholders |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | ,$this->_html); |
112 | 112 | |
113 | 113 | // remove HTML comments (not containing IE conditional comments). |
114 | - if ($this->_keepComments == false) { |
|
114 | + if ($this->_keepComments == false) { |
|
115 | 115 | $this->_html = preg_replace_callback( |
116 | 116 | '/<!--([\\s\\S]*?)-->/' |
117 | 117 | ,array($this, '_commentCB') |
@@ -173,7 +173,7 @@ discard block |
||
173 | 173 | |
174 | 174 | protected function _reservePlace($content) |
175 | 175 | { |
176 | - $placeholder = '%' . $this->_replacementHash . count($this->_placeholders) . '%'; |
|
176 | + $placeholder = '%'.$this->_replacementHash.count($this->_placeholders).'%'; |
|
177 | 177 | $this->_placeholders[$placeholder] = $content; |
178 | 178 | return $placeholder; |
179 | 179 | } |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | |
188 | 188 | protected function _outsideTagCB($m) |
189 | 189 | { |
190 | - return '>' . preg_replace('/^\\s+|\\s+$/', ' ', $m[1]) . '<'; |
|
190 | + return '>'.preg_replace('/^\\s+|\\s+$/', ' ', $m[1]).'<'; |
|
191 | 191 | } |
192 | 192 | |
193 | 193 | protected function _removePreCB($m) |
@@ -257,7 +257,7 @@ discard block |
||
257 | 257 | protected function _removeCdata($str) |
258 | 258 | { |
259 | 259 | return (false !== strpos($str, '<![CDATA[')) |
260 | - ? str_replace(array('/* <![CDATA[ */','/* ]]> */','/*<![CDATA[*/','/*]]>*/','<![CDATA[', ']]>'), '', $str) |
|
260 | + ? str_replace(array('/* <![CDATA[ */', '/* ]]> */', '/*<![CDATA[*/', '/*]]>*/', '<![CDATA[', ']]>'), '', $str) |
|
261 | 261 | : $str; |
262 | 262 | } |
263 | 263 |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
2 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
3 | 3 | |
4 | 4 | class autoptimizeHTML extends autoptimizeBase { |
5 | 5 | private $keepcomments = false; |
@@ -10,13 +10,13 @@ discard block |
||
10 | 10 | $this->keepcomments = (bool) $options['keepcomments']; |
11 | 11 | |
12 | 12 | // filter to force xhtml |
13 | - $this->forcexhtml = (bool) apply_filters( 'autoptimize_filter_html_forcexhtml', false ); |
|
13 | + $this->forcexhtml = (bool) apply_filters('autoptimize_filter_html_forcexhtml', false); |
|
14 | 14 | |
15 | 15 | // filter to add strings to be excluded from HTML minification |
16 | - $excludeHTML = apply_filters( 'autoptimize_filter_html_exclude','' ); |
|
17 | - if ($excludeHTML!=="") { |
|
18 | - $exclHTMLArr = array_filter(array_map('trim',explode(",",$excludeHTML))); |
|
19 | - $this->exclude = array_merge($exclHTMLArr,$this->exclude); |
|
16 | + $excludeHTML = apply_filters('autoptimize_filter_html_exclude', ''); |
|
17 | + if ($excludeHTML !== "") { |
|
18 | + $exclHTMLArr = array_filter(array_map('trim', explode(",", $excludeHTML))); |
|
19 | + $this->exclude = array_merge($exclHTMLArr, $this->exclude); |
|
20 | 20 | } |
21 | 21 | |
22 | 22 | // Nothing else for HTML |
@@ -25,16 +25,16 @@ discard block |
||
25 | 25 | |
26 | 26 | //Joins and optimizes CSS |
27 | 27 | public function minify() { |
28 | - $noptimizeHTML = apply_filters( 'autoptimize_filter_html_noptimize', false, $this->content ); |
|
28 | + $noptimizeHTML = apply_filters('autoptimize_filter_html_noptimize', false, $this->content); |
|
29 | 29 | if ($noptimizeHTML) |
30 | 30 | return false; |
31 | 31 | |
32 | - if(class_exists('Minify_HTML')) { |
|
32 | + if (class_exists('Minify_HTML')) { |
|
33 | 33 | // wrap the to-be-excluded strings in noptimize tags |
34 | 34 | foreach ($this->exclude as $exclString) { |
35 | - if (strpos($this->content,$exclString)!==false) { |
|
36 | - $replString="<!--noptimize-->".$exclString."<!--/noptimize-->"; |
|
37 | - $this->content=str_replace($exclString,$replString,$this->content); |
|
35 | + if (strpos($this->content, $exclString) !== false) { |
|
36 | + $replString = "<!--noptimize-->".$exclString."<!--/noptimize-->"; |
|
37 | + $this->content = str_replace($exclString, $replString, $this->content); |
|
38 | 38 | } |
39 | 39 | } |
40 | 40 | |
@@ -47,8 +47,8 @@ discard block |
||
47 | 47 | $options['xhtml'] = true; |
48 | 48 | } |
49 | 49 | |
50 | - if (@is_callable(array("Minify_HTML","minify"))) { |
|
51 | - $tmp_content = Minify_HTML::minify($this->content,$options); |
|
50 | + if (@is_callable(array("Minify_HTML", "minify"))) { |
|
51 | + $tmp_content = Minify_HTML::minify($this->content, $options); |
|
52 | 52 | if (!empty($tmp_content)) { |
53 | 53 | $this->content = $tmp_content; |
54 | 54 | unset($tmp_content); |
@@ -60,16 +60,16 @@ discard block |
||
60 | 60 | |
61 | 61 | // remove the noptimize-wrapper from around the excluded strings |
62 | 62 | foreach ($this->exclude as $exclString) { |
63 | - $replString="<!--noptimize-->".$exclString."<!--/noptimize-->"; |
|
64 | - if (strpos($this->content,$replString)!==false) { |
|
65 | - $this->content=str_replace($replString,$exclString,$this->content); |
|
63 | + $replString = "<!--noptimize-->".$exclString."<!--/noptimize-->"; |
|
64 | + if (strpos($this->content, $replString) !== false) { |
|
65 | + $this->content = str_replace($replString, $exclString, $this->content); |
|
66 | 66 | } |
67 | 67 | } |
68 | 68 | |
69 | 69 | // revslider data attribs somehow suffer from HTML optimization, this fixes that |
70 | - if ( class_exists('RevSlider') || apply_filters('autoptimize_filter_html_dataattrib_cleanup', false) ) { |
|
71 | - $this->content = preg_replace('#\n(data-.*$)\n#Um',' $1 ', $this->content); |
|
72 | - $this->content = preg_replace('#(=\"[^"]*\")(\w)#','$1 $2', $this->content); |
|
70 | + if (class_exists('RevSlider') || apply_filters('autoptimize_filter_html_dataattrib_cleanup', false)) { |
|
71 | + $this->content = preg_replace('#\n(data-.*$)\n#Um', ' $1 ', $this->content); |
|
72 | + $this->content = preg_replace('#(=\"[^"]*\")(\w)#', '$1 $2', $this->content); |
|
73 | 73 | } |
74 | 74 | |
75 | 75 | return true; |
@@ -1,5 +1,5 @@ discard block |
||
1 | 1 | <?php |
2 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
2 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
3 | 3 | |
4 | 4 | class autoptimizeConfig { |
5 | 5 | private $config = null; |
@@ -7,25 +7,25 @@ discard block |
||
7 | 7 | |
8 | 8 | //Singleton: private construct |
9 | 9 | private function __construct() { |
10 | - if( is_admin() ) { |
|
10 | + if (is_admin()) { |
|
11 | 11 | //Add the admin page and settings |
12 | - add_action('admin_menu',array($this,'addmenu')); |
|
13 | - add_action('admin_init',array($this,'registersettings')); |
|
12 | + add_action('admin_menu', array($this, 'addmenu')); |
|
13 | + add_action('admin_init', array($this, 'registersettings')); |
|
14 | 14 | |
15 | 15 | //Set meta info |
16 | - if(function_exists('plugin_row_meta')) { |
|
16 | + if (function_exists('plugin_row_meta')) { |
|
17 | 17 | //2.8+ |
18 | - add_filter('plugin_row_meta',array($this,'setmeta'),10,2); |
|
19 | - } elseif(function_exists('post_class')) { |
|
18 | + add_filter('plugin_row_meta', array($this, 'setmeta'), 10, 2); |
|
19 | + } elseif (function_exists('post_class')) { |
|
20 | 20 | //2.7 |
21 | 21 | $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php'); |
22 | - add_filter('plugin_action_links_'.$plugin,array($this,'setmeta')); |
|
22 | + add_filter('plugin_action_links_'.$plugin, array($this, 'setmeta')); |
|
23 | 23 | } |
24 | 24 | |
25 | 25 | //Clean cache? |
26 | - if(get_option('autoptimize_cache_clean')) { |
|
26 | + if (get_option('autoptimize_cache_clean')) { |
|
27 | 27 | autoptimizeCache::clearall(); |
28 | - update_option('autoptimize_cache_clean',0); |
|
28 | + update_option('autoptimize_cache_clean', 0); |
|
29 | 29 | } |
30 | 30 | } |
31 | 31 | |
@@ -159,27 +159,27 @@ discard block |
||
159 | 159 | <div class="wrap"> |
160 | 160 | |
161 | 161 | <?php if (version_compare(PHP_VERSION, '5.3.0') < 0) { ?> |
162 | -<div class="notice-error notice"><?php echo '<p>' . sprintf( __('<strong>You are using a very old version of PHP</strong> (5.2.x or older) which has <a href=%s>serious security and performance issues</a>. Support for PHP 5.5 and below will be removed in one of the next AO released, please ask your hoster to provide you with an upgrade path to 7.x.','autoptimize'), '"http://blog.futtta.be/2016/03/15/why-would-you-still-be-on-php-5-2/" target="_blank"') . '</p>'; ?></div> |
|
162 | +<div class="notice-error notice"><?php echo '<p>'.sprintf(__('<strong>You are using a very old version of PHP</strong> (5.2.x or older) which has <a href=%s>serious security and performance issues</a>. Support for PHP 5.5 and below will be removed in one of the next AO released, please ask your hoster to provide you with an upgrade path to 7.x.', 'autoptimize'), '"http://blog.futtta.be/2016/03/15/why-would-you-still-be-on-php-5-2/" target="_blank"').'</p>'; ?></div> |
|
163 | 163 | <?php } ?> |
164 | 164 | |
165 | 165 | <div id="autoptimize_main"> |
166 | 166 | <div id="ao_title_and_button"> |
167 | - <h1 id="ao_title"><?php _e('Autoptimize Settings','autoptimize'); ?> |
|
167 | + <h1 id="ao_title"><?php _e('Autoptimize Settings', 'autoptimize'); ?> |
|
168 | 168 | <span id="ao_adv_button"> |
169 | 169 | <?php |
170 | - if (get_option('autoptimize_show_adv','0')=='1') { |
|
170 | + if (get_option('autoptimize_show_adv', '0') == '1') { |
|
171 | 171 | ?> |
172 | - <a href="javascript:void(0);" id="ao_show_adv" class="button" style="display:none;"><span><?php _e("Show advanced settings","autoptimize") ?></span></a> |
|
173 | - <a href="javascript:void(0);" id="ao_hide_adv" class="button"><span><?php _e("Hide advanced settings","autoptimize") ?></span></a> |
|
172 | + <a href="javascript:void(0);" id="ao_show_adv" class="button" style="display:none;"><span><?php _e("Show advanced settings", "autoptimize") ?></span></a> |
|
173 | + <a href="javascript:void(0);" id="ao_hide_adv" class="button"><span><?php _e("Hide advanced settings", "autoptimize") ?></span></a> |
|
174 | 174 | <style>tr.ao_adv{display:table-row;} li.ao_adv{display:list-item;}</style> |
175 | 175 | <?php |
176 | - $hiddenClass=""; |
|
176 | + $hiddenClass = ""; |
|
177 | 177 | } else { |
178 | 178 | ?> |
179 | - <a href="javascript:void(0);" id="ao_show_adv" class="button"><span><?php _e("Show advanced settings","autoptimize") ?></span></a> |
|
180 | - <a href="javascript:void(0);" id="ao_hide_adv" class="button" style="display:none;"><span><?php _e("Hide advanced settings","autoptimize") ?></span></a> |
|
179 | + <a href="javascript:void(0);" id="ao_show_adv" class="button"><span><?php _e("Show advanced settings", "autoptimize") ?></span></a> |
|
180 | + <a href="javascript:void(0);" id="ao_hide_adv" class="button" style="display:none;"><span><?php _e("Hide advanced settings", "autoptimize") ?></span></a> |
|
181 | 181 | <?php |
182 | - $hiddenClass="hidden "; |
|
182 | + $hiddenClass = "hidden "; |
|
183 | 183 | } |
184 | 184 | ?> |
185 | 185 | </span> |
@@ -194,154 +194,154 @@ discard block |
||
194 | 194 | <ul> |
195 | 195 | |
196 | 196 | <li class="itemDetail"> |
197 | -<h2 class="itemTitle"><?php _e('HTML Options','autoptimize'); ?></h2> |
|
197 | +<h2 class="itemTitle"><?php _e('HTML Options', 'autoptimize'); ?></h2> |
|
198 | 198 | <table class="form-table"> |
199 | 199 | <tr valign="top"> |
200 | -<th scope="row"><?php _e('Optimize HTML Code?','autoptimize'); ?></th> |
|
201 | -<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo get_option('autoptimize_html')?'checked="checked" ':''; ?>/></td> |
|
200 | +<th scope="row"><?php _e('Optimize HTML Code?', 'autoptimize'); ?></th> |
|
201 | +<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo get_option('autoptimize_html') ? 'checked="checked" ' : ''; ?>/></td> |
|
202 | 202 | </tr> |
203 | -<tr class="<?php echo $hiddenClass;?>html_sub ao_adv" valign="top"> |
|
204 | -<th scope="row"><?php _e('Keep HTML comments?','autoptimize'); ?></th> |
|
205 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo get_option('autoptimize_html_keepcomments')?'checked="checked" ':''; ?>/> |
|
206 | -<?php _e('Enable this if you want HTML comments to remain in the page.','autoptimize'); ?></label></td> |
|
203 | +<tr class="<?php echo $hiddenClass; ?>html_sub ao_adv" valign="top"> |
|
204 | +<th scope="row"><?php _e('Keep HTML comments?', 'autoptimize'); ?></th> |
|
205 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo get_option('autoptimize_html_keepcomments') ? 'checked="checked" ' : ''; ?>/> |
|
206 | +<?php _e('Enable this if you want HTML comments to remain in the page.', 'autoptimize'); ?></label></td> |
|
207 | 207 | </tr> |
208 | 208 | </table> |
209 | 209 | </li> |
210 | 210 | |
211 | 211 | <li class="itemDetail"> |
212 | -<h2 class="itemTitle"><?php _e('JavaScript Options','autoptimize'); ?></h2> |
|
212 | +<h2 class="itemTitle"><?php _e('JavaScript Options', 'autoptimize'); ?></h2> |
|
213 | 213 | <table class="form-table"> |
214 | 214 | <tr valign="top"> |
215 | -<th scope="row"><?php _e('Optimize JavaScript Code?','autoptimize'); ?></th> |
|
216 | -<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo get_option('autoptimize_js')?'checked="checked" ':''; ?>/></td> |
|
215 | +<th scope="row"><?php _e('Optimize JavaScript Code?', 'autoptimize'); ?></th> |
|
216 | +<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo get_option('autoptimize_js') ? 'checked="checked" ' : ''; ?>/></td> |
|
217 | 217 | </tr> |
218 | -<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv"> |
|
219 | -<th scope="row"><?php _e('Force JavaScript in <head>?','autoptimize'); ?></th> |
|
220 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo get_option('autoptimize_js_forcehead')?'checked="checked" ':''; ?>/> |
|
221 | -<?php _e('Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.','autoptimize'); ?></label></td> |
|
218 | +<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv"> |
|
219 | +<th scope="row"><?php _e('Force JavaScript in <head>?', 'autoptimize'); ?></th> |
|
220 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo get_option('autoptimize_js_forcehead') ? 'checked="checked" ' : ''; ?>/> |
|
221 | +<?php _e('Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.', 'autoptimize'); ?></label></td> |
|
222 | 222 | </tr> |
223 | 223 | <?php if (get_option('autoptimize_js_justhead')) { ?> |
224 | -<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv"> |
|
225 | -<th scope="row"><?php _e('Look for scripts only in <head>?','autoptimize'); echo ' <i>'. __('(deprecated)','autoptimize') . '</i>'; ?></th> |
|
226 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo get_option('autoptimize_js_justhead')?'checked="checked" ':''; ?>/> |
|
227 | -<?php _e('Mostly useful in combination with previous option when using jQuery-based templates, but might help keeping cache size under control.','autoptimize'); ?></label></td> |
|
224 | +<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv"> |
|
225 | +<th scope="row"><?php _e('Look for scripts only in <head>?', 'autoptimize'); echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>'; ?></th> |
|
226 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo get_option('autoptimize_js_justhead') ? 'checked="checked" ' : ''; ?>/> |
|
227 | +<?php _e('Mostly useful in combination with previous option when using jQuery-based templates, but might help keeping cache size under control.', 'autoptimize'); ?></label></td> |
|
228 | 228 | </tr> |
229 | 229 | <?php } ?> |
230 | -<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv"> |
|
231 | -<th scope="row"><?php _e('Also aggregate inline JS?','autoptimize'); ?></th> |
|
232 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo get_option('autoptimize_js_include_inline')?'checked="checked" ':''; ?>/> |
|
233 | -<?php _e('Let Autoptimize also extract JS from the HTML. <strong>Warning</strong>: this can make Autoptimize\'s cache size grow quickly, so only enable this if you know what you\'re doing.','autoptimize'); ?></label></td> |
|
230 | +<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv"> |
|
231 | +<th scope="row"><?php _e('Also aggregate inline JS?', 'autoptimize'); ?></th> |
|
232 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo get_option('autoptimize_js_include_inline') ? 'checked="checked" ' : ''; ?>/> |
|
233 | +<?php _e('Let Autoptimize also extract JS from the HTML. <strong>Warning</strong>: this can make Autoptimize\'s cache size grow quickly, so only enable this if you know what you\'re doing.', 'autoptimize'); ?></label></td> |
|
234 | 234 | </tr> |
235 | -<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv"> |
|
236 | -<th scope="row"><?php _e('Exclude scripts from Autoptimize:','autoptimize'); ?></th> |
|
237 | -<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo get_option('autoptimize_js_exclude',"seal.js, js/jquery/jquery.js"); ?>"/><br /> |
|
238 | -<?php _e('A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated and minimized by Autoptimize.','autoptimize'); ?></label></td> |
|
235 | +<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv"> |
|
236 | +<th scope="row"><?php _e('Exclude scripts from Autoptimize:', 'autoptimize'); ?></th> |
|
237 | +<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo get_option('autoptimize_js_exclude', "seal.js, js/jquery/jquery.js"); ?>"/><br /> |
|
238 | +<?php _e('A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated and minimized by Autoptimize.', 'autoptimize'); ?></label></td> |
|
239 | 239 | </tr> |
240 | -<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv"> |
|
241 | -<th scope="row"><?php _e('Add try-catch wrapping?','autoptimize'); ?></th> |
|
242 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo get_option('autoptimize_js_trycatch')?'checked="checked" ':''; ?>/> |
|
243 | -<?php _e('If your scripts break because of a JS-error, you might want to try this.','autoptimize'); ?></label></td> |
|
240 | +<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv"> |
|
241 | +<th scope="row"><?php _e('Add try-catch wrapping?', 'autoptimize'); ?></th> |
|
242 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo get_option('autoptimize_js_trycatch') ? 'checked="checked" ' : ''; ?>/> |
|
243 | +<?php _e('If your scripts break because of a JS-error, you might want to try this.', 'autoptimize'); ?></label></td> |
|
244 | 244 | </tr> |
245 | 245 | </table> |
246 | 246 | </li> |
247 | 247 | |
248 | 248 | <li class="itemDetail"> |
249 | -<h2 class="itemTitle"><?php _e('CSS Options','autoptimize'); ?></h2> |
|
249 | +<h2 class="itemTitle"><?php _e('CSS Options', 'autoptimize'); ?></h2> |
|
250 | 250 | <table class="form-table"> |
251 | 251 | <tr valign="top"> |
252 | -<th scope="row"><?php _e('Optimize CSS Code?','autoptimize'); ?></th> |
|
253 | -<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo get_option('autoptimize_css')?'checked="checked" ':''; ?>/></td> |
|
252 | +<th scope="row"><?php _e('Optimize CSS Code?', 'autoptimize'); ?></th> |
|
253 | +<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo get_option('autoptimize_css') ? 'checked="checked" ' : ''; ?>/></td> |
|
254 | 254 | </tr> |
255 | -<tr class="<?php echo $hiddenClass;?>css_sub ao_adv" valign="top"> |
|
256 | -<th scope="row"><?php _e('Generate data: URIs for images?','autoptimize'); ?></th> |
|
257 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo get_option('autoptimize_css_datauris')?'checked="checked" ':''; ?>/> |
|
258 | -<?php _e('Enable this to include small background-images in the CSS itself instead of as separate downloads.','autoptimize'); ?></label></td> |
|
255 | +<tr class="<?php echo $hiddenClass; ?>css_sub ao_adv" valign="top"> |
|
256 | +<th scope="row"><?php _e('Generate data: URIs for images?', 'autoptimize'); ?></th> |
|
257 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo get_option('autoptimize_css_datauris') ? 'checked="checked" ' : ''; ?>/> |
|
258 | +<?php _e('Enable this to include small background-images in the CSS itself instead of as separate downloads.', 'autoptimize'); ?></label></td> |
|
259 | 259 | </tr> |
260 | -<tr class="<?php echo $hiddenClass;?>css_sub ao_adv" valign="top"> |
|
261 | -<th scope="row"><?php _e('Remove Google Fonts?','autoptimize'); ?></th> |
|
262 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_nogooglefont" <?php echo get_option('autoptimize_css_nogooglefont')?'checked="checked" ':''; ?>/> |
|
263 | -<?php _e('Check this if you don\'t need or want Google Fonts being loaded.','autoptimize'); ?></label></td> |
|
260 | +<tr class="<?php echo $hiddenClass; ?>css_sub ao_adv" valign="top"> |
|
261 | +<th scope="row"><?php _e('Remove Google Fonts?', 'autoptimize'); ?></th> |
|
262 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_nogooglefont" <?php echo get_option('autoptimize_css_nogooglefont') ? 'checked="checked" ' : ''; ?>/> |
|
263 | +<?php _e('Check this if you don\'t need or want Google Fonts being loaded.', 'autoptimize'); ?></label></td> |
|
264 | 264 | </tr> |
265 | 265 | <?php if (get_option('autoptimize_css_justhead')) { ?> |
266 | -<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv"> |
|
267 | -<th scope="row"><?php _e('Look for styles only in <head>?','autoptimize'); echo ' <i>'. __('(deprecated)','autoptimize') . '</i>'; ?></th> |
|
268 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo get_option('autoptimize_css_justhead')?'checked="checked" ':''; ?>/> |
|
269 | -<?php _e('Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.','autoptimize'); ?></label></td> |
|
266 | +<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv"> |
|
267 | +<th scope="row"><?php _e('Look for styles only in <head>?', 'autoptimize'); echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>'; ?></th> |
|
268 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo get_option('autoptimize_css_justhead') ? 'checked="checked" ' : ''; ?>/> |
|
269 | +<?php _e('Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.', 'autoptimize'); ?></label></td> |
|
270 | 270 | </tr> |
271 | 271 | <?php } ?> |
272 | -<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv"> |
|
273 | -<th scope="row"><?php _e('Also aggregate inline CSS?','autoptimize'); ?></th> |
|
274 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo get_option('autoptimize_css_include_inline','1')?'checked="checked" ':''; ?>/> |
|
275 | -<?php _e('Check this option for Autoptimize to also aggregate CSS in the HTML.','autoptimize'); ?></label></td> |
|
272 | +<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv"> |
|
273 | +<th scope="row"><?php _e('Also aggregate inline CSS?', 'autoptimize'); ?></th> |
|
274 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo get_option('autoptimize_css_include_inline', '1') ? 'checked="checked" ' : ''; ?>/> |
|
275 | +<?php _e('Check this option for Autoptimize to also aggregate CSS in the HTML.', 'autoptimize'); ?></label></td> |
|
276 | 276 | </tr> |
277 | -<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv"> |
|
278 | -<th scope="row"><?php _e('Inline and Defer CSS?','autoptimize'); ?></th> |
|
279 | -<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo get_option('autoptimize_css_defer')?'checked="checked" ':''; ?>/> |
|
280 | -<?php _e('Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="http://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> before activating this option!','autoptimize'); ?></label></td> |
|
277 | +<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv"> |
|
278 | +<th scope="row"><?php _e('Inline and Defer CSS?', 'autoptimize'); ?></th> |
|
279 | +<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo get_option('autoptimize_css_defer') ? 'checked="checked" ' : ''; ?>/> |
|
280 | +<?php _e('Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="http://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> before activating this option!', 'autoptimize'); ?></label></td> |
|
281 | 281 | </tr> |
282 | -<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv" id="autoptimize_css_defer_inline"> |
|
282 | +<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv" id="autoptimize_css_defer_inline"> |
|
283 | 283 | <th scope="row"></th> |
284 | -<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e('Paste the above the fold CSS here.','autoptimize'); ?>" name="autoptimize_css_defer_inline"><?php echo get_option('autoptimize_css_defer_inline'); ?></textarea></label></td> |
|
284 | +<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e('Paste the above the fold CSS here.', 'autoptimize'); ?>" name="autoptimize_css_defer_inline"><?php echo get_option('autoptimize_css_defer_inline'); ?></textarea></label></td> |
|
285 | 285 | </tr> |
286 | -<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv css_sub"> |
|
287 | -<th scope="row"><?php _e('Inline all CSS?','autoptimize'); ?></th> |
|
288 | -<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo get_option('autoptimize_css_inline')?'checked="checked" ':''; ?>/> |
|
289 | -<?php _e('Inlining all CSS can improve performance for sites with a low pageviews/ visitor-rate, but may slow down performance otherwise.','autoptimize'); ?></label></td> |
|
286 | +<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv css_sub"> |
|
287 | +<th scope="row"><?php _e('Inline all CSS?', 'autoptimize'); ?></th> |
|
288 | +<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo get_option('autoptimize_css_inline') ? 'checked="checked" ' : ''; ?>/> |
|
289 | +<?php _e('Inlining all CSS can improve performance for sites with a low pageviews/ visitor-rate, but may slow down performance otherwise.', 'autoptimize'); ?></label></td> |
|
290 | 290 | </tr> |
291 | -<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv css_sub"> |
|
292 | -<th scope="row"><?php _e('Exclude CSS from Autoptimize:','autoptimize'); ?></th> |
|
293 | -<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo get_option('autoptimize_css_exclude','admin-bar.min.css, dashicons.min.css'); ?>"/><br /> |
|
294 | -<?php _e('A comma-separated list of CSS you want to exclude from being optimized.','autoptimize'); ?></label></td> |
|
291 | +<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv css_sub"> |
|
292 | +<th scope="row"><?php _e('Exclude CSS from Autoptimize:', 'autoptimize'); ?></th> |
|
293 | +<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo get_option('autoptimize_css_exclude', 'admin-bar.min.css, dashicons.min.css'); ?>"/><br /> |
|
294 | +<?php _e('A comma-separated list of CSS you want to exclude from being optimized.', 'autoptimize'); ?></label></td> |
|
295 | 295 | </tr> |
296 | 296 | </table> |
297 | 297 | </li> |
298 | 298 | |
299 | 299 | <li class="itemDetail"> |
300 | -<h2 class="itemTitle"><?php _e('CDN Options','autoptimize'); ?></h2> |
|
300 | +<h2 class="itemTitle"><?php _e('CDN Options', 'autoptimize'); ?></h2> |
|
301 | 301 | <table class="form-table"> |
302 | 302 | <tr valign="top"> |
303 | -<th scope="row"><?php _e('CDN Base URL','autoptimize'); ?></th> |
|
304 | -<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url(get_option('autoptimize_cdn_url',''),array("http","https")); ?>" /><br /> |
|
305 | -<?php _e('Enter your CDN root URL to enable CDN for Autoptimized files. The URL can be http, https or protocol-relative (e.g. <code>//cdn.example.com/</code>). This is not needed for Cloudflare.','autoptimize'); ?></label></td> |
|
303 | +<th scope="row"><?php _e('CDN Base URL', 'autoptimize'); ?></th> |
|
304 | +<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url(get_option('autoptimize_cdn_url', ''), array("http", "https")); ?>" /><br /> |
|
305 | +<?php _e('Enter your CDN root URL to enable CDN for Autoptimized files. The URL can be http, https or protocol-relative (e.g. <code>//cdn.example.com/</code>). This is not needed for Cloudflare.', 'autoptimize'); ?></label></td> |
|
306 | 306 | </tr> |
307 | 307 | </table> |
308 | 308 | </li> |
309 | 309 | |
310 | -<li class="<?php echo $hiddenClass;?>itemDetail ao_adv"> |
|
311 | -<h2 class="itemTitle"><?php _e('Cache Info','autoptimize'); ?></h2> |
|
310 | +<li class="<?php echo $hiddenClass; ?>itemDetail ao_adv"> |
|
311 | +<h2 class="itemTitle"><?php _e('Cache Info', 'autoptimize'); ?></h2> |
|
312 | 312 | <table class="form-table" > |
313 | -<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv"> |
|
314 | -<th scope="row"><?php _e('Cache folder','autoptimize'); ?></th> |
|
313 | +<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv"> |
|
314 | +<th scope="row"><?php _e('Cache folder', 'autoptimize'); ?></th> |
|
315 | 315 | <td><?php echo htmlentities(AUTOPTIMIZE_CACHE_DIR); ?></td> |
316 | 316 | </tr> |
317 | -<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv"> |
|
318 | -<th scope="row"><?php _e('Can we write?','autoptimize'); ?></th> |
|
319 | -<td><?php echo (autoptimizeCache::cacheavail() ? __('Yes','autoptimize') : __('No','autoptimize')); ?></td> |
|
317 | +<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv"> |
|
318 | +<th scope="row"><?php _e('Can we write?', 'autoptimize'); ?></th> |
|
319 | +<td><?php echo (autoptimizeCache::cacheavail() ? __('Yes', 'autoptimize') : __('No', 'autoptimize')); ?></td> |
|
320 | 320 | </tr> |
321 | -<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv"> |
|
322 | -<th scope="row"><?php _e('Cached styles and scripts','autoptimize'); ?></th> |
|
321 | +<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv"> |
|
322 | +<th scope="row"><?php _e('Cached styles and scripts', 'autoptimize'); ?></th> |
|
323 | 323 | <td><?php |
324 | - $AOstatArr=autoptimizeCache::stats(); |
|
325 | - $AOcacheSize=round($AOstatArr[1]/1024); |
|
326 | - printf( __( '%1$s files, totalling %2$s Kbytes (calculated at %3$s)', 'autoptimize'), $AOstatArr[0], $AOcacheSize, date("H:i e", $AOstatArr[2]) ); |
|
324 | + $AOstatArr = autoptimizeCache::stats(); |
|
325 | + $AOcacheSize = round($AOstatArr[1]/1024); |
|
326 | + printf(__('%1$s files, totalling %2$s Kbytes (calculated at %3$s)', 'autoptimize'), $AOstatArr[0], $AOcacheSize, date("H:i e", $AOstatArr[2])); |
|
327 | 327 | ?></td> |
328 | 328 | </tr> |
329 | 329 | </table> |
330 | 330 | </li> |
331 | 331 | |
332 | -<li class="<?php echo $hiddenClass;?>itemDetail ao_adv"> |
|
333 | -<h2 class="itemTitle"><?php _e('Misc Options','autoptimize'); ?></h2> |
|
332 | +<li class="<?php echo $hiddenClass; ?>itemDetail ao_adv"> |
|
333 | +<h2 class="itemTitle"><?php _e('Misc Options', 'autoptimize'); ?></h2> |
|
334 | 334 | <table class="form-table"> |
335 | - <tr valign="top" class="<?php echo $hiddenClass;?>ao_adv"> |
|
336 | - <th scope="row"><?php _e('Save aggregated script/css as static files?','autoptimize'); ?></th> |
|
337 | - <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo get_option('autoptimize_cache_nogzip','1')?'checked="checked" ':''; ?>/> |
|
338 | - <?php _e('By default files saved are static css/js, uncheck this option if your webserver doesn\'t properly handle the compression and expiry.','autoptimize'); ?></label> |
|
335 | + <tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv"> |
|
336 | + <th scope="row"><?php _e('Save aggregated script/css as static files?', 'autoptimize'); ?></th> |
|
337 | + <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo get_option('autoptimize_cache_nogzip', '1') ? 'checked="checked" ' : ''; ?>/> |
|
338 | + <?php _e('By default files saved are static css/js, uncheck this option if your webserver doesn\'t properly handle the compression and expiry.', 'autoptimize'); ?></label> |
|
339 | 339 | </td> |
340 | 340 | </tr> |
341 | - <tr valign="top" class="<?php echo $hiddenClass;?>ao_adv"> |
|
342 | - <th scope="row"><?php _e('Also optimize for logged in users?','autoptimize'); ?></th> |
|
343 | - <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo get_option('autoptimize_optimize_logged','1')?'checked="checked" ':''; ?>/> |
|
344 | - <?php _e('By default Autoptimize is also active for logged on users, uncheck not to optimize when logged in e.g. to use a pagebuilder.','autoptimize'); ?></label> |
|
341 | + <tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv"> |
|
342 | + <th scope="row"><?php _e('Also optimize for logged in users?', 'autoptimize'); ?></th> |
|
343 | + <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo get_option('autoptimize_optimize_logged', '1') ? 'checked="checked" ' : ''; ?>/> |
|
344 | + <?php _e('By default Autoptimize is also active for logged on users, uncheck not to optimize when logged in e.g. to use a pagebuilder.', 'autoptimize'); ?></label> |
|
345 | 345 | </td> |
346 | 346 | </tr> |
347 | 347 | </table> |
@@ -349,11 +349,11 @@ discard block |
||
349 | 349 | |
350 | 350 | </ul> |
351 | 351 | |
352 | -<input type="hidden" id="autoptimize_show_adv" name="autoptimize_show_adv" value="<?php echo get_option('autoptimize_show_adv','0'); ?>"> |
|
352 | +<input type="hidden" id="autoptimize_show_adv" name="autoptimize_show_adv" value="<?php echo get_option('autoptimize_show_adv', '0'); ?>"> |
|
353 | 353 | |
354 | 354 | <p class="submit"> |
355 | -<input type="submit" class="button-secondary" value="<?php _e('Save Changes','autoptimize') ?>" /> |
|
356 | -<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e('Save Changes and Empty Cache','autoptimize') ?>" /> |
|
355 | +<input type="submit" class="button-secondary" value="<?php _e('Save Changes', 'autoptimize') ?>" /> |
|
356 | +<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e('Save Changes and Empty Cache', 'autoptimize') ?>" /> |
|
357 | 357 | </p> |
358 | 358 | |
359 | 359 | </form> |
@@ -362,31 +362,31 @@ discard block |
||
362 | 362 | <div class="autoptimize_banner hidden"> |
363 | 363 | <ul> |
364 | 364 | <?php |
365 | - if (apply_filters('autoptimize_settingsscreen_remotehttp',true)) { |
|
366 | - $AO_banner=get_transient("autoptimize_banner"); |
|
365 | + if (apply_filters('autoptimize_settingsscreen_remotehttp', true)) { |
|
366 | + $AO_banner = get_transient("autoptimize_banner"); |
|
367 | 367 | if (empty($AO_banner)) { |
368 | 368 | $banner_resp = wp_remote_get("http://misc.optimizingmatters.com/autoptimize_news.html"); |
369 | 369 | if (!is_wp_error($banner_resp)) { |
370 | - if (wp_remote_retrieve_response_code($banner_resp)=="200") { |
|
370 | + if (wp_remote_retrieve_response_code($banner_resp) == "200") { |
|
371 | 371 | $AO_banner = wp_kses_post(wp_remote_retrieve_body($banner_resp)); |
372 | - set_transient("autoptimize_banner",$AO_banner,DAY_IN_SECONDS); |
|
372 | + set_transient("autoptimize_banner", $AO_banner, DAY_IN_SECONDS); |
|
373 | 373 | } |
374 | 374 | } |
375 | 375 | } |
376 | 376 | echo $AO_banner; |
377 | 377 | } |
378 | 378 | ?> |
379 | - <li><?php _e("Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ</a> or post your question on <a href='http://wordpress.org/support/plugin/autoptimize'>the support-forum</a>.","autoptimize"); ?></li> |
|
380 | - <li><?php _e("Happy with Autoptimize?","autoptimize"); ?><br /><a href="<?php echo network_admin_url(); ?>plugin-install.php?tab=search&type=author&s=optimizingmatters"><?php _e("Try my other plugins!","autoptimize"); ?></a></li> |
|
379 | + <li><?php _e("Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ</a> or post your question on <a href='http://wordpress.org/support/plugin/autoptimize'>the support-forum</a>.", "autoptimize"); ?></li> |
|
380 | + <li><?php _e("Happy with Autoptimize?", "autoptimize"); ?><br /><a href="<?php echo network_admin_url(); ?>plugin-install.php?tab=search&type=author&s=optimizingmatters"><?php _e("Try my other plugins!", "autoptimize"); ?></a></li> |
|
381 | 381 | </ul> |
382 | 382 | </div> |
383 | 383 | <div style="margin-left:10px;margin-top:-5px;"> |
384 | 384 | <h2> |
385 | - <?php _e("futtta about","autoptimize") ?> |
|
385 | + <?php _e("futtta about", "autoptimize") ?> |
|
386 | 386 | <select id="feed_dropdown" > |
387 | - <option value="1"><?php _e("Autoptimize","autoptimize") ?></option> |
|
388 | - <option value="2"><?php _e("WordPress","autoptimize") ?></option> |
|
389 | - <option value="3"><?php _e("Web Technology","autoptimize") ?></option> |
|
387 | + <option value="1"><?php _e("Autoptimize", "autoptimize") ?></option> |
|
388 | + <option value="2"><?php _e("WordPress", "autoptimize") ?></option> |
|
389 | + <option value="3"><?php _e("Web Technology", "autoptimize") ?></option> |
|
390 | 390 | </select> |
391 | 391 | </h2> |
392 | 392 | <div id="futtta_feed"> |
@@ -401,7 +401,7 @@ discard block |
||
401 | 401 | </div> |
402 | 402 | </div> |
403 | 403 | </div> |
404 | - <div style="float:right;margin:50px 15px;"><a href="http://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url().'/'.plugin_basename(dirname(__FILE__)).'/external/do_not_donate_smallest.png'; ?>" title="<?php _e("Do not donate for this plugin!","autoptimize"); ?>"></a></div> |
|
404 | + <div style="float:right;margin:50px 15px;"><a href="http://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url().'/'.plugin_basename(dirname(__FILE__)).'/external/do_not_donate_smallest.png'; ?>" title="<?php _e("Do not donate for this plugin!", "autoptimize"); ?>"></a></div> |
|
405 | 405 | </div> |
406 | 406 | |
407 | 407 | <script type="text/javascript"> |
@@ -540,14 +540,14 @@ discard block |
||
540 | 540 | } |
541 | 541 | |
542 | 542 | public function addmenu() { |
543 | - $hook=add_options_page(__('Autoptimize Options','autoptimize'),'Autoptimize','manage_options','autoptimize',array($this,'show')); |
|
544 | - add_action( 'admin_print_scripts-'.$hook,array($this,'autoptimize_admin_scripts')); |
|
545 | - add_action( 'admin_print_styles-'.$hook,array($this,'autoptimize_admin_styles')); |
|
543 | + $hook = add_options_page(__('Autoptimize Options', 'autoptimize'), 'Autoptimize', 'manage_options', 'autoptimize', array($this, 'show')); |
|
544 | + add_action('admin_print_scripts-'.$hook, array($this, 'autoptimize_admin_scripts')); |
|
545 | + add_action('admin_print_styles-'.$hook, array($this, 'autoptimize_admin_styles')); |
|
546 | 546 | } |
547 | 547 | |
548 | 548 | public function autoptimize_admin_scripts() { |
549 | - wp_enqueue_script('jqcookie', plugins_url('/external/js/jquery.cookie.min.js', __FILE__), array('jquery'),null,true); |
|
550 | - wp_enqueue_script('unslider', plugins_url('/external/js/unslider-min.js', __FILE__), array('jquery'),null,true); |
|
549 | + wp_enqueue_script('jqcookie', plugins_url('/external/js/jquery.cookie.min.js', __FILE__), array('jquery'), null, true); |
|
550 | + wp_enqueue_script('unslider', plugins_url('/external/js/unslider-min.js', __FILE__), array('jquery'), null, true); |
|
551 | 551 | } |
552 | 552 | |
553 | 553 | public function autoptimize_admin_styles() { |
@@ -556,47 +556,47 @@ discard block |
||
556 | 556 | } |
557 | 557 | |
558 | 558 | public function registersettings() { |
559 | - register_setting('autoptimize','autoptimize_html'); |
|
560 | - register_setting('autoptimize','autoptimize_html_keepcomments'); |
|
561 | - register_setting('autoptimize','autoptimize_js'); |
|
562 | - register_setting('autoptimize','autoptimize_js_exclude'); |
|
563 | - register_setting('autoptimize','autoptimize_js_trycatch'); |
|
564 | - register_setting('autoptimize','autoptimize_js_justhead'); |
|
565 | - register_setting('autoptimize','autoptimize_js_forcehead'); |
|
566 | - register_setting('autoptimize','autoptimize_js_include_inline'); |
|
567 | - register_setting('autoptimize','autoptimize_css'); |
|
568 | - register_setting('autoptimize','autoptimize_css_exclude'); |
|
569 | - register_setting('autoptimize','autoptimize_css_justhead'); |
|
570 | - register_setting('autoptimize','autoptimize_css_datauris'); |
|
571 | - register_setting('autoptimize','autoptimize_css_defer'); |
|
572 | - register_setting('autoptimize','autoptimize_css_defer_inline'); |
|
573 | - register_setting('autoptimize','autoptimize_css_inline'); |
|
574 | - register_setting('autoptimize','autoptimize_css_include_inline'); |
|
575 | - register_setting('autoptimize','autoptimize_css_nogooglefont'); |
|
576 | - register_setting('autoptimize','autoptimize_cdn_url'); |
|
577 | - register_setting('autoptimize','autoptimize_cache_clean'); |
|
578 | - register_setting('autoptimize','autoptimize_cache_nogzip'); |
|
579 | - register_setting('autoptimize','autoptimize_show_adv'); |
|
580 | - register_setting('autoptimize','autoptimize_optimize_logged'); |
|
559 | + register_setting('autoptimize', 'autoptimize_html'); |
|
560 | + register_setting('autoptimize', 'autoptimize_html_keepcomments'); |
|
561 | + register_setting('autoptimize', 'autoptimize_js'); |
|
562 | + register_setting('autoptimize', 'autoptimize_js_exclude'); |
|
563 | + register_setting('autoptimize', 'autoptimize_js_trycatch'); |
|
564 | + register_setting('autoptimize', 'autoptimize_js_justhead'); |
|
565 | + register_setting('autoptimize', 'autoptimize_js_forcehead'); |
|
566 | + register_setting('autoptimize', 'autoptimize_js_include_inline'); |
|
567 | + register_setting('autoptimize', 'autoptimize_css'); |
|
568 | + register_setting('autoptimize', 'autoptimize_css_exclude'); |
|
569 | + register_setting('autoptimize', 'autoptimize_css_justhead'); |
|
570 | + register_setting('autoptimize', 'autoptimize_css_datauris'); |
|
571 | + register_setting('autoptimize', 'autoptimize_css_defer'); |
|
572 | + register_setting('autoptimize', 'autoptimize_css_defer_inline'); |
|
573 | + register_setting('autoptimize', 'autoptimize_css_inline'); |
|
574 | + register_setting('autoptimize', 'autoptimize_css_include_inline'); |
|
575 | + register_setting('autoptimize', 'autoptimize_css_nogooglefont'); |
|
576 | + register_setting('autoptimize', 'autoptimize_cdn_url'); |
|
577 | + register_setting('autoptimize', 'autoptimize_cache_clean'); |
|
578 | + register_setting('autoptimize', 'autoptimize_cache_nogzip'); |
|
579 | + register_setting('autoptimize', 'autoptimize_show_adv'); |
|
580 | + register_setting('autoptimize', 'autoptimize_optimize_logged'); |
|
581 | 581 | } |
582 | 582 | |
583 | - public function setmeta($links,$file=null) { |
|
583 | + public function setmeta($links, $file = null) { |
|
584 | 584 | //Inspired on http://wpengineer.com/meta-links-for-wordpress-plugins/ |
585 | 585 | //Do it only once - saves time |
586 | 586 | static $plugin; |
587 | - if(empty($plugin)) |
|
587 | + if (empty($plugin)) |
|
588 | 588 | $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php'); |
589 | 589 | |
590 | - if($file===null) { |
|
590 | + if ($file === null) { |
|
591 | 591 | //2.7 |
592 | 592 | $settings_link = sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings')); |
593 | - array_unshift($links,$settings_link); |
|
593 | + array_unshift($links, $settings_link); |
|
594 | 594 | } else { |
595 | 595 | //2.8 |
596 | 596 | //If it's us, add the link |
597 | - if($file === $plugin) { |
|
598 | - $newlink = array(sprintf('<a href="options-general.php?page=autoptimize">%s</a>',__('Settings'))); |
|
599 | - $links = array_merge($links,$newlink); |
|
597 | + if ($file === $plugin) { |
|
598 | + $newlink = array(sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings'))); |
|
599 | + $links = array_merge($links, $newlink); |
|
600 | 600 | } |
601 | 601 | } |
602 | 602 | |
@@ -604,7 +604,7 @@ discard block |
||
604 | 604 | } |
605 | 605 | |
606 | 606 | public function get($key) { |
607 | - if(!is_array($this->config)) { |
|
607 | + if (!is_array($this->config)) { |
|
608 | 608 | //Default config |
609 | 609 | $config = array('autoptimize_html' => 0, |
610 | 610 | 'autoptimize_html_keepcomments' => 0, |
@@ -630,9 +630,9 @@ discard block |
||
630 | 630 | ); |
631 | 631 | |
632 | 632 | //Override with user settings |
633 | - foreach(array_keys($config) as $name) { |
|
633 | + foreach (array_keys($config) as $name) { |
|
634 | 634 | $conf = get_option($name); |
635 | - if($conf!==false) { |
|
635 | + if ($conf !== false) { |
|
636 | 636 | //It was set before! |
637 | 637 | $config[$name] = $conf; |
638 | 638 | } |
@@ -642,31 +642,31 @@ discard block |
||
642 | 642 | $this->config = $config; |
643 | 643 | } |
644 | 644 | |
645 | - if(isset($this->config[$key])) |
|
645 | + if (isset($this->config[$key])) |
|
646 | 646 | return $this->config[$key]; |
647 | 647 | |
648 | 648 | return false; |
649 | 649 | } |
650 | 650 | |
651 | 651 | private function getFutttaFeeds($url) { |
652 | - if (apply_filters('autoptimize_settingsscreen_remotehttp',true)) { |
|
653 | - $rss = fetch_feed( $url ); |
|
652 | + if (apply_filters('autoptimize_settingsscreen_remotehttp', true)) { |
|
653 | + $rss = fetch_feed($url); |
|
654 | 654 | $maxitems = 0; |
655 | 655 | |
656 | - if ( ! is_wp_error( $rss ) ) { |
|
657 | - $maxitems = $rss->get_item_quantity( 7 ); |
|
658 | - $rss_items = $rss->get_items( 0, $maxitems ); |
|
656 | + if (!is_wp_error($rss)) { |
|
657 | + $maxitems = $rss->get_item_quantity(7); |
|
658 | + $rss_items = $rss->get_items(0, $maxitems); |
|
659 | 659 | } |
660 | 660 | ?> |
661 | 661 | <ul> |
662 | - <?php if ( $maxitems == 0 ) : ?> |
|
663 | - <li><?php _e( 'No items', 'autoptimize' ); ?></li> |
|
662 | + <?php if ($maxitems == 0) : ?> |
|
663 | + <li><?php _e('No items', 'autoptimize'); ?></li> |
|
664 | 664 | <?php else : ?> |
665 | - <?php foreach ( $rss_items as $item ) : ?> |
|
665 | + <?php foreach ($rss_items as $item) : ?> |
|
666 | 666 | <li> |
667 | - <a href="<?php echo esc_url( $item->get_permalink() ); ?>" |
|
668 | - title="<?php printf( __( 'Posted %s', 'autoptimize' ), $item->get_date('j F Y | g:i a') ); ?>"> |
|
669 | - <?php echo esc_html( $item->get_title() ); ?> |
|
667 | + <a href="<?php echo esc_url($item->get_permalink()); ?>" |
|
668 | + title="<?php printf(__('Posted %s', 'autoptimize'), $item->get_date('j F Y | g:i a')); ?>"> |
|
669 | + <?php echo esc_html($item->get_title()); ?> |
|
670 | 670 | </a> |
671 | 671 | </li> |
672 | 672 | <?php endforeach; ?> |
@@ -677,20 +677,20 @@ discard block |
||
677 | 677 | } |
678 | 678 | |
679 | 679 | // based on http://wordpress.stackexchange.com/a/58826 |
680 | - static function ao_admin_tabs(){ |
|
681 | - $tabs = apply_filters('autoptimize_filter_settingsscreen_tabs',array('autoptimize' => __('Main','autoptimize'))); |
|
682 | - $tabContent=""; |
|
683 | - if (count($tabs)>1) { |
|
684 | - if(isset($_GET['page'])){ |
|
680 | + static function ao_admin_tabs() { |
|
681 | + $tabs = apply_filters('autoptimize_filter_settingsscreen_tabs', array('autoptimize' => __('Main', 'autoptimize'))); |
|
682 | + $tabContent = ""; |
|
683 | + if (count($tabs) > 1) { |
|
684 | + if (isset($_GET['page'])) { |
|
685 | 685 | $currentId = $_GET['page']; |
686 | 686 | } else { |
687 | 687 | $currentId = "autoptimize"; |
688 | 688 | } |
689 | 689 | $tabContent .= "<h2 class=\"nav-tab-wrapper\">"; |
690 | - foreach($tabs as $tabId => $tabName){ |
|
691 | - if($currentId == $tabId){ |
|
690 | + foreach ($tabs as $tabId => $tabName) { |
|
691 | + if ($currentId == $tabId) { |
|
692 | 692 | $class = " nav-tab-active"; |
693 | - } else{ |
|
693 | + } else { |
|
694 | 694 | $class = ""; |
695 | 695 | } |
696 | 696 | $tabContent .= '<a class="nav-tab'.$class.'" href="?page='.$tabId.'">'.$tabName.'</a>'; |
@@ -12,15 +12,15 @@ discard block |
||
12 | 12 | http://www.gnu.org/licenses/gpl.txt |
13 | 13 | */ |
14 | 14 | |
15 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
15 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
16 | 16 | |
17 | -define('AUTOPTIMIZE_PLUGIN_DIR',plugin_dir_path(__FILE__)); |
|
17 | +define('AUTOPTIMIZE_PLUGIN_DIR', plugin_dir_path(__FILE__)); |
|
18 | 18 | |
19 | 19 | // Load config class |
20 | 20 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeConfig.php'); |
21 | 21 | |
22 | 22 | // Load toolbar class |
23 | -include( AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeToolbar.php' ); |
|
23 | +include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeToolbar.php'); |
|
24 | 24 | |
25 | 25 | // Load partners tab if admin |
26 | 26 | if (is_admin()) { |
@@ -28,25 +28,25 @@ discard block |
||
28 | 28 | } |
29 | 29 | |
30 | 30 | // Do we gzip when caching (needed early to load autoptimizeCache.php) |
31 | -define('AUTOPTIMIZE_CACHE_NOGZIP',(bool) get_option('autoptimize_cache_nogzip')); |
|
31 | +define('AUTOPTIMIZE_CACHE_NOGZIP', (bool) get_option('autoptimize_cache_nogzip')); |
|
32 | 32 | |
33 | 33 | // Load cache class |
34 | 34 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeCache.php'); |
35 | 35 | |
36 | 36 | // wp-content dir name (automagically set, should not be needed), dirname of AO cache dir and AO-prefix can be overridden in wp-config.php |
37 | -if (!defined('AUTOPTIMIZE_WP_CONTENT_NAME')) { define('AUTOPTIMIZE_WP_CONTENT_NAME','/'.wp_basename( WP_CONTENT_DIR )); } |
|
38 | -if (!defined('AUTOPTIMIZE_CACHE_CHILD_DIR')) { define('AUTOPTIMIZE_CACHE_CHILD_DIR','/cache/autoptimize/'); } |
|
37 | +if (!defined('AUTOPTIMIZE_WP_CONTENT_NAME')) { define('AUTOPTIMIZE_WP_CONTENT_NAME', '/'.wp_basename(WP_CONTENT_DIR)); } |
|
38 | +if (!defined('AUTOPTIMIZE_CACHE_CHILD_DIR')) { define('AUTOPTIMIZE_CACHE_CHILD_DIR', '/cache/autoptimize/'); } |
|
39 | 39 | if (!defined('AUTOPTIMIZE_CACHEFILE_PREFIX')) { define('AUTOPTIMIZE_CACHEFILE_PREFIX', 'autoptimize_'); } |
40 | 40 | |
41 | 41 | // Plugin dir constants (plugin url's defined later to accomodate domain mapped sites) |
42 | -if (is_multisite() && apply_filters( 'autoptimize_separate_blog_caches' , true )) { |
|
42 | +if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) { |
|
43 | 43 | $blog_id = get_current_blog_id(); |
44 | - define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/' ); |
|
44 | + define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/'); |
|
45 | 45 | } else { |
46 | 46 | define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR); |
47 | 47 | } |
48 | -define('AUTOPTIMIZE_CACHE_DELAY',true); |
|
49 | -define('WP_ROOT_DIR',str_replace(AUTOPTIMIZE_WP_CONTENT_NAME,'',WP_CONTENT_DIR)); |
|
48 | +define('AUTOPTIMIZE_CACHE_DELAY', true); |
|
49 | +define('WP_ROOT_DIR', str_replace(AUTOPTIMIZE_WP_CONTENT_NAME, '', WP_CONTENT_DIR)); |
|
50 | 50 | |
51 | 51 | // Initialize the cache at least once |
52 | 52 | $conf = autoptimizeConfig::instance(); |
@@ -54,65 +54,65 @@ discard block |
||
54 | 54 | /* Check if we're updating, in which case we might need to do stuff and flush the cache |
55 | 55 | to avoid old versions of aggregated files lingering around */ |
56 | 56 | |
57 | -$autoptimize_version="2.1.99"; |
|
58 | -$autoptimize_db_version=get_option('autoptimize_version','none'); |
|
57 | +$autoptimize_version = "2.1.99"; |
|
58 | +$autoptimize_db_version = get_option('autoptimize_version', 'none'); |
|
59 | 59 | |
60 | 60 | if ($autoptimize_db_version !== $autoptimize_version) { |
61 | - if ($autoptimize_db_version==="none") { |
|
61 | + if ($autoptimize_db_version === "none") { |
|
62 | 62 | add_action('admin_notices', 'autoptimize_install_config_notice'); |
63 | 63 | } else { |
64 | 64 | // updating, include the update-code |
65 | 65 | include(AUTOPTIMIZE_PLUGIN_DIR.'classlesses/autoptimizeUpdateCode.php'); |
66 | 66 | } |
67 | 67 | |
68 | - update_option('autoptimize_version',$autoptimize_version); |
|
69 | - $autoptimize_db_version=$autoptimize_version; |
|
68 | + update_option('autoptimize_version', $autoptimize_version); |
|
69 | + $autoptimize_db_version = $autoptimize_version; |
|
70 | 70 | } |
71 | 71 | |
72 | 72 | // Load translations |
73 | 73 | function autoptimize_load_plugin_textdomain() { |
74 | - load_plugin_textdomain('autoptimize',false,plugin_basename(dirname( __FILE__ )).'/localization'); |
|
74 | + load_plugin_textdomain('autoptimize', false, plugin_basename(dirname(__FILE__)).'/localization'); |
|
75 | 75 | } |
76 | -add_action( 'init', 'autoptimize_load_plugin_textdomain' ); |
|
76 | +add_action('init', 'autoptimize_load_plugin_textdomain'); |
|
77 | 77 | |
78 | -function autoptimize_uninstall(){ |
|
78 | +function autoptimize_uninstall() { |
|
79 | 79 | autoptimizeCache::clearall(); |
80 | 80 | |
81 | - $delete_options=array("autoptimize_cache_clean", "autoptimize_cache_nogzip", "autoptimize_css", "autoptimize_css_datauris", "autoptimize_css_justhead", "autoptimize_css_defer", "autoptimize_css_defer_inline", "autoptimize_css_inline", "autoptimize_css_exclude", "autoptimize_html", "autoptimize_html_keepcomments", "autoptimize_js", "autoptimize_js_exclude", "autoptimize_js_forcehead", "autoptimize_js_justhead", "autoptimize_js_trycatch", "autoptimize_version", "autoptimize_show_adv", "autoptimize_cdn_url", "autoptimize_cachesize_notice","autoptimize_css_include_inline","autoptimize_js_include_inline","autoptimize_css_nogooglefont","autoptimize_optimize_logged"); |
|
81 | + $delete_options = array("autoptimize_cache_clean", "autoptimize_cache_nogzip", "autoptimize_css", "autoptimize_css_datauris", "autoptimize_css_justhead", "autoptimize_css_defer", "autoptimize_css_defer_inline", "autoptimize_css_inline", "autoptimize_css_exclude", "autoptimize_html", "autoptimize_html_keepcomments", "autoptimize_js", "autoptimize_js_exclude", "autoptimize_js_forcehead", "autoptimize_js_justhead", "autoptimize_js_trycatch", "autoptimize_version", "autoptimize_show_adv", "autoptimize_cdn_url", "autoptimize_cachesize_notice", "autoptimize_css_include_inline", "autoptimize_js_include_inline", "autoptimize_css_nogooglefont", "autoptimize_optimize_logged"); |
|
82 | 82 | |
83 | - if ( !is_multisite() ) { |
|
84 | - foreach ($delete_options as $del_opt) { delete_option( $del_opt ); } |
|
83 | + if (!is_multisite()) { |
|
84 | + foreach ($delete_options as $del_opt) { delete_option($del_opt); } |
|
85 | 85 | } else { |
86 | 86 | global $wpdb; |
87 | - $blog_ids = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" ); |
|
87 | + $blog_ids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs"); |
|
88 | 88 | $original_blog_id = get_current_blog_id(); |
89 | - foreach ( $blog_ids as $blog_id ) { |
|
90 | - switch_to_blog( $blog_id ); |
|
91 | - foreach ($delete_options as $del_opt) { delete_option( $del_opt ); } |
|
89 | + foreach ($blog_ids as $blog_id) { |
|
90 | + switch_to_blog($blog_id); |
|
91 | + foreach ($delete_options as $del_opt) { delete_option($del_opt); } |
|
92 | 92 | } |
93 | - switch_to_blog( $original_blog_id ); |
|
93 | + switch_to_blog($original_blog_id); |
|
94 | 94 | } |
95 | 95 | |
96 | - if ( wp_get_schedule( 'ao_cachechecker' ) ) { |
|
97 | - wp_clear_scheduled_hook( 'ao_cachechecker' ); |
|
96 | + if (wp_get_schedule('ao_cachechecker')) { |
|
97 | + wp_clear_scheduled_hook('ao_cachechecker'); |
|
98 | 98 | } |
99 | 99 | } |
100 | 100 | |
101 | 101 | function autoptimize_install_config_notice() { |
102 | 102 | echo '<div class="updated"><p>'; |
103 | - _e('Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize' ); |
|
103 | + _e('Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize'); |
|
104 | 104 | echo '</p></div>'; |
105 | 105 | } |
106 | 106 | |
107 | 107 | function autoptimize_update_config_notice() { |
108 | 108 | echo '<div class="updated"><p>'; |
109 | - _e('Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize' ); |
|
109 | + _e('Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize'); |
|
110 | 110 | echo '</p></div>'; |
111 | 111 | } |
112 | 112 | |
113 | 113 | function autoptimize_cache_unavailable_notice() { |
114 | 114 | echo '<div class="error"><p>'; |
115 | - printf( __( 'Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize' ), AUTOPTIMIZE_CACHE_DIR ); |
|
115 | + printf(__('Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize'), AUTOPTIMIZE_CACHE_DIR); |
|
116 | 116 | echo '</p></div>'; |
117 | 117 | } |
118 | 118 | |
@@ -121,28 +121,28 @@ discard block |
||
121 | 121 | $ao_noptimize = false; |
122 | 122 | |
123 | 123 | // noptimize in qs to get non-optimized page for debugging |
124 | - if (array_key_exists("ao_noptimize",$_GET)) { |
|
125 | - if ( ($_GET["ao_noptimize"]==="1") && (apply_filters('autoptimize_filter_honor_qs_noptimize',true)) ) { |
|
124 | + if (array_key_exists("ao_noptimize", $_GET)) { |
|
125 | + if (($_GET["ao_noptimize"] === "1") && (apply_filters('autoptimize_filter_honor_qs_noptimize', true))) { |
|
126 | 126 | $ao_noptimize = true; |
127 | 127 | } |
128 | 128 | } |
129 | 129 | |
130 | 130 | // check for DONOTMINIFY constant as used by e.g. WooCommerce POS |
131 | - if (defined('DONOTMINIFY') && (constant('DONOTMINIFY')===true || constant('DONOTMINIFY')==="true")) { |
|
131 | + if (defined('DONOTMINIFY') && (constant('DONOTMINIFY') === true || constant('DONOTMINIFY') === "true")) { |
|
132 | 132 | $ao_noptimize = true; |
133 | 133 | } |
134 | 134 | |
135 | 135 | // if setting says not to optimize logged in user and user is logged in |
136 | - if (get_option('autoptimize_optimize_logged','on') !== 'on' && is_user_logged_in()) { |
|
136 | + if (get_option('autoptimize_optimize_logged', 'on') !== 'on' && is_user_logged_in()) { |
|
137 | 137 | $ao_noptimize = true; |
138 | 138 | } |
139 | 139 | |
140 | 140 | // filter you can use to block autoptimization on your own terms |
141 | - $ao_noptimize = (bool) apply_filters( 'autoptimize_filter_noptimize', $ao_noptimize ); |
|
141 | + $ao_noptimize = (bool) apply_filters('autoptimize_filter_noptimize', $ao_noptimize); |
|
142 | 142 | |
143 | - if (!is_feed() && !$ao_noptimize && !is_admin() && ( !function_exists('is_customize_preview') || !is_customize_preview() ) ) { |
|
143 | + if (!is_feed() && !$ao_noptimize && !is_admin() && (!function_exists('is_customize_preview') || !is_customize_preview())) { |
|
144 | 144 | // load speedupper conditionally (true by default?) |
145 | - if ( apply_filters('autoptimize_filter_speedupper', true) ) { |
|
145 | + if (apply_filters('autoptimize_filter_speedupper', true)) { |
|
146 | 146 | include(AUTOPTIMIZE_PLUGIN_DIR.'classlesses/autoptimizeSpeedupper.php'); |
147 | 147 | } |
148 | 148 | |
@@ -153,7 +153,7 @@ discard block |
||
153 | 153 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeBase.php'); |
154 | 154 | |
155 | 155 | // Load extra classes and set some vars |
156 | - if($conf->get('autoptimize_html')) { |
|
156 | + if ($conf->get('autoptimize_html')) { |
|
157 | 157 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeHTML.php'); |
158 | 158 | // BUG: new minify-html does not support keeping HTML comments, skipping for now |
159 | 159 | // if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
@@ -163,7 +163,7 @@ discard block |
||
163 | 163 | // } |
164 | 164 | } |
165 | 165 | |
166 | - if($conf->get('autoptimize_js')) { |
|
166 | + if ($conf->get('autoptimize_js')) { |
|
167 | 167 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeScripts.php'); |
168 | 168 | if (!class_exists('JSMin')) { |
169 | 169 | if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
@@ -172,15 +172,15 @@ discard block |
||
172 | 172 | @include(AUTOPTIMIZE_PLUGIN_DIR.'classes/external/php/minify-2.3.1-jsmin.php'); |
173 | 173 | } |
174 | 174 | } |
175 | - if ( ! defined( 'CONCATENATE_SCRIPTS' )) { |
|
176 | - define('CONCATENATE_SCRIPTS',false); |
|
175 | + if (!defined('CONCATENATE_SCRIPTS')) { |
|
176 | + define('CONCATENATE_SCRIPTS', false); |
|
177 | 177 | } |
178 | - if ( ! defined( 'COMPRESS_SCRIPTS' )) { |
|
179 | - define('COMPRESS_SCRIPTS',false); |
|
178 | + if (!defined('COMPRESS_SCRIPTS')) { |
|
179 | + define('COMPRESS_SCRIPTS', false); |
|
180 | 180 | } |
181 | 181 | } |
182 | 182 | |
183 | - if($conf->get('autoptimize_css')) { |
|
183 | + if ($conf->get('autoptimize_css')) { |
|
184 | 184 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeStyles.php'); |
185 | 185 | if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
186 | 186 | if (!class_exists('Minify_CSS_Compressor')) { |
@@ -191,13 +191,13 @@ discard block |
||
191 | 191 | @include(AUTOPTIMIZE_PLUGIN_DIR.'classes/external/php/yui-php-cssmin-2.4.8-p10/cssmin.php'); |
192 | 192 | } |
193 | 193 | } |
194 | - if ( ! defined( 'COMPRESS_CSS' )) { |
|
195 | - define('COMPRESS_CSS',false); |
|
194 | + if (!defined('COMPRESS_CSS')) { |
|
195 | + define('COMPRESS_CSS', false); |
|
196 | 196 | } |
197 | 197 | } |
198 | 198 | |
199 | 199 | // filter to be used with care, kills all output buffers when true. use with extreme caution. you have been warned! |
200 | - if (apply_filters('autoptimize_filter_obkiller',false)) { |
|
200 | + if (apply_filters('autoptimize_filter_obkiller', false)) { |
|
201 | 201 | while (ob_get_level() > 0) { |
202 | 202 | ob_end_clean(); |
203 | 203 | } |
@@ -209,35 +209,35 @@ discard block |
||
209 | 209 | |
210 | 210 | // Action on end, this is where the magic happens |
211 | 211 | function autoptimize_end_buffering($content) { |
212 | - if ( ((stripos($content,"<html") === false) && (stripos($content,"<!DOCTYPE html") === false)) || preg_match('/<html[^>]*(?:amp|⚡)/',$content) === 1 || stripos($content,"<xsl:stylesheet") !== false ) { return $content; } |
|
212 | + if (((stripos($content, "<html") === false) && (stripos($content, "<!DOCTYPE html") === false)) || preg_match('/<html[^>]*(?:amp|⚡)/', $content) === 1 || stripos($content, "<xsl:stylesheet") !== false) { return $content; } |
|
213 | 213 | |
214 | 214 | // load URL constants as late as possible to allow domain mapper to kick in |
215 | 215 | if (function_exists("domain_mapping_siteurl")) { |
216 | - define('AUTOPTIMIZE_WP_SITE_URL',domain_mapping_siteurl(get_current_blog_id())); |
|
217 | - define('AUTOPTIMIZE_WP_CONTENT_URL',str_replace(get_original_url(AUTOPTIMIZE_WP_SITE_URL),AUTOPTIMIZE_WP_SITE_URL,content_url())); |
|
216 | + define('AUTOPTIMIZE_WP_SITE_URL', domain_mapping_siteurl(get_current_blog_id())); |
|
217 | + define('AUTOPTIMIZE_WP_CONTENT_URL', str_replace(get_original_url(AUTOPTIMIZE_WP_SITE_URL), AUTOPTIMIZE_WP_SITE_URL, content_url())); |
|
218 | 218 | } else { |
219 | - define('AUTOPTIMIZE_WP_SITE_URL',site_url()); |
|
220 | - define('AUTOPTIMIZE_WP_CONTENT_URL',content_url()); |
|
219 | + define('AUTOPTIMIZE_WP_SITE_URL', site_url()); |
|
220 | + define('AUTOPTIMIZE_WP_CONTENT_URL', content_url()); |
|
221 | 221 | } |
222 | 222 | |
223 | - if ( is_multisite() && apply_filters( 'autoptimize_separate_blog_caches' , true ) ) { |
|
223 | + if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) { |
|
224 | 224 | $blog_id = get_current_blog_id(); |
225 | - define('AUTOPTIMIZE_CACHE_URL',AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/' ); |
|
225 | + define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/'); |
|
226 | 226 | } else { |
227 | - define('AUTOPTIMIZE_CACHE_URL',AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR); |
|
227 | + define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR); |
|
228 | 228 | } |
229 | - define('AUTOPTIMIZE_WP_ROOT_URL',str_replace(AUTOPTIMIZE_WP_CONTENT_NAME,'',AUTOPTIMIZE_WP_CONTENT_URL)); |
|
229 | + define('AUTOPTIMIZE_WP_ROOT_URL', str_replace(AUTOPTIMIZE_WP_CONTENT_NAME, '', AUTOPTIMIZE_WP_CONTENT_URL)); |
|
230 | 230 | |
231 | 231 | // Config element |
232 | 232 | $conf = autoptimizeConfig::instance(); |
233 | 233 | |
234 | 234 | // Choose the classes |
235 | 235 | $classes = array(); |
236 | - if($conf->get('autoptimize_js')) |
|
236 | + if ($conf->get('autoptimize_js')) |
|
237 | 237 | $classes[] = 'autoptimizeScripts'; |
238 | - if($conf->get('autoptimize_css')) |
|
238 | + if ($conf->get('autoptimize_css')) |
|
239 | 239 | $classes[] = 'autoptimizeStyles'; |
240 | - if($conf->get('autoptimize_html')) |
|
240 | + if ($conf->get('autoptimize_html')) |
|
241 | 241 | $classes[] = 'autoptimizeHTML'; |
242 | 242 | |
243 | 243 | // Set some options |
@@ -266,12 +266,12 @@ discard block |
||
266 | 266 | ) |
267 | 267 | ); |
268 | 268 | |
269 | - $content = apply_filters( 'autoptimize_filter_html_before_minify', $content ); |
|
269 | + $content = apply_filters('autoptimize_filter_html_before_minify', $content); |
|
270 | 270 | |
271 | 271 | // Run the classes |
272 | - foreach($classes as $name) { |
|
272 | + foreach ($classes as $name) { |
|
273 | 273 | $instance = new $name($content); |
274 | - if($instance->read($classoptions[$name])) { |
|
274 | + if ($instance->read($classoptions[$name])) { |
|
275 | 275 | $instance->minify(); |
276 | 276 | $instance->cache(); |
277 | 277 | $content = $instance->getcontent(); |
@@ -279,19 +279,19 @@ discard block |
||
279 | 279 | unset($instance); |
280 | 280 | } |
281 | 281 | |
282 | - $content = apply_filters( 'autoptimize_html_after_minify', $content ); |
|
282 | + $content = apply_filters('autoptimize_html_after_minify', $content); |
|
283 | 283 | return $content; |
284 | 284 | } |
285 | 285 | |
286 | -if ( autoptimizeCache::cacheavail() ) { |
|
286 | +if (autoptimizeCache::cacheavail()) { |
|
287 | 287 | $conf = autoptimizeConfig::instance(); |
288 | - if( $conf->get('autoptimize_html') || $conf->get('autoptimize_js') || $conf->get('autoptimize_css') ) { |
|
288 | + if ($conf->get('autoptimize_html') || $conf->get('autoptimize_js') || $conf->get('autoptimize_css')) { |
|
289 | 289 | // Hook to wordpress |
290 | 290 | if (defined('AUTOPTIMIZE_INIT_EARLIER')) { |
291 | - add_action('init','autoptimize_start_buffering',-1); |
|
291 | + add_action('init', 'autoptimize_start_buffering', -1); |
|
292 | 292 | } else { |
293 | 293 | if (!defined('AUTOPTIMIZE_HOOK_INTO')) { define('AUTOPTIMIZE_HOOK_INTO', 'template_redirect'); } |
294 | - add_action(constant("AUTOPTIMIZE_HOOK_INTO"),'autoptimize_start_buffering',2); |
|
294 | + add_action(constant("AUTOPTIMIZE_HOOK_INTO"), 'autoptimize_start_buffering', 2); |
|
295 | 295 | } |
296 | 296 | } |
297 | 297 | } else { |
@@ -299,9 +299,9 @@ discard block |
||
299 | 299 | } |
300 | 300 | |
301 | 301 | function autoptimize_activate() { |
302 | - register_uninstall_hook( __FILE__, 'autoptimize_uninstall' ); |
|
302 | + register_uninstall_hook(__FILE__, 'autoptimize_uninstall'); |
|
303 | 303 | } |
304 | -register_activation_hook( __FILE__, 'autoptimize_activate' ); |
|
304 | +register_activation_hook(__FILE__, 'autoptimize_activate'); |
|
305 | 305 | |
306 | 306 | include_once('classlesses/autoptimizeCacheChecker.php'); |
307 | 307 |