Completed
Push — master ( 8c3a5f...38e4a5 )
by frank
01:41
created
php/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php 1 patch
Spacing   +30 added lines, -30 removed lines patch added patch discarded remove patch
@@ -28,11 +28,11 @@  discard block
 block discarded – undo
28 28
 /**
29 29
  * Exit if called directly.
30 30
  */
31
-if ( ! defined( 'ABSPATH' ) ) {
31
+if (!defined('ABSPATH')) {
32 32
 	die;
33 33
 }
34 34
 
35
-if ( ! class_exists( 'PAnD' ) ) {
35
+if (!class_exists('PAnD')) {
36 36
 
37 37
 	/**
38 38
 	 * Class PAnD
@@ -43,8 +43,8 @@  discard block
 block discarded – undo
43 43
 		 * Init hooks.
44 44
 		 */
45 45
 		public static function init() {
46
-			add_action( 'admin_enqueue_scripts', array( __CLASS__, 'load_script' ) );
47
-			add_action( 'wp_ajax_dismiss_admin_notice', array( __CLASS__, 'dismiss_admin_notice' ) );
46
+			add_action('admin_enqueue_scripts', array(__CLASS__, 'load_script'));
47
+			add_action('wp_ajax_dismiss_admin_notice', array(__CLASS__, 'dismiss_admin_notice'));
48 48
 		}
49 49
 
50 50
 		/**
@@ -52,14 +52,14 @@  discard block
 block discarded – undo
52 52
 		 */
53 53
 		public static function load_script() {
54 54
 
55
-			if ( is_customize_preview() ) {
55
+			if (is_customize_preview()) {
56 56
 				return;
57 57
 			}
58 58
 
59 59
 			wp_enqueue_script(
60 60
 				'dismissible-notices',
61
-				plugins_url( 'dismiss-notice.js', __FILE__ ),
62
-				array( 'jquery', 'common' ),
61
+				plugins_url('dismiss-notice.js', __FILE__),
62
+				array('jquery', 'common'),
63 63
 				false,
64 64
 				true
65 65
 			);
@@ -68,7 +68,7 @@  discard block
 block discarded – undo
68 68
 				'dismissible-notices',
69 69
 				'dismissible_notice',
70 70
 				array(
71
-					'nonce' => wp_create_nonce( 'dismissible-notice' ),
71
+					'nonce' => wp_create_nonce('dismissible-notice'),
72 72
 				)
73 73
 			);
74 74
 		}
@@ -78,17 +78,17 @@  discard block
 block discarded – undo
78 78
 		 * Uses check_ajax_referer to verify nonce.
79 79
 		 */
80 80
 		public static function dismiss_admin_notice() {
81
-			$option_name        = sanitize_text_field( $_POST['option_name'] );
82
-			$dismissible_length = sanitize_text_field( $_POST['dismissible_length'] );
81
+			$option_name        = sanitize_text_field($_POST['option_name']);
82
+			$dismissible_length = sanitize_text_field($_POST['dismissible_length']);
83 83
 
84
-			if ( 'forever' != $dismissible_length ) {
84
+			if ('forever' != $dismissible_length) {
85 85
 				// If $dismissible_length is not an integer default to 1
86
-				$dismissible_length = ( 0 == absint( $dismissible_length ) ) ? 1 : $dismissible_length;
87
-				$dismissible_length = strtotime( absint( $dismissible_length ) . ' days' );
86
+				$dismissible_length = (0 == absint($dismissible_length)) ? 1 : $dismissible_length;
87
+				$dismissible_length = strtotime(absint($dismissible_length).' days');
88 88
 			}
89 89
 
90
-			check_ajax_referer( 'dismissible-notice', 'nonce' );
91
-			self::set_admin_notice_cache( $option_name, $dismissible_length );
90
+			check_ajax_referer('dismissible-notice', 'nonce');
91
+			self::set_admin_notice_cache($option_name, $dismissible_length);
92 92
 			wp_die();
93 93
 		}
94 94
 
@@ -99,14 +99,14 @@  discard block
 block discarded – undo
99 99
 		 *
100 100
 		 * @return bool
101 101
 		 */
102
-		public static function is_admin_notice_active( $arg ) {
103
-			$array       = explode( '-', $arg );
104
-			$length      = array_pop( $array );
105
-			$option_name = implode( '-', $array );
106
-			$db_record   = self::get_admin_notice_cache( $option_name );
107
-			if ( 'forever' == $db_record ) {
102
+		public static function is_admin_notice_active($arg) {
103
+			$array       = explode('-', $arg);
104
+			$length      = array_pop($array);
105
+			$option_name = implode('-', $array);
106
+			$db_record   = self::get_admin_notice_cache($option_name);
107
+			if ('forever' == $db_record) {
108 108
 				return false;
109
-			} elseif ( absint( $db_record ) >= time() ) {
109
+			} elseif (absint($db_record) >= time()) {
110 110
 				return false;
111 111
 			} else {
112 112
 				return true;
@@ -122,15 +122,15 @@  discard block
 block discarded – undo
122 122
 		 *
123 123
 		 * @return array|bool The timeout. False if expired.
124 124
 		 */
125
-		public static function get_admin_notice_cache( $id = false ) {
126
-			if ( ! $id ) {
125
+		public static function get_admin_notice_cache($id = false) {
126
+			if (!$id) {
127 127
 				return false;
128 128
 			}
129
-			$cache_key = 'pand-' . md5( $id );
130
-			$timeout   = get_site_option( $cache_key );
129
+			$cache_key = 'pand-'.md5($id);
130
+			$timeout   = get_site_option($cache_key);
131 131
 			$timeout   = 'forever' === $timeout ? time() + 60 : $timeout;
132 132
 
133
-			if ( empty( $timeout ) || time() > $timeout ) {
133
+			if (empty($timeout) || time() > $timeout) {
134 134
 				return false;
135 135
 			}
136 136
 
@@ -147,9 +147,9 @@  discard block
 block discarded – undo
147 147
 		 *
148 148
 		 * @return bool
149 149
 		 */
150
-		public static function set_admin_notice_cache( $id, $timeout ) {
151
-			$cache_key = 'pand-' . md5( $id );
152
-			update_site_option( $cache_key, $timeout );
150
+		public static function set_admin_notice_cache($id, $timeout) {
151
+			$cache_key = 'pand-'.md5($id);
152
+			update_site_option($cache_key, $timeout);
153 153
 
154 154
 			return true;
155 155
 		}
Please login to merge, or discard this patch.
classes/external/php/jsmin.php 1 patch
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -70,7 +70,7 @@  discard block
 block discarded – undo
70 70
     protected $inputLength = 0;
71 71
     protected $lookAhead   = null;
72 72
     protected $output      = '';
73
-    protected $lastByteOut  = '';
73
+    protected $lastByteOut = '';
74 74
     protected $keptComment = '';
75 75
 
76 76
     /**
@@ -106,7 +106,7 @@  discard block
 block discarded – undo
106 106
         }
107 107
 
108 108
         $mbIntEnc = null;
109
-        if (function_exists('mb_strlen') && ((int)ini_get('mbstring.func_overload') & 2)) {
109
+        if (function_exists('mb_strlen') && ((int) ini_get('mbstring.func_overload') & 2)) {
110 110
             $mbIntEnc = mb_internal_encoding();
111 111
             mb_internal_encoding('8bit');
112 112
         }
@@ -128,7 +128,7 @@  discard block
 block discarded – undo
128 128
                         && ($this->b === $this->lastByteOut)) {
129 129
                     // Don't delete this space. If we do, the addition/subtraction
130 130
                     // could be parsed as a post-increment
131
-                } elseif (! $this->isAlphaNum($this->b)) {
131
+                } elseif (!$this->isAlphaNum($this->b)) {
132 132
                     $command = self::ACTION_DELETE_A;
133 133
                 }
134 134
             } elseif ($this->a === "\n") {
@@ -139,10 +139,10 @@  discard block
 block discarded – undo
139 139
                     // otherwise mb_strpos will give WARNING
140 140
                 } elseif ($this->b === null
141 141
                           || (false === strpos('{[(+-!~', $this->b)
142
-                              && ! $this->isAlphaNum($this->b))) {
142
+                              && !$this->isAlphaNum($this->b))) {
143 143
                     $command = self::ACTION_DELETE_A;
144 144
                 }
145
-            } elseif (! $this->isAlphaNum($this->a)) {
145
+            } elseif (!$this->isAlphaNum($this->a)) {
146 146
                 if ($this->b === ' '
147 147
                     || ($this->b === "\n"
148 148
                         && (false === strpos('}])+-"\'', $this->a)))) {
@@ -199,7 +199,7 @@  discard block
 block discarded – undo
199 199
                 if ($this->a === "'" || $this->a === '"' || $this->a === '`') { // string/template literal
200 200
                     $delimiter = $this->a;
201 201
                     $str = $this->a; // in case needed for exception
202
-                    for(;;) {
202
+                    for (;;) {
203 203
                         $this->output .= $this->a;
204 204
                         $this->lastByteOut = $this->a;
205 205
 
@@ -229,13 +229,13 @@  discard block
 block discarded – undo
229 229
             case self::ACTION_DELETE_A_B: // 3
230 230
                 $this->b = $this->next();
231 231
                 if ($this->b === '/' && $this->isRegexpLiteral()) {
232
-                    $this->output .= $this->a . $this->b;
232
+                    $this->output .= $this->a.$this->b;
233 233
                     $pattern = '/'; // keep entire pattern in case we need to report it in the exception
234
-                    for(;;) {
234
+                    for (;;) {
235 235
                         $this->a = $this->get();
236 236
                         $pattern .= $this->a;
237 237
                         if ($this->a === '[') {
238
-                            for(;;) {
238
+                            for (;;) {
239 239
                                 $this->output .= $this->a;
240 240
                                 $this->a = $this->get();
241 241
                                 $pattern .= $this->a;
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
                                 if ($this->isEOF($this->a)) {
251 251
                                     throw new JSMin_UnterminatedRegExpException(
252 252
                                         "JSMin: Unterminated set in RegExp at byte "
253
-                                            . $this->inputIndex .": {$pattern}");
253
+                                            . $this->inputIndex.": {$pattern}");
254 254
                                 }
255 255
                             }
256 256
                         }
@@ -295,7 +295,7 @@  discard block
 block discarded – undo
295 295
 
296 296
         // if the "/" follows a keyword, it must be a regexp, otherwise it's best to assume division
297 297
 
298
-        $subject = $this->output . trim($this->a);
298
+        $subject = $this->output.trim($this->a);
299 299
         if (!preg_match('/(?:case|else|in|return|typeof)$/', $subject, $m)) {
300 300
             // not a keyword
301 301
             return false;
@@ -406,7 +406,7 @@  discard block
 block discarded – undo
406 406
     {
407 407
         $this->get();
408 408
         $comment = '';
409
-        for(;;) {
409
+        for (;;) {
410 410
             $get = $this->get();
411 411
             if ($get === '*') {
412 412
                 if ($this->peek() === '/') { // end of comment reached
@@ -417,7 +417,7 @@  discard block
 block discarded – undo
417 417
                             // don't prepend a newline if two comments right after one another
418 418
                             $this->keptComment = "\n";
419 419
                         }
420
-                        $this->keptComment .= "/*!" . substr($comment, 1) . "*/\n";
420
+                        $this->keptComment .= "/*!".substr($comment, 1)."*/\n";
421 421
                     } else if (preg_match('/^@(?:cc_on|if|elif|else|end)\\b/', $comment)) {
422 422
                         // IE conditional
423 423
                         $this->keptComment .= "/*{$comment}*/";
Please login to merge, or discard this patch.
classes/autoptimizeStyles.php 1 patch
Spacing   +313 added lines, -313 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Class for CSS optimization.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -49,53 +49,53 @@  discard block
 block discarded – undo
49 49
     // public $cdn_url; // Used all over the place implicitly, so will have to be either public or protected :/ .
50 50
 
51 51
     // Reads the page and collects style tags.
52
-    public function read( $options )
52
+    public function read($options)
53 53
     {
54
-        $noptimizeCSS = apply_filters( 'autoptimize_filter_css_noptimize', false, $this->content );
55
-        if ( $noptimizeCSS ) {
54
+        $noptimizeCSS = apply_filters('autoptimize_filter_css_noptimize', false, $this->content);
55
+        if ($noptimizeCSS) {
56 56
             return false;
57 57
         }
58 58
 
59
-        $whitelistCSS = apply_filters( 'autoptimize_filter_css_whitelist', '', $this->content );
60
-        if ( ! empty( $whitelistCSS ) ) {
61
-            $this->whitelist = array_filter( array_map( 'trim', explode( ',', $whitelistCSS ) ) );
59
+        $whitelistCSS = apply_filters('autoptimize_filter_css_whitelist', '', $this->content);
60
+        if (!empty($whitelistCSS)) {
61
+            $this->whitelist = array_filter(array_map('trim', explode(',', $whitelistCSS)));
62 62
         }
63 63
 
64
-        $removableCSS = apply_filters( 'autoptimize_filter_css_removables', '' );
65
-        if ( ! empty( $removableCSS ) ) {
66
-            $this->cssremovables = array_filter( array_map( 'trim', explode( ',', $removableCSS ) ) );
64
+        $removableCSS = apply_filters('autoptimize_filter_css_removables', '');
65
+        if (!empty($removableCSS)) {
66
+            $this->cssremovables = array_filter(array_map('trim', explode(',', $removableCSS)));
67 67
         }
68 68
 
69
-        $this->cssinlinesize = apply_filters( 'autoptimize_filter_css_inlinesize', 256 );
69
+        $this->cssinlinesize = apply_filters('autoptimize_filter_css_inlinesize', 256);
70 70
 
71 71
         // filter to "late inject minified CSS", default to true for now (it is faster).
72
-        $this->inject_min_late = apply_filters( 'autoptimize_filter_css_inject_min_late', true );
72
+        $this->inject_min_late = apply_filters('autoptimize_filter_css_inject_min_late', true);
73 73
 
74 74
         // Remove everything that's not the header.
75
-        if ( apply_filters( 'autoptimize_filter_css_justhead', $options['justhead'] ) ) {
76
-            $content             = explode( '</head>', $this->content, 2 );
77
-            $this->content       = $content[0] . '</head>';
75
+        if (apply_filters('autoptimize_filter_css_justhead', $options['justhead'])) {
76
+            $content             = explode('</head>', $this->content, 2);
77
+            $this->content       = $content[0].'</head>';
78 78
             $this->restofcontent = $content[1];
79 79
         }
80 80
 
81 81
         // Determine whether we're doing CSS-files aggregation or not.
82
-        if ( isset( $options['aggregate'] ) && ! $options['aggregate'] ) {
82
+        if (isset($options['aggregate']) && !$options['aggregate']) {
83 83
             $this->aggregate = false;
84 84
         }
85 85
         // Returning true for "dontaggregate" turns off aggregation.
86
-        if ( $this->aggregate && apply_filters( 'autoptimize_filter_css_dontaggregate', false ) ) {
86
+        if ($this->aggregate && apply_filters('autoptimize_filter_css_dontaggregate', false)) {
87 87
             $this->aggregate = false;
88 88
         }
89 89
 
90 90
         // include inline?
91
-        if ( apply_filters( 'autoptimize_css_include_inline', $options['include_inline'] ) ) {
91
+        if (apply_filters('autoptimize_css_include_inline', $options['include_inline'])) {
92 92
             $this->include_inline = true;
93 93
         }
94 94
 
95 95
         // List of CSS strings which are excluded from autoptimization.
96
-        $excludeCSS = apply_filters( 'autoptimize_filter_css_exclude', $options['css_exclude'], $this->content );
97
-        if ( '' !== $excludeCSS ) {
98
-            $this->dontmove = array_filter( array_map( 'trim', explode( ',', $excludeCSS ) ) );
96
+        $excludeCSS = apply_filters('autoptimize_filter_css_exclude', $options['css_exclude'], $this->content);
97
+        if ('' !== $excludeCSS) {
98
+            $this->dontmove = array_filter(array_map('trim', explode(',', $excludeCSS)));
99 99
         } else {
100 100
             $this->dontmove = array();
101 101
         }
@@ -106,16 +106,16 @@  discard block
 block discarded – undo
106 106
         // Should we defer css?
107 107
         // value: true / false.
108 108
         $this->defer = $options['defer'];
109
-        $this->defer = apply_filters( 'autoptimize_filter_css_defer', $this->defer, $this->content );
109
+        $this->defer = apply_filters('autoptimize_filter_css_defer', $this->defer, $this->content);
110 110
 
111 111
         // Should we inline while deferring?
112 112
         // value: inlined CSS.
113
-        $this->defer_inline = apply_filters( 'autoptimize_filter_css_defer_inline', $options['defer_inline'], $this->content );
113
+        $this->defer_inline = apply_filters('autoptimize_filter_css_defer_inline', $options['defer_inline'], $this->content);
114 114
 
115 115
         // Should we inline?
116 116
         // value: true / false.
117 117
         $this->inline = $options['inline'];
118
-        $this->inline = apply_filters( 'autoptimize_filter_css_inline', $this->inline, $this->content );
118
+        $this->inline = apply_filters('autoptimize_filter_css_inline', $this->inline, $this->content);
119 119
 
120 120
         // Store cdn url.
121 121
         $this->cdn_url = $options['cdn_url'];
@@ -124,12 +124,12 @@  discard block
 block discarded – undo
124 124
         $this->datauris = $options['datauris'];
125 125
 
126 126
         // Determine whether excluded files should be minified if not yet so.
127
-        if ( ! $options['minify_excluded'] && $options['aggregate'] ) {
127
+        if (!$options['minify_excluded'] && $options['aggregate']) {
128 128
             $this->minify_excluded = false;
129 129
         }
130 130
 
131 131
         // noptimize me.
132
-        $this->content = $this->hide_noptimize( $this->content );
132
+        $this->content = $this->hide_noptimize($this->content);
133 133
 
134 134
         // Exclude (no)script, as those may contain CSS which should be left as is.
135 135
         $this->content = $this->replace_contents_with_marker_if_exists(
@@ -140,26 +140,26 @@  discard block
 block discarded – undo
140 140
         );
141 141
 
142 142
         // Save IE hacks.
143
-        $this->content = $this->hide_iehacks( $this->content );
143
+        $this->content = $this->hide_iehacks($this->content);
144 144
 
145 145
         // Hide HTML comments.
146
-        $this->content = $this->hide_comments( $this->content );
146
+        $this->content = $this->hide_comments($this->content);
147 147
 
148 148
         // Get <style> and <link>.
149
-        if ( preg_match_all( '#(<style[^>]*>.*</style>)|(<link[^>]*stylesheet[^>]*>)#Usmi', $this->content, $matches ) ) {
149
+        if (preg_match_all('#(<style[^>]*>.*</style>)|(<link[^>]*stylesheet[^>]*>)#Usmi', $this->content, $matches)) {
150 150
 
151
-            foreach ( $matches[0] as $tag ) {
152
-                if ( $this->isremovable( $tag, $this->cssremovables ) ) {
153
-                    $this->content = str_replace( $tag, '', $this->content );
154
-                } elseif ( $this->ismovable( $tag ) ) {
151
+            foreach ($matches[0] as $tag) {
152
+                if ($this->isremovable($tag, $this->cssremovables)) {
153
+                    $this->content = str_replace($tag, '', $this->content);
154
+                } elseif ($this->ismovable($tag)) {
155 155
                     // Get the media.
156
-                    if ( false !== strpos( $tag, 'media=' ) ) {
157
-                        preg_match( '#media=(?:"|\')([^>]*)(?:"|\')#Ui', $tag, $medias );
158
-                        $medias = explode( ',', $medias[1] );
156
+                    if (false !== strpos($tag, 'media=')) {
157
+                        preg_match('#media=(?:"|\')([^>]*)(?:"|\')#Ui', $tag, $medias);
158
+                        $medias = explode(',', $medias[1]);
159 159
                         $media = array();
160
-                        foreach ( $medias as $elem ) {
160
+                        foreach ($medias as $elem) {
161 161
                             /* $media[] = current(explode(' ',trim($elem),2)); */
162
-                            if ( empty( $elem ) ) {
162
+                            if (empty($elem)) {
163 163
                                 $elem = 'all';
164 164
                             }
165 165
 
@@ -167,69 +167,69 @@  discard block
 block discarded – undo
167 167
                         }
168 168
                     } else {
169 169
                         // No media specified - applies to all.
170
-                        $media = array( 'all' );
170
+                        $media = array('all');
171 171
                     }
172 172
 
173
-                    $media = apply_filters( 'autoptimize_filter_css_tagmedia', $media, $tag );
173
+                    $media = apply_filters('autoptimize_filter_css_tagmedia', $media, $tag);
174 174
 
175
-                    if ( preg_match( '#<link.*href=("|\')(.*)("|\')#Usmi', $tag, $source ) ) {
175
+                    if (preg_match('#<link.*href=("|\')(.*)("|\')#Usmi', $tag, $source)) {
176 176
                         // <link>.
177
-                        $url  = current( explode( '?', $source[2], 2 ) );
178
-                        $path = $this->getpath( $url );
177
+                        $url  = current(explode('?', $source[2], 2));
178
+                        $path = $this->getpath($url);
179 179
 
180
-                        if ( false !== $path && preg_match( '#\.css$#', $path ) ) {
180
+                        if (false !== $path && preg_match('#\.css$#', $path)) {
181 181
                             // Good link.
182
-                            $this->css[] = array( $media, $path );
182
+                            $this->css[] = array($media, $path);
183 183
                         } else {
184 184
                             // Link is dynamic (.php etc).
185
-                            $new_tag = $this->optionally_defer_excluded( $tag, 'none' );
186
-                            if ( $new_tag !== $tag ) {
187
-                                $this->content = str_replace( $tag, $new_tag, $this->content );
185
+                            $new_tag = $this->optionally_defer_excluded($tag, 'none');
186
+                            if ($new_tag !== $tag) {
187
+                                $this->content = str_replace($tag, $new_tag, $this->content);
188 188
                             }
189 189
                             $tag = '';
190 190
                         }
191 191
                     } else {
192 192
                         // Inline css in style tags can be wrapped in comment tags, so restore comments.
193
-                        $tag = $this->restore_comments( $tag );
194
-                        preg_match( '#<style.*>(.*)</style>#Usmi', $tag, $code );
193
+                        $tag = $this->restore_comments($tag);
194
+                        preg_match('#<style.*>(.*)</style>#Usmi', $tag, $code);
195 195
 
196 196
                         // And re-hide them to be able to to the removal based on tag.
197
-                        $tag = $this->hide_comments( $tag );
197
+                        $tag = $this->hide_comments($tag);
198 198
 
199
-                        if ( $this->include_inline ) {
200
-                            $code = preg_replace( '#^.*<!\[CDATA\[(?:\s*\*/)?(.*)(?://|/\*)\s*?\]\]>.*$#sm', '$1', $code[1] );
201
-                            $this->css[] = array( $media, 'INLINE;' . $code );
199
+                        if ($this->include_inline) {
200
+                            $code = preg_replace('#^.*<!\[CDATA\[(?:\s*\*/)?(.*)(?://|/\*)\s*?\]\]>.*$#sm', '$1', $code[1]);
201
+                            $this->css[] = array($media, 'INLINE;'.$code);
202 202
                         } else {
203 203
                             $tag = '';
204 204
                         }
205 205
                     }
206 206
 
207 207
                     // Remove the original style tag.
208
-                    $this->content = str_replace( $tag, '', $this->content );
208
+                    $this->content = str_replace($tag, '', $this->content);
209 209
                 } else {
210 210
                     // Excluded CSS, minify that file:
211 211
                     // -> if aggregate is on and exclude minify is on
212 212
                     // -> if aggregate is off and the file is not in dontmove.
213
-                    if ( preg_match( '#<link.*href=("|\')(.*)("|\')#Usmi', $tag, $source ) ) {
214
-                        $exploded_url = explode( '?', $source[2], 2 );
213
+                    if (preg_match('#<link.*href=("|\')(.*)("|\')#Usmi', $tag, $source)) {
214
+                        $exploded_url = explode('?', $source[2], 2);
215 215
                         $url          = $exploded_url[0];
216
-                        $path         = $this->getpath( $url );
216
+                        $path         = $this->getpath($url);
217 217
 
218
-                        if ( $path && ( $this->minify_excluded || apply_filters( 'autoptimize_filter_css_minify_excluded', false, $url ) ) ) {
219
-                            $consider_minified_array = apply_filters( 'autoptimize_filter_css_consider_minified', false );
220
-                            if ( ( false === $this->aggregate && str_replace( $this->dontmove, '', $path ) === $path ) || ( true === $this->aggregate && ( false === $consider_minified_array || str_replace( $consider_minified_array, '', $path ) === $path ) ) ) {
221
-                                $minified_url = $this->minify_single( $path );
222
-                                if ( ! empty( $minified_url ) ) {
218
+                        if ($path && ($this->minify_excluded || apply_filters('autoptimize_filter_css_minify_excluded', false, $url))) {
219
+                            $consider_minified_array = apply_filters('autoptimize_filter_css_consider_minified', false);
220
+                            if ((false === $this->aggregate && str_replace($this->dontmove, '', $path) === $path) || (true === $this->aggregate && (false === $consider_minified_array || str_replace($consider_minified_array, '', $path) === $path))) {
221
+                                $minified_url = $this->minify_single($path);
222
+                                if (!empty($minified_url)) {
223 223
                                     // Replace orig URL with cached minified URL.
224
-                                    $new_tag = str_replace( $url, $minified_url, $tag );
224
+                                    $new_tag = str_replace($url, $minified_url, $tag);
225 225
                                 } else {
226 226
                                     $new_tag = $tag;
227 227
                                 }
228 228
 
229
-                                $new_tag = $this->optionally_defer_excluded( $new_tag, $url );
229
+                                $new_tag = $this->optionally_defer_excluded($new_tag, $url);
230 230
 
231 231
                                 // And replace!
232
-                                $this->content = str_replace( $tag, $new_tag, $this->content );
232
+                                $this->content = str_replace($tag, $new_tag, $this->content);
233 233
                             }
234 234
                         }
235 235
                     }
@@ -251,10 +251,10 @@  discard block
 block discarded – undo
251 251
      *
252 252
      * @return string $new_tag
253 253
      */
254
-    private function optionally_defer_excluded( $new_tag, $url = '' )
254
+    private function optionally_defer_excluded($new_tag, $url = '')
255 255
     {
256 256
         // Defer single CSS if "inline & defer" is ON and there is inline CSS.
257
-        if ( $this->defer && ! empty( $this->defer_inline ) ) {
257
+        if ($this->defer && !empty($this->defer_inline)) {
258 258
             // Get/ set (via filter) the JS to be triggers onload of the preloaded CSS.
259 259
             $_preload_onload = apply_filters(
260 260
                 'autoptimize_filter_css_preload_onload',
@@ -262,12 +262,12 @@  discard block
 block discarded – undo
262 262
                 $url
263 263
             );
264 264
             // Adapt original <link> element for CSS to be preloaded and add <noscript>-version for fallback.
265
-            $new_tag = '<noscript>' . $new_tag . '</noscript>' . str_replace(
265
+            $new_tag = '<noscript>'.$new_tag.'</noscript>'.str_replace(
266 266
                 array(
267 267
                     "rel='stylesheet'",
268 268
                     'rel="stylesheet"',
269 269
                 ),
270
-                "rel='preload' as='style' onload=\"" . $_preload_onload . "\"",
270
+                "rel='preload' as='style' onload=\"".$_preload_onload."\"",
271 271
                 $new_tag
272 272
             );
273 273
         }
@@ -281,22 +281,22 @@  discard block
 block discarded – undo
281 281
      * @param string $path
282 282
      * @return boolean
283 283
      */
284
-    private function is_datauri_candidate( $path )
284
+    private function is_datauri_candidate($path)
285 285
     {
286 286
         // Call only once since it's called from a loop.
287 287
         static $max_size = null;
288
-        if ( null === $max_size ) {
288
+        if (null === $max_size) {
289 289
             $max_size = $this->get_datauri_maxsize();
290 290
         }
291 291
 
292
-        if ( $path && preg_match( '#\.(jpe?g|png|gif|webp|bmp)$#i', $path ) &&
293
-            file_exists( $path ) && is_readable( $path ) && filesize( $path ) <= $max_size ) {
292
+        if ($path && preg_match('#\.(jpe?g|png|gif|webp|bmp)$#i', $path) &&
293
+            file_exists($path) && is_readable($path) && filesize($path) <= $max_size) {
294 294
 
295 295
             // Seems we have a candidate.
296 296
             $is_candidate = true;
297 297
         } else {
298 298
             // Filter allows overriding default decision (which checks for local file existence).
299
-            $is_candidate = apply_filters( 'autoptimize_filter_css_is_datauri_candidate', false, $path );
299
+            $is_candidate = apply_filters('autoptimize_filter_css_is_datauri_candidate', false, $path);
300 300
         }
301 301
 
302 302
         return $is_candidate;
@@ -321,29 +321,29 @@  discard block
 block discarded – undo
321 321
          * of thing you're probably better of building assets completely
322 322
          * outside of WordPress anyway.
323 323
          */
324
-        if ( null === $max_size ) {
325
-            $max_size = (int) apply_filters( 'autoptimize_filter_css_datauri_maxsize', 4096 );
324
+        if (null === $max_size) {
325
+            $max_size = (int) apply_filters('autoptimize_filter_css_datauri_maxsize', 4096);
326 326
         }
327 327
 
328 328
         return $max_size;
329 329
     }
330 330
 
331
-    private function check_datauri_exclude_list( $url )
331
+    private function check_datauri_exclude_list($url)
332 332
     {
333 333
         static $exclude_list = null;
334 334
         $no_datauris         = array();
335 335
 
336 336
         // Again, skip doing certain stuff repeatedly when loop-called.
337
-        if ( null === $exclude_list ) {
338
-            $exclude_list = apply_filters( 'autoptimize_filter_css_datauri_exclude', '' );
339
-            $no_datauris = array_filter( array_map( 'trim', explode( ',', $exclude_list ) ) );
337
+        if (null === $exclude_list) {
338
+            $exclude_list = apply_filters('autoptimize_filter_css_datauri_exclude', '');
339
+            $no_datauris = array_filter(array_map('trim', explode(',', $exclude_list)));
340 340
         }
341 341
 
342 342
         $matched = false;
343 343
 
344
-        if ( ! empty( $exclude_list ) ) {
345
-            foreach ( $no_datauris as $no_datauri ) {
346
-                if ( false !== strpos( $url, $no_datauri ) ) {
344
+        if (!empty($exclude_list)) {
345
+            foreach ($no_datauris as $no_datauri) {
346
+                if (false !== strpos($url, $no_datauri)) {
347 347
                     $matched = true;
348 348
                     break;
349 349
                 }
@@ -353,7 +353,7 @@  discard block
 block discarded – undo
353 353
         return $matched;
354 354
     }
355 355
 
356
-    private function build_or_get_datauri_image( $path )
356
+    private function build_or_get_datauri_image($path)
357 357
     {
358 358
         /**
359 359
          * TODO/FIXME: document the required return array format, or better yet,
@@ -362,27 +362,27 @@  discard block
 block discarded – undo
362 362
          */
363 363
 
364 364
         // Allows short-circuiting datauri generation for an image.
365
-        $result = apply_filters( 'autoptimize_filter_css_datauri_image', array(), $path );
366
-        if ( ! empty( $result ) ) {
367
-            if ( is_array( $result ) && isset( $result['full'] ) && isset( $result['base64data'] ) ) {
365
+        $result = apply_filters('autoptimize_filter_css_datauri_image', array(), $path);
366
+        if (!empty($result)) {
367
+            if (is_array($result) && isset($result['full']) && isset($result['base64data'])) {
368 368
                 return $result;
369 369
             }
370 370
         }
371 371
 
372
-        $hash = md5( $path );
373
-        $check = new autoptimizeCache( $hash, 'img' );
374
-        if ( $check->check() ) {
372
+        $hash = md5($path);
373
+        $check = new autoptimizeCache($hash, 'img');
374
+        if ($check->check()) {
375 375
             // we have the base64 image in cache.
376 376
             $headAndData = $check->retrieve();
377
-            $_base64data = explode( ';base64,', $headAndData );
377
+            $_base64data = explode(';base64,', $headAndData);
378 378
             $base64data  = $_base64data[1];
379
-            unset( $_base64data );
379
+            unset($_base64data);
380 380
         } else {
381 381
             // It's an image and we don't have it in cache, get the type by extension.
382
-            $exploded_path = explode( '.', $path );
383
-            $type = end( $exploded_path );
382
+            $exploded_path = explode('.', $path);
383
+            $type = end($exploded_path);
384 384
 
385
-            switch ( $type ) {
385
+            switch ($type) {
386 386
                 case 'jpg':
387 387
                 case 'jpeg':
388 388
                     $dataurihead = 'data:image/jpeg;base64,';
@@ -404,15 +404,15 @@  discard block
 block discarded – undo
404 404
             }
405 405
 
406 406
             // Encode the data.
407
-            $base64data  = base64_encode( file_get_contents( $path ) );
408
-            $headAndData = $dataurihead . $base64data;
407
+            $base64data  = base64_encode(file_get_contents($path));
408
+            $headAndData = $dataurihead.$base64data;
409 409
 
410 410
             // Save in cache.
411
-            $check->cache( $headAndData, 'text/plain' );
411
+            $check->cache($headAndData, 'text/plain');
412 412
         }
413
-        unset( $check );
413
+        unset($check);
414 414
 
415
-        return array( 'full' => $headAndData, 'base64data' => $base64data );
415
+        return array('full' => $headAndData, 'base64data' => $base64data);
416 416
     }
417 417
 
418 418
     /**
@@ -424,13 +424,13 @@  discard block
 block discarded – undo
424 424
      *
425 425
      * @return string
426 426
      */
427
-    protected static function replace_longest_matches_first( $string, $replacements = array() )
427
+    protected static function replace_longest_matches_first($string, $replacements = array())
428 428
     {
429
-        if ( ! empty( $replacements ) ) {
429
+        if (!empty($replacements)) {
430 430
             // Sort the replacements array by key length in desc order (so that the longest strings are replaced first).
431
-            $keys = array_map( 'strlen', array_keys( $replacements ) );
432
-            array_multisort( $keys, SORT_DESC, $replacements );
433
-            $string = str_replace( array_keys( $replacements ), array_values( $replacements ), $string );
431
+            $keys = array_map('strlen', array_keys($replacements));
432
+            array_multisort($keys, SORT_DESC, $replacements);
433
+            $string = str_replace(array_keys($replacements), array_values($replacements), $string);
434 434
         }
435 435
 
436 436
         return $string;
@@ -446,15 +446,15 @@  discard block
 block discarded – undo
446 446
      *
447 447
      * @return string
448 448
      */
449
-    public function replace_urls( $code = '' )
449
+    public function replace_urls($code = '')
450 450
     {
451 451
         $replacements = array();
452 452
 
453
-        preg_match_all( self::ASSETS_REGEX, $code, $url_src_matches );
454
-        if ( is_array( $url_src_matches ) && ! empty( $url_src_matches ) ) {
455
-            foreach ( $url_src_matches[1] as $count => $original_url ) {
453
+        preg_match_all(self::ASSETS_REGEX, $code, $url_src_matches);
454
+        if (is_array($url_src_matches) && !empty($url_src_matches)) {
455
+            foreach ($url_src_matches[1] as $count => $original_url) {
456 456
                 // Removes quotes and other cruft.
457
-                $url = trim( $original_url, " \t\n\r\0\x0B\"'" );
457
+                $url = trim($original_url, " \t\n\r\0\x0B\"'");
458 458
 
459 459
                 /**
460 460
                  * TODO/FIXME: Add a way for other code / callable to be called here
@@ -472,17 +472,17 @@  discard block
 block discarded – undo
472 472
                  */
473 473
 
474 474
                 // Do CDN replacement if needed.
475
-                if ( ! empty( $this->cdn_url ) ) {
476
-                    $replacement_url = $this->url_replace_cdn( $url );
475
+                if (!empty($this->cdn_url)) {
476
+                    $replacement_url = $this->url_replace_cdn($url);
477 477
                     // Prepare replacements array.
478
-                    $replacements[ $url_src_matches[1][ $count ] ] = str_replace(
478
+                    $replacements[$url_src_matches[1][$count]] = str_replace(
479 479
                         $original_url, $replacement_url, $url_src_matches[1][$count]
480 480
                     );
481 481
                 }
482 482
             }
483 483
         }
484 484
 
485
-        $code = self::replace_longest_matches_first( $code, $replacements );
485
+        $code = self::replace_longest_matches_first($code, $replacements);
486 486
 
487 487
         return $code;
488 488
     }
@@ -495,26 +495,26 @@  discard block
 block discarded – undo
495 495
      * @param string $code
496 496
      * @return string
497 497
      */
498
-    public function hide_fontface_and_maybe_cdn( $code )
498
+    public function hide_fontface_and_maybe_cdn($code)
499 499
     {
500 500
         // Proceed only if @font-face declarations exist within $code.
501
-        preg_match_all( self::FONT_FACE_REGEX, $code, $fontfaces );
502
-        if ( isset( $fontfaces[0] ) ) {
501
+        preg_match_all(self::FONT_FACE_REGEX, $code, $fontfaces);
502
+        if (isset($fontfaces[0])) {
503 503
             // Check if we need to cdn fonts or not.
504
-            $do_font_cdn = apply_filters( 'autoptimize_filter_css_fonts_cdn', false );
504
+            $do_font_cdn = apply_filters('autoptimize_filter_css_fonts_cdn', false);
505 505
 
506
-            foreach ( $fontfaces[0] as $full_match ) {
506
+            foreach ($fontfaces[0] as $full_match) {
507 507
                 // Keep original match so we can search/replace it.
508 508
                 $match_search = $full_match;
509 509
 
510 510
                 // Do font cdn if needed.
511
-                if ( $do_font_cdn ) {
512
-                    $full_match = $this->replace_urls( $full_match );
511
+                if ($do_font_cdn) {
512
+                    $full_match = $this->replace_urls($full_match);
513 513
                 }
514 514
 
515 515
                 // Replace declaration with its base64 encoded string.
516
-                $replacement = self::build_marker( 'FONTFACE', $full_match );
517
-                $code = str_replace( $match_search, $replacement, $code );
516
+                $replacement = self::build_marker('FONTFACE', $full_match);
517
+                $code = str_replace($match_search, $replacement, $code);
518 518
             }
519 519
         }
520 520
 
@@ -528,16 +528,16 @@  discard block
 block discarded – undo
528 528
      * @param string $code
529 529
      * @return string
530 530
      */
531
-    public function restore_fontface( $code )
531
+    public function restore_fontface($code)
532 532
     {
533
-        return $this->restore_marked_content( 'FONTFACE', $code );
533
+        return $this->restore_marked_content('FONTFACE', $code);
534 534
     }
535 535
 
536 536
     // Re-write (and/or inline) referenced assets.
537
-    public function rewrite_assets( $code )
537
+    public function rewrite_assets($code)
538 538
     {
539 539
         // Handle @font-face rules by hiding and processing them separately.
540
-        $code = $this->hide_fontface_and_maybe_cdn( $code );
540
+        $code = $this->hide_fontface_and_maybe_cdn($code);
541 541
 
542 542
         /**
543 543
          * TODO/FIXME:
@@ -553,30 +553,30 @@  discard block
 block discarded – undo
553 553
         $url_src_matches = array();
554 554
         $imgreplace = array();
555 555
         // Matches and captures anything specified within the literal `url()` and excludes those containing data: URIs.
556
-        preg_match_all( self::ASSETS_REGEX, $code, $url_src_matches );
557
-        if ( is_array( $url_src_matches ) && ! empty( $url_src_matches ) ) {
558
-            foreach ( $url_src_matches[1] as $count => $original_url ) {
556
+        preg_match_all(self::ASSETS_REGEX, $code, $url_src_matches);
557
+        if (is_array($url_src_matches) && !empty($url_src_matches)) {
558
+            foreach ($url_src_matches[1] as $count => $original_url) {
559 559
                 // Removes quotes and other cruft.
560
-                $url = trim( $original_url, " \t\n\r\0\x0B\"'" );
560
+                $url = trim($original_url, " \t\n\r\0\x0B\"'");
561 561
 
562 562
                 // If datauri inlining is turned on, do it.
563 563
                 $inlined = false;
564
-                if ( $this->datauris ) {
564
+                if ($this->datauris) {
565 565
                     $iurl = $url;
566
-                    if ( false !== strpos( $iurl, '?' ) ) {
567
-                        $iurl = strtok( $iurl, '?' );
566
+                    if (false !== strpos($iurl, '?')) {
567
+                        $iurl = strtok($iurl, '?');
568 568
                     }
569 569
 
570
-                    $ipath = $this->getpath( $iurl );
570
+                    $ipath = $this->getpath($iurl);
571 571
 
572
-                    $excluded = $this->check_datauri_exclude_list( $ipath );
573
-                    if ( ! $excluded ) {
574
-                        $is_datauri_candidate = $this->is_datauri_candidate( $ipath );
575
-                        if ( $is_datauri_candidate ) {
576
-                            $datauri     = $this->build_or_get_datauri_image( $ipath );
572
+                    $excluded = $this->check_datauri_exclude_list($ipath);
573
+                    if (!$excluded) {
574
+                        $is_datauri_candidate = $this->is_datauri_candidate($ipath);
575
+                        if ($is_datauri_candidate) {
576
+                            $datauri     = $this->build_or_get_datauri_image($ipath);
577 577
                             $base64data  = $datauri['base64data'];
578 578
                             // Add it to the list for replacement.
579
-                            $imgreplace[ $url_src_matches[1][ $count ] ] = str_replace(
579
+                            $imgreplace[$url_src_matches[1][$count]] = str_replace(
580 580
                                     $original_url,
581 581
                                     $datauri['full'],
582 582
                                     $url_src_matches[1][$count]
@@ -592,20 +592,20 @@  discard block
 block discarded – undo
592 592
                  * inlining isn't turned on, or if a resource is skipped from
593 593
                  * being inlined for whatever reason above.
594 594
                  */
595
-                if ( ! $inlined && ( ! empty( $this->cdn_url ) || has_filter( 'autoptimize_filter_base_replace_cdn' ) ) ) {
595
+                if (!$inlined && (!empty($this->cdn_url) || has_filter('autoptimize_filter_base_replace_cdn'))) {
596 596
                     // Just do the "simple" CDN replacement.
597
-                    $replacement_url = $this->url_replace_cdn( $url );
598
-                    $imgreplace[ $url_src_matches[1][ $count ] ] = str_replace(
597
+                    $replacement_url = $this->url_replace_cdn($url);
598
+                    $imgreplace[$url_src_matches[1][$count]] = str_replace(
599 599
                         $original_url, $replacement_url, $url_src_matches[1][$count]
600 600
                     );
601 601
                 }
602 602
             }
603 603
         }
604 604
 
605
-        $code = self::replace_longest_matches_first( $code, $imgreplace );
605
+        $code = self::replace_longest_matches_first($code, $imgreplace);
606 606
 
607 607
         // Replace back font-face markers with actual font-face declarations.
608
-        $code = $this->restore_fontface( $code );
608
+        $code = $this->restore_fontface($code);
609 609
 
610 610
         return $code;
611 611
     }
@@ -613,29 +613,29 @@  discard block
 block discarded – undo
613 613
     // Joins and optimizes CSS.
614 614
     public function minify()
615 615
     {
616
-        foreach ( $this->css as $group ) {
617
-            list( $media, $css ) = $group;
618
-            if ( preg_match( '#^INLINE;#', $css ) ) {
616
+        foreach ($this->css as $group) {
617
+            list($media, $css) = $group;
618
+            if (preg_match('#^INLINE;#', $css)) {
619 619
                 // <style>.
620
-                $css = preg_replace( '#^INLINE;#', '', $css );
621
-                $css = self::fixurls( ABSPATH . 'index.php', $css ); // ABSPATH already contains a trailing slash.
622
-                $tmpstyle = apply_filters( 'autoptimize_css_individual_style', $css, '' );
623
-                if ( has_filter( 'autoptimize_css_individual_style' ) && ! empty( $tmpstyle ) ) {
620
+                $css = preg_replace('#^INLINE;#', '', $css);
621
+                $css = self::fixurls(ABSPATH.'index.php', $css); // ABSPATH already contains a trailing slash.
622
+                $tmpstyle = apply_filters('autoptimize_css_individual_style', $css, '');
623
+                if (has_filter('autoptimize_css_individual_style') && !empty($tmpstyle)) {
624 624
                     $css = $tmpstyle;
625 625
                     $this->alreadyminified = true;
626 626
                 }
627 627
             } else {
628 628
                 // <link>
629
-                if ( false !== $css && file_exists( $css ) && is_readable( $css ) ) {
629
+                if (false !== $css && file_exists($css) && is_readable($css)) {
630 630
                     $cssPath = $css;
631
-                    $css = self::fixurls( $cssPath, file_get_contents( $cssPath ) );
632
-                    $css = preg_replace( '/\x{EF}\x{BB}\x{BF}/', '', $css );
633
-                    $tmpstyle = apply_filters( 'autoptimize_css_individual_style', $css, $cssPath );
634
-                    if ( has_filter( 'autoptimize_css_individual_style' ) && ! empty( $tmpstyle ) ) {
631
+                    $css = self::fixurls($cssPath, file_get_contents($cssPath));
632
+                    $css = preg_replace('/\x{EF}\x{BB}\x{BF}/', '', $css);
633
+                    $tmpstyle = apply_filters('autoptimize_css_individual_style', $css, $cssPath);
634
+                    if (has_filter('autoptimize_css_individual_style') && !empty($tmpstyle)) {
635 635
                         $css = $tmpstyle;
636 636
                         $this->alreadyminified = true;
637
-                    } elseif ( $this->can_inject_late( $cssPath, $css ) ) {
638
-                        $css = self::build_injectlater_marker( $cssPath, md5( $css ) );
637
+                    } elseif ($this->can_inject_late($cssPath, $css)) {
638
+                        $css = self::build_injectlater_marker($cssPath, md5($css));
639 639
                     }
640 640
                 } else {
641 641
                     // Couldn't read CSS. Maybe getpath isn't working?
@@ -643,12 +643,12 @@  discard block
 block discarded – undo
643 643
                 }
644 644
             }
645 645
 
646
-            foreach ( $media as $elem ) {
647
-                if ( ! empty( $css ) ) {
648
-                    if ( ! isset( $this->csscode[$elem] ) ) {
646
+            foreach ($media as $elem) {
647
+                if (!empty($css)) {
648
+                    if (!isset($this->csscode[$elem])) {
649 649
                         $this->csscode[$elem] = '';
650 650
                     }
651
-                    $this->csscode[$elem] .= "\n/*FILESTART*/" . $css;
651
+                    $this->csscode[$elem] .= "\n/*FILESTART*/".$css;
652 652
                 }
653 653
             }
654 654
         }
@@ -656,133 +656,133 @@  discard block
 block discarded – undo
656 656
         // Check for duplicate code.
657 657
         $md5list = array();
658 658
         $tmpcss  = $this->csscode;
659
-        foreach ( $tmpcss as $media => $code ) {
660
-            $md5sum    = md5( $code );
659
+        foreach ($tmpcss as $media => $code) {
660
+            $md5sum    = md5($code);
661 661
             $medianame = $media;
662
-            foreach ( $md5list as $med => $sum ) {
662
+            foreach ($md5list as $med => $sum) {
663 663
                 // If same code.
664
-                if ( $sum === $md5sum ) {
664
+                if ($sum === $md5sum) {
665 665
                     // Add the merged code.
666
-                    $medianame                 = $med . ', ' . $media;
666
+                    $medianame                 = $med.', '.$media;
667 667
                     $this->csscode[$medianame] = $code;
668 668
                     $md5list[$medianame]       = $md5list[$med];
669
-                    unset( $this->csscode[$med], $this->csscode[$media], $md5list[$med] );
669
+                    unset($this->csscode[$med], $this->csscode[$media], $md5list[$med]);
670 670
                 }
671 671
             }
672 672
             $md5list[$medianame] = $md5sum;
673 673
         }
674
-        unset( $tmpcss );
674
+        unset($tmpcss);
675 675
 
676 676
         // Manage @imports, while is for recursive import management.
677
-        foreach ( $this->csscode as &$thiscss ) {
677
+        foreach ($this->csscode as &$thiscss) {
678 678
             // Flag to trigger import reconstitution and var to hold external imports.
679 679
             $fiximports       = false;
680 680
             $external_imports = '';
681 681
 
682 682
             // remove comments to avoid importing commented-out imports.
683
-            $thiscss_nocomments = preg_replace( '#/\*.*\*/#Us', '', $thiscss );
684
-            while ( preg_match_all( '#@import +(?:url)?(?:(?:\((["\']?)(?:[^"\')]+)\1\)|(["\'])(?:[^"\']+)\2)(?:[^,;"\']+(?:,[^,;"\']+)*)?)(?:;)#mi', $thiscss_nocomments, $matches ) ) {
685
-                foreach ( $matches[0] as $import ) {
686
-                    if ( $this->isremovable( $import, $this->cssremovables ) ) {
687
-                        $thiscss = str_replace( $import, '', $thiscss );
683
+            $thiscss_nocomments = preg_replace('#/\*.*\*/#Us', '', $thiscss);
684
+            while (preg_match_all('#@import +(?:url)?(?:(?:\((["\']?)(?:[^"\')]+)\1\)|(["\'])(?:[^"\']+)\2)(?:[^,;"\']+(?:,[^,;"\']+)*)?)(?:;)#mi', $thiscss_nocomments, $matches)) {
685
+                foreach ($matches[0] as $import) {
686
+                    if ($this->isremovable($import, $this->cssremovables)) {
687
+                        $thiscss = str_replace($import, '', $thiscss);
688 688
                         $import_ok = true;
689 689
                     } else {
690
-                        $url = trim( preg_replace( '#^.*((?:https?:|ftp:)?//.*\.css).*$#', '$1', trim( $import ) ), " \t\n\r\0\x0B\"'" );
691
-                        $path = $this->getpath( $url );
690
+                        $url = trim(preg_replace('#^.*((?:https?:|ftp:)?//.*\.css).*$#', '$1', trim($import)), " \t\n\r\0\x0B\"'");
691
+                        $path = $this->getpath($url);
692 692
                         $import_ok = false;
693
-                        if ( file_exists( $path ) && is_readable( $path ) ) {
694
-                            $code = addcslashes( self::fixurls( $path, file_get_contents( $path ) ), "\\" );
695
-                            $code = preg_replace( '/\x{EF}\x{BB}\x{BF}/', '', $code );
696
-                            $tmpstyle = apply_filters( 'autoptimize_css_individual_style', $code, '' );
697
-                            if ( has_filter( 'autoptimize_css_individual_style' ) && ! empty( $tmpstyle ) ) {
693
+                        if (file_exists($path) && is_readable($path)) {
694
+                            $code = addcslashes(self::fixurls($path, file_get_contents($path)), "\\");
695
+                            $code = preg_replace('/\x{EF}\x{BB}\x{BF}/', '', $code);
696
+                            $tmpstyle = apply_filters('autoptimize_css_individual_style', $code, '');
697
+                            if (has_filter('autoptimize_css_individual_style') && !empty($tmpstyle)) {
698 698
                                 $code = $tmpstyle;
699 699
                                 $this->alreadyminified = true;
700
-                            } elseif ( $this->can_inject_late( $path, $code ) ) {
701
-                                $code = self::build_injectlater_marker( $path, md5( $code ) );
700
+                            } elseif ($this->can_inject_late($path, $code)) {
701
+                                $code = self::build_injectlater_marker($path, md5($code));
702 702
                             }
703 703
 
704
-                            if ( ! empty( $code ) ) {
705
-                                $tmp_thiscss = preg_replace( '#(/\*FILESTART\*/.*)' . preg_quote( $import, '#' ) . '#Us', '/*FILESTART2*/' . $code . '$1', $thiscss );
706
-                                if ( ! empty( $tmp_thiscss ) ) {
704
+                            if (!empty($code)) {
705
+                                $tmp_thiscss = preg_replace('#(/\*FILESTART\*/.*)'.preg_quote($import, '#').'#Us', '/*FILESTART2*/'.$code.'$1', $thiscss);
706
+                                if (!empty($tmp_thiscss)) {
707 707
                                     $thiscss = $tmp_thiscss;
708 708
                                     $import_ok = true;
709
-                                    unset( $tmp_thiscss );
709
+                                    unset($tmp_thiscss);
710 710
                                 }
711 711
                             }
712
-                            unset( $code );
712
+                            unset($code);
713 713
                         }
714 714
                     }
715
-                    if ( ! $import_ok ) {
715
+                    if (!$import_ok) {
716 716
                         // External imports and general fall-back.
717 717
                         $external_imports .= $import;
718 718
 
719
-                        $thiscss    = str_replace( $import, '', $thiscss );
719
+                        $thiscss    = str_replace($import, '', $thiscss);
720 720
                         $fiximports = true;
721 721
                     }
722 722
                 }
723
-                $thiscss = preg_replace( '#/\*FILESTART\*/#', '', $thiscss );
724
-                $thiscss = preg_replace( '#/\*FILESTART2\*/#', '/*FILESTART*/', $thiscss );
723
+                $thiscss = preg_replace('#/\*FILESTART\*/#', '', $thiscss);
724
+                $thiscss = preg_replace('#/\*FILESTART2\*/#', '/*FILESTART*/', $thiscss);
725 725
 
726 726
                 // and update $thiscss_nocomments before going into next iteration in while loop.
727
-                $thiscss_nocomments = preg_replace( '#/\*.*\*/#Us', '', $thiscss );
727
+                $thiscss_nocomments = preg_replace('#/\*.*\*/#Us', '', $thiscss);
728 728
             }
729
-            unset( $thiscss_nocomments );
729
+            unset($thiscss_nocomments);
730 730
 
731 731
             // Add external imports to top of aggregated CSS.
732
-            if ( $fiximports ) {
733
-                $thiscss = $external_imports . $thiscss;
732
+            if ($fiximports) {
733
+                $thiscss = $external_imports.$thiscss;
734 734
             }
735 735
         }
736
-        unset( $thiscss );
736
+        unset($thiscss);
737 737
 
738 738
         // $this->csscode has all the uncompressed code now.
739
-        foreach ( $this->csscode as &$code ) {
739
+        foreach ($this->csscode as &$code) {
740 740
             // Check for already-minified code.
741
-            $hash = md5( $code );
742
-            do_action( 'autoptimize_action_css_hash', $hash );
743
-            $ccheck = new autoptimizeCache( $hash, 'css' );
744
-            if ( $ccheck->check() ) {
741
+            $hash = md5($code);
742
+            do_action('autoptimize_action_css_hash', $hash);
743
+            $ccheck = new autoptimizeCache($hash, 'css');
744
+            if ($ccheck->check()) {
745 745
                 $code = $ccheck->retrieve();
746
-                $this->hashmap[md5( $code )] = $hash;
746
+                $this->hashmap[md5($code)] = $hash;
747 747
                 continue;
748 748
             }
749
-            unset( $ccheck );
749
+            unset($ccheck);
750 750
 
751 751
             // Rewrite and/or inline referenced assets.
752
-            $code = $this->rewrite_assets( $code );
752
+            $code = $this->rewrite_assets($code);
753 753
 
754 754
             // Minify.
755
-            $code = $this->run_minifier_on( $code );
755
+            $code = $this->run_minifier_on($code);
756 756
 
757 757
             // Bring back INJECTLATER stuff.
758
-            $code = $this->inject_minified( $code );
758
+            $code = $this->inject_minified($code);
759 759
 
760 760
             // Filter results.
761
-            $tmp_code = apply_filters( 'autoptimize_css_after_minify', $code );
762
-            if ( ! empty( $tmp_code ) ) {
761
+            $tmp_code = apply_filters('autoptimize_css_after_minify', $code);
762
+            if (!empty($tmp_code)) {
763 763
                 $code = $tmp_code;
764
-                unset( $tmp_code );
764
+                unset($tmp_code);
765 765
             }
766 766
 
767
-            $this->hashmap[md5( $code )] = $hash;
767
+            $this->hashmap[md5($code)] = $hash;
768 768
         }
769 769
 
770
-        unset( $code );
770
+        unset($code);
771 771
         return true;
772 772
     }
773 773
 
774
-    public function run_minifier_on( $code )
774
+    public function run_minifier_on($code)
775 775
     {
776
-        if ( ! $this->alreadyminified ) {
777
-            $do_minify = apply_filters( 'autoptimize_css_do_minify', true );
776
+        if (!$this->alreadyminified) {
777
+            $do_minify = apply_filters('autoptimize_css_do_minify', true);
778 778
 
779
-            if ( $do_minify ) {
779
+            if ($do_minify) {
780 780
                 $cssmin   = new autoptimizeCSSmin();
781
-                $tmp_code = trim( $cssmin->run( $code ) );
781
+                $tmp_code = trim($cssmin->run($code));
782 782
 
783
-                if ( ! empty( $tmp_code ) ) {
783
+                if (!empty($tmp_code)) {
784 784
                     $code = $tmp_code;
785
-                    unset( $tmp_code );
785
+                    unset($tmp_code);
786 786
                 }
787 787
             }
788 788
         }
@@ -794,14 +794,14 @@  discard block
 block discarded – undo
794 794
     public function cache()
795 795
     {
796 796
         // CSS cache.
797
-        foreach ( $this->csscode as $media => $code ) {
798
-            $md5 = $this->hashmap[md5( $code )];
799
-            $cache = new autoptimizeCache( $md5, 'css' );
800
-            if ( ! $cache->check() ) {
797
+        foreach ($this->csscode as $media => $code) {
798
+            $md5 = $this->hashmap[md5($code)];
799
+            $cache = new autoptimizeCache($md5, 'css');
800
+            if (!$cache->check()) {
801 801
                 // Cache our code.
802
-                $cache->cache( $code, 'text/css' );
802
+                $cache->cache($code, 'text/css');
803 803
             }
804
-            $this->url[$media] = AUTOPTIMIZE_CACHE_URL . $cache->getname();
804
+            $this->url[$media] = AUTOPTIMIZE_CACHE_URL.$cache->getname();
805 805
         }
806 806
     }
807 807
 
@@ -809,136 +809,136 @@  discard block
 block discarded – undo
809 809
     public function getcontent()
810 810
     {
811 811
         // Restore the full content (only applies when "autoptimize_filter_css_justhead" filter is true).
812
-        if ( ! empty( $this->restofcontent ) ) {
812
+        if (!empty($this->restofcontent)) {
813 813
             $this->content .= $this->restofcontent;
814 814
             $this->restofcontent = '';
815 815
         }
816 816
 
817 817
         // Inject the new stylesheets.
818
-        $replaceTag = array( '<title', 'before' );
819
-        $replaceTag = apply_filters( 'autoptimize_filter_css_replacetag', $replaceTag, $this->content );
818
+        $replaceTag = array('<title', 'before');
819
+        $replaceTag = apply_filters('autoptimize_filter_css_replacetag', $replaceTag, $this->content);
820 820
 
821
-        if ( $this->inline ) {
822
-            foreach ( $this->csscode as $media => $code ) {
823
-                $this->inject_in_html( '<style type="text/css" media="' . $media . '">' . $code . '</style>', $replaceTag );
821
+        if ($this->inline) {
822
+            foreach ($this->csscode as $media => $code) {
823
+                $this->inject_in_html('<style type="text/css" media="'.$media.'">'.$code.'</style>', $replaceTag);
824 824
             }
825 825
         } else {
826
-            if ( $this->defer ) {
826
+            if ($this->defer) {
827 827
                 $preloadCssBlock = '';
828 828
                 $noScriptCssBlock = "<noscript id=\"aonoscrcss\">";
829 829
 
830 830
                 $defer_inline_code = $this->defer_inline;
831
-                if ( ! empty( $defer_inline_code ) ) {
832
-                    if ( apply_filters( 'autoptimize_filter_css_critcss_minify', true ) ) {
833
-                        $iCssHash = md5( $defer_inline_code );
834
-                        $iCssCache = new autoptimizeCache( $iCssHash, 'css' );
835
-                        if ( $iCssCache->check() ) {
831
+                if (!empty($defer_inline_code)) {
832
+                    if (apply_filters('autoptimize_filter_css_critcss_minify', true)) {
833
+                        $iCssHash = md5($defer_inline_code);
834
+                        $iCssCache = new autoptimizeCache($iCssHash, 'css');
835
+                        if ($iCssCache->check()) {
836 836
                             // we have the optimized inline CSS in cache.
837 837
                             $defer_inline_code = $iCssCache->retrieve();
838 838
                         } else {
839 839
                             $cssmin   = new autoptimizeCSSmin();
840
-                            $tmp_code = trim( $cssmin->run( $defer_inline_code ) );
840
+                            $tmp_code = trim($cssmin->run($defer_inline_code));
841 841
 
842
-                            if ( ! empty( $tmp_code ) ) {
842
+                            if (!empty($tmp_code)) {
843 843
                                 $defer_inline_code = $tmp_code;
844
-                                $iCssCache->cache( $defer_inline_code, 'text/css' );
845
-                                unset( $tmp_code );
844
+                                $iCssCache->cache($defer_inline_code, 'text/css');
845
+                                unset($tmp_code);
846 846
                             }
847 847
                         }
848 848
                     }
849 849
                     // inlined critical css set here, but injected when full CSS is injected
850 850
                     // to avoid CSS containing SVG with <title tag receiving the full CSS link.
851
-                    $inlined_ccss_block = '<style type="text/css" id="aoatfcss" media="all">' . $defer_inline_code . '</style>';
851
+                    $inlined_ccss_block = '<style type="text/css" id="aoatfcss" media="all">'.$defer_inline_code.'</style>';
852 852
                 }
853 853
             }
854 854
 
855
-            foreach ( $this->url as $media => $url ) {
856
-                $url = $this->url_replace_cdn( $url );
855
+            foreach ($this->url as $media => $url) {
856
+                $url = $this->url_replace_cdn($url);
857 857
 
858 858
                 // Add the stylesheet either deferred (import at bottom) or normal links in head.
859
-                if ( $this->defer ) {
859
+                if ($this->defer) {
860 860
                     $preloadOnLoad = autoptimizeConfig::get_ao_css_preload_onload();
861 861
 
862
-                    $preloadCssBlock .= '<link rel="preload" as="style" media="' . $media . '" href="' . $url . '" onload="' . $preloadOnLoad . '" />';
863
-                    $noScriptCssBlock .= '<link type="text/css" media="' . $media . '" href="' . $url . '" rel="stylesheet" />';
862
+                    $preloadCssBlock .= '<link rel="preload" as="style" media="'.$media.'" href="'.$url.'" onload="'.$preloadOnLoad.'" />';
863
+                    $noScriptCssBlock .= '<link type="text/css" media="'.$media.'" href="'.$url.'" rel="stylesheet" />';
864 864
                 } else {
865 865
                     // $this->inject_in_html('<link type="text/css" media="' . $media . '" href="' . $url . '" rel="stylesheet" />', $replaceTag);
866
-                    if ( strlen( $this->csscode[$media] ) > $this->cssinlinesize ) {
867
-                        $this->inject_in_html( '<link type="text/css" media="' . $media . '" href="' . $url . '" rel="stylesheet" />', $replaceTag );
868
-                    } elseif ( strlen( $this->csscode[$media] ) > 0 ) {
869
-                        $this->inject_in_html( '<style type="text/css" media="' . $media . '">' . $this->csscode[$media] . '</style>', $replaceTag );
866
+                    if (strlen($this->csscode[$media]) > $this->cssinlinesize) {
867
+                        $this->inject_in_html('<link type="text/css" media="'.$media.'" href="'.$url.'" rel="stylesheet" />', $replaceTag);
868
+                    } elseif (strlen($this->csscode[$media]) > 0) {
869
+                        $this->inject_in_html('<style type="text/css" media="'.$media.'">'.$this->csscode[$media].'</style>', $replaceTag);
870 870
                     }
871 871
                 }
872 872
             }
873 873
 
874
-            if ( $this->defer ) {
874
+            if ($this->defer) {
875 875
                 $preload_polyfill = autoptimizeConfig::get_ao_css_preload_polyfill();
876 876
                 $noScriptCssBlock .= '</noscript>';
877 877
                 // Inject inline critical CSS, the preloaded full CSS and the noscript-CSS.
878
-                $this->inject_in_html( $inlined_ccss_block . $preloadCssBlock . $noScriptCssBlock, $replaceTag );
878
+                $this->inject_in_html($inlined_ccss_block.$preloadCssBlock.$noScriptCssBlock, $replaceTag);
879 879
 
880 880
                 // Adds preload polyfill at end of body tag.
881 881
                 $this->inject_in_html(
882
-                    apply_filters( 'autoptimize_css_preload_polyfill', $preload_polyfill ),
883
-                    apply_filters( 'autoptimize_css_preload_polyfill_injectat', array( '</body>', 'before' ) )
882
+                    apply_filters('autoptimize_css_preload_polyfill', $preload_polyfill),
883
+                    apply_filters('autoptimize_css_preload_polyfill_injectat', array('</body>', 'before'))
884 884
                 );
885 885
             }
886 886
         }
887 887
 
888 888
         // restore comments.
889
-        $this->content = $this->restore_comments( $this->content );
889
+        $this->content = $this->restore_comments($this->content);
890 890
 
891 891
         // restore IE hacks.
892
-        $this->content = $this->restore_iehacks( $this->content );
892
+        $this->content = $this->restore_iehacks($this->content);
893 893
 
894 894
         // restore (no)script.
895
-        $this->content = $this->restore_marked_content( 'SCRIPT', $this->content );
895
+        $this->content = $this->restore_marked_content('SCRIPT', $this->content);
896 896
 
897 897
         // Restore noptimize.
898
-        $this->content = $this->restore_noptimize( $this->content );
898
+        $this->content = $this->restore_noptimize($this->content);
899 899
 
900 900
         // Return the modified stylesheet.
901 901
         return $this->content;
902 902
     }
903 903
 
904
-    static function fixurls( $file, $code )
904
+    static function fixurls($file, $code)
905 905
     {
906 906
         // Switch all imports to the url() syntax.
907
-        $code = preg_replace( '#@import ("|\')(.+?)\.css.*?("|\')#', '@import url("${2}.css")', $code );
907
+        $code = preg_replace('#@import ("|\')(.+?)\.css.*?("|\')#', '@import url("${2}.css")', $code);
908 908
 
909
-        if ( preg_match_all( self::ASSETS_REGEX, $code, $matches ) ) {
910
-            $file = str_replace( WP_ROOT_DIR, '/', $file );
909
+        if (preg_match_all(self::ASSETS_REGEX, $code, $matches)) {
910
+            $file = str_replace(WP_ROOT_DIR, '/', $file);
911 911
             /**
912 912
              * rollback as per https://github.com/futtta/autoptimize/issues/94
913 913
              * $file = str_replace( AUTOPTIMIZE_WP_CONTENT_NAME, '', $file );
914 914
              */
915
-            $dir = dirname( $file ); // Like /themes/expound/css.
915
+            $dir = dirname($file); // Like /themes/expound/css.
916 916
 
917 917
             /**
918 918
              * $dir should not contain backslashes, since it's used to replace
919 919
              * urls, but it can contain them when running on Windows because
920 920
              * fixurls() is sometimes called with `ABSPATH . 'index.php'`
921 921
              */
922
-            $dir = str_replace( '\\', '/', $dir );
923
-            unset( $file ); // not used below at all.
922
+            $dir = str_replace('\\', '/', $dir);
923
+            unset($file); // not used below at all.
924 924
 
925 925
             $replace = array();
926
-            foreach ( $matches[1] as $k => $url ) {
926
+            foreach ($matches[1] as $k => $url) {
927 927
                 // Remove quotes.
928
-                $url    = trim( $url, " \t\n\r\0\x0B\"'" );
929
-                $noQurl = trim( $url, "\"'" );
930
-                if ( $url !== $noQurl ) {
928
+                $url    = trim($url, " \t\n\r\0\x0B\"'");
929
+                $noQurl = trim($url, "\"'");
930
+                if ($url !== $noQurl) {
931 931
                     $removedQuotes = true;
932 932
                 } else {
933 933
                     $removedQuotes = false;
934 934
                 }
935 935
 
936
-                if ( '' === $noQurl ) {
936
+                if ('' === $noQurl) {
937 937
                     continue;
938 938
                 }
939 939
 
940 940
                 $url = $noQurl;
941
-                if ( '/' === $url{0} || preg_match( '#^(https?://|ftp://|data:)#i', $url ) ) {
941
+                if ('/' === $url{0} || preg_match('#^(https?://|ftp://|data:)#i', $url)) {
942 942
                     // URL is protocol-relative, host-relative or something we don't touch.
943 943
                     continue;
944 944
                 } else {
@@ -947,49 +947,49 @@  discard block
 block discarded – undo
947 947
                      * rollback as per https://github.com/futtta/autoptimize/issues/94
948 948
                      * $newurl = preg_replace( '/https?:/', '', str_replace( ' ', '%20', AUTOPTIMIZE_WP_CONTENT_URL . str_replace( '//', '/', $dir . '/' . $url ) ) );
949 949
                      */
950
-                    $newurl = preg_replace( '/https?:/', '', str_replace( ' ', '%20', AUTOPTIMIZE_WP_ROOT_URL . str_replace( '//', '/', $dir . '/' . $url ) ) );
951
-                    $newurl = apply_filters( 'autoptimize_filter_css_fixurl_newurl', $newurl );
950
+                    $newurl = preg_replace('/https?:/', '', str_replace(' ', '%20', AUTOPTIMIZE_WP_ROOT_URL.str_replace('//', '/', $dir.'/'.$url)));
951
+                    $newurl = apply_filters('autoptimize_filter_css_fixurl_newurl', $newurl);
952 952
 
953 953
                     /**
954 954
                      * Hash the url + whatever was behind potentially for replacement
955 955
                      * We must do this, or different css classes referencing the same bg image (but
956 956
                      * different parts of it, say, in sprites and such) loose their stuff...
957 957
                      */
958
-                    $hash = md5( $url . $matches[2][$k] );
959
-                    $code = str_replace( $matches[0][$k], $hash, $code );
958
+                    $hash = md5($url.$matches[2][$k]);
959
+                    $code = str_replace($matches[0][$k], $hash, $code);
960 960
 
961
-                    if ( $removedQuotes ) {
962
-                        $replace[$hash] = "url('" . $newurl . "')" . $matches[2][$k];
961
+                    if ($removedQuotes) {
962
+                        $replace[$hash] = "url('".$newurl."')".$matches[2][$k];
963 963
                     } else {
964
-                        $replace[$hash] = 'url(' . $newurl . ')' . $matches[2][$k];
964
+                        $replace[$hash] = 'url('.$newurl.')'.$matches[2][$k];
965 965
                     }
966 966
                 }
967 967
             }
968 968
 
969
-            $code = self::replace_longest_matches_first( $code, $replace );
969
+            $code = self::replace_longest_matches_first($code, $replace);
970 970
         }
971 971
 
972 972
         return $code;
973 973
     }
974 974
 
975
-    private function ismovable( $tag )
975
+    private function ismovable($tag)
976 976
     {
977
-        if ( ! $this->aggregate ) {
977
+        if (!$this->aggregate) {
978 978
             return false;
979 979
         }
980 980
 
981
-        if ( ! empty( $this->whitelist ) ) {
982
-            foreach ( $this->whitelist as $match ) {
983
-                if ( false !== strpos( $tag, $match ) ) {
981
+        if (!empty($this->whitelist)) {
982
+            foreach ($this->whitelist as $match) {
983
+                if (false !== strpos($tag, $match)) {
984 984
                     return true;
985 985
                 }
986 986
             }
987 987
             // no match with whitelist.
988 988
             return false;
989 989
         } else {
990
-            if ( is_array( $this->dontmove ) && ! empty( $this->dontmove ) ) {
991
-                foreach ( $this->dontmove as $match ) {
992
-                    if ( false !== strpos( $tag, $match ) ) {
990
+            if (is_array($this->dontmove) && !empty($this->dontmove)) {
991
+                foreach ($this->dontmove as $match) {
992
+                    if (false !== strpos($tag, $match)) {
993 993
                         // Matched something.
994 994
                         return false;
995 995
                     }
@@ -1001,22 +1001,22 @@  discard block
 block discarded – undo
1001 1001
         }
1002 1002
     }
1003 1003
 
1004
-    private function can_inject_late( $cssPath, $css )
1004
+    private function can_inject_late($cssPath, $css)
1005 1005
     {
1006
-        $consider_minified_array = apply_filters( 'autoptimize_filter_css_consider_minified', false, $cssPath );
1007
-        if ( true !== $this->inject_min_late ) {
1006
+        $consider_minified_array = apply_filters('autoptimize_filter_css_consider_minified', false, $cssPath);
1007
+        if (true !== $this->inject_min_late) {
1008 1008
             // late-inject turned off.
1009 1009
             return false;
1010
-        } elseif ( ( false === strpos( $cssPath, 'min.css' ) ) && ( str_replace( $consider_minified_array, '', $cssPath ) === $cssPath ) ) {
1010
+        } elseif ((false === strpos($cssPath, 'min.css')) && (str_replace($consider_minified_array, '', $cssPath) === $cssPath)) {
1011 1011
             // file not minified based on filename & filter.
1012 1012
             return false;
1013
-        } elseif ( false !== strpos( $css, '@import' ) ) {
1013
+        } elseif (false !== strpos($css, '@import')) {
1014 1014
             // can't late-inject files with imports as those need to be aggregated.
1015 1015
             return false;
1016
-        } elseif ( ( false !== strpos( $css, '@font-face' ) ) && ( apply_filters( 'autoptimize_filter_css_fonts_cdn', false ) === true ) && ( ! empty( $this->cdn_url ) ) ) {
1016
+        } elseif ((false !== strpos($css, '@font-face')) && (apply_filters('autoptimize_filter_css_fonts_cdn', false) === true) && (!empty($this->cdn_url))) {
1017 1017
             // don't late-inject CSS with font-src's if fonts are set to be CDN'ed.
1018 1018
             return false;
1019
-        } elseif ( ( ( $this->datauris == true ) || ( ! empty( $this->cdn_url ) ) ) && preg_match( '#background[^;}]*url\(#Ui', $css ) ) {
1019
+        } elseif ((($this->datauris == true) || (!empty($this->cdn_url))) && preg_match('#background[^;}]*url\(#Ui', $css)) {
1020 1020
             // don't late-inject CSS with images if CDN is set OR if image inlining is on.
1021 1021
             return false;
1022 1022
         } else {
@@ -1034,32 +1034,32 @@  discard block
 block discarded – undo
1034 1034
      *
1035 1035
      * @return bool|string Url pointing to the minified css file or false.
1036 1036
      */
1037
-    public function minify_single( $filepath, $cache_miss = false )
1037
+    public function minify_single($filepath, $cache_miss = false)
1038 1038
     {
1039
-        $contents = $this->prepare_minify_single( $filepath );
1039
+        $contents = $this->prepare_minify_single($filepath);
1040 1040
 
1041
-        if ( empty( $contents ) ) {
1041
+        if (empty($contents)) {
1042 1042
             return false;
1043 1043
         }
1044 1044
 
1045 1045
         // Check cache.
1046
-        $hash  = 'single_' . md5( $contents );
1047
-        $cache = new autoptimizeCache( $hash, 'css' );
1046
+        $hash  = 'single_'.md5($contents);
1047
+        $cache = new autoptimizeCache($hash, 'css');
1048 1048
 
1049 1049
         // If not in cache already, minify...
1050
-        if ( ! $cache->check() || $cache_miss ) {
1050
+        if (!$cache->check() || $cache_miss) {
1051 1051
             // Fixurls...
1052
-            $contents = self::fixurls( $filepath, $contents );
1052
+            $contents = self::fixurls($filepath, $contents);
1053 1053
             // CDN-replace any referenced assets if needed...
1054
-            $contents = $this->replace_urls( $contents );
1054
+            $contents = $this->replace_urls($contents);
1055 1055
             // Now minify...
1056 1056
             $cssmin   = new autoptimizeCSSmin();
1057
-            $contents = trim( $cssmin->run( $contents ) );
1057
+            $contents = trim($cssmin->run($contents));
1058 1058
             // Store in cache.
1059
-            $cache->cache( $contents, 'text/css' );
1059
+            $cache->cache($contents, 'text/css');
1060 1060
         }
1061 1061
 
1062
-        $url = $this->build_minify_single_url( $cache );
1062
+        $url = $this->build_minify_single_url($cache);
1063 1063
 
1064 1064
         return $url;
1065 1065
     }
@@ -1079,18 +1079,18 @@  discard block
 block discarded – undo
1079 1079
         return $this->options;
1080 1080
     }
1081 1081
 
1082
-    public function replaceOptions( $options )
1082
+    public function replaceOptions($options)
1083 1083
     {
1084 1084
         $this->options = $options;
1085 1085
     }
1086 1086
 
1087
-    public function setOption( $name, $value )
1087
+    public function setOption($name, $value)
1088 1088
     {
1089 1089
         $this->options[$name] = $value;
1090 1090
         $this->$name = $value;
1091 1091
     }
1092 1092
 
1093
-    public function getOption( $name )
1093
+    public function getOption($name)
1094 1094
     {
1095 1095
         return $this->options[$name];
1096 1096
     }
Please login to merge, or discard this patch.
classes/autoptimizeCache.php 1 patch
Spacing   +140 added lines, -140 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Handles disk-cache-related operations.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -38,17 +38,17 @@  discard block
 block discarded – undo
38 38
      * @param string $md5 Hash.
39 39
      * @param string $ext Extension.
40 40
      */
41
-    public function __construct( $md5, $ext = 'php' )
41
+    public function __construct($md5, $ext = 'php')
42 42
     {
43 43
         $this->cachedir = AUTOPTIMIZE_CACHE_DIR;
44 44
         $this->nogzip   = AUTOPTIMIZE_CACHE_NOGZIP;
45
-        if ( ! $this->nogzip ) {
46
-            $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX . $md5 . '.php';
45
+        if (!$this->nogzip) {
46
+            $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.php';
47 47
         } else {
48
-            if ( in_array( $ext, array( 'js', 'css' ) ) ) {
49
-                $this->filename = $ext . '/' . AUTOPTIMIZE_CACHEFILE_PREFIX . $md5 . '.' . $ext;
48
+            if (in_array($ext, array('js', 'css'))) {
49
+                $this->filename = $ext.'/'.AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.'.$ext;
50 50
             } else {
51
-                $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX . $md5 . '.' . $ext;
51
+                $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.'.$ext;
52 52
             }
53 53
         }
54 54
     }
@@ -60,7 +60,7 @@  discard block
 block discarded – undo
60 60
      */
61 61
     public function check()
62 62
     {
63
-        return file_exists( $this->cachedir . $this->filename );
63
+        return file_exists($this->cachedir.$this->filename);
64 64
     }
65 65
 
66 66
     /**
@@ -70,11 +70,11 @@  discard block
 block discarded – undo
70 70
      */
71 71
     public function retrieve()
72 72
     {
73
-        if ( $this->check() ) {
74
-            if ( false == $this->nogzip ) {
75
-                return file_get_contents( $this->cachedir . $this->filename . '.none' );
73
+        if ($this->check()) {
74
+            if (false == $this->nogzip) {
75
+                return file_get_contents($this->cachedir.$this->filename.'.none');
76 76
             } else {
77
-                return file_get_contents( $this->cachedir . $this->filename );
77
+                return file_get_contents($this->cachedir.$this->filename);
78 78
             }
79 79
         }
80 80
         return false;
@@ -88,33 +88,33 @@  discard block
 block discarded – undo
88 88
      *
89 89
      * @return void
90 90
      */
91
-    public function cache( $data, $mime )
91
+    public function cache($data, $mime)
92 92
     {
93 93
         // off by default; check if cachedirs exist every time before caching
94 94
         //
95 95
         // to be activated for users that experience these ugly errors;
96 96
         // PHP Warning: file_put_contents failed to open stream: No such file or directory.
97
-        if ( apply_filters( 'autoptimize_filter_cache_checkdirs_on_write', false ) ) {
97
+        if (apply_filters('autoptimize_filter_cache_checkdirs_on_write', false)) {
98 98
             $this->check_and_create_dirs();
99 99
         }
100 100
 
101
-        if ( false === $this->nogzip ) {
101
+        if (false === $this->nogzip) {
102 102
             // We handle gzipping ourselves.
103 103
             $file    = 'default.php';
104
-            $phpcode = file_get_contents( AUTOPTIMIZE_PLUGIN_DIR . 'config/' . $file );
105
-            $phpcode = str_replace( array( '%%CONTENT%%', 'exit;' ), array( $mime, '' ), $phpcode );
104
+            $phpcode = file_get_contents(AUTOPTIMIZE_PLUGIN_DIR.'config/'.$file);
105
+            $phpcode = str_replace(array('%%CONTENT%%', 'exit;'), array($mime, ''), $phpcode);
106 106
 
107
-            file_put_contents( $this->cachedir . $this->filename, $phpcode );
108
-            file_put_contents( $this->cachedir . $this->filename . '.none', $data );
107
+            file_put_contents($this->cachedir.$this->filename, $phpcode);
108
+            file_put_contents($this->cachedir.$this->filename.'.none', $data);
109 109
         } else {
110 110
             // Write code to cache without doing anything else.
111
-            file_put_contents( $this->cachedir . $this->filename, $data );
112
-            if ( apply_filters( 'autoptimize_filter_cache_create_static_gzip', false ) ) {
111
+            file_put_contents($this->cachedir.$this->filename, $data);
112
+            if (apply_filters('autoptimize_filter_cache_create_static_gzip', false)) {
113 113
                 // Create an additional cached gzip file.
114
-                file_put_contents( $this->cachedir . $this->filename . '.gz', gzencode( $data, 9, FORCE_GZIP ) );
114
+                file_put_contents($this->cachedir.$this->filename.'.gz', gzencode($data, 9, FORCE_GZIP));
115 115
                 // If PHP Brotli extension is installed, create an additional cached Brotli file.
116
-                if ( function_exists( 'brotli_compress' ) ) {
117
-                    file_put_contents( $this->cachedir . $this->filename . '.br', brotli_compress( $data, 11, BROTLI_GENERIC ) );
116
+                if (function_exists('brotli_compress')) {
117
+                    file_put_contents($this->cachedir.$this->filename.'.br', brotli_compress($data, 11, BROTLI_GENERIC));
118 118
                 }
119 119
             }
120 120
         }
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
         // The original idea here was to provide 3rd party code a hook so that
133 133
         // it can "listen" to all the complete autoptimized-urls that the page
134 134
         // will emit... Or something to that effect I think?
135
-        apply_filters( 'autoptimize_filter_cache_getname', AUTOPTIMIZE_CACHE_URL . $this->filename );
135
+        apply_filters('autoptimize_filter_cache_getname', AUTOPTIMIZE_CACHE_URL.$this->filename);
136 136
 
137 137
         return $this->filename;
138 138
     }
@@ -145,11 +145,11 @@  discard block
 block discarded – undo
145 145
      * @param string $file Filename.
146 146
      * @return bool
147 147
      */
148
-    protected static function is_valid_cache_file( $dir, $file )
148
+    protected static function is_valid_cache_file($dir, $file)
149 149
     {
150
-        if ( '.' !== $file && '..' !== $file &&
151
-            false !== strpos( $file, AUTOPTIMIZE_CACHEFILE_PREFIX ) &&
152
-            is_file( $dir . $file ) ) {
150
+        if ('.' !== $file && '..' !== $file &&
151
+            false !== strpos($file, AUTOPTIMIZE_CACHEFILE_PREFIX) &&
152
+            is_file($dir.$file)) {
153 153
 
154 154
             // It's a valid file!
155 155
             return true;
@@ -167,16 +167,16 @@  discard block
 block discarded – undo
167 167
     protected static function clear_cache_classic()
168 168
     {
169 169
         $contents = self::get_cache_contents();
170
-        foreach ( $contents as $name => $files ) {
171
-            $dir = rtrim( AUTOPTIMIZE_CACHE_DIR . $name, '/' ) . '/';
172
-            foreach ( $files as $file ) {
173
-                if ( self::is_valid_cache_file( $dir, $file ) ) {
174
-                    @unlink( $dir . $file ); // @codingStandardsIgnoreLine
170
+        foreach ($contents as $name => $files) {
171
+            $dir = rtrim(AUTOPTIMIZE_CACHE_DIR.$name, '/').'/';
172
+            foreach ($files as $file) {
173
+                if (self::is_valid_cache_file($dir, $file)) {
174
+                    @unlink($dir.$file); // @codingStandardsIgnoreLine
175 175
                 }
176 176
             }
177 177
         }
178 178
 
179
-        @unlink( AUTOPTIMIZE_CACHE_DIR . '/.htaccess' ); // @codingStandardsIgnoreLine
179
+        @unlink(AUTOPTIMIZE_CACHE_DIR.'/.htaccess'); // @codingStandardsIgnoreLine
180 180
     }
181 181
 
182 182
     /**
@@ -187,19 +187,19 @@  discard block
 block discarded – undo
187 187
      *
188 188
      * @return bool
189 189
      */
190
-    protected static function rmdir( $pathname )
190
+    protected static function rmdir($pathname)
191 191
     {
192
-        $files = self::get_dir_contents( $pathname );
193
-        foreach ( $files as $file ) {
194
-            $path = $pathname . '/' . $file;
195
-            if ( is_dir( $path ) ) {
196
-                self::rmdir( $path );
192
+        $files = self::get_dir_contents($pathname);
193
+        foreach ($files as $file) {
194
+            $path = $pathname.'/'.$file;
195
+            if (is_dir($path)) {
196
+                self::rmdir($path);
197 197
             } else {
198
-                unlink( $path );
198
+                unlink($path);
199 199
             }
200 200
         }
201 201
 
202
-        return rmdir( $pathname );
202
+        return rmdir($pathname);
203 203
     }
204 204
 
205 205
     /**
@@ -216,12 +216,12 @@  discard block
 block discarded – undo
216 216
         $new_name = self::get_unique_name();
217 217
 
218 218
         // Makes sure the new pathname is on the same level...
219
-        $new_pathname = dirname( $dir ) . '/' . $new_name;
220
-        $renamed      = @rename( $dir, $new_pathname ); // @codingStandardsIgnoreLine
219
+        $new_pathname = dirname($dir).'/'.$new_name;
220
+        $renamed      = @rename($dir, $new_pathname); // @codingStandardsIgnoreLine
221 221
 
222 222
         // When renamed, re-create the default cache directory back so it's
223 223
         // available again...
224
-        if ( $renamed ) {
224
+        if ($renamed) {
225 225
             $ok = self::cacheavail();
226 226
         }
227 227
 
@@ -235,7 +235,7 @@  discard block
 block discarded – undo
235 235
      */
236 236
     public static function advanced_cache_clear_enabled()
237 237
     {
238
-        return apply_filters( 'autoptimize_filter_cache_clear_advanced', false );
238
+        return apply_filters('autoptimize_filter_cache_clear_advanced', false);
239 239
     }
240 240
 
241 241
     /**
@@ -246,7 +246,7 @@  discard block
 block discarded – undo
246 246
     protected static function get_unique_name()
247 247
     {
248 248
         $prefix   = self::get_advanced_cache_clear_prefix();
249
-        $new_name = uniqid( $prefix, true );
249
+        $new_name = uniqid($prefix, true);
250 250
 
251 251
         return $new_name;
252 252
     }
@@ -259,8 +259,8 @@  discard block
 block discarded – undo
259 259
     protected static function get_advanced_cache_clear_prefix()
260 260
     {
261 261
         $pathname = self::get_pathname_base();
262
-        $basename = basename( $pathname );
263
-        $prefix   = $basename . '-';
262
+        $basename = basename($pathname);
263
+        $prefix   = $basename.'-';
264 264
 
265 265
         return $prefix;
266 266
     }
@@ -273,9 +273,9 @@  discard block
 block discarded – undo
273 273
      *
274 274
      * @return array
275 275
      */
276
-    protected static function get_dir_contents( $pathname )
276
+    protected static function get_dir_contents($pathname)
277 277
     {
278
-        return array_slice( scandir( $pathname ), 2 );
278
+        return array_slice(scandir($pathname), 2);
279 279
     }
280 280
 
281 281
     /**
@@ -289,18 +289,18 @@  discard block
 block discarded – undo
289 289
     {
290 290
         $dir    = self::get_pathname_base();
291 291
         $prefix = self::get_advanced_cache_clear_prefix();
292
-        $parent = dirname( $dir );
292
+        $parent = dirname($dir);
293 293
         $ok     = false;
294 294
 
295 295
         // Returns the list of files without '.' and '..' elements.
296
-        $files = self::get_dir_contents( $parent );
297
-        if ( is_array( $files ) && ! empty( $files ) ) {
298
-            foreach ( $files as $file ) {
299
-                $path     = $parent . '/' . $file;
300
-                $prefixed = ( false !== strpos( $path, $prefix ) );
296
+        $files = self::get_dir_contents($parent);
297
+        if (is_array($files) && !empty($files)) {
298
+            foreach ($files as $file) {
299
+                $path     = $parent.'/'.$file;
300
+                $prefixed = (false !== strpos($path, $prefix));
301 301
                 // Removing only our own (prefixed) directories...
302
-                if ( is_dir( $path ) && $prefixed ) {
303
-                    $ok = self::rmdir( $path );
302
+                if (is_dir($path) && $prefixed) {
303
+                    $ok = self::rmdir($path);
304 304
                 }
305 305
             }
306 306
         }
@@ -320,9 +320,9 @@  discard block
 block discarded – undo
320 320
     {
321 321
         $pathname = self::get_pathname_base();
322 322
 
323
-        if ( is_multisite() && apply_filters( 'autoptimize_separate_blog_caches', true ) ) {
323
+        if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) {
324 324
             $blog_id   = get_current_blog_id();
325
-            $pathname .= $blog_id . '/';
325
+            $pathname .= $blog_id.'/';
326 326
         }
327 327
 
328 328
         return $pathname;
@@ -335,7 +335,7 @@  discard block
 block discarded – undo
335 335
      */
336 336
     protected static function get_pathname_base()
337 337
     {
338
-        $pathname = WP_CONTENT_DIR . AUTOPTIMIZE_CACHE_CHILD_DIR;
338
+        $pathname = WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR;
339 339
 
340 340
         return $pathname;
341 341
     }
@@ -347,39 +347,39 @@  discard block
 block discarded – undo
347 347
      *
348 348
      * @return bool
349 349
      */
350
-    public static function clearall( $propagate = true )
350
+    public static function clearall($propagate = true)
351 351
     {
352
-        if ( ! self::cacheavail() ) {
352
+        if (!self::cacheavail()) {
353 353
             return false;
354 354
         }
355 355
 
356 356
         // TODO/FIXME: If cache is big, switch to advanced/new cache clearing automatically?
357
-        if ( self::advanced_cache_clear_enabled() ) {
357
+        if (self::advanced_cache_clear_enabled()) {
358 358
             self::clear_cache_via_rename();
359 359
         } else {
360 360
             self::clear_cache_classic();
361 361
         }
362 362
 
363 363
         // Remove the transient so it gets regenerated...
364
-        delete_transient( 'autoptimize_stats' );
364
+        delete_transient('autoptimize_stats');
365 365
 
366 366
         // Cache was just purged, clear page cache and allow others to hook into our purging...
367
-        if ( true === $propagate ) {
368
-            if ( ! function_exists( 'autoptimize_do_cachepurged_action' ) ) {
367
+        if (true === $propagate) {
368
+            if (!function_exists('autoptimize_do_cachepurged_action')) {
369 369
                 function autoptimize_do_cachepurged_action() {
370
-                    do_action( 'autoptimize_action_cachepurged' );
370
+                    do_action('autoptimize_action_cachepurged');
371 371
                 }
372 372
             }
373
-            add_action( 'shutdown', 'autoptimize_do_cachepurged_action', 11 );
374
-            add_action( 'autoptimize_action_cachepurged', array( 'autoptimizeCache', 'flushPageCache' ), 10, 0 );
373
+            add_action('shutdown', 'autoptimize_do_cachepurged_action', 11);
374
+            add_action('autoptimize_action_cachepurged', array('autoptimizeCache', 'flushPageCache'), 10, 0);
375 375
         }
376 376
 
377 377
         // Warm cache (part of speedupper)!
378
-        if ( apply_filters( 'autoptimize_filter_speedupper', true ) && false == get_transient( 'autoptimize_cache_warmer_protector' ) ) {
379
-            set_transient( 'autoptimize_cache_warmer_protector', 'I shall not warm cache for another 10 minutes.', 60 * 10 );
380
-            $url   = site_url() . '/?ao_speedup_cachebuster=' . rand( 1, 100000 );
381
-            $cache = @wp_remote_get( $url ); // @codingStandardsIgnoreLine
382
-            unset( $cache );
378
+        if (apply_filters('autoptimize_filter_speedupper', true) && false == get_transient('autoptimize_cache_warmer_protector')) {
379
+            set_transient('autoptimize_cache_warmer_protector', 'I shall not warm cache for another 10 minutes.', 60*10);
380
+            $url   = site_url().'/?ao_speedup_cachebuster='.rand(1, 100000);
381
+            $cache = @wp_remote_get($url); // @codingStandardsIgnoreLine
382
+            unset($cache);
383 383
         }
384 384
 
385 385
         return true;
@@ -394,7 +394,7 @@  discard block
 block discarded – undo
394 394
      */
395 395
     public static function clearall_actionless()
396 396
     {
397
-        return self::clearall( false );
397
+        return self::clearall(false);
398 398
     }
399 399
 
400 400
     /**
@@ -406,8 +406,8 @@  discard block
 block discarded – undo
406 406
     {
407 407
         $contents = array();
408 408
 
409
-        foreach ( array( '', 'js', 'css' ) as $dir ) {
410
-            $contents[ $dir ] = scandir( AUTOPTIMIZE_CACHE_DIR . $dir );
409
+        foreach (array('', 'js', 'css') as $dir) {
410
+            $contents[$dir] = scandir(AUTOPTIMIZE_CACHE_DIR.$dir);
411 411
         }
412 412
 
413 413
         return $contents;
@@ -420,21 +420,21 @@  discard block
 block discarded – undo
420 420
      */
421 421
     public static function stats()
422 422
     {
423
-        $stats = get_transient( 'autoptimize_stats' );
423
+        $stats = get_transient('autoptimize_stats');
424 424
 
425 425
         // If no transient, do the actual scan!
426
-        if ( ! is_array( $stats ) ) {
427
-            if ( ! self::cacheavail() ) {
426
+        if (!is_array($stats)) {
427
+            if (!self::cacheavail()) {
428 428
                 return 0;
429 429
             }
430 430
             $stats = self::stats_scan();
431 431
             $count = $stats[0];
432
-            if ( $count > 100 ) {
432
+            if ($count > 100) {
433 433
                 // Store results in transient.
434 434
                 set_transient(
435 435
                     'autoptimize_stats',
436 436
                     $stats,
437
-                    apply_filters( 'autoptimize_filter_cache_statsexpiry', HOUR_IN_SECONDS )
437
+                    apply_filters('autoptimize_filter_cache_statsexpiry', HOUR_IN_SECONDS)
438 438
                 );
439 439
             }
440 440
         }
@@ -457,30 +457,30 @@  discard block
 block discarded – undo
457 457
         $size  = 0;
458 458
 
459 459
         // Scan everything in our cache directories.
460
-        foreach ( self::get_cache_contents() as $name => $files ) {
461
-            $dir = rtrim( AUTOPTIMIZE_CACHE_DIR . $name, '/' ) . '/';
462
-            foreach ( $files as $file ) {
463
-                if ( self::is_valid_cache_file( $dir, $file ) ) {
464
-                    if ( AUTOPTIMIZE_CACHE_NOGZIP &&
460
+        foreach (self::get_cache_contents() as $name => $files) {
461
+            $dir = rtrim(AUTOPTIMIZE_CACHE_DIR.$name, '/').'/';
462
+            foreach ($files as $file) {
463
+                if (self::is_valid_cache_file($dir, $file)) {
464
+                    if (AUTOPTIMIZE_CACHE_NOGZIP &&
465 465
                         (
466
-                            false !== strpos( $file, '.js' ) ||
467
-                            false !== strpos( $file, '.css' ) ||
468
-                            false !== strpos( $file, '.img' ) ||
469
-                            false !== strpos( $file, '.txt' )
466
+                            false !== strpos($file, '.js') ||
467
+                            false !== strpos($file, '.css') ||
468
+                            false !== strpos($file, '.img') ||
469
+                            false !== strpos($file, '.txt')
470 470
                         )
471 471
                     ) {
472 472
                         // Web server is gzipping, we count .js|.css|.img|.txt files.
473 473
                         $count++;
474
-                    } elseif ( ! AUTOPTIMIZE_CACHE_NOGZIP && false !== strpos( $file, '.none' ) ) {
474
+                    } elseif (!AUTOPTIMIZE_CACHE_NOGZIP && false !== strpos($file, '.none')) {
475 475
                         // We are gzipping ourselves via php, counting only .none files.
476 476
                         $count++;
477 477
                     }
478
-                    $size += filesize( $dir . $file );
478
+                    $size += filesize($dir.$file);
479 479
                 }
480 480
             }
481 481
         }
482 482
 
483
-        $stats = array( $count, $size, time() );
483
+        $stats = array($count, $size, time());
484 484
 
485 485
         return $stats;
486 486
     }
@@ -494,22 +494,22 @@  discard block
 block discarded – undo
494 494
      */
495 495
     public static function cacheavail()
496 496
     {
497
-        if ( false === autoptimizeCache::check_and_create_dirs() ) {
497
+        if (false === autoptimizeCache::check_and_create_dirs()) {
498 498
             return false;
499 499
         }
500 500
 
501 501
         // Using .htaccess inside our cache folder to overrule wp-super-cache.
502
-        $htaccess = AUTOPTIMIZE_CACHE_DIR . '/.htaccess';
503
-        if ( ! is_file( $htaccess ) ) {
502
+        $htaccess = AUTOPTIMIZE_CACHE_DIR.'/.htaccess';
503
+        if (!is_file($htaccess)) {
504 504
             /**
505 505
              * Create `wp-content/AO_htaccess_tmpl` file with
506 506
              * whatever htaccess rules you might need
507 507
              * if you want to override default AO htaccess
508 508
              */
509
-            $htaccess_tmpl = WP_CONTENT_DIR . '/AO_htaccess_tmpl';
510
-            if ( is_file( $htaccess_tmpl ) ) {
511
-                $content = file_get_contents( $htaccess_tmpl );
512
-            } elseif ( is_multisite() || ! AUTOPTIMIZE_CACHE_NOGZIP ) {
509
+            $htaccess_tmpl = WP_CONTENT_DIR.'/AO_htaccess_tmpl';
510
+            if (is_file($htaccess_tmpl)) {
511
+                $content = file_get_contents($htaccess_tmpl);
512
+            } elseif (is_multisite() || !AUTOPTIMIZE_CACHE_NOGZIP) {
513 513
                 $content = '<IfModule mod_expires.c>
514 514
         ExpiresActive On
515 515
         ExpiresByType text/css A30672000
@@ -562,7 +562,7 @@  discard block
 block discarded – undo
562 562
     </Files>
563 563
 </IfModule>';
564 564
             }
565
-            @file_put_contents( $htaccess, $content ); // @codingStandardsIgnoreLine
565
+            @file_put_contents($htaccess, $content); // @codingStandardsIgnoreLine
566 566
         }
567 567
 
568 568
         // All OK!
@@ -576,13 +576,13 @@  discard block
 block discarded – undo
576 576
      * @return bool
577 577
      */
578 578
     public static function check_and_create_dirs() {
579
-        if ( ! defined( 'AUTOPTIMIZE_CACHE_DIR' ) ) {
579
+        if (!defined('AUTOPTIMIZE_CACHE_DIR')) {
580 580
             // We didn't set a cache.
581 581
             return false;
582 582
         }
583 583
 
584
-        foreach ( array( '', 'js', 'css' ) as $dir ) {
585
-            if ( ! self::check_cache_dir( AUTOPTIMIZE_CACHE_DIR . $dir ) ) {
584
+        foreach (array('', 'js', 'css') as $dir) {
585
+            if (!self::check_cache_dir(AUTOPTIMIZE_CACHE_DIR.$dir)) {
586 586
                 return false;
587 587
             }
588 588
         }
@@ -597,25 +597,25 @@  discard block
 block discarded – undo
597 597
      *
598 598
      * @return bool
599 599
      */
600
-    protected static function check_cache_dir( $dir )
600
+    protected static function check_cache_dir($dir)
601 601
     {
602 602
         // Try creating the dir if it doesn't exist.
603
-        if ( ! file_exists( $dir ) ) {
604
-            @mkdir( $dir, 0775, true ); // @codingStandardsIgnoreLine
605
-            if ( ! file_exists( $dir ) ) {
603
+        if (!file_exists($dir)) {
604
+            @mkdir($dir, 0775, true); // @codingStandardsIgnoreLine
605
+            if (!file_exists($dir)) {
606 606
                 return false;
607 607
             }
608 608
         }
609 609
 
610 610
         // If we still cannot write, bail.
611
-        if ( ! is_writable( $dir ) ) {
611
+        if (!is_writable($dir)) {
612 612
             return false;
613 613
         }
614 614
 
615 615
         // Create an index.html in there to avoid prying eyes!
616
-        $idx_file = rtrim( $dir, '/\\' ) . '/index.html';
617
-        if ( ! is_file( $idx_file ) ) {
618
-            @file_put_contents( $idx_file, '<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>' ); // @codingStandardsIgnoreLine
616
+        $idx_file = rtrim($dir, '/\\').'/index.html';
617
+        if (!is_file($idx_file)) {
618
+            @file_put_contents($idx_file, '<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>'); // @codingStandardsIgnoreLine
619 619
         }
620 620
 
621 621
         return true;
@@ -629,59 +629,59 @@  discard block
 block discarded – undo
629 629
     // @codingStandardsIgnoreStart
630 630
     public static function flushPageCache()
631 631
     {
632
-        if ( function_exists( 'wp_cache_clear_cache' ) ) {
633
-            if ( is_multisite() ) {
632
+        if (function_exists('wp_cache_clear_cache')) {
633
+            if (is_multisite()) {
634 634
                 $blog_id = get_current_blog_id();
635
-                wp_cache_clear_cache( $blog_id );
635
+                wp_cache_clear_cache($blog_id);
636 636
             } else {
637 637
                 wp_cache_clear_cache();
638 638
             }
639
-        } elseif ( has_action( 'cachify_flush_cache' ) ) {
640
-            do_action( 'cachify_flush_cache' );
641
-        } elseif ( function_exists( 'w3tc_pgcache_flush' ) ) {
639
+        } elseif (has_action('cachify_flush_cache')) {
640
+            do_action('cachify_flush_cache');
641
+        } elseif (function_exists('w3tc_pgcache_flush')) {
642 642
             w3tc_pgcache_flush();
643
-        } elseif ( function_exists( 'wp_fast_cache_bulk_delete_all' ) ) {
643
+        } elseif (function_exists('wp_fast_cache_bulk_delete_all')) {
644 644
             wp_fast_cache_bulk_delete_all();
645
-        } elseif ( class_exists( 'WpFastestCache' ) ) {
645
+        } elseif (class_exists('WpFastestCache')) {
646 646
             $wpfc = new WpFastestCache();
647 647
             $wpfc->deleteCache();
648
-        } elseif ( class_exists( 'c_ws_plugin__qcache_purging_routines' ) ) {
648
+        } elseif (class_exists('c_ws_plugin__qcache_purging_routines')) {
649 649
             c_ws_plugin__qcache_purging_routines::purge_cache_dir(); // quick cache
650
-        } elseif ( class_exists( 'zencache' ) ) {
650
+        } elseif (class_exists('zencache')) {
651 651
             zencache::clear();
652
-        } elseif ( class_exists( 'comet_cache' ) ) {
652
+        } elseif (class_exists('comet_cache')) {
653 653
             comet_cache::clear();
654
-        } elseif ( class_exists( 'WpeCommon' ) ) {
654
+        } elseif (class_exists('WpeCommon')) {
655 655
             // WPEngine cache purge/flush methods to call by default
656 656
             $wpe_methods = array(
657 657
                 'purge_varnish_cache',
658 658
             );
659 659
 
660 660
             // More agressive clear/flush/purge behind a filter
661
-            if ( apply_filters( 'autoptimize_flush_wpengine_aggressive', false ) ) {
662
-                $wpe_methods = array_merge( $wpe_methods, array( 'purge_memcached', 'clear_maxcdn_cache' ) );
661
+            if (apply_filters('autoptimize_flush_wpengine_aggressive', false)) {
662
+                $wpe_methods = array_merge($wpe_methods, array('purge_memcached', 'clear_maxcdn_cache'));
663 663
             }
664 664
 
665 665
             // Filtering the entire list of WpeCommon methods to be called (for advanced usage + easier testing)
666
-            $wpe_methods = apply_filters( 'autoptimize_flush_wpengine_methods', $wpe_methods );
666
+            $wpe_methods = apply_filters('autoptimize_flush_wpengine_methods', $wpe_methods);
667 667
 
668
-            foreach ( $wpe_methods as $wpe_method ) {
669
-                if ( method_exists( 'WpeCommon', $wpe_method ) ) {
668
+            foreach ($wpe_methods as $wpe_method) {
669
+                if (method_exists('WpeCommon', $wpe_method)) {
670 670
                     WpeCommon::$wpe_method();
671 671
                 }
672 672
             }
673
-        } elseif ( function_exists( 'sg_cachepress_purge_cache' ) ) {
673
+        } elseif (function_exists('sg_cachepress_purge_cache')) {
674 674
             sg_cachepress_purge_cache();
675
-        } elseif ( file_exists( WP_CONTENT_DIR . '/wp-cache-config.php' ) && function_exists( 'prune_super_cache' ) ) {
675
+        } elseif (file_exists(WP_CONTENT_DIR.'/wp-cache-config.php') && function_exists('prune_super_cache')) {
676 676
             // fallback for WP-Super-Cache
677 677
             global $cache_path;
678
-            if ( is_multisite() ) {
678
+            if (is_multisite()) {
679 679
                 $blog_id = get_current_blog_id();
680
-                prune_super_cache( get_supercache_dir( $blog_id ), true );
681
-                prune_super_cache( $cache_path . 'blogs/', true );
680
+                prune_super_cache(get_supercache_dir($blog_id), true);
681
+                prune_super_cache($cache_path.'blogs/', true);
682 682
             } else {
683
-                prune_super_cache( $cache_path . 'supercache/', true );
684
-                prune_super_cache( $cache_path, true );
683
+                prune_super_cache($cache_path.'supercache/', true);
684
+                prune_super_cache($cache_path, true);
685 685
             }
686 686
         }
687 687
     }
Please login to merge, or discard this patch.
classes/autoptimizeCacheChecker.php 1 patch
Spacing   +38 added lines, -38 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@  discard block
 block discarded – undo
6 6
  * Checks if cachesize is > 0.5GB (size is filterable), if so, an option is set which controls showing an admin notice.
7 7
  */
8 8
 
9
-if ( ! defined( 'ABSPATH' ) ) {
9
+if (!defined('ABSPATH')) {
10 10
     exit;
11 11
 }
12 12
 
@@ -25,51 +25,51 @@  discard block
 block discarded – undo
25 25
 
26 26
     public function add_hooks()
27 27
     {
28
-        if ( is_admin() ) {
29
-            add_action( 'plugins_loaded', array( $this, 'setup' ) );
28
+        if (is_admin()) {
29
+            add_action('plugins_loaded', array($this, 'setup'));
30 30
         }
31
-        add_action( self::SCHEDULE_HOOK, array( $this, 'cronjob' ) );
32
-        add_action( 'admin_notices', array( $this, 'show_admin_notice' ) );
31
+        add_action(self::SCHEDULE_HOOK, array($this, 'cronjob'));
32
+        add_action('admin_notices', array($this, 'show_admin_notice'));
33 33
     }
34 34
 
35 35
     public function setup()
36 36
     {
37
-        $do_cache_check = (bool) apply_filters( 'autoptimize_filter_cachecheck_do', true );
38
-        $schedule       = wp_get_schedule( self::SCHEDULE_HOOK );
39
-        $frequency      = apply_filters( 'autoptimize_filter_cachecheck_frequency', 'twicedaily' );
40
-        if ( ! in_array( $frequency, array( 'hourly', 'twicedaily', 'daily', 'weekly', 'monthly' ) ) ) {
37
+        $do_cache_check = (bool) apply_filters('autoptimize_filter_cachecheck_do', true);
38
+        $schedule       = wp_get_schedule(self::SCHEDULE_HOOK);
39
+        $frequency      = apply_filters('autoptimize_filter_cachecheck_frequency', 'twicedaily');
40
+        if (!in_array($frequency, array('hourly', 'twicedaily', 'daily', 'weekly', 'monthly'))) {
41 41
             $frequency = 'twicedaily';
42 42
         }
43
-        if ( $do_cache_check && ( ! $schedule || $schedule !== $frequency ) ) {
44
-            if ( $schedule ) {
45
-                wp_clear_scheduled_hook( self::SCHEDULE_HOOK );
43
+        if ($do_cache_check && (!$schedule || $schedule !== $frequency)) {
44
+            if ($schedule) {
45
+                wp_clear_scheduled_hook(self::SCHEDULE_HOOK);
46 46
             }
47
-            wp_schedule_event( time(), $frequency, self::SCHEDULE_HOOK );
48
-        } elseif ( $schedule && ! $do_cache_check ) {
49
-            wp_clear_scheduled_hook( self::SCHEDULE_HOOK );
47
+            wp_schedule_event(time(), $frequency, self::SCHEDULE_HOOK);
48
+        } elseif ($schedule && !$do_cache_check) {
49
+            wp_clear_scheduled_hook(self::SCHEDULE_HOOK);
50 50
         }
51 51
     }
52 52
 
53 53
     public function cronjob()
54 54
     {
55 55
         // Check cachesize and act accordingly.
56
-        $max_size       = (int) apply_filters( 'autoptimize_filter_cachecheck_maxsize', 536870912 );
57
-        $do_cache_check = (bool) apply_filters( 'autoptimize_filter_cachecheck_do', true );
56
+        $max_size       = (int) apply_filters('autoptimize_filter_cachecheck_maxsize', 536870912);
57
+        $do_cache_check = (bool) apply_filters('autoptimize_filter_cachecheck_do', true);
58 58
         $stat_array     = autoptimizeCache::stats();
59
-        $cache_size     = round( $stat_array[1] );
60
-        if ( ( $cache_size > $max_size ) && ( $do_cache_check ) ) {
61
-            update_option( 'autoptimize_cachesize_notice', true );
62
-            if ( apply_filters( 'autoptimize_filter_cachecheck_sendmail', true ) ) {
63
-                $home_url  = esc_url( home_url() );
64
-                $ao_mailto = apply_filters( 'autoptimize_filter_cachecheck_mailto', get_option( 'admin_email', '' ) );
65
-
66
-                $ao_mailsubject = __( 'Autoptimize cache size warning', 'autoptimize' ) . ' (' . $home_url . ')';
67
-                $ao_mailbody    = __( 'Autoptimize\'s cache size is getting big, consider purging the cache. Have a look at https://wordpress.org/plugins/autoptimize/faq/ to see how you can keep the cache size under control.', 'autoptimize' ) . ' (site: ' . $home_url . ')';
68
-
69
-                if ( ! empty( $ao_mailto ) ) {
70
-                    $ao_mailresult = wp_mail( $ao_mailto, $ao_mailsubject, $ao_mailbody );
71
-                    if ( ! $ao_mailresult ) {
72
-                        error_log( 'Autoptimize could not send cache size warning mail.' );
59
+        $cache_size     = round($stat_array[1]);
60
+        if (($cache_size > $max_size) && ($do_cache_check)) {
61
+            update_option('autoptimize_cachesize_notice', true);
62
+            if (apply_filters('autoptimize_filter_cachecheck_sendmail', true)) {
63
+                $home_url  = esc_url(home_url());
64
+                $ao_mailto = apply_filters('autoptimize_filter_cachecheck_mailto', get_option('admin_email', ''));
65
+
66
+                $ao_mailsubject = __('Autoptimize cache size warning', 'autoptimize').' ('.$home_url.')';
67
+                $ao_mailbody    = __('Autoptimize\'s cache size is getting big, consider purging the cache. Have a look at https://wordpress.org/plugins/autoptimize/faq/ to see how you can keep the cache size under control.', 'autoptimize').' (site: '.$home_url.')';
68
+
69
+                if (!empty($ao_mailto)) {
70
+                    $ao_mailresult = wp_mail($ao_mailto, $ao_mailsubject, $ao_mailbody);
71
+                    if (!$ao_mailresult) {
72
+                        error_log('Autoptimize could not send cache size warning mail.');
73 73
                     }
74 74
                 }
75 75
             }
@@ -87,16 +87,16 @@  discard block
 block discarded – undo
87 87
 
88 88
     public function show_admin_notice()
89 89
     {
90
-        if ( (bool) get_option( 'autoptimize_cachesize_notice', false ) && current_user_can( 'manage_options' ) ) {
90
+        if ((bool) get_option('autoptimize_cachesize_notice', false) && current_user_can('manage_options')) {
91 91
             echo '<div class="notice notice-warning"><p>';
92
-            _e( '<strong>Autoptimize\'s cache size is getting big</strong>, consider purging the cache. Have a look at <a href="https://wordpress.org/plugins/autoptimize/faq/" target="_blank" rel="noopener noreferrer">the Autoptimize FAQ</a> to see how you can keep the cache size under control.', 'autoptimize' );
92
+            _e('<strong>Autoptimize\'s cache size is getting big</strong>, consider purging the cache. Have a look at <a href="https://wordpress.org/plugins/autoptimize/faq/" target="_blank" rel="noopener noreferrer">the Autoptimize FAQ</a> to see how you can keep the cache size under control.', 'autoptimize');
93 93
             echo '</p></div>';
94
-            update_option( 'autoptimize_cachesize_notice', false );
94
+            update_option('autoptimize_cachesize_notice', false);
95 95
         }
96 96
 
97 97
         // Notice for image proxy usage.
98 98
         $_imgopt_notice = autoptimizeImages::instance()->get_status_notice();
99
-        if ( current_user_can( 'manage_options' ) && is_array( $_imgopt_notice ) && array_key_exists( 'status', $_imgopt_notice ) && in_array( $_imgopt_notice['status'], array( 1, -1, -2 ) ) ) {
99
+        if (current_user_can('manage_options') && is_array($_imgopt_notice) && array_key_exists('status', $_imgopt_notice) && in_array($_imgopt_notice['status'], array(1, -1, -2))) {
100 100
             $_dismissible = 'ao-img-opt-notice-';
101 101
             $_hide_notice = '7';
102 102
 
@@ -104,10 +104,10 @@  discard block
 block discarded – undo
104 104
                 $_hide_notice = '1';
105 105
             }
106 106
 
107
-            $_imgopt_notice_dismissible = apply_filters( 'autoptimize_filter_imgopt_notice_dismissable', $_dismissible . $_hide_notice );
107
+            $_imgopt_notice_dismissible = apply_filters('autoptimize_filter_imgopt_notice_dismissable', $_dismissible.$_hide_notice);
108 108
 
109
-            if ( $_imgopt_notice && PAnD::is_admin_notice_active( $_imgopt_notice_dismissible ) ) {
110
-                echo '<div class="notice notice-warning is-dismissible" data-dismissible="' . $_imgopt_notice_dismissible . '"><p>' . $_imgopt_notice['notice'] . '</p></div>';
109
+            if ($_imgopt_notice && PAnD::is_admin_notice_active($_imgopt_notice_dismissible)) {
110
+                echo '<div class="notice notice-warning is-dismissible" data-dismissible="'.$_imgopt_notice_dismissible.'"><p>'.$_imgopt_notice['notice'].'</p></div>';
111 111
             }
112 112
         }
113 113
     }
Please login to merge, or discard this patch.
classes/autoptimizeToolbar.php 1 patch
Spacing   +49 added lines, -49 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Handles toolbar-related stuff.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -12,32 +12,32 @@  discard block
 block discarded – undo
12 12
     public function __construct()
13 13
     {
14 14
         // If Cache is not available we don't add the toolbar.
15
-        if ( ! autoptimizeCache::cacheavail() ) {
15
+        if (!autoptimizeCache::cacheavail()) {
16 16
             return;
17 17
         }
18 18
 
19 19
         // Load admin toolbar feature once WordPress, all plugins, and the theme are fully loaded and instantiated.
20
-        add_action( 'wp_loaded', array( $this, 'load_toolbar' ) );
20
+        add_action('wp_loaded', array($this, 'load_toolbar'));
21 21
     }
22 22
 
23 23
     public function load_toolbar()
24 24
     {
25 25
         // Check permissions and that toolbar is not hidden via filter.
26
-        if ( current_user_can( 'manage_options' ) && apply_filters( 'autoptimize_filter_toolbar_show', true ) ) {
26
+        if (current_user_can('manage_options') && apply_filters('autoptimize_filter_toolbar_show', true)) {
27 27
 
28 28
             // Create a handler for the AJAX toolbar requests.
29
-            add_action( 'wp_ajax_autoptimize_delete_cache', array( $this, 'delete_cache' ) );
29
+            add_action('wp_ajax_autoptimize_delete_cache', array($this, 'delete_cache'));
30 30
 
31 31
             // Load custom styles, scripts and menu only when needed.
32
-            if ( is_admin_bar_showing() ) {
33
-                if ( is_admin() ) {
34
-                    add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
32
+            if (is_admin_bar_showing()) {
33
+                if (is_admin()) {
34
+                    add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'));
35 35
                 } else {
36
-                    add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
36
+                    add_action('wp_enqueue_scripts', array($this, 'enqueue_scripts'));
37 37
                 }
38 38
 
39 39
                 // Add the Autoptimize Toolbar to the Admin bar.
40
-                add_action( 'admin_bar_menu', array( $this, 'add_toolbar' ), 100 );
40
+                add_action('admin_bar_menu', array($this, 'add_toolbar'), 100);
41 41
             }
42 42
         }
43 43
     }
@@ -50,17 +50,17 @@  discard block
 block discarded – undo
50 50
         $stats = autoptimizeCache::stats();
51 51
 
52 52
         // Set the Max Size recommended for cache files.
53
-        $max_size = apply_filters( 'autoptimize_filter_cachecheck_maxsize', 512 * 1024 * 1024 );
53
+        $max_size = apply_filters('autoptimize_filter_cachecheck_maxsize', 512*1024*1024);
54 54
 
55 55
         // Retrieve the current Total Files in cache.
56 56
         $files = $stats[0];
57 57
         // Retrieve the current Total Size of the cache.
58 58
         $bytes = $stats[1];
59
-        $size  = $this->format_filesize( $bytes );
59
+        $size  = $this->format_filesize($bytes);
60 60
 
61 61
         // Calculate the percentage of cache used.
62
-        $percentage = ceil( $bytes / $max_size * 100 );
63
-        if ( $percentage > 100 ) {
62
+        $percentage = ceil($bytes/$max_size*100);
63
+        if ($percentage > 100) {
64 64
             $percentage = 100;
65 65
         }
66 66
 
@@ -70,82 +70,82 @@  discard block
 block discarded – undo
70 70
          * - "orange" if over 80%.
71 71
          * - "red" if over 100%.
72 72
          */
73
-        $color = ( 100 == $percentage ) ? 'red' : ( ( $percentage > 80 ) ? 'orange' : 'green' );
73
+        $color = (100 == $percentage) ? 'red' : (($percentage > 80) ? 'orange' : 'green');
74 74
 
75 75
         // Create or add new items into the Admin Toolbar.
76 76
         // Main "Autoptimize" node.
77
-        $wp_admin_bar->add_node( array(
77
+        $wp_admin_bar->add_node(array(
78 78
             'id'    => 'autoptimize',
79
-            'title' => '<span class="ab-icon"></span><span class="ab-label">' . __( 'Autoptimize', 'autoptimize' ) . '</span>',
80
-            'href'  => admin_url( 'options-general.php?page=autoptimize' ),
81
-            'meta'  => array( 'class' => 'bullet-' . $color ),
79
+            'title' => '<span class="ab-icon"></span><span class="ab-label">'.__('Autoptimize', 'autoptimize').'</span>',
80
+            'href'  => admin_url('options-general.php?page=autoptimize'),
81
+            'meta'  => array('class' => 'bullet-'.$color),
82 82
         ));
83 83
 
84 84
         // "Cache Info" node.
85
-        $wp_admin_bar->add_node( array(
85
+        $wp_admin_bar->add_node(array(
86 86
             'id'     => 'autoptimize-cache-info',
87
-            'title'  => '<p>' . __( 'Cache Info', 'autoptimize' ) . '</p>' .
88
-                        '<div class="autoptimize-radial-bar" percentage="' . $percentage . '">' .
89
-                        '<div class="autoptimize-circle">' .
90
-                        '<div class="mask full"><div class="fill bg-' . $color . '"></div></div>' .
91
-                        '<div class="mask half"><div class="fill bg-' . $color . '"></div></div>' .
92
-                        '<div class="shadow"></div>' .
93
-                        '</div>' .
94
-                        '<div class="inset"><div class="percentage"><div class="numbers ' . $color . '">' . $percentage . '%</div></div></div>' .
95
-                        '</div>' .
96
-                        '<table>' .
97
-                        '<tr><td>' . __( 'Size', 'autoptimize' ) . ':</td><td class="size ' . $color . '">' . $size . '</td></tr>' .
98
-                        '<tr><td>' . __( 'Files', 'autoptimize' ) . ':</td><td class="files white">' . $files . '</td></tr>' .
87
+            'title'  => '<p>'.__('Cache Info', 'autoptimize').'</p>'.
88
+                        '<div class="autoptimize-radial-bar" percentage="'.$percentage.'">'.
89
+                        '<div class="autoptimize-circle">'.
90
+                        '<div class="mask full"><div class="fill bg-'.$color.'"></div></div>'.
91
+                        '<div class="mask half"><div class="fill bg-'.$color.'"></div></div>'.
92
+                        '<div class="shadow"></div>'.
93
+                        '</div>'.
94
+                        '<div class="inset"><div class="percentage"><div class="numbers '.$color.'">'.$percentage.'%</div></div></div>'.
95
+                        '</div>'.
96
+                        '<table>'.
97
+                        '<tr><td>'.__('Size', 'autoptimize').':</td><td class="size '.$color.'">'.$size.'</td></tr>'.
98
+                        '<tr><td>'.__('Files', 'autoptimize').':</td><td class="files white">'.$files.'</td></tr>'.
99 99
                         '</table>',
100 100
             'parent' => 'autoptimize',
101 101
         ));
102 102
 
103 103
         // "Delete Cache" node.
104
-        $wp_admin_bar->add_node( array(
104
+        $wp_admin_bar->add_node(array(
105 105
             'id'     => 'autoptimize-delete-cache',
106
-            'title'  => __( 'Delete Cache', 'autoptimize' ),
106
+            'title'  => __('Delete Cache', 'autoptimize'),
107 107
             'parent' => 'autoptimize',
108 108
         ));
109 109
     }
110 110
 
111 111
     public function delete_cache()
112 112
     {
113
-        check_ajax_referer( 'ao_delcache_nonce', 'nonce' );
113
+        check_ajax_referer('ao_delcache_nonce', 'nonce');
114 114
 
115 115
         $result = false;
116
-        if ( current_user_can( 'manage_options' ) ) {
116
+        if (current_user_can('manage_options')) {
117 117
             // We call the function for cleaning the Autoptimize cache.
118 118
             $result = autoptimizeCache::clearall();
119 119
         }
120 120
 
121
-        wp_send_json( $result );
121
+        wp_send_json($result);
122 122
     }
123 123
 
124 124
     public function enqueue_scripts()
125 125
     {
126 126
         // Autoptimize Toolbar Styles.
127
-        wp_enqueue_style( 'autoptimize-toolbar', plugins_url( '/static/toolbar.css', __FILE__ ), array(), AUTOPTIMIZE_PLUGIN_VERSION, 'all' );
127
+        wp_enqueue_style('autoptimize-toolbar', plugins_url('/static/toolbar.css', __FILE__), array(), AUTOPTIMIZE_PLUGIN_VERSION, 'all');
128 128
 
129 129
         // Autoptimize Toolbar Javascript.
130
-        wp_enqueue_script( 'autoptimize-toolbar', plugins_url( '/static/toolbar.js', __FILE__ ), array( 'jquery' ), AUTOPTIMIZE_PLUGIN_VERSION, true );
130
+        wp_enqueue_script('autoptimize-toolbar', plugins_url('/static/toolbar.js', __FILE__), array('jquery'), AUTOPTIMIZE_PLUGIN_VERSION, true);
131 131
 
132 132
         // Localizes a registered script with data for a JavaScript variable.
133 133
         // Needed for the AJAX to work properly on the frontend.
134
-        wp_localize_script( 'autoptimize-toolbar', 'autoptimize_ajax_object', array(
135
-            'ajaxurl'     => admin_url( 'admin-ajax.php' ),
134
+        wp_localize_script('autoptimize-toolbar', 'autoptimize_ajax_object', array(
135
+            'ajaxurl'     => admin_url('admin-ajax.php'),
136 136
             // translators: links to the Autoptimize settings page.
137
-            '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;"' ),
138
-            'dismiss_msg' => __( 'Dismiss this notice.' ),
139
-            'nonce'       => wp_create_nonce( 'ao_delcache_nonce' ),
140
-        ) );
137
+            '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;"'),
138
+            'dismiss_msg' => __('Dismiss this notice.'),
139
+            'nonce'       => wp_create_nonce('ao_delcache_nonce'),
140
+        ));
141 141
     }
142 142
 
143
-    public function format_filesize( $bytes, $decimals = 2 )
143
+    public function format_filesize($bytes, $decimals = 2)
144 144
     {
145
-        $units = array( 'B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB' );
145
+        $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');
146 146
 
147
-        for ( $i = 0; ( $bytes / 1024) > 0.9; $i++, $bytes /= 1024 ) {} // @codingStandardsIgnoreLine
147
+        for ($i = 0; ($bytes/1024) > 0.9; $i++, $bytes /= 1024) {} // @codingStandardsIgnoreLine
148 148
 
149
-        return sprintf( "%1.{$decimals}f %s", round( $bytes, $decimals ), $units[ $i ] );
149
+        return sprintf("%1.{$decimals}f %s", round($bytes, $decimals), $units[$i]);
150 150
     }
151 151
 }
Please login to merge, or discard this patch.
autoptimize.php 1 patch
Spacing   +33 added lines, -33 removed lines patch added patch discarded remove patch
@@ -16,66 +16,66 @@  discard block
 block discarded – undo
16 16
  */
17 17
 
18 18
 
19
-if ( ! defined( 'ABSPATH' ) ) {
19
+if (!defined('ABSPATH')) {
20 20
     exit;
21 21
 }
22 22
 
23
-define( 'AUTOPTIMIZE_PLUGIN_VERSION', '2.5.0' );
23
+define('AUTOPTIMIZE_PLUGIN_VERSION', '2.5.0');
24 24
 
25 25
 // plugin_dir_path() returns the trailing slash!
26
-define( 'AUTOPTIMIZE_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
27
-define( 'AUTOPTIMIZE_PLUGIN_FILE', __FILE__ );
26
+define('AUTOPTIMIZE_PLUGIN_DIR', plugin_dir_path(__FILE__));
27
+define('AUTOPTIMIZE_PLUGIN_FILE', __FILE__);
28 28
 
29 29
 // Bail early if attempting to run on non-supported php versions.
30
-if ( version_compare( PHP_VERSION, '5.3', '<' ) ) {
30
+if (version_compare(PHP_VERSION, '5.3', '<')) {
31 31
     function autoptimize_incompatible_admin_notice() {
32
-        echo '<div class="error"><p>' . __( 'Autoptimize requires PHP 5.3 (or higher) to function properly. Please upgrade PHP. The Plugin has been auto-deactivated.', 'autoptimize' ) . '</p></div>';
33
-        if ( isset( $_GET['activate'] ) ) {
34
-            unset( $_GET['activate'] );
32
+        echo '<div class="error"><p>'.__('Autoptimize requires PHP 5.3 (or higher) to function properly. Please upgrade PHP. The Plugin has been auto-deactivated.', 'autoptimize').'</p></div>';
33
+        if (isset($_GET['activate'])) {
34
+            unset($_GET['activate']);
35 35
         }
36 36
     }
37 37
     function autoptimize_deactivate_self() {
38
-        deactivate_plugins( plugin_basename( AUTOPTIMIZE_PLUGIN_FILE ) );
38
+        deactivate_plugins(plugin_basename(AUTOPTIMIZE_PLUGIN_FILE));
39 39
     }
40
-    add_action( 'admin_notices', 'autoptimize_incompatible_admin_notice' );
41
-    add_action( 'admin_init', 'autoptimize_deactivate_self' );
40
+    add_action('admin_notices', 'autoptimize_incompatible_admin_notice');
41
+    add_action('admin_init', 'autoptimize_deactivate_self');
42 42
     return;
43 43
 }
44 44
 
45
-function autoptimize_autoload( $class_name ) {
46
-    if ( in_array( $class_name, array( 'Minify_HTML', 'JSMin' ) ) ) {
47
-        $file     = strtolower( $class_name );
48
-        $file     = str_replace( '_', '-', $file );
49
-        $path     = dirname( __FILE__ ) . '/classes/external/php/';
50
-        $filepath = $path . $file . '.php';
51
-    } elseif ( false !== strpos( $class_name, 'Autoptimize\\tubalmartin\\CssMin' ) ) {
52
-        $file     = str_replace( 'Autoptimize\\tubalmartin\\CssMin\\', '', $class_name );
53
-        $path     = dirname( __FILE__ ) . '/classes/external/php/yui-php-cssmin-bundled/';
54
-        $filepath = $path . $file . '.php';
55
-    } elseif ( 'autoptimize' === substr( $class_name, 0, 11 ) ) {
45
+function autoptimize_autoload($class_name) {
46
+    if (in_array($class_name, array('Minify_HTML', 'JSMin'))) {
47
+        $file     = strtolower($class_name);
48
+        $file     = str_replace('_', '-', $file);
49
+        $path     = dirname(__FILE__).'/classes/external/php/';
50
+        $filepath = $path.$file.'.php';
51
+    } elseif (false !== strpos($class_name, 'Autoptimize\\tubalmartin\\CssMin')) {
52
+        $file     = str_replace('Autoptimize\\tubalmartin\\CssMin\\', '', $class_name);
53
+        $path     = dirname(__FILE__).'/classes/external/php/yui-php-cssmin-bundled/';
54
+        $filepath = $path.$file.'.php';
55
+    } elseif ('autoptimize' === substr($class_name, 0, 11)) {
56 56
         // One of our "old" classes.
57 57
         $file     = $class_name;
58
-        $path     = dirname( __FILE__ ) . '/classes/';
59
-        $filepath = $path . $file . '.php';
60
-    } elseif ( 'PAnD' === $class_name ) {
58
+        $path     = dirname(__FILE__).'/classes/';
59
+        $filepath = $path.$file.'.php';
60
+    } elseif ('PAnD' === $class_name) {
61 61
         $file     = 'persist-admin-notices-dismissal';
62
-        $path     = dirname( __FILE__ ) . '/classes/external/php/persist-admin-notices-dismissal/';
63
-        $filepath = $path . $file . '.php';
62
+        $path     = dirname(__FILE__).'/classes/external/php/persist-admin-notices-dismissal/';
63
+        $filepath = $path.$file.'.php';
64 64
     }
65 65
 
66 66
     // If we didn't match one of our rules, bail!
67
-    if ( ! isset( $filepath ) ) {
67
+    if (!isset($filepath)) {
68 68
         return;
69 69
     }
70 70
 
71 71
     require $filepath;
72 72
 }
73 73
 
74
-spl_autoload_register( 'autoptimize_autoload' );
74
+spl_autoload_register('autoptimize_autoload');
75 75
 
76 76
 // Load WP CLI command(s) on demand.
77
-if ( defined( 'WP_CLI' ) && WP_CLI ) {
78
-    require AUTOPTIMIZE_PLUGIN_DIR . 'classes/autoptimizeCLI.php';
77
+if (defined('WP_CLI') && WP_CLI) {
78
+    require AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeCLI.php';
79 79
 }
80 80
 
81 81
 /**
@@ -86,8 +86,8 @@  discard block
 block discarded – undo
86 86
 function autoptimize() {
87 87
     static $plugin = null;
88 88
 
89
-    if ( null === $plugin ) {
90
-        $plugin = new autoptimizeMain( AUTOPTIMIZE_PLUGIN_VERSION, AUTOPTIMIZE_PLUGIN_FILE );
89
+    if (null === $plugin) {
90
+        $plugin = new autoptimizeMain(AUTOPTIMIZE_PLUGIN_VERSION, AUTOPTIMIZE_PLUGIN_FILE);
91 91
     }
92 92
 
93 93
     return $plugin;
Please login to merge, or discard this patch.
classes/autoptimizeUtils.php 1 patch
Spacing   +82 added lines, -82 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * General helpers.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -16,15 +16,15 @@  discard block
 block discarded – undo
16 16
      *
17 17
      * @return bool
18 18
      */
19
-    public static function mbstring_available( $override = null )
19
+    public static function mbstring_available($override = null)
20 20
     {
21 21
         static $available = null;
22 22
 
23
-        if ( null === $available ) {
24
-            $available = \extension_loaded( 'mbstring' );
23
+        if (null === $available) {
24
+            $available = \extension_loaded('mbstring');
25 25
         }
26 26
 
27
-        if ( null !== $override ) {
27
+        if (null !== $override) {
28 28
             $available = $override;
29 29
         }
30 30
 
@@ -42,12 +42,12 @@  discard block
 block discarded – undo
42 42
      *
43 43
      * @return int|false
44 44
      */
45
-    public static function strpos( $haystack, $needle, $offset = 0, $encoding = null )
45
+    public static function strpos($haystack, $needle, $offset = 0, $encoding = null)
46 46
     {
47
-        if ( self::mbstring_available() ) {
48
-            return ( null === $encoding ) ? \mb_strpos( $haystack, $needle, $offset ) : \mb_strpos( $haystack, $needle, $offset, $encoding );
47
+        if (self::mbstring_available()) {
48
+            return (null === $encoding) ? \mb_strpos($haystack, $needle, $offset) : \mb_strpos($haystack, $needle, $offset, $encoding);
49 49
         } else {
50
-            return \strpos( $haystack, $needle, $offset );
50
+            return \strpos($haystack, $needle, $offset);
51 51
         }
52 52
     }
53 53
 
@@ -62,12 +62,12 @@  discard block
 block discarded – undo
62 62
      * @return int Number of charcters or bytes in given $string
63 63
      *             (characters if/when supported, bytes otherwise).
64 64
      */
65
-    public static function strlen( $string, $encoding = null )
65
+    public static function strlen($string, $encoding = null)
66 66
     {
67
-        if ( self::mbstring_available() ) {
68
-            return ( null === $encoding ) ? \mb_strlen( $string ) : \mb_strlen( $string, $encoding );
67
+        if (self::mbstring_available()) {
68
+            return (null === $encoding) ? \mb_strlen($string) : \mb_strlen($string, $encoding);
69 69
         } else {
70
-            return \strlen( $string );
70
+            return \strlen($string);
71 71
         }
72 72
     }
73 73
 
@@ -85,44 +85,44 @@  discard block
 block discarded – undo
85 85
      *
86 86
      * @return string
87 87
      */
88
-    public static function substr_replace( $string, $replacement, $start, $length = null, $encoding = null )
88
+    public static function substr_replace($string, $replacement, $start, $length = null, $encoding = null)
89 89
     {
90
-        if ( self::mbstring_available() ) {
91
-            $strlen = self::strlen( $string, $encoding );
90
+        if (self::mbstring_available()) {
91
+            $strlen = self::strlen($string, $encoding);
92 92
 
93
-            if ( $start < 0 ) {
93
+            if ($start < 0) {
94 94
                 if ( -$start < $strlen ) {
95 95
                     $start = $strlen + $start;
96 96
                 } else {
97 97
                     $start = 0;
98 98
                 }
99
-            } elseif ( $start > $strlen ) {
99
+            } elseif ($start > $strlen) {
100 100
                 $start = $strlen;
101 101
             }
102 102
 
103
-            if ( null === $length || '' === $length ) {
103
+            if (null === $length || '' === $length) {
104 104
                 $start2 = $strlen;
105
-            } elseif ( $length < 0 ) {
105
+            } elseif ($length < 0) {
106 106
                 $start2 = $strlen + $length;
107
-                if ( $start2 < $start ) {
107
+                if ($start2 < $start) {
108 108
                     $start2 = $start;
109 109
                 }
110 110
             } else {
111 111
                 $start2 = $start + $length;
112 112
             }
113 113
 
114
-            if ( null === $encoding ) {
115
-                $leader  = $start ? \mb_substr( $string, 0, $start ) : '';
116
-                $trailer = ( $start2 < $strlen ) ? \mb_substr( $string, $start2, null ) : '';
114
+            if (null === $encoding) {
115
+                $leader  = $start ? \mb_substr($string, 0, $start) : '';
116
+                $trailer = ($start2 < $strlen) ? \mb_substr($string, $start2, null) : '';
117 117
             } else {
118
-                $leader  = $start ? \mb_substr( $string, 0, $start, $encoding ) : '';
119
-                $trailer = ( $start2 < $strlen ) ? \mb_substr( $string, $start2, null, $encoding ) : '';
118
+                $leader  = $start ? \mb_substr($string, 0, $start, $encoding) : '';
119
+                $trailer = ($start2 < $strlen) ? \mb_substr($string, $start2, null, $encoding) : '';
120 120
             }
121 121
 
122 122
             return "{$leader}{$replacement}{$trailer}";
123 123
         }
124 124
 
125
-        return ( null === $length ) ? \substr_replace( $string, $replacement, $start ) : \substr_replace( $string, $replacement, $start, $length );
125
+        return (null === $length) ? \substr_replace($string, $replacement, $start) : \substr_replace($string, $replacement, $start, $length);
126 126
     }
127 127
 
128 128
     /**
@@ -132,16 +132,16 @@  discard block
 block discarded – undo
132 132
      *
133 133
      * @return bool
134 134
      */
135
-    public static function siteurl_not_root( $override = null )
135
+    public static function siteurl_not_root($override = null)
136 136
     {
137 137
         static $subdir = null;
138 138
 
139
-        if ( null === $subdir ) {
139
+        if (null === $subdir) {
140 140
             $parts  = self::get_ao_wp_site_url_parts();
141
-            $subdir = ( isset( $parts['path'] ) && ( '/' !== $parts['path'] ) );
141
+            $subdir = (isset($parts['path']) && ('/' !== $parts['path']));
142 142
         }
143 143
 
144
-        if ( null !== $override ) {
144
+        if (null !== $override) {
145 145
             $subdir = $override;
146 146
         }
147 147
 
@@ -158,8 +158,8 @@  discard block
 block discarded – undo
158 158
     {
159 159
         static $parts = array();
160 160
 
161
-        if ( empty( $parts ) ) {
162
-            $parts = \parse_url( AUTOPTIMIZE_WP_SITE_URL );
161
+        if (empty($parts)) {
162
+            $parts = \parse_url(AUTOPTIMIZE_WP_SITE_URL);
163 163
         }
164 164
 
165 165
         return $parts;
@@ -174,33 +174,33 @@  discard block
 block discarded – undo
174 174
      *
175 175
      * @return string
176 176
      */
177
-    public static function tweak_cdn_url_if_needed( $cdn_url, $force_cache_miss = false )
177
+    public static function tweak_cdn_url_if_needed($cdn_url, $force_cache_miss = false)
178 178
     {
179 179
         static $results = array();
180 180
 
181
-        if ( ! isset( $results[ $cdn_url ] ) || $force_cache_miss ) {
181
+        if (!isset($results[$cdn_url]) || $force_cache_miss) {
182 182
 
183 183
             // In order to return unmodified input when there's no need to tweak.
184
-            $results[ $cdn_url ] = $cdn_url;
184
+            $results[$cdn_url] = $cdn_url;
185 185
 
186 186
             // Behind a default true filter for backcompat, and only for sites
187 187
             // in a subfolder/subdirectory, but still easily turned off if
188 188
             // not wanted/needed...
189
-            if ( autoptimizeUtils::siteurl_not_root() ) {
190
-                $check = apply_filters( 'autoptimize_filter_cdn_magic_path_check', true, $cdn_url );
191
-                if ( $check ) {
189
+            if (autoptimizeUtils::siteurl_not_root()) {
190
+                $check = apply_filters('autoptimize_filter_cdn_magic_path_check', true, $cdn_url);
191
+                if ($check) {
192 192
                     $site_url_parts = autoptimizeUtils::get_ao_wp_site_url_parts();
193
-                    $cdn_url_parts  = \parse_url( $cdn_url );
194
-                    $schemeless     = self::is_protocol_relative( $cdn_url );
195
-                    $cdn_url_parts  = self::maybe_replace_cdn_path( $site_url_parts, $cdn_url_parts );
196
-                    if ( false !== $cdn_url_parts ) {
197
-                        $results[ $cdn_url ] = self::assemble_parsed_url( $cdn_url_parts, $schemeless );
193
+                    $cdn_url_parts  = \parse_url($cdn_url);
194
+                    $schemeless     = self::is_protocol_relative($cdn_url);
195
+                    $cdn_url_parts  = self::maybe_replace_cdn_path($site_url_parts, $cdn_url_parts);
196
+                    if (false !== $cdn_url_parts) {
197
+                        $results[$cdn_url] = self::assemble_parsed_url($cdn_url_parts, $schemeless);
198 198
                     }
199 199
                 }
200 200
             }
201 201
         }
202 202
 
203
-        return $results[ $cdn_url ];
203
+        return $results[$cdn_url];
204 204
     }
205 205
 
206 206
     /**
@@ -214,10 +214,10 @@  discard block
 block discarded – undo
214 214
      *
215 215
      * @return array|false
216 216
      */
217
-    public static function maybe_replace_cdn_path( array $site_url_parts, array $cdn_url_parts )
217
+    public static function maybe_replace_cdn_path(array $site_url_parts, array $cdn_url_parts)
218 218
     {
219
-        if ( isset( $site_url_parts['path'] ) && '/' !== $site_url_parts['path'] ) {
220
-            if ( ! isset( $cdn_url_parts['path'] ) || '/' === $cdn_url_parts['path'] ) {
219
+        if (isset($site_url_parts['path']) && '/' !== $site_url_parts['path']) {
220
+            if (!isset($cdn_url_parts['path']) || '/' === $cdn_url_parts['path']) {
221 221
                 $cdn_url_parts['path'] = $site_url_parts['path'];
222 222
                 return $cdn_url_parts;
223 223
             }
@@ -237,20 +237,20 @@  discard block
 block discarded – undo
237 237
      *
238 238
      * @return string
239 239
      */
240
-    public static function assemble_parsed_url( array $parsed_url, $schemeless = false )
240
+    public static function assemble_parsed_url(array $parsed_url, $schemeless = false)
241 241
     {
242
-        $scheme = isset( $parsed_url['scheme'] ) ? $parsed_url['scheme'] . '://' : '';
243
-        if ( $schemeless ) {
242
+        $scheme = isset($parsed_url['scheme']) ? $parsed_url['scheme'].'://' : '';
243
+        if ($schemeless) {
244 244
             $scheme = '//';
245 245
         }
246
-        $host     = isset( $parsed_url['host'] ) ? $parsed_url['host'] : '';
247
-        $port     = isset( $parsed_url['port'] ) ? ':' . $parsed_url['port'] : '';
248
-        $user     = isset( $parsed_url['user'] ) ? $parsed_url['user'] : '';
249
-        $pass     = isset( $parsed_url['pass'] ) ? ':' . $parsed_url['pass'] : '';
250
-        $pass     = ( $user || $pass ) ? "$pass@" : '';
251
-        $path     = isset( $parsed_url['path'] ) ? $parsed_url['path'] : '';
252
-        $query    = isset( $parsed_url['query'] ) ? '?' . $parsed_url['query'] : '';
253
-        $fragment = isset( $parsed_url['fragment'] ) ? '#' . $parsed_url['fragment'] : '';
246
+        $host     = isset($parsed_url['host']) ? $parsed_url['host'] : '';
247
+        $port     = isset($parsed_url['port']) ? ':'.$parsed_url['port'] : '';
248
+        $user     = isset($parsed_url['user']) ? $parsed_url['user'] : '';
249
+        $pass     = isset($parsed_url['pass']) ? ':'.$parsed_url['pass'] : '';
250
+        $pass     = ($user || $pass) ? "$pass@" : '';
251
+        $path     = isset($parsed_url['path']) ? $parsed_url['path'] : '';
252
+        $query    = isset($parsed_url['query']) ? '?'.$parsed_url['query'] : '';
253
+        $fragment = isset($parsed_url['fragment']) ? '#'.$parsed_url['fragment'] : '';
254 254
 
255 255
         return "$scheme$user$pass$host$port$path$query$fragment";
256 256
     }
@@ -262,12 +262,12 @@  discard block
 block discarded – undo
262 262
      *
263 263
      * @return bool
264 264
      */
265
-    public static function is_protocol_relative( $url )
265
+    public static function is_protocol_relative($url)
266 266
     {
267 267
         $result = false;
268 268
 
269
-        if ( ! empty( $url ) ) {
270
-            $result = ( 0 === strpos( $url, '//' ) );
269
+        if (!empty($url)) {
270
+            $result = (0 === strpos($url, '//'));
271 271
         }
272 272
 
273 273
         return $result;
@@ -280,9 +280,9 @@  discard block
 block discarded – undo
280 280
      *
281 281
      * @return string
282 282
      */
283
-    public static function path_canonicalize( $path )
283
+    public static function path_canonicalize($path)
284 284
     {
285
-        $patterns     = array(
285
+        $patterns = array(
286 286
             '~/{2,}~',
287 287
             '~/(\./)+~',
288 288
             '~([^/\.]+/(?R)*\.{2,}/)~',
@@ -295,7 +295,7 @@  discard block
 block discarded – undo
295 295
             '',
296 296
         );
297 297
 
298
-        return preg_replace( $patterns, $replacements, $path );
298
+        return preg_replace($patterns, $replacements, $path);
299 299
     }
300 300
 
301 301
     /**
@@ -307,15 +307,15 @@  discard block
 block discarded – undo
307 307
      *
308 308
      * @return null|array Service status or null.
309 309
      */
310
-    public static function check_service_availability( $return_result = false )
310
+    public static function check_service_availability($return_result = false)
311 311
     {
312
-        $service_availability_resp = wp_remote_get( 'https://misc.optimizingmatters.com/api/autoptimize_service_availablity.json?from=aomain&ver=' . AUTOPTIMIZE_PLUGIN_VERSION );
313
-        if ( ! is_wp_error( $service_availability_resp ) ) {
314
-            if ( '200' == wp_remote_retrieve_response_code( $service_availability_resp ) ) {
315
-                $availabilities = json_decode( wp_remote_retrieve_body( $service_availability_resp ), true );
316
-                if ( is_array( $availabilities ) ) {
317
-                    update_option( 'autoptimize_service_availablity', $availabilities );
318
-                    if ( $return_result ) {
312
+        $service_availability_resp = wp_remote_get('https://misc.optimizingmatters.com/api/autoptimize_service_availablity.json?from=aomain&ver='.AUTOPTIMIZE_PLUGIN_VERSION);
313
+        if (!is_wp_error($service_availability_resp)) {
314
+            if ('200' == wp_remote_retrieve_response_code($service_availability_resp)) {
315
+                $availabilities = json_decode(wp_remote_retrieve_body($service_availability_resp), true);
316
+                if (is_array($availabilities)) {
317
+                    update_option('autoptimize_service_availablity', $availabilities);
318
+                    if ($return_result) {
319 319
                         return $availabilities;
320 320
                     }
321 321
                 }
@@ -331,10 +331,10 @@  discard block
 block discarded – undo
331 331
      *
332 332
      * @return bool
333 333
      */
334
-    public static function str_is_valid_regex( $string )
334
+    public static function str_is_valid_regex($string)
335 335
     {
336
-        set_error_handler( function() {}, E_WARNING );
337
-        $is_regex = ( false !== preg_match( $string, '' ) );
336
+        set_error_handler(function() {}, E_WARNING);
337
+        $is_regex = (false !== preg_match($string, ''));
338 338
         restore_error_handler();
339 339
 
340 340
         return $is_regex;
@@ -347,16 +347,16 @@  discard block
 block discarded – undo
347 347
      *
348 348
      * @return bool
349 349
      */
350
-    public static function is_plugin_active( $plugin_file )
350
+    public static function is_plugin_active($plugin_file)
351 351
     {
352 352
         static $ipa_exists = null;
353
-        if ( null === $ipa_exists ) {
354
-            if ( ! function_exists( '\is_plugin_active' ) ) {
355
-                require_once ABSPATH . 'wp-admin/includes/plugin.php';
353
+        if (null === $ipa_exists) {
354
+            if (!function_exists('\is_plugin_active')) {
355
+                require_once ABSPATH.'wp-admin/includes/plugin.php';
356 356
             }
357
-            $ipa_exists = function_exists( '\is_plugin_active' );
357
+            $ipa_exists = function_exists('\is_plugin_active');
358 358
         }
359 359
 
360
-        return $ipa_exists && \is_plugin_active( $plugin_file );
360
+        return $ipa_exists && \is_plugin_active($plugin_file);
361 361
     }
362 362
 }
Please login to merge, or discard this patch.
classes/autoptimizeBase.php 1 patch
Spacing   +151 added lines, -151 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Base class other (more-specific) classes inherit from.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
     /** @var string */
27 27
     public $cdn_url = '';
28 28
 
29
-    public function __construct( $content )
29
+    public function __construct($content)
30 30
     {
31 31
         $this->content = $content;
32 32
     }
@@ -38,7 +38,7 @@  discard block
 block discarded – undo
38 38
      *
39 39
      * @return bool
40 40
      */
41
-    abstract public function read( $options );
41
+    abstract public function read($options);
42 42
 
43 43
     /**
44 44
      * Joins and optimizes collected things.
@@ -69,40 +69,40 @@  discard block
 block discarded – undo
69 69
      *
70 70
      * @return bool|string
71 71
      */
72
-    public function getpath( $url )
72
+    public function getpath($url)
73 73
     {
74
-        $url = apply_filters( 'autoptimize_filter_cssjs_alter_url', $url );
74
+        $url = apply_filters('autoptimize_filter_cssjs_alter_url', $url);
75 75
 
76
-        if ( false !== strpos( $url, '%' ) ) {
77
-            $url = urldecode( $url );
76
+        if (false !== strpos($url, '%')) {
77
+            $url = urldecode($url);
78 78
         }
79 79
 
80
-        $site_host    = parse_url( AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST );
81
-        $content_host = parse_url( AUTOPTIMIZE_WP_ROOT_URL, PHP_URL_HOST );
80
+        $site_host    = parse_url(AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST);
81
+        $content_host = parse_url(AUTOPTIMIZE_WP_ROOT_URL, PHP_URL_HOST);
82 82
 
83 83
         // Normalizing attempts...
84
-        $double_slash_position = strpos( $url, '//' );
85
-        if ( 0 === $double_slash_position ) {
86
-            if ( is_ssl() ) {
87
-                $url = 'https:' . $url;
84
+        $double_slash_position = strpos($url, '//');
85
+        if (0 === $double_slash_position) {
86
+            if (is_ssl()) {
87
+                $url = 'https:'.$url;
88 88
             } else {
89
-                $url = 'http:' . $url;
89
+                $url = 'http:'.$url;
90 90
             }
91
-        } elseif ( ( false === $double_slash_position ) && ( false === strpos( $url, $site_host ) ) ) {
92
-            if ( AUTOPTIMIZE_WP_SITE_URL === $site_host ) {
93
-                $url = AUTOPTIMIZE_WP_SITE_URL . $url;
91
+        } elseif ((false === $double_slash_position) && (false === strpos($url, $site_host))) {
92
+            if (AUTOPTIMIZE_WP_SITE_URL === $site_host) {
93
+                $url = AUTOPTIMIZE_WP_SITE_URL.$url;
94 94
             } else {
95
-                $url = AUTOPTIMIZE_WP_SITE_URL . autoptimizeUtils::path_canonicalize( $url );
95
+                $url = AUTOPTIMIZE_WP_SITE_URL.autoptimizeUtils::path_canonicalize($url);
96 96
             }
97 97
         }
98 98
 
99
-        if ( $site_host !== $content_host ) {
100
-            $url = str_replace( AUTOPTIMIZE_WP_CONTENT_URL, AUTOPTIMIZE_WP_SITE_URL . AUTOPTIMIZE_WP_CONTENT_NAME, $url );
99
+        if ($site_host !== $content_host) {
100
+            $url = str_replace(AUTOPTIMIZE_WP_CONTENT_URL, AUTOPTIMIZE_WP_SITE_URL.AUTOPTIMIZE_WP_CONTENT_NAME, $url);
101 101
         }
102 102
 
103 103
         // First check; hostname wp site should be hostname of url!
104
-        $url_host = @parse_url( $url, PHP_URL_HOST ); // @codingStandardsIgnoreLine
105
-        if ( $url_host !== $site_host ) {
104
+        $url_host = @parse_url($url, PHP_URL_HOST); // @codingStandardsIgnoreLine
105
+        if ($url_host !== $site_host) {
106 106
             /**
107 107
              * First try to get all domains from WPML (if available)
108 108
              * then explicitely declare $this->cdn_url as OK as well
@@ -111,20 +111,20 @@  discard block
 block discarded – undo
111 111
              */
112 112
             $multidomains = array();
113 113
 
114
-            $multidomains_wpml = apply_filters( 'wpml_setting', array(), 'language_domains' );
115
-            if ( ! empty( $multidomains_wpml ) ) {
116
-                $multidomains = array_map( array( $this, 'get_url_hostname' ), $multidomains_wpml );
114
+            $multidomains_wpml = apply_filters('wpml_setting', array(), 'language_domains');
115
+            if (!empty($multidomains_wpml)) {
116
+                $multidomains = array_map(array($this, 'get_url_hostname'), $multidomains_wpml);
117 117
             }
118 118
 
119
-            if ( ! empty( $this->cdn_url ) ) {
120
-                $multidomains[] = parse_url( $this->cdn_url, PHP_URL_HOST );
119
+            if (!empty($this->cdn_url)) {
120
+                $multidomains[] = parse_url($this->cdn_url, PHP_URL_HOST);
121 121
             }
122 122
 
123
-            $multidomains = apply_filters( 'autoptimize_filter_cssjs_multidomain', $multidomains );
123
+            $multidomains = apply_filters('autoptimize_filter_cssjs_multidomain', $multidomains);
124 124
 
125
-            if ( ! empty( $multidomains ) ) {
126
-                if ( in_array( $url_host, $multidomains ) ) {
127
-                    $url = str_replace( $url_host, $site_host, $url );
125
+            if (!empty($multidomains)) {
126
+                if (in_array($url_host, $multidomains)) {
127
+                    $url = str_replace($url_host, $site_host, $url);
128 128
                 } else {
129 129
                     return false;
130 130
                 }
@@ -134,28 +134,28 @@  discard block
 block discarded – undo
134 134
         }
135 135
 
136 136
         // Try to remove "wp root url" from url while not minding http<>https.
137
-        $tmp_ao_root = preg_replace( '/https?:/', '', AUTOPTIMIZE_WP_ROOT_URL );
137
+        $tmp_ao_root = preg_replace('/https?:/', '', AUTOPTIMIZE_WP_ROOT_URL);
138 138
 
139
-        if ( $site_host !== $content_host ) {
139
+        if ($site_host !== $content_host) {
140 140
             // As we replaced the content-domain with the site-domain, we should match against that.
141
-            $tmp_ao_root = preg_replace( '/https?:/', '', AUTOPTIMIZE_WP_SITE_URL );
141
+            $tmp_ao_root = preg_replace('/https?:/', '', AUTOPTIMIZE_WP_SITE_URL);
142 142
         }
143 143
 
144
-        $tmp_url = preg_replace( '/https?:/', '', $url );
145
-        $path    = str_replace( $tmp_ao_root, '', $tmp_url );
144
+        $tmp_url = preg_replace('/https?:/', '', $url);
145
+        $path    = str_replace($tmp_ao_root, '', $tmp_url);
146 146
 
147 147
         // If path starts with :// or //, this is not a URL in the WP context and
148 148
         // we have to assume we can't aggregate.
149
-        if ( preg_match( '#^:?//#', $path ) ) {
149
+        if (preg_match('#^:?//#', $path)) {
150 150
             // External script/css (adsense, etc).
151 151
             return false;
152 152
         }
153 153
 
154 154
         // Prepend with WP_ROOT_DIR to have full path to file.
155
-        $path = str_replace( '//', '/', WP_ROOT_DIR . $path );
155
+        $path = str_replace('//', '/', WP_ROOT_DIR.$path);
156 156
 
157 157
         // Final check: does file exist and is it readable?
158
-        if ( file_exists( $path ) && is_file( $path ) && is_readable( $path ) ) {
158
+        if (file_exists($path) && is_file($path) && is_readable($path)) {
159 159
             return $path;
160 160
         } else {
161 161
             return false;
@@ -172,18 +172,18 @@  discard block
 block discarded – undo
172 172
      *
173 173
      * @return string
174 174
      */
175
-    protected function get_url_hostname( $url )
175
+    protected function get_url_hostname($url)
176 176
     {
177 177
         // Checking that the url starts with something vaguely resembling a protocol.
178
-        if ( ( 0 !== strpos( $url, 'http' ) ) && ( 0 !== strpos( $url, '//' ) ) ) {
179
-            $url = 'http://' . $url;
178
+        if ((0 !== strpos($url, 'http')) && (0 !== strpos($url, '//'))) {
179
+            $url = 'http://'.$url;
180 180
         }
181 181
 
182 182
         // Grab the hostname.
183
-        $hostname = parse_url( $url, PHP_URL_HOST );
183
+        $hostname = parse_url($url, PHP_URL_HOST);
184 184
 
185 185
         // Fallback when parse_url() fails.
186
-        if ( empty( $hostname ) ) {
186
+        if (empty($hostname)) {
187 187
             $hostname = $url;
188 188
         }
189 189
 
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
      *
198 198
      * @return string
199 199
      */
200
-    protected function hide_noptimize( $markup )
200
+    protected function hide_noptimize($markup)
201 201
     {
202 202
         return $this->replace_contents_with_marker_if_exists(
203 203
             'NOPTIMIZE',
@@ -214,9 +214,9 @@  discard block
 block discarded – undo
214 214
      *
215 215
      * @return string
216 216
      */
217
-    protected function restore_noptimize( $markup )
217
+    protected function restore_noptimize($markup)
218 218
     {
219
-        return $this->restore_marked_content( 'NOPTIMIZE', $markup );
219
+        return $this->restore_marked_content('NOPTIMIZE', $markup);
220 220
     }
221 221
 
222 222
     /**
@@ -226,7 +226,7 @@  discard block
 block discarded – undo
226 226
      *
227 227
      * @return string
228 228
      */
229
-    protected function hide_iehacks( $markup )
229
+    protected function hide_iehacks($markup)
230 230
     {
231 231
         return $this->replace_contents_with_marker_if_exists(
232 232
             'IEHACK', // Marker name...
@@ -243,9 +243,9 @@  discard block
 block discarded – undo
243 243
      *
244 244
      * @return string
245 245
      */
246
-    protected function restore_iehacks( $markup )
246
+    protected function restore_iehacks($markup)
247 247
     {
248
-        return $this->restore_marked_content( 'IEHACK', $markup );
248
+        return $this->restore_marked_content('IEHACK', $markup);
249 249
     }
250 250
 
251 251
     /**
@@ -257,7 +257,7 @@  discard block
 block discarded – undo
257 257
      *
258 258
      * @return string
259 259
      */
260
-    protected function hide_comments( $markup )
260
+    protected function hide_comments($markup)
261 261
     {
262 262
         return $this->replace_contents_with_marker_if_exists(
263 263
             'COMMENTS',
@@ -275,9 +275,9 @@  discard block
 block discarded – undo
275 275
      *
276 276
      * @return string
277 277
      */
278
-    protected function restore_comments( $markup )
278
+    protected function restore_comments($markup)
279 279
     {
280
-        return $this->restore_marked_content( 'COMMENTS', $markup );
280
+        return $this->restore_marked_content('COMMENTS', $markup);
281 281
     }
282 282
 
283 283
     /**
@@ -288,44 +288,44 @@  discard block
 block discarded – undo
288 288
      *
289 289
      * @return string
290 290
      */
291
-    public function url_replace_cdn( $url )
291
+    public function url_replace_cdn($url)
292 292
     {
293 293
         // For 2.3 back-compat in which cdn-ing appeared to be automatically
294 294
         // including WP subfolder/subdirectory into account as part of cdn-ing,
295 295
         // even though it might've caused serious troubles in certain edge-cases.
296
-        $cdn_url = autoptimizeUtils::tweak_cdn_url_if_needed( $this->cdn_url );
296
+        $cdn_url = autoptimizeUtils::tweak_cdn_url_if_needed($this->cdn_url);
297 297
 
298 298
         // Allows API/filter to further tweak the cdn url...
299
-        $cdn_url = apply_filters( 'autoptimize_filter_base_cdnurl', $cdn_url );
300
-        if ( ! empty( $cdn_url ) ) {
301
-            $this->debug_log( 'before=' . $url );
299
+        $cdn_url = apply_filters('autoptimize_filter_base_cdnurl', $cdn_url);
300
+        if (!empty($cdn_url)) {
301
+            $this->debug_log('before='.$url);
302 302
 
303 303
             // Simple str_replace-based approach fails when $url is protocol-or-host-relative.
304
-            $is_protocol_relative = autoptimizeUtils::is_protocol_relative( $url );
305
-            $is_host_relative     = ( ! $is_protocol_relative && ( '/' === $url{0} ) );
306
-            $cdn_url              = rtrim( $cdn_url, '/' );
304
+            $is_protocol_relative = autoptimizeUtils::is_protocol_relative($url);
305
+            $is_host_relative     = (!$is_protocol_relative && ('/' === $url{0} ));
306
+            $cdn_url              = rtrim($cdn_url, '/');
307 307
 
308
-            if ( $is_host_relative ) {
308
+            if ($is_host_relative) {
309 309
                 // Prepending host-relative urls with the cdn url.
310
-                $url = $cdn_url . $url;
310
+                $url = $cdn_url.$url;
311 311
             } else {
312 312
                 // Either a protocol-relative or "regular" url, replacing it either way.
313
-                if ( $is_protocol_relative ) {
313
+                if ($is_protocol_relative) {
314 314
                     // Massage $site_url so that simple str_replace() still "works" by
315 315
                     // searching for the protocol-relative version of AUTOPTIMIZE_WP_SITE_URL.
316
-                    $site_url = str_replace( array( 'http:', 'https:' ), '', AUTOPTIMIZE_WP_SITE_URL );
316
+                    $site_url = str_replace(array('http:', 'https:'), '', AUTOPTIMIZE_WP_SITE_URL);
317 317
                 } else {
318 318
                     $site_url = AUTOPTIMIZE_WP_SITE_URL;
319 319
                 }
320
-                $this->debug_log( '`' . $site_url . '` -> `' . $cdn_url . '` in `' . $url . '`' );
321
-                $url = str_replace( $site_url, $cdn_url, $url );
320
+                $this->debug_log('`'.$site_url.'` -> `'.$cdn_url.'` in `'.$url.'`');
321
+                $url = str_replace($site_url, $cdn_url, $url);
322 322
             }
323 323
 
324
-            $this->debug_log( 'after=' . $url );
324
+            $this->debug_log('after='.$url);
325 325
         }
326 326
 
327 327
         // Allow API filter to take further care of CDN replacement.
328
-        $url = apply_filters( 'autoptimize_filter_base_replace_cdn', $url );
328
+        $url = apply_filters('autoptimize_filter_base_replace_cdn', $url);
329 329
 
330 330
         return $url;
331 331
     }
@@ -343,18 +343,18 @@  discard block
 block discarded – undo
343 343
      *
344 344
      * @return void
345 345
      */
346
-    protected function inject_in_html( $payload, $where )
346
+    protected function inject_in_html($payload, $where)
347 347
     {
348 348
         $warned   = false;
349
-        $position = autoptimizeUtils::strpos( $this->content, $where[0] );
350
-        if ( false !== $position ) {
349
+        $position = autoptimizeUtils::strpos($this->content, $where[0]);
350
+        if (false !== $position) {
351 351
             // Found the tag, setup content/injection as specified.
352
-            if ( 'after' === $where[1] ) {
353
-                $content = $where[0] . $payload;
354
-            } elseif ( 'replace' === $where[1] ) {
352
+            if ('after' === $where[1]) {
353
+                $content = $where[0].$payload;
354
+            } elseif ('replace' === $where[1]) {
355 355
                 $content = $payload;
356 356
             } else {
357
-                $content = $payload . $where[0];
357
+                $content = $payload.$where[0];
358 358
             }
359 359
             // Place where specified.
360 360
             $this->content = autoptimizeUtils::substr_replace(
@@ -363,14 +363,14 @@  discard block
 block discarded – undo
363 363
                 $position,
364 364
                 // Using plain strlen() should be safe here for now, since
365 365
                 // we're not searching for multibyte chars here still...
366
-                strlen( $where[0] )
366
+                strlen($where[0])
367 367
             );
368 368
         } else {
369 369
             // Couldn't find what was specified, just append and add a warning.
370 370
             $this->content .= $payload;
371
-            if ( ! $warned ) {
372
-                $tag_display    = str_replace( array( '<', '>' ), '', $where[0] );
373
-                $this->content .= '<!--noptimize--><!-- Autoptimize found a problem with the HTML in your Theme, tag `' . $tag_display . '` missing --><!--/noptimize-->';
371
+            if (!$warned) {
372
+                $tag_display    = str_replace(array('<', '>'), '', $where[0]);
373
+                $this->content .= '<!--noptimize--><!-- Autoptimize found a problem with the HTML in your Theme, tag `'.$tag_display.'` missing --><!--/noptimize-->';
374 374
                 $warned         = true;
375 375
             }
376 376
         }
@@ -384,10 +384,10 @@  discard block
 block discarded – undo
384 384
      *
385 385
      * @return bool
386 386
      */
387
-    protected function isremovable( $tag, $removables )
387
+    protected function isremovable($tag, $removables)
388 388
     {
389
-        foreach ( $removables as $match ) {
390
-            if ( false !== strpos( $tag, $match ) ) {
389
+        foreach ($removables as $match) {
390
+            if (false !== strpos($tag, $match)) {
391 391
                 return true;
392 392
             }
393 393
         }
@@ -402,10 +402,10 @@  discard block
 block discarded – undo
402 402
      *
403 403
      * @return string
404 404
      */
405
-    public function inject_minified_callback( $matches )
405
+    public function inject_minified_callback($matches)
406 406
     {
407 407
         static $conf = null;
408
-        if ( null === $conf ) {
408
+        if (null === $conf) {
409 409
             $conf = autoptimizeConfig::instance();
410 410
         }
411 411
 
@@ -420,62 +420,62 @@  discard block
 block discarded – undo
420 420
         $filehash = null;
421 421
 
422 422
         // Grab the parts we need.
423
-        $parts = explode( '|', $matches[1] );
424
-        if ( ! empty( $parts ) ) {
425
-            $filepath = isset( $parts[0] ) ? base64_decode( $parts[0] ) : null;
426
-            $filehash = isset( $parts[1] ) ? $parts[1] : null;
423
+        $parts = explode('|', $matches[1]);
424
+        if (!empty($parts)) {
425
+            $filepath = isset($parts[0]) ? base64_decode($parts[0]) : null;
426
+            $filehash = isset($parts[1]) ? $parts[1] : null;
427 427
         }
428 428
 
429 429
         // Bail early if something's not right...
430
-        if ( ! $filepath || ! $filehash ) {
430
+        if (!$filepath || !$filehash) {
431 431
             return "\n";
432 432
         }
433 433
 
434
-        $filecontent = file_get_contents( $filepath );
434
+        $filecontent = file_get_contents($filepath);
435 435
 
436 436
         // Some things are differently handled for css/js...
437
-        $is_js_file = ( '.js' === substr( $filepath, -3, 3 ) );
437
+        $is_js_file = ('.js' === substr($filepath, -3, 3));
438 438
 
439 439
         $is_css_file = false;
440
-        if ( ! $is_js_file ) {
441
-            $is_css_file = ( '.css' === substr( $filepath, -4, 4 ) );
440
+        if (!$is_js_file) {
441
+            $is_css_file = ('.css' === substr($filepath, -4, 4));
442 442
         }
443 443
 
444 444
         // BOMs being nuked here unconditionally (regardless of where they are)!
445
-        $filecontent = preg_replace( "#\x{EF}\x{BB}\x{BF}#", '', $filecontent );
445
+        $filecontent = preg_replace("#\x{EF}\x{BB}\x{BF}#", '', $filecontent);
446 446
 
447 447
         // Remove comments and blank lines.
448
-        if ( $is_js_file ) {
449
-            $filecontent = preg_replace( '#^\s*\/\/.*$#Um', '', $filecontent );
448
+        if ($is_js_file) {
449
+            $filecontent = preg_replace('#^\s*\/\/.*$#Um', '', $filecontent);
450 450
         }
451 451
 
452 452
         // Nuke un-important comments.
453
-        $filecontent = preg_replace( '#^\s*\/\*[^!].*\*\/\s?#Um', '', $filecontent );
453
+        $filecontent = preg_replace('#^\s*\/\*[^!].*\*\/\s?#Um', '', $filecontent);
454 454
 
455 455
         // Normalize newlines.
456
-        $filecontent = preg_replace( '#(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+#', "\n", $filecontent );
456
+        $filecontent = preg_replace('#(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+#', "\n", $filecontent);
457 457
 
458 458
         // JS specifics.
459
-        if ( $is_js_file ) {
459
+        if ($is_js_file) {
460 460
             // Append a semicolon at the end of js files if it's missing.
461
-            $last_char = substr( $filecontent, -1, 1 );
462
-            if ( ';' !== $last_char && '}' !== $last_char ) {
461
+            $last_char = substr($filecontent, -1, 1);
462
+            if (';' !== $last_char && '}' !== $last_char) {
463 463
                 $filecontent .= ';';
464 464
             }
465 465
             // Check if try/catch should be used.
466
-            $opt_js_try_catch = $conf->get( 'autoptimize_js_trycatch' );
467
-            if ( 'on' === $opt_js_try_catch ) {
466
+            $opt_js_try_catch = $conf->get('autoptimize_js_trycatch');
467
+            if ('on' === $opt_js_try_catch) {
468 468
                 // It should, wrap in try/catch.
469
-                $filecontent = 'try{' . $filecontent . '}catch(e){}';
469
+                $filecontent = 'try{'.$filecontent.'}catch(e){}';
470 470
             }
471
-        } elseif ( $is_css_file ) {
472
-            $filecontent = autoptimizeStyles::fixurls( $filepath, $filecontent );
471
+        } elseif ($is_css_file) {
472
+            $filecontent = autoptimizeStyles::fixurls($filepath, $filecontent);
473 473
         } else {
474 474
             $filecontent = '';
475 475
         }
476 476
 
477 477
         // Return modified (or empty!) code/content.
478
-        return "\n" . $filecontent;
478
+        return "\n".$filecontent;
479 479
     }
480 480
 
481 481
     /**
@@ -485,13 +485,13 @@  discard block
 block discarded – undo
485 485
      *
486 486
      * @return string
487 487
      */
488
-    protected function inject_minified( $in )
488
+    protected function inject_minified($in)
489 489
     {
490 490
         $out = $in;
491
-        if ( false !== strpos( $in, '%%INJECTLATER%%' ) ) {
491
+        if (false !== strpos($in, '%%INJECTLATER%%')) {
492 492
             $out = preg_replace_callback(
493
-                '#\/\*\!%%INJECTLATER' . AUTOPTIMIZE_HASH . '%%(.*?)%%INJECTLATER%%\*\/#is',
494
-                array( $this, 'inject_minified_callback' ),
493
+                '#\/\*\!%%INJECTLATER'.AUTOPTIMIZE_HASH.'%%(.*?)%%INJECTLATER%%\*\/#is',
494
+                array($this, 'inject_minified_callback'),
495 495
                 $in
496 496
             );
497 497
         }
@@ -511,9 +511,9 @@  discard block
 block discarded – undo
511 511
      *
512 512
      * @return string
513 513
      */
514
-    public static function build_injectlater_marker( $filepath, $hash )
514
+    public static function build_injectlater_marker($filepath, $hash)
515 515
     {
516
-        $contents = '/*!' . self::build_marker( 'INJECTLATER', $filepath, $hash ) . '*/';
516
+        $contents = '/*!'.self::build_marker('INJECTLATER', $filepath, $hash).'*/';
517 517
 
518 518
         return $contents;
519 519
     }
@@ -531,18 +531,18 @@  discard block
 block discarded – undo
531 531
      *
532 532
      * @return string
533 533
      */
534
-    public static function build_marker( $name, $data, $hash = null )
534
+    public static function build_marker($name, $data, $hash = null)
535 535
     {
536 536
         // Start the marker, add the data.
537
-        $marker = '%%' . $name . AUTOPTIMIZE_HASH . '%%' . base64_encode( $data );
537
+        $marker = '%%'.$name.AUTOPTIMIZE_HASH.'%%'.base64_encode($data);
538 538
 
539 539
         // Add the hash if provided.
540
-        if ( null !== $hash ) {
541
-            $marker .= '|' . $hash;
540
+        if (null !== $hash) {
541
+            $marker .= '|'.$hash;
542 542
         }
543 543
 
544 544
         // Close the marker.
545
-        $marker .= '%%' . $name . '%%';
545
+        $marker .= '%%'.$name.'%%';
546 546
 
547 547
         return $marker;
548 548
     }
@@ -562,22 +562,22 @@  discard block
 block discarded – undo
562 562
      *
563 563
      * @return string
564 564
      */
565
-    public static function replace_contents_with_marker_if_exists( $marker, $search, $re_replace_pattern, $content )
565
+    public static function replace_contents_with_marker_if_exists($marker, $search, $re_replace_pattern, $content)
566 566
     {
567 567
         $found = false;
568 568
 
569
-        $is_regex = autoptimizeUtils::str_is_valid_regex( $search );
570
-        if ( $is_regex ) {
571
-            $found = preg_match( $search, $content );
569
+        $is_regex = autoptimizeUtils::str_is_valid_regex($search);
570
+        if ($is_regex) {
571
+            $found = preg_match($search, $content);
572 572
         } else {
573
-            $found = ( false !== strpos( $content, $search ) );
573
+            $found = (false !== strpos($content, $search));
574 574
         }
575 575
 
576
-        if ( $found ) {
576
+        if ($found) {
577 577
             $content = preg_replace_callback(
578 578
                 $re_replace_pattern,
579
-                function( $matches ) use ( $marker ) {
580
-                    return autoptimizeBase::build_marker( $marker, $matches[0] );
579
+                function($matches) use ($marker) {
580
+                    return autoptimizeBase::build_marker($marker, $matches[0]);
581 581
                 },
582 582
                 $content
583 583
             );
@@ -594,13 +594,13 @@  discard block
 block discarded – undo
594 594
      *
595 595
      * @return string
596 596
      */
597
-    public static function restore_marked_content( $marker, $content )
597
+    public static function restore_marked_content($marker, $content)
598 598
     {
599
-        if ( false !== strpos( $content, $marker ) ) {
599
+        if (false !== strpos($content, $marker)) {
600 600
             $content = preg_replace_callback(
601
-                '#%%' . $marker . AUTOPTIMIZE_HASH . '%%(.*?)%%' . $marker . '%%#is',
602
-                function ( $matches ) {
603
-                    return base64_decode( $matches[1] );
601
+                '#%%'.$marker.AUTOPTIMIZE_HASH.'%%(.*?)%%'.$marker.'%%#is',
602
+                function($matches) {
603
+                    return base64_decode($matches[1]);
604 604
                 },
605 605
                 $content
606 606
             );
@@ -616,17 +616,17 @@  discard block
 block discarded – undo
616 616
      *
617 617
      * @return void
618 618
      */
619
-    protected function debug_log( $data )
619
+    protected function debug_log($data)
620 620
     {
621
-        if ( ! isset( $this->debug_log ) || ! $this->debug_log ) {
621
+        if (!isset($this->debug_log) || !$this->debug_log) {
622 622
             return;
623 623
         }
624 624
 
625
-        if ( ! is_string( $data ) && ! is_resource( $data ) ) {
626
-            $data = var_export( $data, true );
625
+        if (!is_string($data) && !is_resource($data)) {
626
+            $data = var_export($data, true);
627 627
         }
628 628
 
629
-        error_log( $data );
629
+        error_log($data);
630 630
     }
631 631
 
632 632
     /**
@@ -636,12 +636,12 @@  discard block
 block discarded – undo
636 636
      *
637 637
      * @return bool|string to be minified code or false.
638 638
      */
639
-    protected function prepare_minify_single( $filepath )
639
+    protected function prepare_minify_single($filepath)
640 640
     {
641 641
         // Decide what we're dealing with, return false if we don't know.
642
-        if ( $this->str_ends_in( $filepath, '.js' ) ) {
642
+        if ($this->str_ends_in($filepath, '.js')) {
643 643
             $type = 'js';
644
-        } elseif ( $this->str_ends_in( $filepath, '.css' ) ) {
644
+        } elseif ($this->str_ends_in($filepath, '.css')) {
645 645
             $type = 'css';
646 646
         } else {
647 647
             return false;
@@ -650,18 +650,18 @@  discard block
 block discarded – undo
650 650
         // Bail if it looks like its already minifed (by having -min or .min
651 651
         // in filename) or if it looks like WP jquery.js (which is minified).
652 652
         $minified_variants = array(
653
-            '-min.' . $type,
654
-            '.min.' . $type,
653
+            '-min.'.$type,
654
+            '.min.'.$type,
655 655
             'js/jquery/jquery.js',
656 656
         );
657
-        foreach ( $minified_variants as $ending ) {
658
-            if ( $this->str_ends_in( $filepath, $ending ) ) {
657
+        foreach ($minified_variants as $ending) {
658
+            if ($this->str_ends_in($filepath, $ending)) {
659 659
                 return false;
660 660
             }
661 661
         }
662 662
 
663 663
         // Get file contents, bail if empty.
664
-        $contents = file_get_contents( $filepath );
664
+        $contents = file_get_contents($filepath);
665 665
 
666 666
         return $contents;
667 667
     }
@@ -674,12 +674,12 @@  discard block
 block discarded – undo
674 674
      *
675 675
      * @return string
676 676
      */
677
-    protected function build_minify_single_url( autoptimizeCache $cache )
677
+    protected function build_minify_single_url(autoptimizeCache $cache)
678 678
     {
679
-        $url = AUTOPTIMIZE_CACHE_URL . $cache->getname();
679
+        $url = AUTOPTIMIZE_CACHE_URL.$cache->getname();
680 680
 
681 681
         // CDN-replace the resulting URL if needed...
682
-        $url = $this->url_replace_cdn( $url );
682
+        $url = $this->url_replace_cdn($url);
683 683
 
684 684
         return $url;
685 685
     }
@@ -692,15 +692,15 @@  discard block
 block discarded – undo
692 692
      *
693 693
      * @return bool
694 694
      */
695
-    protected function str_ends_in( $str, $test )
695
+    protected function str_ends_in($str, $test)
696 696
     {
697 697
         // @codingStandardsIgnoreStart
698 698
         // substr_compare() is bugged on 5.5.11: https://3v4l.org/qGYBH
699 699
         // return ( 0 === substr_compare( $str, $test, -strlen( $test ) ) );
700 700
         // @codingStandardsIgnoreEnd
701 701
 
702
-        $length = strlen( $test );
702
+        $length = strlen($test);
703 703
 
704
-        return ( substr( $str, -$length, $length ) === $test );
704
+        return (substr($str, -$length, $length) === $test);
705 705
     }
706 706
 }
Please login to merge, or discard this patch.