Completed
Push — master ( 471c26...e80620 )
by frank
01:49
created
php/persist-admin-notices-dismissal/persist-admin-notices-dismissal.php 2 patches
Indentation   +122 added lines, -122 removed lines patch added patch discarded remove patch
@@ -29,131 +29,131 @@
 block discarded – undo
29 29
  * Exit if called directly.
30 30
  */
31 31
 if ( ! defined( 'ABSPATH' ) ) {
32
-	die;
32
+    die;
33 33
 }
34 34
 
35 35
 if ( ! class_exists( 'PAnD' ) ) {
36 36
 
37
-	/**
38
-	 * Class PAnD
39
-	 */
40
-	class PAnD {
41
-
42
-		/**
43
-		 * Init hooks.
44
-		 */
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' ) );
48
-		}
49
-
50
-		/**
51
-		 * Enqueue javascript and variables.
52
-		 */
53
-		public static function load_script() {
54
-
55
-			if ( is_customize_preview() ) {
56
-				return;
57
-			}
58
-
59
-			wp_enqueue_script(
60
-				'dismissible-notices',
61
-				plugins_url( 'dismiss-notice.js', __FILE__ ),
62
-				array( 'jquery', 'common' ),
63
-				false,
64
-				true
65
-			);
66
-
67
-			wp_localize_script(
68
-				'dismissible-notices',
69
-				'dismissible_notice',
70
-				array(
71
-					'nonce' => wp_create_nonce( 'dismissible-notice' ),
72
-				)
73
-			);
74
-		}
75
-
76
-		/**
77
-		 * Handles Ajax request to persist notices dismissal.
78
-		 * Uses check_ajax_referer to verify nonce.
79
-		 */
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'] );
83
-
84
-			if ( 'forever' != $dismissible_length ) {
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' );
88
-			}
89
-
90
-			check_ajax_referer( 'dismissible-notice', 'nonce' );
91
-			self::set_admin_notice_cache( $option_name, $dismissible_length );
92
-			wp_die();
93
-		}
94
-
95
-		/**
96
-		 * Is admin notice active?
97
-		 *
98
-		 * @param string $arg data-dismissible content of notice.
99
-		 *
100
-		 * @return bool
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 ) {
108
-				return false;
109
-			} elseif ( absint( $db_record ) >= time() ) {
110
-				return false;
111
-			} else {
112
-				return true;
113
-			}
114
-		}
115
-
116
-		/**
117
-		 * Returns admin notice cached timeout.
118
-		 *
119
-		 * @access public
120
-		 *
121
-		 * @param string|bool $id admin notice name or false.
122
-		 *
123
-		 * @return array|bool The timeout. False if expired.
124
-		 */
125
-		public static function get_admin_notice_cache( $id = false ) {
126
-			if ( ! $id ) {
127
-				return false;
128
-			}
129
-			$cache_key = 'pand-' . md5( $id );
130
-			$timeout   = get_site_option( $cache_key );
131
-			$timeout   = 'forever' === $timeout ? time() + 60 : $timeout;
132
-
133
-			if ( empty( $timeout ) || time() > $timeout ) {
134
-				return false;
135
-			}
136
-
137
-			return $timeout;
138
-		}
139
-
140
-		/**
141
-		 * Sets admin notice timeout in site option.
142
-		 *
143
-		 * @access public
144
-		 *
145
-		 * @param string      $id       Data Identifier.
146
-		 * @param string|bool $timeout  Timeout for admin notice.
147
-		 *
148
-		 * @return bool
149
-		 */
150
-		public static function set_admin_notice_cache( $id, $timeout ) {
151
-			$cache_key = 'pand-' . md5( $id );
152
-			update_site_option( $cache_key, $timeout );
153
-
154
-			return true;
155
-		}
156
-
157
-	}
37
+    /**
38
+     * Class PAnD
39
+     */
40
+    class PAnD {
41
+
42
+        /**
43
+         * Init hooks.
44
+         */
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' ) );
48
+        }
49
+
50
+        /**
51
+         * Enqueue javascript and variables.
52
+         */
53
+        public static function load_script() {
54
+
55
+            if ( is_customize_preview() ) {
56
+                return;
57
+            }
58
+
59
+            wp_enqueue_script(
60
+                'dismissible-notices',
61
+                plugins_url( 'dismiss-notice.js', __FILE__ ),
62
+                array( 'jquery', 'common' ),
63
+                false,
64
+                true
65
+            );
66
+
67
+            wp_localize_script(
68
+                'dismissible-notices',
69
+                'dismissible_notice',
70
+                array(
71
+                    'nonce' => wp_create_nonce( 'dismissible-notice' ),
72
+                )
73
+            );
74
+        }
75
+
76
+        /**
77
+         * Handles Ajax request to persist notices dismissal.
78
+         * Uses check_ajax_referer to verify nonce.
79
+         */
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'] );
83
+
84
+            if ( 'forever' != $dismissible_length ) {
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' );
88
+            }
89
+
90
+            check_ajax_referer( 'dismissible-notice', 'nonce' );
91
+            self::set_admin_notice_cache( $option_name, $dismissible_length );
92
+            wp_die();
93
+        }
94
+
95
+        /**
96
+         * Is admin notice active?
97
+         *
98
+         * @param string $arg data-dismissible content of notice.
99
+         *
100
+         * @return bool
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 ) {
108
+                return false;
109
+            } elseif ( absint( $db_record ) >= time() ) {
110
+                return false;
111
+            } else {
112
+                return true;
113
+            }
114
+        }
115
+
116
+        /**
117
+         * Returns admin notice cached timeout.
118
+         *
119
+         * @access public
120
+         *
121
+         * @param string|bool $id admin notice name or false.
122
+         *
123
+         * @return array|bool The timeout. False if expired.
124
+         */
125
+        public static function get_admin_notice_cache( $id = false ) {
126
+            if ( ! $id ) {
127
+                return false;
128
+            }
129
+            $cache_key = 'pand-' . md5( $id );
130
+            $timeout   = get_site_option( $cache_key );
131
+            $timeout   = 'forever' === $timeout ? time() + 60 : $timeout;
132
+
133
+            if ( empty( $timeout ) || time() > $timeout ) {
134
+                return false;
135
+            }
136
+
137
+            return $timeout;
138
+        }
139
+
140
+        /**
141
+         * Sets admin notice timeout in site option.
142
+         *
143
+         * @access public
144
+         *
145
+         * @param string      $id       Data Identifier.
146
+         * @param string|bool $timeout  Timeout for admin notice.
147
+         *
148
+         * @return bool
149
+         */
150
+        public static function set_admin_notice_cache( $id, $timeout ) {
151
+            $cache_key = 'pand-' . md5( $id );
152
+            update_site_option( $cache_key, $timeout );
153
+
154
+            return true;
155
+        }
156
+
157
+    }
158 158
 
159 159
 }
Please login to merge, or discard this 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/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.
classes/autoptimizeConfig.php 3 patches
Doc Comments   +6 added lines patch added patch discarded remove patch
@@ -798,6 +798,9 @@  discard block
 block discarded – undo
798 798
         return $preload_onload;
799 799
     }
800 800
 
801
+    /**
802
+     * @param string $key
803
+     */
801 804
     public function get( $key )
802 805
     {
803 806
         if ( ! is_array( $this->config ) ) {
@@ -824,6 +827,9 @@  discard block
 block discarded – undo
824 827
         return false;
825 828
     }
826 829
 
830
+    /**
831
+     * @param string $url
832
+     */
827 833
     private function get_futtta_feeds( $url ) {
828 834
         if ( $this->settings_screen_do_remote_http ) {
829 835
             $rss      = fetch_feed( $url );
Please login to merge, or discard this patch.
Braces   +5 added lines, -2 removed lines patch added patch discarded remove patch
@@ -837,10 +837,13 @@
 block discarded – undo
837 837
             <ul>
838 838
                 <?php if ( 0 == $maxitems ) : ?>
839 839
                     <li><?php _e( 'No items', 'autoptimize' ); ?></li>
840
-                <?php else : ?>
840
+                <?php else {
841
+    : ?>
841 842
                     <?php foreach ( $rss_items as $item ) : ?>
842 843
                         <li>
843
-                            <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
844
+                            <a href="<?php echo esc_url( $item->get_permalink() );
845
+}
846
+?>"
844 847
                                 <?php // translators: the variable contains a date. ?>
845 848
                                 title="<?php printf( __( 'Posted %s', 'autoptimize' ), $item->get_date( 'j F Y | g:i a' ) ); ?>">
846 849
                                 <?php echo esc_html( $item->get_title() ); ?>
Please login to merge, or discard this patch.
Spacing   +225 added lines, -225 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Main configuration logic.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -35,33 +35,33 @@  discard block
 block discarded – undo
35 35
      */
36 36
     private function __construct()
37 37
     {
38
-        if ( is_admin() ) {
38
+        if (is_admin()) {
39 39
             // Add the admin page and settings.
40
-            if ( autoptimizeOptionWrapper::is_ao_active_for_network() ) {
41
-                add_action( 'network_admin_menu', array( $this, 'addmenu' ) );
40
+            if (autoptimizeOptionWrapper::is_ao_active_for_network()) {
41
+                add_action('network_admin_menu', array($this, 'addmenu'));
42 42
             }
43 43
 
44
-            add_action( 'admin_menu', array( $this, 'addmenu' ) );
45
-            add_action( 'admin_init', array( $this, 'registersettings' ) );
46
-            add_action( 'admin_init', array( 'PAnD', 'init' ) );
44
+            add_action('admin_menu', array($this, 'addmenu'));
45
+            add_action('admin_init', array($this, 'registersettings'));
46
+            add_action('admin_init', array('PAnD', 'init'));
47 47
 
48 48
             // Set meta info.
49
-            if ( function_exists( 'plugin_row_meta' ) ) {
49
+            if (function_exists('plugin_row_meta')) {
50 50
                 // 2.8 and higher.
51
-                add_filter( 'plugin_row_meta', array( $this, 'setmeta' ), 10, 2 );
52
-            } elseif ( function_exists( 'post_class' ) ) {
51
+                add_filter('plugin_row_meta', array($this, 'setmeta'), 10, 2);
52
+            } elseif (function_exists('post_class')) {
53 53
                 // 2.7 and lower.
54
-                $plugin = plugin_basename( AUTOPTIMIZE_PLUGIN_DIR . 'autoptimize.php' );
55
-                add_filter( 'plugin_action_links_' . $plugin, array( $this, 'setmeta' ) );
54
+                $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php');
55
+                add_filter('plugin_action_links_'.$plugin, array($this, 'setmeta'));
56 56
             }
57 57
 
58 58
             // Clean cache?
59
-            if ( autoptimizeOptionWrapper::get_option( 'autoptimize_cache_clean' ) ) {
59
+            if (autoptimizeOptionWrapper::get_option('autoptimize_cache_clean')) {
60 60
                 autoptimizeCache::clearall();
61
-                autoptimizeOptionWrapper::update_option( 'autoptimize_cache_clean', 0 );
61
+                autoptimizeOptionWrapper::update_option('autoptimize_cache_clean', 0);
62 62
             }
63 63
 
64
-            $this->settings_screen_do_remote_http = apply_filters( 'autoptimize_settingsscreen_remotehttp', $this->settings_screen_do_remote_http );
64
+            $this->settings_screen_do_remote_http = apply_filters('autoptimize_settingsscreen_remotehttp', $this->settings_screen_do_remote_http);
65 65
         }
66 66
 
67 67
         // Adds the Autoptimize Toolbar to the Admin bar.
@@ -77,7 +77,7 @@  discard block
 block discarded – undo
77 77
     static public function instance()
78 78
     {
79 79
         // Only one instance.
80
-        if ( null === self::$instance ) {
80
+        if (null === self::$instance) {
81 81
             self::$instance = new autoptimizeConfig();
82 82
         }
83 83
 
@@ -87,9 +87,9 @@  discard block
 block discarded – undo
87 87
     public function show_network_message() {
88 88
         ?>
89 89
         <div class="wrap">
90
-            <h1><?php _e( 'Autoptimize Settings', 'autoptimize' ); ?></h1>
90
+            <h1><?php _e('Autoptimize Settings', 'autoptimize'); ?></h1>
91 91
             <?php echo $this->ao_admin_tabs(); ?>
92
-            <p style="font-size:120%;"><?php echo apply_filters( 'autoptimize_filter_settingsscreen_multisite_network_message', __( 'Autoptimize is enabled and configured on a WordPress network level. Please contact your network administrator if you need Autoptimize settings changed.', 'autoptimize' ) ); ?></p>
92
+            <p style="font-size:120%;"><?php echo apply_filters('autoptimize_filter_settingsscreen_multisite_network_message', __('Autoptimize is enabled and configured on a WordPress network level. Please contact your network administrator if you need Autoptimize settings changed.', 'autoptimize')); ?></p>
93 93
         </div>
94 94
         <?php
95 95
     }
@@ -184,32 +184,32 @@  discard block
 block discarded – undo
184 184
 <div class="wrap">
185 185
 
186 186
 <!-- Temporary nudge to disable aoccss power-up. -->
187
-<?php if ( autoptimizeUtils::is_plugin_active( 'autoptimize-criticalcss/ao_criticss_aas.php' ) ) { ?>
187
+<?php if (autoptimizeUtils::is_plugin_active('autoptimize-criticalcss/ao_criticss_aas.php')) { ?>
188 188
     <div class="notice-info notice"><p>
189
-        <?php _e( 'Autoptimize now includes the criticalcss.com integration that was previously part of the separate power-up. If you want you can simply disable the power-up and Autoptimize will take over immediately.', 'autoptimize' ); ?>
189
+        <?php _e('Autoptimize now includes the criticalcss.com integration that was previously part of the separate power-up. If you want you can simply disable the power-up and Autoptimize will take over immediately.', 'autoptimize'); ?>
190 190
     </p></div>
191 191
 <?php } ?>
192 192
 
193 193
 <div id="autoptimize_main">
194
-    <h1 id="ao_title"><?php _e( 'Autoptimize Settings', 'autoptimize' ); ?></h1>
194
+    <h1 id="ao_title"><?php _e('Autoptimize Settings', 'autoptimize'); ?></h1>
195 195
     <?php echo $this->ao_admin_tabs(); ?>
196 196
 
197
-<form method="post" action="<?php echo admin_url( 'options.php' ); ?>">
198
-<?php settings_fields( 'autoptimize' ); ?>
197
+<form method="post" action="<?php echo admin_url('options.php'); ?>">
198
+<?php settings_fields('autoptimize'); ?>
199 199
 
200 200
 <ul>
201 201
 
202 202
 <?php
203 203
 // Only show enable site configuration in network site option.
204
-if ( is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network() ) {
204
+if (is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network()) {
205 205
 ?>
206 206
     <li class="itemDetail multiSite">
207
-        <h2 class="itemTitle"><?php _e( 'Multisite Options', 'autoptimize' ); ?></h2>
207
+        <h2 class="itemTitle"><?php _e('Multisite Options', 'autoptimize'); ?></h2>
208 208
         <table class="form-table">
209 209
             <tr valign="top">
210
-                <th scope="row"><?php _e( 'Enable site configuration?', 'autoptimize' ); ?></th>
211
-                <td><label class="cb_label"><input type="checkbox" id="autoptimize_enable_site_config" name="autoptimize_enable_site_config" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_enable_site_config' ) ? 'checked="checked" ' : ''; ?>/>
212
-                <?php _e( 'Enable Autoptimize configuration per site.', 'autoptimize' ); ?></label></td>
210
+                <th scope="row"><?php _e('Enable site configuration?', 'autoptimize'); ?></th>
211
+                <td><label class="cb_label"><input type="checkbox" id="autoptimize_enable_site_config" name="autoptimize_enable_site_config" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_enable_site_config') ? 'checked="checked" ' : ''; ?>/>
212
+                <?php _e('Enable Autoptimize configuration per site.', 'autoptimize'); ?></label></td>
213 213
             </tr>
214 214
         </table>
215 215
     </li>
@@ -218,120 +218,120 @@  discard block
 block discarded – undo
218 218
 <?php } ?>    
219 219
 
220 220
 <li class="itemDetail">
221
-<h2 class="itemTitle"><?php _e( 'JavaScript Options', 'autoptimize' ); ?></h2>
221
+<h2 class="itemTitle"><?php _e('JavaScript Options', 'autoptimize'); ?></h2>
222 222
 <table class="form-table">
223 223
 <tr valign="top">
224
-<th scope="row"><?php _e( 'Optimize JavaScript Code?', 'autoptimize' ); ?></th>
225
-<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_js' ) ? 'checked="checked" ' : ''; ?>/></td>
224
+<th scope="row"><?php _e('Optimize JavaScript Code?', 'autoptimize'); ?></th>
225
+<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_js') ? 'checked="checked" ' : ''; ?>/></td>
226 226
 </tr>
227 227
 <tr valign="top" class="js_sub js_aggregate_master">
228
-<th scope="row"><?php _e( 'Aggregate JS-files?', 'autoptimize' ); ?></th>
229
-<td><label class="cb_label"><input type="checkbox" id="autoptimize_js_aggregate" name="autoptimize_js_aggregate" <?php echo $conf->get( 'autoptimize_js_aggregate' ) ? 'checked="checked" ' : ''; ?>/>
230
-<?php _e( 'Aggregate all linked JS-files to have them loaded non-render blocking? If this option is off, the individual JS-files will remain in place but will be minified.', 'autoptimize' ); ?></label></td>
228
+<th scope="row"><?php _e('Aggregate JS-files?', 'autoptimize'); ?></th>
229
+<td><label class="cb_label"><input type="checkbox" id="autoptimize_js_aggregate" name="autoptimize_js_aggregate" <?php echo $conf->get('autoptimize_js_aggregate') ? 'checked="checked" ' : ''; ?>/>
230
+<?php _e('Aggregate all linked JS-files to have them loaded non-render blocking? If this option is off, the individual JS-files will remain in place but will be minified.', 'autoptimize'); ?></label></td>
231 231
 </tr>
232 232
 <tr valign="top" class="js_sub js_not_aggregate">
233
-<th scope="row"><?php _e( 'Do not aggregate but defer?', 'autoptimize' ); ?></th>
234
-<td><label class="cb_label"><input type="checkbox" id="autoptimize_js_defer_not_aggregate" name="autoptimize_js_defer_not_aggregate" <?php echo $conf->get( 'autoptimize_js_defer_not_aggregate' ) ? 'checked="checked" ' : ''; ?>/>
235
-<?php _e( 'When JS is not aggregated, all linked JS-files can be deferred instead, making them non-render-blocking.', 'autoptimize' ); ?></label></td>
233
+<th scope="row"><?php _e('Do not aggregate but defer?', 'autoptimize'); ?></th>
234
+<td><label class="cb_label"><input type="checkbox" id="autoptimize_js_defer_not_aggregate" name="autoptimize_js_defer_not_aggregate" <?php echo $conf->get('autoptimize_js_defer_not_aggregate') ? 'checked="checked" ' : ''; ?>/>
235
+<?php _e('When JS is not aggregated, all linked JS-files can be deferred instead, making them non-render-blocking.', 'autoptimize'); ?></label></td>
236 236
 </tr>
237 237
 <tr valign="top" class="js_sub js_aggregate">
238
-<th scope="row"><?php _e( 'Also aggregate inline JS?', 'autoptimize' ); ?></th>
239
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_js_include_inline' ) ? 'checked="checked" ' : ''; ?>/>
240
-<?php _e( 'Let Autoptimize also extract JS from the HTML. <strong>Warning</strong>: this can make Autoptimize\'s cache size grow quickly, so only enable this if you know what you\'re doing.', 'autoptimize' ); ?></label></td>
238
+<th scope="row"><?php _e('Also aggregate inline JS?', 'autoptimize'); ?></th>
239
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_js_include_inline') ? 'checked="checked" ' : ''; ?>/>
240
+<?php _e('Let Autoptimize also extract JS from the HTML. <strong>Warning</strong>: this can make Autoptimize\'s cache size grow quickly, so only enable this if you know what you\'re doing.', 'autoptimize'); ?></label></td>
241 241
 </tr>
242 242
 <tr valign="top" class="js_sub js_aggregate">
243
-<th scope="row"><?php _e( 'Force JavaScript in &lt;head&gt;?', 'autoptimize' ); ?></th>
244
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_js_forcehead' ) ? 'checked="checked" ' : ''; ?>/>
245
-<?php _e( 'Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.', 'autoptimize' ); ?></label></td>
243
+<th scope="row"><?php _e('Force JavaScript in &lt;head&gt;?', 'autoptimize'); ?></th>
244
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_js_forcehead') ? 'checked="checked" ' : ''; ?>/>
245
+<?php _e('Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.', 'autoptimize'); ?></label></td>
246 246
 </tr>
247
-<?php if ( autoptimizeOptionWrapper::get_option( 'autoptimize_js_justhead' ) ) { ?>
247
+<?php if (autoptimizeOptionWrapper::get_option('autoptimize_js_justhead')) { ?>
248 248
 <tr valign="top" class="js_sub js_aggregate">
249 249
 <th scope="row">
250 250
 <?php
251
-    _e( 'Look for scripts only in &lt;head&gt;?', 'autoptimize' );
252
-    echo ' <i>' . __( '(deprecated)', 'autoptimize' ) . '</i>';
251
+    _e('Look for scripts only in &lt;head&gt;?', 'autoptimize');
252
+    echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>';
253 253
 ?>
254 254
 </th>
255
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_js_justhead' ) ? 'checked="checked" ' : ''; ?>/>
256
-<?php _e( 'Mostly useful in combination with previous option when using jQuery-based templates, but might help keeping cache size under control.', 'autoptimize' ); ?></label></td>
255
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_js_justhead') ? 'checked="checked" ' : ''; ?>/>
256
+<?php _e('Mostly useful in combination with previous option when using jQuery-based templates, but might help keeping cache size under control.', 'autoptimize'); ?></label></td>
257 257
 </tr>
258 258
 <?php } ?>
259 259
 <tr valign="top" class="js_sub">
260
-<th scope="row"><?php _e( 'Exclude scripts from Autoptimize:', 'autoptimize' ); ?></th>
261
-<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo esc_attr( autoptimizeOptionWrapper::get_option( 'autoptimize_js_exclude', 'wp-includes/js/dist/, wp-includes/js/tinymce/, js/jquery/jquery.js, js/jquery/jquery.min.js' ) ); ?>"/><br />
260
+<th scope="row"><?php _e('Exclude scripts from Autoptimize:', 'autoptimize'); ?></th>
261
+<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo esc_attr(autoptimizeOptionWrapper::get_option('autoptimize_js_exclude', 'wp-includes/js/dist/, wp-includes/js/tinymce/, js/jquery/jquery.js, js/jquery/jquery.min.js')); ?>"/><br />
262 262
 <?php
263
-echo __( 'A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated by Autoptimize.', 'autoptimize' ) . ' ' . __( 'Important: excluded non-minified files are still minified by Autoptimize unless that option under "misc" is disabled.', 'autoptimize' );
263
+echo __('A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated by Autoptimize.', 'autoptimize').' '.__('Important: excluded non-minified files are still minified by Autoptimize unless that option under "misc" is disabled.', 'autoptimize');
264 264
 ?>
265 265
 </label></td>
266 266
 </tr>
267 267
 <tr valign="top" class="js_sub js_aggregate">
268
-<th scope="row"><?php _e( 'Add try-catch wrapping?', 'autoptimize' ); ?></th>
269
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_js_trycatch' ) ? 'checked="checked" ' : ''; ?>/>
270
-<?php _e( 'If your scripts break because of a JS-error, you might want to try this.', 'autoptimize' ); ?></label></td>
268
+<th scope="row"><?php _e('Add try-catch wrapping?', 'autoptimize'); ?></th>
269
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_js_trycatch') ? 'checked="checked" ' : ''; ?>/>
270
+<?php _e('If your scripts break because of a JS-error, you might want to try this.', 'autoptimize'); ?></label></td>
271 271
 </tr>
272 272
 </table>
273 273
 </li>
274 274
 
275 275
 <li class="itemDetail">
276
-<h2 class="itemTitle"><?php _e( 'CSS Options', 'autoptimize' ); ?></h2>
276
+<h2 class="itemTitle"><?php _e('CSS Options', 'autoptimize'); ?></h2>
277 277
 <table class="form-table">
278 278
 <tr valign="top">
279
-<th scope="row"><?php _e( 'Optimize CSS Code?', 'autoptimize' ); ?></th>
280
-<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css' ) ? 'checked="checked" ' : ''; ?>/></td>
279
+<th scope="row"><?php _e('Optimize CSS Code?', 'autoptimize'); ?></th>
280
+<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css') ? 'checked="checked" ' : ''; ?>/></td>
281 281
 </tr>
282 282
 <tr class="css_sub" valign="top">
283
-<th scope="row"><?php _e( 'Aggregate CSS-files?', 'autoptimize' ); ?></th>
284
-<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_aggregate" name="autoptimize_css_aggregate" <?php echo $conf->get( 'autoptimize_css_aggregate' ) ? 'checked="checked" ' : ''; ?>/>
285
-<?php _e( 'Aggregate all linked CSS-files? If this option is off, the individual CSS-files will remain in place but will be minified.', 'autoptimize' ); ?></label></td>
283
+<th scope="row"><?php _e('Aggregate CSS-files?', 'autoptimize'); ?></th>
284
+<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_aggregate" name="autoptimize_css_aggregate" <?php echo $conf->get('autoptimize_css_aggregate') ? 'checked="checked" ' : ''; ?>/>
285
+<?php _e('Aggregate all linked CSS-files? If this option is off, the individual CSS-files will remain in place but will be minified.', 'autoptimize'); ?></label></td>
286 286
 </tr>
287 287
 <tr valign="top" class="css_sub css_aggregate">
288
-<th scope="row"><?php _e( 'Also aggregate inline CSS?', 'autoptimize' ); ?></th>
289
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css_include_inline', '1' ) ? 'checked="checked" ' : ''; ?>/>
290
-<?php _e( 'Check this option for Autoptimize to also aggregate CSS in the HTML.', 'autoptimize' ); ?></label></td>
288
+<th scope="row"><?php _e('Also aggregate inline CSS?', 'autoptimize'); ?></th>
289
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css_include_inline', '1') ? 'checked="checked" ' : ''; ?>/>
290
+<?php _e('Check this option for Autoptimize to also aggregate CSS in the HTML.', 'autoptimize'); ?></label></td>
291 291
 </tr>
292 292
 <tr class="css_sub css_aggregate" valign="top">
293
-<th scope="row"><?php _e( 'Generate data: URIs for images?', 'autoptimize' ); ?></th>
294
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css_datauris' ) ? 'checked="checked" ' : ''; ?>/>
295
-<?php _e( 'Enable this to include small background-images in the CSS itself instead of as separate downloads.', 'autoptimize' ); ?></label></td>
293
+<th scope="row"><?php _e('Generate data: URIs for images?', 'autoptimize'); ?></th>
294
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css_datauris') ? 'checked="checked" ' : ''; ?>/>
295
+<?php _e('Enable this to include small background-images in the CSS itself instead of as separate downloads.', 'autoptimize'); ?></label></td>
296 296
 </tr>
297
-<?php if ( autoptimizeOptionWrapper::get_option( 'autoptimize_css_justhead' ) ) { ?>
297
+<?php if (autoptimizeOptionWrapper::get_option('autoptimize_css_justhead')) { ?>
298 298
 <tr valign="top" class="css_sub css_aggregate">
299 299
 <th scope="row">
300 300
 <?php
301
-_e( 'Look for styles only in &lt;head&gt;?', 'autoptimize' );
302
-echo ' <i>' . __( '(deprecated)', 'autoptimize' ) . '</i>';
301
+_e('Look for styles only in &lt;head&gt;?', 'autoptimize');
302
+echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>';
303 303
 ?>
304 304
 </th>
305
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css_justhead' ) ? 'checked="checked" ' : ''; ?>/>
306
-<?php _e( 'Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.', 'autoptimize' ); ?></label></td>
305
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css_justhead') ? 'checked="checked" ' : ''; ?>/>
306
+<?php _e('Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.', 'autoptimize'); ?></label></td>
307 307
 </tr>
308 308
 <?php } ?>
309 309
 <tr valign="top" class="css_sub">
310
-<th scope="row"><?php _e( 'Inline and Defer CSS?', 'autoptimize' ); ?></th>
311
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css_defer' ) ? 'checked="checked" ' : ''; ?>/>
310
+<th scope="row"><?php _e('Inline and Defer CSS?', 'autoptimize'); ?></th>
311
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css_defer') ? 'checked="checked" ' : ''; ?>/>
312 312
 <?php
313
-_e( 'Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="https://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> for more info.', 'autoptimize' );
313
+_e('Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="https://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> for more info.', 'autoptimize');
314 314
 echo ' ';
315
-$critcss_settings_url = get_admin_url( null, 'options-general.php?page=ao_critcss' );
315
+$critcss_settings_url = get_admin_url(null, 'options-general.php?page=ao_critcss');
316 316
 // translators: links "autoptimize critical CSS" tab.
317
-echo sprintf( __( 'This can be fully automated for different types of pages on the %s tab.', 'autoptimize' ), '<a href="' . $critcss_settings_url . '">CriticalCSS</a>' );
317
+echo sprintf(__('This can be fully automated for different types of pages on the %s tab.', 'autoptimize'), '<a href="'.$critcss_settings_url.'">CriticalCSS</a>');
318 318
 ?>
319 319
 </label></td>
320 320
 </tr>
321 321
 <tr valign="top" class="css_sub" id="autoptimize_css_defer_inline">
322 322
 <th scope="row"></th>
323
-<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e( 'Paste the above the fold CSS here. You can leave this empty when using the automated Critical CSS integration.', 'autoptimize' ); ?>" name="autoptimize_css_defer_inline"><?php echo autoptimizeStyles::sanitize_css( autoptimizeOptionWrapper::get_option( 'autoptimize_css_defer_inline' ) ); ?></textarea></label></td>
323
+<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e('Paste the above the fold CSS here. You can leave this empty when using the automated Critical CSS integration.', 'autoptimize'); ?>" name="autoptimize_css_defer_inline"><?php echo autoptimizeStyles::sanitize_css(autoptimizeOptionWrapper::get_option('autoptimize_css_defer_inline')); ?></textarea></label></td>
324 324
 </tr>
325 325
 <tr valign="top" class="css_sub css_aggregate">
326
-<th scope="row"><?php _e( 'Inline all CSS?', 'autoptimize' ); ?></th>
327
-<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_css_inline' ) ? 'checked="checked" ' : ''; ?>/>
328
-<?php _e( 'Inlining all CSS is an easy way to stop the CSS from being render-blocking, but is generally not recommended because the size of the HTML increases significantly. Additionally it might push meta-tags down to a position where e.g. Facebook and Whatsapp will not find them any more, breaking thumbnails when sharing.', 'autoptimize' ); ?></label></td>
326
+<th scope="row"><?php _e('Inline all CSS?', 'autoptimize'); ?></th>
327
+<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_css_inline') ? 'checked="checked" ' : ''; ?>/>
328
+<?php _e('Inlining all CSS is an easy way to stop the CSS from being render-blocking, but is generally not recommended because the size of the HTML increases significantly. Additionally it might push meta-tags down to a position where e.g. Facebook and Whatsapp will not find them any more, breaking thumbnails when sharing.', 'autoptimize'); ?></label></td>
329 329
 </tr>
330 330
 <tr valign="top" class="css_sub">
331
-<th scope="row"><?php _e( 'Exclude CSS from Autoptimize:', 'autoptimize' ); ?></th>
332
-<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo esc_attr( autoptimizeOptionWrapper::get_option( 'autoptimize_css_exclude', 'wp-content/cache/, wp-content/uploads/, admin-bar.min.css, dashicons.min.css' ) ); ?>"/><br />
331
+<th scope="row"><?php _e('Exclude CSS from Autoptimize:', 'autoptimize'); ?></th>
332
+<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo esc_attr(autoptimizeOptionWrapper::get_option('autoptimize_css_exclude', 'wp-content/cache/, wp-content/uploads/, admin-bar.min.css, dashicons.min.css')); ?>"/><br />
333 333
 <?php
334
-echo __( 'A comma-separated list of CSS you want to exclude from being optimized.', 'autoptimize' ) . ' ' . __( 'Important: excluded non-minified files are still minified by Autoptimize unless that option under "misc" is disabled.', 'autoptimize' );
334
+echo __('A comma-separated list of CSS you want to exclude from being optimized.', 'autoptimize').' '.__('Important: excluded non-minified files are still minified by Autoptimize unless that option under "misc" is disabled.', 'autoptimize');
335 335
 ?>
336 336
 </label></td>
337 337
 </tr>
@@ -339,55 +339,55 @@  discard block
 block discarded – undo
339 339
 </li>
340 340
 
341 341
 <li class="itemDetail">
342
-<h2 class="itemTitle"><?php _e( 'HTML Options', 'autoptimize' ); ?></h2>
342
+<h2 class="itemTitle"><?php _e('HTML Options', 'autoptimize'); ?></h2>
343 343
 <table class="form-table">
344 344
 <tr valign="top">
345
-<th scope="row"><?php _e( 'Optimize HTML Code?', 'autoptimize' ); ?></th>
346
-<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_html' ) ? 'checked="checked" ' : ''; ?>/></td>
345
+<th scope="row"><?php _e('Optimize HTML Code?', 'autoptimize'); ?></th>
346
+<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_html') ? 'checked="checked" ' : ''; ?>/></td>
347 347
 </tr>
348 348
 <tr class="html_sub" valign="top">
349
-<th scope="row"><?php _e( 'Keep HTML comments?', 'autoptimize' ); ?></th>
350
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_html_keepcomments' ) ? 'checked="checked" ' : ''; ?>/>
351
-<?php _e( 'Enable this if you want HTML comments to remain in the page.', 'autoptimize' ); ?></label></td>
349
+<th scope="row"><?php _e('Keep HTML comments?', 'autoptimize'); ?></th>
350
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_html_keepcomments') ? 'checked="checked" ' : ''; ?>/>
351
+<?php _e('Enable this if you want HTML comments to remain in the page.', 'autoptimize'); ?></label></td>
352 352
 </tr>
353 353
 </table>
354 354
 </li>
355 355
 
356 356
 <li class="itemDetail">
357
-<h2 class="itemTitle"><?php _e( 'CDN Options', 'autoptimize' ); ?></h2>
357
+<h2 class="itemTitle"><?php _e('CDN Options', 'autoptimize'); ?></h2>
358 358
 <table class="form-table">
359 359
 <tr valign="top">
360
-<th scope="row"><?php _e( 'CDN Base URL', 'autoptimize' ); ?></th>
361
-<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url( autoptimizeOptionWrapper::get_option( 'autoptimize_cdn_url', '' ), array( 'http', 'https' ) ); ?>" /><br />
362
-<?php _e( 'Enter your CDN root URL to enable CDN for Autoptimized files. The URL can be http, https or protocol-relative (e.g. <code>//cdn.example.com/</code>). This is not needed for Cloudflare.', 'autoptimize' ); ?></label></td>
360
+<th scope="row"><?php _e('CDN Base URL', 'autoptimize'); ?></th>
361
+<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url(autoptimizeOptionWrapper::get_option('autoptimize_cdn_url', ''), array('http', 'https')); ?>" /><br />
362
+<?php _e('Enter your CDN root URL to enable CDN for Autoptimized files. The URL can be http, https or protocol-relative (e.g. <code>//cdn.example.com/</code>). This is not needed for Cloudflare.', 'autoptimize'); ?></label></td>
363 363
 </tr>
364 364
 </table>
365 365
 </li>
366 366
 
367 367
 <li class="itemDetail">
368
-<h2 class="itemTitle"><?php _e( 'Cache Info', 'autoptimize' ); ?></h2>
368
+<h2 class="itemTitle"><?php _e('Cache Info', 'autoptimize'); ?></h2>
369 369
 <table class="form-table" >
370 370
 <tr valign="top" >
371
-<th scope="row"><?php _e( 'Cache folder', 'autoptimize' ); ?></th>
372
-<td><?php echo htmlentities( AUTOPTIMIZE_CACHE_DIR ); ?></td>
371
+<th scope="row"><?php _e('Cache folder', 'autoptimize'); ?></th>
372
+<td><?php echo htmlentities(AUTOPTIMIZE_CACHE_DIR); ?></td>
373 373
 </tr>
374 374
 <tr valign="top" >
375
-<th scope="row"><?php _e( 'Can we write?', 'autoptimize' ); ?></th>
376
-<td><?php echo ( autoptimizeCache::cacheavail() ? __( 'Yes', 'autoptimize' ) : __( 'No', 'autoptimize' ) ); ?></td>
375
+<th scope="row"><?php _e('Can we write?', 'autoptimize'); ?></th>
376
+<td><?php echo (autoptimizeCache::cacheavail() ? __('Yes', 'autoptimize') : __('No', 'autoptimize')); ?></td>
377 377
 </tr>
378 378
 <tr valign="top" >
379
-<th scope="row"><?php _e( 'Cached styles and scripts', 'autoptimize' ); ?></th>
379
+<th scope="row"><?php _e('Cached styles and scripts', 'autoptimize'); ?></th>
380 380
 <td>
381 381
     <?php
382 382
     $ao_stat_arr = autoptimizeCache::stats();
383
-    if ( ! empty( $ao_stat_arr ) && is_array( $ao_stat_arr ) ) {
384
-        $ao_cache_size = size_format( $ao_stat_arr[1], 2 );
383
+    if (!empty($ao_stat_arr) && is_array($ao_stat_arr)) {
384
+        $ao_cache_size = size_format($ao_stat_arr[1], 2);
385 385
         $details       = '';
386
-        if ( $ao_cache_size > 0 ) {
387
-            $details = ', ~' . $ao_cache_size . ' total';
386
+        if ($ao_cache_size > 0) {
387
+            $details = ', ~'.$ao_cache_size.' total';
388 388
         }
389 389
         // translators: Kilobytes + timestamp shown.
390
-        printf( __( '%1$s files, totalling %2$s (calculated at %3$s)', 'autoptimize' ), $ao_stat_arr[0], $ao_cache_size, date( 'H:i e', $ao_stat_arr[2] ) );
390
+        printf(__('%1$s files, totalling %2$s (calculated at %3$s)', 'autoptimize'), $ao_stat_arr[0], $ao_cache_size, date('H:i e', $ao_stat_arr[2]));
391 391
     }
392 392
     ?>
393 393
 </td>
@@ -396,41 +396,41 @@  discard block
 block discarded – undo
396 396
 </li>
397 397
 
398 398
 <li class="itemDetail">
399
-<h2 class="itemTitle"><?php _e( 'Misc Options', 'autoptimize' ); ?></h2>
399
+<h2 class="itemTitle"><?php _e('Misc Options', 'autoptimize'); ?></h2>
400 400
 <table class="form-table">
401 401
     <tr valign="top" >
402
-    <th scope="row"><?php _e( 'Save aggregated script/css as static files?', 'autoptimize' ); ?></th>
403
-    <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_cache_nogzip', '1' ) ? 'checked="checked" ' : ''; ?>/>
404
-    <?php _e( 'By default files saved are static css/js, uncheck this option if your webserver doesn\'t properly handle the compression and expiry.', 'autoptimize' ); ?></label></td>
402
+    <th scope="row"><?php _e('Save aggregated script/css as static files?', 'autoptimize'); ?></th>
403
+    <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_cache_nogzip', '1') ? 'checked="checked" ' : ''; ?>/>
404
+    <?php _e('By default files saved are static css/js, uncheck this option if your webserver doesn\'t properly handle the compression and expiry.', 'autoptimize'); ?></label></td>
405 405
     </tr>
406 406
     <?php
407 407
     $_min_excl_class = '';
408
-    if ( ! $conf->get( 'autoptimize_css_aggregate' ) && ! $conf->get( 'autoptimize_js_aggregate' ) ) {
408
+    if (!$conf->get('autoptimize_css_aggregate') && !$conf->get('autoptimize_js_aggregate')) {
409 409
         $_min_excl_class = 'hidden';
410 410
     }
411 411
     ?>
412 412
     <tr valign="top" id="min_excl_row" class="<?php echo $_min_excl_class; ?>">
413
-        <th scope="row"><?php _e( 'Minify excluded CSS and JS files?', 'autoptimize' ); ?></th>
414
-        <td><label class="cb_label"><input type="checkbox" name="autoptimize_minify_excluded" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_minify_excluded', '1' ) ? 'checked="checked" ' : ''; ?>/>
415
-        <?php _e( 'When aggregating JS or CSS, excluded files that are not minified (based on filename) are by default minified by Autoptimize despite being excluded. Uncheck this option if anything breaks despite excluding.', 'autoptimize' ); ?></label></td>
413
+        <th scope="row"><?php _e('Minify excluded CSS and JS files?', 'autoptimize'); ?></th>
414
+        <td><label class="cb_label"><input type="checkbox" name="autoptimize_minify_excluded" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_minify_excluded', '1') ? 'checked="checked" ' : ''; ?>/>
415
+        <?php _e('When aggregating JS or CSS, excluded files that are not minified (based on filename) are by default minified by Autoptimize despite being excluded. Uncheck this option if anything breaks despite excluding.', 'autoptimize'); ?></label></td>
416 416
     </tr>
417 417
     <tr valign="top">
418
-        <th scope="row"><?php _e( 'Enable 404 fallbacks?', 'autoptimize' ); ?></th>
419
-        <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_fallback" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_cache_fallback', '1' ) ? 'checked="checked" ' : ''; ?>/>
420
-        <?php _e( 'Sometimes Autoptimized JS/ CSS is referenced in cached HTML but is already removed, resulting in broken sites. With this option on, Autoptimize will try to redirect those not-found files to "fallback"-versions, keeping the page/ site somewhat intact. In some cases this will require extra web-server level configuration to ensure <code>wp-content/autoptimize_404_handler.php</code> is set to handle 404\'s in <code>wp-content/cache/autoptimize</code>.', 'autoptimize' ); ?></label></td>
418
+        <th scope="row"><?php _e('Enable 404 fallbacks?', 'autoptimize'); ?></th>
419
+        <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_fallback" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_cache_fallback', '1') ? 'checked="checked" ' : ''; ?>/>
420
+        <?php _e('Sometimes Autoptimized JS/ CSS is referenced in cached HTML but is already removed, resulting in broken sites. With this option on, Autoptimize will try to redirect those not-found files to "fallback"-versions, keeping the page/ site somewhat intact. In some cases this will require extra web-server level configuration to ensure <code>wp-content/autoptimize_404_handler.php</code> is set to handle 404\'s in <code>wp-content/cache/autoptimize</code>.', 'autoptimize'); ?></label></td>
421 421
     </tr>
422 422
     <tr valign="top">
423
-    <th scope="row"><?php _e( 'Also optimize for logged in editors/ administrators?', 'autoptimize' ); ?></th>
424
-    <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_optimize_logged', '1' ) ? 'checked="checked" ' : ''; ?>/>
425
-    <?php _e( 'By default Autoptimize is also active for logged on editors/ administrators, uncheck this option if you don\'t want Autoptimize to optimize when logged in e.g. to use a pagebuilder.', 'autoptimize' ); ?></label></td>
423
+    <th scope="row"><?php _e('Also optimize for logged in editors/ administrators?', 'autoptimize'); ?></th>
424
+    <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_optimize_logged', '1') ? 'checked="checked" ' : ''; ?>/>
425
+    <?php _e('By default Autoptimize is also active for logged on editors/ administrators, uncheck this option if you don\'t want Autoptimize to optimize when logged in e.g. to use a pagebuilder.', 'autoptimize'); ?></label></td>
426 426
     </tr>
427 427
     <?php
428
-    if ( function_exists( 'is_checkout' ) || function_exists( 'is_cart' ) || function_exists( 'edd_is_checkout' ) || function_exists( 'wpsc_is_cart' ) || function_exists( 'wpsc_is_checkout' ) ) {
428
+    if (function_exists('is_checkout') || function_exists('is_cart') || function_exists('edd_is_checkout') || function_exists('wpsc_is_cart') || function_exists('wpsc_is_checkout')) {
429 429
     ?>
430 430
     <tr valign="top" >
431
-        <th scope="row"><?php _e( 'Also optimize shop cart/ checkout?', 'autoptimize' ); ?></th>
432
-        <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_checkout" <?php echo autoptimizeOptionWrapper::get_option( 'autoptimize_optimize_checkout', '0' ) ? 'checked="checked" ' : ''; ?>/>
433
-            <?php _e( 'By default Autoptimize is also active on your shop\'s cart/ checkout, uncheck not to optimize those.', 'autoptimize' ); ?></label>
431
+        <th scope="row"><?php _e('Also optimize shop cart/ checkout?', 'autoptimize'); ?></th>
432
+        <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_checkout" <?php echo autoptimizeOptionWrapper::get_option('autoptimize_optimize_checkout', '0') ? 'checked="checked" ' : ''; ?>/>
433
+            <?php _e('By default Autoptimize is also active on your shop\'s cart/ checkout, uncheck not to optimize those.', 'autoptimize'); ?></label>
434 434
         </td>
435 435
     </tr>
436 436
     <?php } ?>
@@ -440,8 +440,8 @@  discard block
 block discarded – undo
440 440
 </ul>
441 441
 
442 442
 <p class="submit">
443
-<input type="submit" class="button-secondary" value="<?php _e( 'Save Changes', 'autoptimize' ); ?>" />
444
-<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e( 'Save Changes and Empty Cache', 'autoptimize' ); ?>" />
443
+<input type="submit" class="button-secondary" value="<?php _e('Save Changes', 'autoptimize'); ?>" />
444
+<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e('Save Changes and Empty Cache', 'autoptimize'); ?>" />
445 445
 </p>
446 446
 
447 447
 </form>
@@ -450,46 +450,46 @@  discard block
 block discarded – undo
450 450
     <div class="autoptimize_banner hidden">
451 451
     <ul>
452 452
     <?php
453
-    if ( $this->settings_screen_do_remote_http ) {
454
-        $ao_banner = get_transient( 'autoptimize_banner' );
455
-        if ( empty( $ao_banner ) ) {
456
-            $banner_resp = wp_remote_get( 'https://misc.optimizingmatters.com/autoptimize_news.html?ao_ver=' . AUTOPTIMIZE_PLUGIN_VERSION );
457
-            if ( ! is_wp_error( $banner_resp ) ) {
458
-                if ( '200' == wp_remote_retrieve_response_code( $banner_resp ) ) {
459
-                    $ao_banner = wp_kses_post( wp_remote_retrieve_body( $banner_resp ) );
460
-                    set_transient( 'autoptimize_banner', $ao_banner, WEEK_IN_SECONDS );
453
+    if ($this->settings_screen_do_remote_http) {
454
+        $ao_banner = get_transient('autoptimize_banner');
455
+        if (empty($ao_banner)) {
456
+            $banner_resp = wp_remote_get('https://misc.optimizingmatters.com/autoptimize_news.html?ao_ver='.AUTOPTIMIZE_PLUGIN_VERSION);
457
+            if (!is_wp_error($banner_resp)) {
458
+                if ('200' == wp_remote_retrieve_response_code($banner_resp)) {
459
+                    $ao_banner = wp_kses_post(wp_remote_retrieve_body($banner_resp));
460
+                    set_transient('autoptimize_banner', $ao_banner, WEEK_IN_SECONDS);
461 461
                 }
462 462
             }
463 463
         }
464 464
         echo $ao_banner;
465 465
     }
466 466
     ?>
467
-        <li><?php _e( "Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ here</a>.", 'autoptimize' ); ?></li>
468
-        <li><?php _e( 'Happy with Autoptimize?', 'autoptimize' ); ?><br /><a href="<?php echo network_admin_url(); ?>plugin-install.php?tab=search&type=author&s=optimizingmatters"><?php _e( 'Try my other plugins!', 'autoptimize' ); ?></a></li>
467
+        <li><?php _e("Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ here</a>.", 'autoptimize'); ?></li>
468
+        <li><?php _e('Happy with Autoptimize?', 'autoptimize'); ?><br /><a href="<?php echo network_admin_url(); ?>plugin-install.php?tab=search&type=author&s=optimizingmatters"><?php _e('Try my other plugins!', 'autoptimize'); ?></a></li>
469 469
     </ul>
470 470
     </div>
471 471
     <div style="margin-left:10px;margin-top:-5px;">
472 472
         <h2>
473
-            <?php _e( 'futtta about', 'autoptimize' ); ?>
473
+            <?php _e('futtta about', 'autoptimize'); ?>
474 474
             <select id="feed_dropdown" >
475
-                <option value="1"><?php _e( 'Autoptimize', 'autoptimize' ); ?></option>
476
-                <option value="2"><?php _e( 'WordPress', 'autoptimize' ); ?></option>
477
-                <option value="3"><?php _e( 'Web Technology', 'autoptimize' ); ?></option>
475
+                <option value="1"><?php _e('Autoptimize', 'autoptimize'); ?></option>
476
+                <option value="2"><?php _e('WordPress', 'autoptimize'); ?></option>
477
+                <option value="3"><?php _e('Web Technology', 'autoptimize'); ?></option>
478 478
             </select>
479 479
         </h2>
480 480
         <div id="futtta_feed">
481 481
             <div id="autoptimizefeed">
482
-                <?php $this->get_futtta_feeds( 'http://feeds.feedburner.com/futtta_autoptimize' ); ?>
482
+                <?php $this->get_futtta_feeds('http://feeds.feedburner.com/futtta_autoptimize'); ?>
483 483
             </div>
484 484
             <div id="wordpressfeed">
485
-                <?php $this->get_futtta_feeds( 'http://feeds.feedburner.com/futtta_wordpress' ); ?>
485
+                <?php $this->get_futtta_feeds('http://feeds.feedburner.com/futtta_wordpress'); ?>
486 486
             </div>
487 487
             <div id="webtechfeed">
488
-                <?php $this->get_futtta_feeds( 'http://feeds.feedburner.com/futtta_webtech' ); ?>
488
+                <?php $this->get_futtta_feeds('http://feeds.feedburner.com/futtta_webtech'); ?>
489 489
             </div>
490 490
         </div>
491 491
     </div>
492
-    <div style="float:right;margin:50px 15px;"><a href="https://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url() . '/' . plugin_basename( dirname( __FILE__ ) ) . '/external/do_not_donate_smallest.png'; ?>" title="<?php _e( 'Do not donate for this plugin!', 'autoptimize' ); ?>"></a></div>
492
+    <div style="float:right;margin:50px 15px;"><a href="https://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url().'/'.plugin_basename(dirname(__FILE__)).'/external/do_not_donate_smallest.png'; ?>" title="<?php _e('Do not donate for this plugin!', 'autoptimize'); ?>"></a></div>
493 493
 </div>
494 494
 
495 495
 <script type="text/javascript">
@@ -655,82 +655,82 @@  discard block
 block discarded – undo
655 655
 
656 656
     public function addmenu()
657 657
     {
658
-        if ( is_multisite() && is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network() ) {
658
+        if (is_multisite() && is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network()) {
659 659
             // multisite, network admin, ao network activated: add normal settings page at network level.
660
-            $hook = add_submenu_page( 'settings.php', __( 'Autoptimize Options', 'autoptimize' ), 'Autoptimize', 'manage_network_options', 'autoptimize', array( $this, 'show_config' ) );
661
-        } elseif ( is_multisite() && ! is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network() && 'on' !== autoptimizeOptionWrapper::get_option( 'autoptimize_enable_site_config' ) ) {
660
+            $hook = add_submenu_page('settings.php', __('Autoptimize Options', 'autoptimize'), 'Autoptimize', 'manage_network_options', 'autoptimize', array($this, 'show_config'));
661
+        } elseif (is_multisite() && !is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network() && 'on' !== autoptimizeOptionWrapper::get_option('autoptimize_enable_site_config')) {
662 662
             // multisite, ao network activated, not network admin so site specific settings, but "autoptimize_enable_site_config" is off: show "sorry, ask network admin" message iso options.
663
-            $hook = add_options_page( __( 'Autoptimize Options', 'autoptimize' ), 'Autoptimize', 'manage_options', 'autoptimize', array( $this, 'show_network_message' ) );
663
+            $hook = add_options_page(__('Autoptimize Options', 'autoptimize'), 'Autoptimize', 'manage_options', 'autoptimize', array($this, 'show_network_message'));
664 664
         } else {
665 665
             // default: show normal options page if not multisite, if multisite but not network activated, if multisite and network activated and "autoptimize_enable_site_config" is on.
666
-            $hook = add_options_page( __( 'Autoptimize Options', 'autoptimize' ), 'Autoptimize', 'manage_options', 'autoptimize', array( $this, 'show_config' ) );
666
+            $hook = add_options_page(__('Autoptimize Options', 'autoptimize'), 'Autoptimize', 'manage_options', 'autoptimize', array($this, 'show_config'));
667 667
         }
668 668
 
669
-        add_action( 'admin_print_scripts-' . $hook, array( $this, 'autoptimize_admin_scripts' ) );
670
-        add_action( 'admin_print_styles-' . $hook, array( $this, 'autoptimize_admin_styles' ) );
669
+        add_action('admin_print_scripts-'.$hook, array($this, 'autoptimize_admin_scripts'));
670
+        add_action('admin_print_styles-'.$hook, array($this, 'autoptimize_admin_styles'));
671 671
     }
672 672
 
673 673
     public function autoptimize_admin_scripts()
674 674
     {
675
-        wp_enqueue_script( 'jqcookie', plugins_url( '/external/js/jquery.cookie.min.js', __FILE__ ), array( 'jquery' ), null, true );
676
-        wp_enqueue_script( 'unslider', plugins_url( '/external/js/unslider-min.js', __FILE__ ), array( 'jquery' ), null, true );
675
+        wp_enqueue_script('jqcookie', plugins_url('/external/js/jquery.cookie.min.js', __FILE__), array('jquery'), null, true);
676
+        wp_enqueue_script('unslider', plugins_url('/external/js/unslider-min.js', __FILE__), array('jquery'), null, true);
677 677
     }
678 678
 
679 679
     public function autoptimize_admin_styles()
680 680
     {
681
-        wp_enqueue_style( 'unslider', plugins_url( '/external/js/unslider.css', __FILE__ ) );
682
-        wp_enqueue_style( 'unslider-dots', plugins_url( '/external/js/unslider-dots.css', __FILE__ ) );
681
+        wp_enqueue_style('unslider', plugins_url('/external/js/unslider.css', __FILE__));
682
+        wp_enqueue_style('unslider-dots', plugins_url('/external/js/unslider-dots.css', __FILE__));
683 683
     }
684 684
 
685 685
     public function registersettings() {
686
-        register_setting( 'autoptimize', 'autoptimize_html' );
687
-        register_setting( 'autoptimize', 'autoptimize_html_keepcomments' );
688
-        register_setting( 'autoptimize', 'autoptimize_enable_site_config' );
689
-        register_setting( 'autoptimize', 'autoptimize_js' );
690
-        register_setting( 'autoptimize', 'autoptimize_js_aggregate' );
691
-        register_setting( 'autoptimize', 'autoptimize_js_defer_not_aggregate' );
692
-        register_setting( 'autoptimize', 'autoptimize_js_exclude' );
693
-        register_setting( 'autoptimize', 'autoptimize_js_trycatch' );
694
-        register_setting( 'autoptimize', 'autoptimize_js_justhead' );
695
-        register_setting( 'autoptimize', 'autoptimize_js_forcehead' );
696
-        register_setting( 'autoptimize', 'autoptimize_js_include_inline' );
697
-        register_setting( 'autoptimize', 'autoptimize_css' );
698
-        register_setting( 'autoptimize', 'autoptimize_css_aggregate' );
699
-        register_setting( 'autoptimize', 'autoptimize_css_exclude' );
700
-        register_setting( 'autoptimize', 'autoptimize_css_justhead' );
701
-        register_setting( 'autoptimize', 'autoptimize_css_datauris' );
702
-        register_setting( 'autoptimize', 'autoptimize_css_defer' );
703
-        register_setting( 'autoptimize', 'autoptimize_css_defer_inline' );
704
-        register_setting( 'autoptimize', 'autoptimize_css_inline' );
705
-        register_setting( 'autoptimize', 'autoptimize_css_include_inline' );
706
-        register_setting( 'autoptimize', 'autoptimize_cdn_url' );
707
-        register_setting( 'autoptimize', 'autoptimize_cache_clean' );
708
-        register_setting( 'autoptimize', 'autoptimize_cache_nogzip' );
709
-        register_setting( 'autoptimize', 'autoptimize_optimize_logged' );
710
-        register_setting( 'autoptimize', 'autoptimize_optimize_checkout' );
711
-        register_setting( 'autoptimize', 'autoptimize_minify_excluded' );
712
-        register_setting( 'autoptimize', 'autoptimize_cache_fallback' );
686
+        register_setting('autoptimize', 'autoptimize_html');
687
+        register_setting('autoptimize', 'autoptimize_html_keepcomments');
688
+        register_setting('autoptimize', 'autoptimize_enable_site_config');
689
+        register_setting('autoptimize', 'autoptimize_js');
690
+        register_setting('autoptimize', 'autoptimize_js_aggregate');
691
+        register_setting('autoptimize', 'autoptimize_js_defer_not_aggregate');
692
+        register_setting('autoptimize', 'autoptimize_js_exclude');
693
+        register_setting('autoptimize', 'autoptimize_js_trycatch');
694
+        register_setting('autoptimize', 'autoptimize_js_justhead');
695
+        register_setting('autoptimize', 'autoptimize_js_forcehead');
696
+        register_setting('autoptimize', 'autoptimize_js_include_inline');
697
+        register_setting('autoptimize', 'autoptimize_css');
698
+        register_setting('autoptimize', 'autoptimize_css_aggregate');
699
+        register_setting('autoptimize', 'autoptimize_css_exclude');
700
+        register_setting('autoptimize', 'autoptimize_css_justhead');
701
+        register_setting('autoptimize', 'autoptimize_css_datauris');
702
+        register_setting('autoptimize', 'autoptimize_css_defer');
703
+        register_setting('autoptimize', 'autoptimize_css_defer_inline');
704
+        register_setting('autoptimize', 'autoptimize_css_inline');
705
+        register_setting('autoptimize', 'autoptimize_css_include_inline');
706
+        register_setting('autoptimize', 'autoptimize_cdn_url');
707
+        register_setting('autoptimize', 'autoptimize_cache_clean');
708
+        register_setting('autoptimize', 'autoptimize_cache_nogzip');
709
+        register_setting('autoptimize', 'autoptimize_optimize_logged');
710
+        register_setting('autoptimize', 'autoptimize_optimize_checkout');
711
+        register_setting('autoptimize', 'autoptimize_minify_excluded');
712
+        register_setting('autoptimize', 'autoptimize_cache_fallback');
713 713
     }
714 714
 
715
-    public function setmeta( $links, $file = null )
715
+    public function setmeta($links, $file = null)
716 716
     {
717 717
         // Inspired on http://wpengineer.com/meta-links-for-wordpress-plugins/.
718 718
         // Do it only once - saves time.
719 719
         static $plugin;
720
-        if ( empty( $plugin ) ) {
721
-            $plugin = plugin_basename( AUTOPTIMIZE_PLUGIN_DIR . 'autoptimize.php' );
720
+        if (empty($plugin)) {
721
+            $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php');
722 722
         }
723 723
 
724
-        if ( null === $file ) {
724
+        if (null === $file) {
725 725
             // 2.7 and lower.
726
-            $settings_link = sprintf( '<a href="options-general.php?page=autoptimize">%s</a>', __( 'Settings' ) );
727
-            array_unshift( $links, $settings_link );
726
+            $settings_link = sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings'));
727
+            array_unshift($links, $settings_link);
728 728
         } else {
729 729
             // 2.8 and higher.
730 730
             // If it's us, add the link.
731
-            if ( $file === $plugin ) {
732
-                $newlink = array( sprintf( '<a href="options-general.php?page=autoptimize">%s</a>', __( 'Settings' ) ) );
733
-                $links   = array_merge( $links, $newlink );
731
+            if ($file === $plugin) {
732
+                $newlink = array(sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings')));
733
+                $links   = array_merge($links, $newlink);
734 734
             }
735 735
         }
736 736
 
@@ -807,8 +807,8 @@  discard block
 block discarded – undo
807 807
             'autoptimize_imgopt_select_field_2'   => '2', // quality glossy.
808 808
             'autoptimize_imgopt_checkbox_field_3' => '0', // lazy load off.
809 809
             'autoptimize_imgopt_checkbox_field_4' => '0', // webp off (might be removed).
810
-            'autoptimize_imgopt_text_field_5'     => '',  // lazy load exclusions empty.
811
-            'autoptimize_imgopt_text_field_6'     => '',  // optimization exclusions empty.
810
+            'autoptimize_imgopt_text_field_5'     => '', // lazy load exclusions empty.
811
+            'autoptimize_imgopt_text_field_6'     => '', // optimization exclusions empty.
812 812
             'autoptimize_imgopt_number_field_7'   => '0', // lazy load from nth image (0 = lazyload all).
813 813
         );
814 814
         return $defaults;
@@ -821,58 +821,58 @@  discard block
 block discarded – undo
821 821
      *
822 822
      * @return string
823 823
      */
824
-    public static function get_ao_css_preload_onload( $media = 'all' )
824
+    public static function get_ao_css_preload_onload($media = 'all')
825 825
     {
826
-        $preload_onload = apply_filters( 'autoptimize_filter_css_preload_onload', "this.onload=null;this.media='" . $media . "';" );
826
+        $preload_onload = apply_filters('autoptimize_filter_css_preload_onload', "this.onload=null;this.media='".$media."';");
827 827
         return $preload_onload;
828 828
     }
829 829
 
830
-    public function get( $key )
830
+    public function get($key)
831 831
     {
832
-        if ( ! is_array( $this->config ) ) {
832
+        if (!is_array($this->config)) {
833 833
             // Default config.
834 834
             $config = self::get_defaults();
835 835
 
836 836
             // Override with user settings.
837
-            foreach ( array_keys( $config ) as $name ) {
838
-                $conf = autoptimizeOptionWrapper::get_option( $name );
839
-                if ( false !== $conf ) {
837
+            foreach (array_keys($config) as $name) {
838
+                $conf = autoptimizeOptionWrapper::get_option($name);
839
+                if (false !== $conf) {
840 840
                     // It was set before!
841
-                    $config[ $name ] = $conf;
841
+                    $config[$name] = $conf;
842 842
                 }
843 843
             }
844 844
 
845 845
             // Save for next call.
846
-            $this->config = apply_filters( 'autoptimize_filter_get_config', $config );
846
+            $this->config = apply_filters('autoptimize_filter_get_config', $config);
847 847
         }
848 848
 
849
-        if ( isset( $this->config[ $key ] ) ) {
850
-            return $this->config[ $key ];
849
+        if (isset($this->config[$key])) {
850
+            return $this->config[$key];
851 851
         }
852 852
 
853 853
         return false;
854 854
     }
855 855
 
856
-    private function get_futtta_feeds( $url ) {
857
-        if ( $this->settings_screen_do_remote_http ) {
858
-            $rss      = fetch_feed( $url );
856
+    private function get_futtta_feeds($url) {
857
+        if ($this->settings_screen_do_remote_http) {
858
+            $rss      = fetch_feed($url);
859 859
             $maxitems = 0;
860 860
 
861
-            if ( ! is_wp_error( $rss ) ) {
862
-                $maxitems  = $rss->get_item_quantity( 7 );
863
-                $rss_items = $rss->get_items( 0, $maxitems );
861
+            if (!is_wp_error($rss)) {
862
+                $maxitems  = $rss->get_item_quantity(7);
863
+                $rss_items = $rss->get_items(0, $maxitems);
864 864
             }
865 865
             ?>
866 866
             <ul>
867
-                <?php if ( 0 == $maxitems ) : ?>
868
-                    <li><?php _e( 'No items', 'autoptimize' ); ?></li>
867
+                <?php if (0 == $maxitems) : ?>
868
+                    <li><?php _e('No items', 'autoptimize'); ?></li>
869 869
                 <?php else : ?>
870
-                    <?php foreach ( $rss_items as $item ) : ?>
870
+                    <?php foreach ($rss_items as $item) : ?>
871 871
                         <li>
872
-                            <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
872
+                            <a href="<?php echo esc_url($item->get_permalink()); ?>"
873 873
                                 <?php // translators: the variable contains a date. ?>
874
-                                title="<?php printf( __( 'Posted %s', 'autoptimize' ), $item->get_date( 'j F Y | g:i a' ) ); ?>">
875
-                                <?php echo esc_html( $item->get_title() ); ?>
874
+                                title="<?php printf(__('Posted %s', 'autoptimize'), $item->get_date('j F Y | g:i a')); ?>">
875
+                                <?php echo esc_html($item->get_title()); ?>
876 876
                             </a>
877 877
                         </li>
878 878
                     <?php endforeach; ?>
@@ -885,23 +885,23 @@  discard block
 block discarded – undo
885 885
     static function ao_admin_tabs()
886 886
     {
887 887
         // based on http://wordpress.stackexchange.com/a/58826 .
888
-        $tabs        = apply_filters( 'autoptimize_filter_settingsscreen_tabs', array( 'autoptimize' => __( 'JS, CSS  &amp; HTML', 'autoptimize' ) ) );
888
+        $tabs        = apply_filters('autoptimize_filter_settingsscreen_tabs', array('autoptimize' => __('JS, CSS  &amp; HTML', 'autoptimize')));
889 889
         $tab_content = '';
890
-        $tabs_count  = count( $tabs );
891
-        if ( $tabs_count > 1 ) {
892
-            if ( isset( $_GET['page'] ) ) {
890
+        $tabs_count  = count($tabs);
891
+        if ($tabs_count > 1) {
892
+            if (isset($_GET['page'])) {
893 893
                 $current_id = $_GET['page'];
894 894
             } else {
895 895
                 $current_id = 'autoptimize';
896 896
             }
897 897
             $tab_content .= '<h2 class="nav-tab-wrapper">';
898
-            foreach ( $tabs as $tab_id => $tab_name ) {
899
-                if ( $current_id == $tab_id ) {
898
+            foreach ($tabs as $tab_id => $tab_name) {
899
+                if ($current_id == $tab_id) {
900 900
                     $class = ' nav-tab-active';
901 901
                 } else {
902 902
                     $class = '';
903 903
                 }
904
-                $tab_content .= '<a class="nav-tab' . $class . '" href="?page=' . $tab_id . '">' . $tab_name . '</a>';
904
+                $tab_content .= '<a class="nav-tab'.$class.'" href="?page='.$tab_id.'">'.$tab_name.'</a>';
905 905
             }
906 906
             $tab_content .= '</h2>';
907 907
         } else {
@@ -918,7 +918,7 @@  discard block
 block discarded – undo
918 918
      */
919 919
     public static function is_admin_and_not_ajax()
920 920
     {
921
-        return ( is_admin() && ! self::doing_ajax() );
921
+        return (is_admin() && !self::doing_ajax());
922 922
     }
923 923
 
924 924
     /**
@@ -928,10 +928,10 @@  discard block
 block discarded – undo
928 928
      */
929 929
     protected static function doing_ajax()
930 930
     {
931
-        if ( function_exists( 'wp_doing_ajax' ) ) {
931
+        if (function_exists('wp_doing_ajax')) {
932 932
             return wp_doing_ajax();
933 933
         }
934
-        return ( defined( 'DOING_AJAX' ) && DOING_AJAX );
934
+        return (defined('DOING_AJAX') && DOING_AJAX);
935 935
     }
936 936
 
937 937
     /**
@@ -940,7 +940,7 @@  discard block
 block discarded – undo
940 940
      * @return bool
941 941
      */
942 942
     public static function should_show_menu_tabs() {
943
-        if ( ! is_multisite() || is_network_admin() || 'on' === autoptimizeOptionWrapper::get_option( 'autoptimize_enable_site_config' ) ) {
943
+        if (!is_multisite() || is_network_admin() || 'on' === autoptimizeOptionWrapper::get_option('autoptimize_enable_site_config')) {
944 944
             return true;
945 945
         } else {
946 946
             return false;
Please login to merge, or discard this patch.
classes/autoptimizeMain.php 2 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -296,7 +296,7 @@
 block discarded – undo
296 296
      *
297 297
      * @param bool $doing_tests Allows overriding the optimization of only
298 298
      *                          deciding once per request (for use in tests).
299
-     * @return bool
299
+     * @return boolean|null
300 300
      */
301 301
     public static function should_buffer( $doing_tests = false )
302 302
     {
Please login to merge, or discard this patch.
Spacing   +182 added lines, -182 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Wraps base plugin logic/hooks and handles activation/deactivation/uninstall.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -33,7 +33,7 @@  discard block
 block discarded – undo
33 33
      * @param string $version Version.
34 34
      * @param string $filepath Filepath. Needed for activation/deactivation/uninstall hooks.
35 35
      */
36
-    public function __construct( $version, $filepath )
36
+    public function __construct($version, $filepath)
37 37
     {
38 38
         $this->version  = $version;
39 39
         $this->filepath = $filepath;
@@ -50,101 +50,101 @@  discard block
 block discarded – undo
50 50
 
51 51
     protected function add_hooks()
52 52
     {
53
-        if ( ! defined( 'AUTOPTIMIZE_SETUP_INITHOOK' ) ) {
54
-            define( 'AUTOPTIMIZE_SETUP_INITHOOK', 'plugins_loaded' );
53
+        if (!defined('AUTOPTIMIZE_SETUP_INITHOOK')) {
54
+            define('AUTOPTIMIZE_SETUP_INITHOOK', 'plugins_loaded');
55 55
         }
56 56
 
57
-        add_action( AUTOPTIMIZE_SETUP_INITHOOK, array( $this, 'setup' ) );
58
-        add_action( AUTOPTIMIZE_SETUP_INITHOOK, array( $this, 'hook_page_cache_purge' ) );
57
+        add_action(AUTOPTIMIZE_SETUP_INITHOOK, array($this, 'setup'));
58
+        add_action(AUTOPTIMIZE_SETUP_INITHOOK, array($this, 'hook_page_cache_purge'));
59 59
 
60
-        add_action( 'autoptimize_setup_done', array( $this, 'version_upgrades_check' ) );
61
-        add_action( 'autoptimize_setup_done', array( $this, 'check_cache_and_run' ) );
62
-        add_action( 'autoptimize_setup_done', array( $this, 'maybe_run_ao_extra' ), 15 );
63
-        add_action( 'autoptimize_setup_done', array( $this, 'maybe_run_partners_tab' ), 20 );
64
-        add_action( 'autoptimize_setup_done', array( $this, 'maybe_run_criticalcss' ), 11 );
65
-        add_action( 'autoptimize_setup_done', array( $this, 'maybe_run_notfound_fallback' ), 10 );
60
+        add_action('autoptimize_setup_done', array($this, 'version_upgrades_check'));
61
+        add_action('autoptimize_setup_done', array($this, 'check_cache_and_run'));
62
+        add_action('autoptimize_setup_done', array($this, 'maybe_run_ao_extra'), 15);
63
+        add_action('autoptimize_setup_done', array($this, 'maybe_run_partners_tab'), 20);
64
+        add_action('autoptimize_setup_done', array($this, 'maybe_run_criticalcss'), 11);
65
+        add_action('autoptimize_setup_done', array($this, 'maybe_run_notfound_fallback'), 10);
66 66
 
67
-        add_action( 'init', array( $this, 'load_textdomain' ) );
67
+        add_action('init', array($this, 'load_textdomain'));
68 68
 
69
-        if ( is_multisite() && is_admin() ) {
69
+        if (is_multisite() && is_admin()) {
70 70
             // Only if multisite and if in admin we want to check if we need to save options on network level.
71
-            add_action( 'init', 'autoptimizeOptionWrapper::check_multisite_on_saving_options' );
71
+            add_action('init', 'autoptimizeOptionWrapper::check_multisite_on_saving_options');
72 72
         }
73 73
 
74 74
         // register uninstall & deactivation hooks.
75
-        register_uninstall_hook( $this->filepath, 'autoptimizeMain::on_uninstall' );
76
-        register_deactivation_hook( $this->filepath, 'autoptimizeMain::on_deactivation' );
75
+        register_uninstall_hook($this->filepath, 'autoptimizeMain::on_uninstall');
76
+        register_deactivation_hook($this->filepath, 'autoptimizeMain::on_deactivation');
77 77
     }
78 78
 
79 79
     public function load_textdomain()
80 80
     {
81
-        load_plugin_textdomain( 'autoptimize' );
81
+        load_plugin_textdomain('autoptimize');
82 82
     }
83 83
 
84 84
     public function setup()
85 85
     {
86 86
         // Do we gzip in php when caching or is the webserver doing it?
87
-        define( 'AUTOPTIMIZE_CACHE_NOGZIP', (bool) autoptimizeOptionWrapper::get_option( 'autoptimize_cache_nogzip' ) );
87
+        define('AUTOPTIMIZE_CACHE_NOGZIP', (bool) autoptimizeOptionWrapper::get_option('autoptimize_cache_nogzip'));
88 88
 
89 89
         // These can be overridden by specifying them in wp-config.php or such.
90
-        if ( ! defined( 'AUTOPTIMIZE_WP_CONTENT_NAME' ) ) {
91
-            define( 'AUTOPTIMIZE_WP_CONTENT_NAME', '/' . wp_basename( WP_CONTENT_DIR ) );
90
+        if (!defined('AUTOPTIMIZE_WP_CONTENT_NAME')) {
91
+            define('AUTOPTIMIZE_WP_CONTENT_NAME', '/'.wp_basename(WP_CONTENT_DIR));
92 92
         }
93
-        if ( ! defined( 'AUTOPTIMIZE_CACHE_CHILD_DIR' ) ) {
94
-            define( 'AUTOPTIMIZE_CACHE_CHILD_DIR', '/cache/autoptimize/' );
93
+        if (!defined('AUTOPTIMIZE_CACHE_CHILD_DIR')) {
94
+            define('AUTOPTIMIZE_CACHE_CHILD_DIR', '/cache/autoptimize/');
95 95
         }
96
-        if ( ! defined( 'AUTOPTIMIZE_CACHEFILE_PREFIX' ) ) {
97
-            define( 'AUTOPTIMIZE_CACHEFILE_PREFIX', 'autoptimize_' );
96
+        if (!defined('AUTOPTIMIZE_CACHEFILE_PREFIX')) {
97
+            define('AUTOPTIMIZE_CACHEFILE_PREFIX', 'autoptimize_');
98 98
         }
99 99
         // Note: trailing slash is not optional!
100
-        if ( ! defined( 'AUTOPTIMIZE_CACHE_DIR' ) ) {
101
-            define( 'AUTOPTIMIZE_CACHE_DIR', autoptimizeCache::get_pathname() );
100
+        if (!defined('AUTOPTIMIZE_CACHE_DIR')) {
101
+            define('AUTOPTIMIZE_CACHE_DIR', autoptimizeCache::get_pathname());
102 102
         }
103 103
 
104
-        define( 'WP_ROOT_DIR', substr( WP_CONTENT_DIR, 0, strlen( WP_CONTENT_DIR ) - strlen( AUTOPTIMIZE_WP_CONTENT_NAME ) ) );
104
+        define('WP_ROOT_DIR', substr(WP_CONTENT_DIR, 0, strlen(WP_CONTENT_DIR) - strlen(AUTOPTIMIZE_WP_CONTENT_NAME)));
105 105
 
106
-        if ( ! defined( 'AUTOPTIMIZE_WP_SITE_URL' ) ) {
107
-            if ( function_exists( 'domain_mapping_siteurl' ) ) {
108
-                define( 'AUTOPTIMIZE_WP_SITE_URL', domain_mapping_siteurl( get_current_blog_id() ) );
106
+        if (!defined('AUTOPTIMIZE_WP_SITE_URL')) {
107
+            if (function_exists('domain_mapping_siteurl')) {
108
+                define('AUTOPTIMIZE_WP_SITE_URL', domain_mapping_siteurl(get_current_blog_id()));
109 109
             } else {
110
-                define( 'AUTOPTIMIZE_WP_SITE_URL', site_url() );
110
+                define('AUTOPTIMIZE_WP_SITE_URL', site_url());
111 111
             }
112 112
         }
113
-        if ( ! defined( 'AUTOPTIMIZE_WP_CONTENT_URL' ) ) {
114
-            if ( function_exists( 'get_original_url' ) ) {
115
-                define( 'AUTOPTIMIZE_WP_CONTENT_URL', str_replace( get_original_url( AUTOPTIMIZE_WP_SITE_URL ), AUTOPTIMIZE_WP_SITE_URL, content_url() ) );
113
+        if (!defined('AUTOPTIMIZE_WP_CONTENT_URL')) {
114
+            if (function_exists('get_original_url')) {
115
+                define('AUTOPTIMIZE_WP_CONTENT_URL', str_replace(get_original_url(AUTOPTIMIZE_WP_SITE_URL), AUTOPTIMIZE_WP_SITE_URL, content_url()));
116 116
             } else {
117
-                define( 'AUTOPTIMIZE_WP_CONTENT_URL', content_url() );
117
+                define('AUTOPTIMIZE_WP_CONTENT_URL', content_url());
118 118
             }
119 119
         }
120
-        if ( ! defined( 'AUTOPTIMIZE_CACHE_URL' ) ) {
121
-            if ( is_multisite() && apply_filters( 'autoptimize_separate_blog_caches', true ) ) {
120
+        if (!defined('AUTOPTIMIZE_CACHE_URL')) {
121
+            if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) {
122 122
                 $blog_id = get_current_blog_id();
123
-                define( 'AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL . AUTOPTIMIZE_CACHE_CHILD_DIR . $blog_id . '/' );
123
+                define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/');
124 124
             } else {
125
-                define( 'AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL . AUTOPTIMIZE_CACHE_CHILD_DIR );
125
+                define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR);
126 126
             }
127 127
         }
128
-        if ( ! defined( 'AUTOPTIMIZE_WP_ROOT_URL' ) ) {
129
-            define( 'AUTOPTIMIZE_WP_ROOT_URL', str_replace( AUTOPTIMIZE_WP_CONTENT_NAME, '', AUTOPTIMIZE_WP_CONTENT_URL ) );
128
+        if (!defined('AUTOPTIMIZE_WP_ROOT_URL')) {
129
+            define('AUTOPTIMIZE_WP_ROOT_URL', str_replace(AUTOPTIMIZE_WP_CONTENT_NAME, '', AUTOPTIMIZE_WP_CONTENT_URL));
130 130
         }
131
-        if ( ! defined( 'AUTOPTIMIZE_HASH' ) ) {
132
-            define( 'AUTOPTIMIZE_HASH', wp_hash( AUTOPTIMIZE_CACHE_URL ) );
131
+        if (!defined('AUTOPTIMIZE_HASH')) {
132
+            define('AUTOPTIMIZE_HASH', wp_hash(AUTOPTIMIZE_CACHE_URL));
133 133
         }
134
-        if ( ! defined( 'AUTOPTIMIZE_SITE_DOMAIN' ) ) {
135
-            define( 'AUTOPTIMIZE_SITE_DOMAIN', parse_url( AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST ) );
134
+        if (!defined('AUTOPTIMIZE_SITE_DOMAIN')) {
135
+            define('AUTOPTIMIZE_SITE_DOMAIN', parse_url(AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST));
136 136
         }
137 137
 
138 138
         // Multibyte-capable string replacements are available with a filter.
139 139
         // Also requires 'mbstring' extension.
140
-        $with_mbstring = apply_filters( 'autoptimize_filter_main_use_mbstring', false );
141
-        if ( $with_mbstring ) {
142
-            autoptimizeUtils::mbstring_available( \extension_loaded( 'mbstring' ) );
140
+        $with_mbstring = apply_filters('autoptimize_filter_main_use_mbstring', false);
141
+        if ($with_mbstring) {
142
+            autoptimizeUtils::mbstring_available(\extension_loaded('mbstring'));
143 143
         } else {
144
-            autoptimizeUtils::mbstring_available( false );
144
+            autoptimizeUtils::mbstring_available(false);
145 145
         }
146 146
 
147
-        do_action( 'autoptimize_setup_done' );
147
+        do_action('autoptimize_setup_done');
148 148
     }
149 149
 
150 150
     /**
@@ -154,61 +154,61 @@  discard block
 block discarded – undo
154 154
      */
155 155
     public function version_upgrades_check()
156 156
     {
157
-        autoptimizeVersionUpdatesHandler::check_installed_and_update( $this->version );
157
+        autoptimizeVersionUpdatesHandler::check_installed_and_update($this->version);
158 158
     }
159 159
 
160 160
     public function check_cache_and_run()
161 161
     {
162
-        if ( autoptimizeCache::cacheavail() ) {
162
+        if (autoptimizeCache::cacheavail()) {
163 163
             $conf = autoptimizeConfig::instance();
164
-            if ( $conf->get( 'autoptimize_html' ) || $conf->get( 'autoptimize_js' ) || $conf->get( 'autoptimize_css' ) || autoptimizeImages::imgopt_active() || autoptimizeImages::should_lazyload_wrapper() ) {
165
-                if ( ! defined( 'AUTOPTIMIZE_NOBUFFER_OPTIMIZE' ) ) {
164
+            if ($conf->get('autoptimize_html') || $conf->get('autoptimize_js') || $conf->get('autoptimize_css') || autoptimizeImages::imgopt_active() || autoptimizeImages::should_lazyload_wrapper()) {
165
+                if (!defined('AUTOPTIMIZE_NOBUFFER_OPTIMIZE')) {
166 166
                     // Hook into WordPress frontend.
167
-                    if ( defined( 'AUTOPTIMIZE_INIT_EARLIER' ) ) {
167
+                    if (defined('AUTOPTIMIZE_INIT_EARLIER')) {
168 168
                         add_action(
169 169
                             'init',
170
-                            array( $this, 'start_buffering' ),
170
+                            array($this, 'start_buffering'),
171 171
                             self::INIT_EARLIER_PRIORITY
172 172
                         );
173 173
                     } else {
174
-                        if ( ! defined( 'AUTOPTIMIZE_HOOK_INTO' ) ) {
175
-                            define( 'AUTOPTIMIZE_HOOK_INTO', 'template_redirect' );
174
+                        if (!defined('AUTOPTIMIZE_HOOK_INTO')) {
175
+                            define('AUTOPTIMIZE_HOOK_INTO', 'template_redirect');
176 176
                         }
177 177
                         add_action(
178
-                            constant( 'AUTOPTIMIZE_HOOK_INTO' ),
179
-                            array( $this, 'start_buffering' ),
178
+                            constant('AUTOPTIMIZE_HOOK_INTO'),
179
+                            array($this, 'start_buffering'),
180 180
                             self::DEFAULT_HOOK_PRIORITY
181 181
                         );
182 182
                     }
183 183
                 }
184 184
 
185 185
                 // And disable Jetpack's site accelerator if JS or CSS opt. are active.
186
-                if ( class_exists( 'Jetpack' ) && apply_filters( 'autoptimize_filter_main_disable_jetpack_cdn', true ) && ( $conf->get( 'autoptimize_js' ) || $conf->get( 'autoptimize_css' ) ) ) {
187
-                    add_filter( 'jetpack_force_disable_site_accelerator', '__return_true' );
186
+                if (class_exists('Jetpack') && apply_filters('autoptimize_filter_main_disable_jetpack_cdn', true) && ($conf->get('autoptimize_js') || $conf->get('autoptimize_css'))) {
187
+                    add_filter('jetpack_force_disable_site_accelerator', '__return_true');
188 188
                 }
189 189
             }
190 190
         } else {
191
-            add_action( 'admin_notices', 'autoptimizeMain::notice_cache_unavailable' );
191
+            add_action('admin_notices', 'autoptimizeMain::notice_cache_unavailable');
192 192
         }
193 193
     }
194 194
 
195 195
     public function maybe_run_ao_extra()
196 196
     {
197
-        if ( apply_filters( 'autoptimize_filter_extra_activate', true ) ) {
197
+        if (apply_filters('autoptimize_filter_extra_activate', true)) {
198 198
             $ao_imgopt = new autoptimizeImages();
199 199
             $ao_imgopt->run();
200 200
             $ao_extra = new autoptimizeExtra();
201 201
             $ao_extra->run();
202 202
 
203 203
             // And show the imgopt notice.
204
-            add_action( 'admin_notices', 'autoptimizeMain::notice_plug_imgopt' );
204
+            add_action('admin_notices', 'autoptimizeMain::notice_plug_imgopt');
205 205
         }
206 206
     }
207 207
 
208 208
     public function maybe_run_partners_tab()
209 209
     {
210 210
         // Loads partners tab code if in admin (and not in admin-ajax.php)!
211
-        if ( autoptimizeConfig::is_admin_and_not_ajax() ) {
211
+        if (autoptimizeConfig::is_admin_and_not_ajax()) {
212 212
             new autoptimizePartners();
213 213
         }
214 214
     }
@@ -216,22 +216,22 @@  discard block
 block discarded – undo
216 216
     public function maybe_run_criticalcss()
217 217
     {
218 218
         // Loads criticalcss if the power-up is not active and if the filter returns true.
219
-        if ( apply_filters( 'autoptimize_filter_criticalcss_active', true ) && ! autoptimizeUtils::is_plugin_active( 'autoptimize-criticalcss/ao_criticss_aas.php' ) ) {
219
+        if (apply_filters('autoptimize_filter_criticalcss_active', true) && !autoptimizeUtils::is_plugin_active('autoptimize-criticalcss/ao_criticss_aas.php')) {
220 220
             new autoptimizeCriticalCSSBase();
221 221
         }
222 222
     }
223 223
 
224 224
     public function maybe_run_notfound_fallback()
225 225
     {
226
-        if ( autoptimizeCache::do_fallback() ) {
227
-            add_action( 'template_redirect', array( 'autoptimizeCache', 'wordpress_notfound_fallback' ) );
226
+        if (autoptimizeCache::do_fallback()) {
227
+            add_action('template_redirect', array('autoptimizeCache', 'wordpress_notfound_fallback'));
228 228
         }
229 229
     }
230 230
 
231 231
     public function hook_page_cache_purge()
232 232
     {
233 233
         // hook into a collection of page cache purge actions if filter allows.
234
-        if ( apply_filters( 'autoptimize_filter_main_hookpagecachepurge', true ) ) {
234
+        if (apply_filters('autoptimize_filter_main_hookpagecachepurge', true)) {
235 235
             $page_cache_purge_actions = array(
236 236
                 'after_rocket_clean_domain', // exists.
237 237
                 'hyper_cache_purged', // Stefano confirmed this will be added.
@@ -246,9 +246,9 @@  discard block
 block discarded – undo
246 246
                 'wpo_cache_flush', // wp-optimize.
247 247
                 'rt_nginx_helper_after_fastcgi_purge_all', // nginx helper.
248 248
             );
249
-            $page_cache_purge_actions = apply_filters( 'autoptimize_filter_main_pagecachepurgeactions', $page_cache_purge_actions );
250
-            foreach ( $page_cache_purge_actions as $purge_action ) {
251
-                add_action( $purge_action, 'autoptimizeCache::clearall_actionless' );
249
+            $page_cache_purge_actions = apply_filters('autoptimize_filter_main_pagecachepurgeactions', $page_cache_purge_actions);
250
+            foreach ($page_cache_purge_actions as $purge_action) {
251
+                add_action($purge_action, 'autoptimizeCache::clearall_actionless');
252 252
             }
253 253
         }
254 254
     }
@@ -260,38 +260,38 @@  discard block
 block discarded – undo
260 260
      */
261 261
     public function start_buffering()
262 262
     {
263
-        if ( $this->should_buffer() ) {
263
+        if ($this->should_buffer()) {
264 264
 
265 265
             // Load speedupper conditionally (true by default).
266
-            if ( apply_filters( 'autoptimize_filter_speedupper', true ) ) {
266
+            if (apply_filters('autoptimize_filter_speedupper', true)) {
267 267
                 $ao_speedupper = new autoptimizeSpeedupper();
268 268
             }
269 269
 
270 270
             $conf = autoptimizeConfig::instance();
271 271
 
272
-            if ( $conf->get( 'autoptimize_js' ) ) {
273
-                if ( ! defined( 'CONCATENATE_SCRIPTS' ) ) {
274
-                    define( 'CONCATENATE_SCRIPTS', false );
272
+            if ($conf->get('autoptimize_js')) {
273
+                if (!defined('CONCATENATE_SCRIPTS')) {
274
+                    define('CONCATENATE_SCRIPTS', false);
275 275
                 }
276
-                if ( ! defined( 'COMPRESS_SCRIPTS' ) ) {
277
-                    define( 'COMPRESS_SCRIPTS', false );
276
+                if (!defined('COMPRESS_SCRIPTS')) {
277
+                    define('COMPRESS_SCRIPTS', false);
278 278
                 }
279 279
             }
280 280
 
281
-            if ( $conf->get( 'autoptimize_css' ) ) {
282
-                if ( ! defined( 'COMPRESS_CSS' ) ) {
283
-                    define( 'COMPRESS_CSS', false );
281
+            if ($conf->get('autoptimize_css')) {
282
+                if (!defined('COMPRESS_CSS')) {
283
+                    define('COMPRESS_CSS', false);
284 284
                 }
285 285
             }
286 286
 
287
-            if ( apply_filters( 'autoptimize_filter_obkiller', false ) ) {
288
-                while ( ob_get_level() > 0 ) {
287
+            if (apply_filters('autoptimize_filter_obkiller', false)) {
288
+                while (ob_get_level() > 0) {
289 289
                     ob_end_clean();
290 290
                 }
291 291
             }
292 292
 
293 293
             // Now, start the real thing!
294
-            ob_start( array( $this, 'end_buffering' ) );
294
+            ob_start(array($this, 'end_buffering'));
295 295
         }
296 296
     }
297 297
 
@@ -302,31 +302,31 @@  discard block
 block discarded – undo
302 302
      *                          deciding once per request (for use in tests).
303 303
      * @return bool
304 304
      */
305
-    public static function should_buffer( $doing_tests = false )
305
+    public static function should_buffer($doing_tests = false)
306 306
     {
307 307
         static $do_buffering = null;
308 308
 
309 309
         // Only check once in case we're called multiple times by others but
310 310
         // still allows multiple calls when doing tests.
311
-        if ( null === $do_buffering || $doing_tests ) {
311
+        if (null === $do_buffering || $doing_tests) {
312 312
 
313 313
             $ao_noptimize = false;
314 314
 
315 315
             // Checking for DONOTMINIFY constant as used by e.g. WooCommerce POS.
316
-            if ( defined( 'DONOTMINIFY' ) && ( constant( 'DONOTMINIFY' ) === true || constant( 'DONOTMINIFY' ) === 'true' ) ) {
316
+            if (defined('DONOTMINIFY') && (constant('DONOTMINIFY') === true || constant('DONOTMINIFY') === 'true')) {
317 317
                 $ao_noptimize = true;
318 318
             }
319 319
 
320 320
             // Skip checking query strings if they're disabled.
321
-            if ( apply_filters( 'autoptimize_filter_honor_qs_noptimize', true ) ) {
321
+            if (apply_filters('autoptimize_filter_honor_qs_noptimize', true)) {
322 322
                 // Check for `ao_noptimize` (and other) keys in the query string
323 323
                 // to get non-optimized page for debugging.
324 324
                 $keys = array(
325 325
                     'ao_noptimize',
326 326
                     'ao_noptirocket',
327 327
                 );
328
-                foreach ( $keys as $key ) {
329
-                    if ( array_key_exists( $key, $_GET ) && '1' === $_GET[ $key ] ) {
328
+                foreach ($keys as $key) {
329
+                    if (array_key_exists($key, $_GET) && '1' === $_GET[$key]) {
330 330
                         $ao_noptimize = true;
331 331
                         break;
332 332
                     }
@@ -334,15 +334,15 @@  discard block
 block discarded – undo
334 334
             }
335 335
 
336 336
             // If setting says not to optimize logged in user and user is logged in...
337
-            if ( false === $ao_noptimize && 'on' !== autoptimizeOptionWrapper::get_option( 'autoptimize_optimize_logged', 'on' ) && is_user_logged_in() && current_user_can( 'edit_posts' ) ) {
337
+            if (false === $ao_noptimize && 'on' !== autoptimizeOptionWrapper::get_option('autoptimize_optimize_logged', 'on') && is_user_logged_in() && current_user_can('edit_posts')) {
338 338
                 $ao_noptimize = true;
339 339
             }
340 340
 
341 341
             // If setting says not to optimize cart/checkout.
342
-            if ( false === $ao_noptimize && 'on' !== autoptimizeOptionWrapper::get_option( 'autoptimize_optimize_checkout', 'off' ) ) {
342
+            if (false === $ao_noptimize && 'on' !== autoptimizeOptionWrapper::get_option('autoptimize_optimize_checkout', 'off')) {
343 343
                 // Checking for woocommerce, easy digital downloads and wp ecommerce...
344
-                foreach ( array( 'is_checkout', 'is_cart', 'is_account_page', 'edd_is_checkout', 'wpsc_is_cart', 'wpsc_is_checkout' ) as $func ) {
345
-                    if ( function_exists( $func ) && $func() ) {
344
+                foreach (array('is_checkout', 'is_cart', 'is_account_page', 'edd_is_checkout', 'wpsc_is_cart', 'wpsc_is_checkout') as $func) {
345
+                    if (function_exists($func) && $func()) {
346 346
                         $ao_noptimize = true;
347 347
                         break;
348 348
                     }
@@ -350,10 +350,10 @@  discard block
 block discarded – undo
350 350
             }
351 351
 
352 352
             // And make sure pagebuilder previews don't get optimized HTML/ JS/ CSS/ ...
353
-            if ( false === $ao_noptimize ) {
354
-                $_qs_pagebuilders = array( 'tve', 'elementor-preview', 'fl_builder', 'vc_action', 'et_fb', 'bt-beaverbuildertheme', 'ct_builder', 'fb-edit', 'siteorigin_panels_live_editor' );
355
-                foreach ( $_qs_pagebuilders as $_pagebuilder ) {
356
-                    if ( array_key_exists( $_pagebuilder, $_GET ) ) {
353
+            if (false === $ao_noptimize) {
354
+                $_qs_pagebuilders = array('tve', 'elementor-preview', 'fl_builder', 'vc_action', 'et_fb', 'bt-beaverbuildertheme', 'ct_builder', 'fb-edit', 'siteorigin_panels_live_editor');
355
+                foreach ($_qs_pagebuilders as $_pagebuilder) {
356
+                    if (array_key_exists($_pagebuilder, $_GET)) {
357 357
                         $ao_noptimize = true;
358 358
                         break;
359 359
                     }
@@ -362,16 +362,16 @@  discard block
 block discarded – undo
362 362
 
363 363
             // Also honor PageSpeed=off parameter as used by mod_pagespeed, in use by some pagebuilders,
364 364
             // see https://www.modpagespeed.com/doc/experiment#ModPagespeed for info on that.
365
-            if ( false === $ao_noptimize && array_key_exists( 'PageSpeed', $_GET ) && 'off' === $_GET['PageSpeed'] ) {
365
+            if (false === $ao_noptimize && array_key_exists('PageSpeed', $_GET) && 'off' === $_GET['PageSpeed']) {
366 366
                 $ao_noptimize = true;
367 367
             }
368 368
 
369 369
             // And finally allows blocking of autoptimization on your own terms regardless of above decisions.
370
-            $ao_noptimize = (bool) apply_filters( 'autoptimize_filter_noptimize', $ao_noptimize );
370
+            $ao_noptimize = (bool) apply_filters('autoptimize_filter_noptimize', $ao_noptimize);
371 371
 
372 372
             // Check for site being previewed in the Customizer (available since WP 4.0).
373 373
             $is_customize_preview = false;
374
-            if ( function_exists( 'is_customize_preview' ) && is_customize_preview() ) {
374
+            if (function_exists('is_customize_preview') && is_customize_preview()) {
375 375
                 $is_customize_preview = is_customize_preview();
376 376
             }
377 377
 
@@ -382,7 +382,7 @@  discard block
 block discarded – undo
382 382
              * while the main query hasn't been ran yet. Thats why we use
383 383
              * AUTOPTIMIZE_INIT_EARLIER in tests.
384 384
              */
385
-            $do_buffering = ( ! is_admin() && ! is_feed() && ! is_embed() && ! $ao_noptimize && ! $is_customize_preview );
385
+            $do_buffering = (!is_admin() && !is_feed() && !is_embed() && !$ao_noptimize && !$is_customize_preview);
386 386
         }
387 387
 
388 388
         return $do_buffering;
@@ -395,25 +395,25 @@  discard block
 block discarded – undo
395 395
      *
396 396
      * @return bool
397 397
      */
398
-    public function is_valid_buffer( $content )
398
+    public function is_valid_buffer($content)
399 399
     {
400 400
         // Defaults to true.
401 401
         $valid = true;
402 402
 
403
-        $has_no_html_tag    = ( false === stripos( $content, '<html' ) );
404
-        $has_xsl_stylesheet = ( false !== stripos( $content, '<xsl:stylesheet' ) || false !== stripos( $content, '<?xml-stylesheet' ) );
405
-        $has_html5_doctype  = ( preg_match( '/^<!DOCTYPE.+html>/i', ltrim( $content ) ) > 0 );
406
-        $has_noptimize_page = ( false !== stripos( $content, '<!-- noptimize-page -->' ) );
403
+        $has_no_html_tag    = (false === stripos($content, '<html'));
404
+        $has_xsl_stylesheet = (false !== stripos($content, '<xsl:stylesheet') || false !== stripos($content, '<?xml-stylesheet'));
405
+        $has_html5_doctype  = (preg_match('/^<!DOCTYPE.+html>/i', ltrim($content)) > 0);
406
+        $has_noptimize_page = (false !== stripos($content, '<!-- noptimize-page -->'));
407 407
 
408
-        if ( $has_no_html_tag ) {
408
+        if ($has_no_html_tag) {
409 409
             // Can't be valid amp markup without an html tag preceding it.
410 410
             $is_amp_markup = false;
411 411
         } else {
412
-            $is_amp_markup = self::is_amp_markup( $content );
412
+            $is_amp_markup = self::is_amp_markup($content);
413 413
         }
414 414
 
415 415
         // If it's not html, or if it's amp or contains xsl stylesheets we don't touch it.
416
-        if ( $has_no_html_tag && ! $has_html5_doctype || $is_amp_markup || $has_xsl_stylesheet || $has_noptimize_page ) {
416
+        if ($has_no_html_tag && !$has_html5_doctype || $is_amp_markup || $has_xsl_stylesheet || $has_noptimize_page) {
417 417
             $valid = false;
418 418
         }
419 419
 
@@ -428,7 +428,7 @@  discard block
 block discarded – undo
428 428
      *
429 429
      * @return bool
430 430
      */
431
-    public static function is_amp_markup( $content )
431
+    public static function is_amp_markup($content)
432 432
     {
433 433
         // Short-circuit if the page is already AMP from the start.
434 434
         if (
@@ -446,9 +446,9 @@  discard block
 block discarded – undo
446 446
         }
447 447
 
448 448
         // Or else short-circuit if the AMP plugin will be processing the output to be an AMP page.
449
-        if ( function_exists( 'amp_is_request' ) ) {
449
+        if (function_exists('amp_is_request')) {
450 450
             return amp_is_request(); // For AMP plugin v2.0+.
451
-        } elseif ( function_exists( 'is_amp_endpoint' ) ) {
451
+        } elseif (function_exists('is_amp_endpoint')) {
452 452
             return is_amp_endpoint(); // For older/other AMP plugins (still supported in 2.0 as an alias).
453 453
         }
454 454
 
@@ -463,10 +463,10 @@  discard block
 block discarded – undo
463 463
      *
464 464
      * @return string
465 465
      */
466
-    public function end_buffering( $content )
466
+    public function end_buffering($content)
467 467
     {
468 468
         // Bail early without modifying anything if we can't handle the content.
469
-        if ( ! $this->is_valid_buffer( $content ) ) {
469
+        if (!$this->is_valid_buffer($content)) {
470 470
             return $content;
471 471
         }
472 472
 
@@ -474,74 +474,74 @@  discard block
 block discarded – undo
474 474
 
475 475
         // Determine what needs to be ran.
476 476
         $classes = array();
477
-        if ( $conf->get( 'autoptimize_js' ) ) {
477
+        if ($conf->get('autoptimize_js')) {
478 478
             $classes[] = 'autoptimizeScripts';
479 479
         }
480
-        if ( $conf->get( 'autoptimize_css' ) ) {
480
+        if ($conf->get('autoptimize_css')) {
481 481
             $classes[] = 'autoptimizeStyles';
482 482
         }
483
-        if ( $conf->get( 'autoptimize_html' ) ) {
483
+        if ($conf->get('autoptimize_html')) {
484 484
             $classes[] = 'autoptimizeHTML';
485 485
         }
486 486
 
487 487
         $classoptions = array(
488 488
             'autoptimizeScripts' => array(
489
-                'aggregate'           => $conf->get( 'autoptimize_js_aggregate' ),
490
-                'defer_not_aggregate' => $conf->get( 'autoptimize_js_defer_not_aggregate' ),
491
-                'justhead'            => $conf->get( 'autoptimize_js_justhead' ),
492
-                'forcehead'           => $conf->get( 'autoptimize_js_forcehead' ),
493
-                'trycatch'            => $conf->get( 'autoptimize_js_trycatch' ),
494
-                'js_exclude'          => $conf->get( 'autoptimize_js_exclude' ),
495
-                'cdn_url'             => $conf->get( 'autoptimize_cdn_url' ),
496
-                'include_inline'      => $conf->get( 'autoptimize_js_include_inline' ),
497
-                'minify_excluded'     => $conf->get( 'autoptimize_minify_excluded' ),
489
+                'aggregate'           => $conf->get('autoptimize_js_aggregate'),
490
+                'defer_not_aggregate' => $conf->get('autoptimize_js_defer_not_aggregate'),
491
+                'justhead'            => $conf->get('autoptimize_js_justhead'),
492
+                'forcehead'           => $conf->get('autoptimize_js_forcehead'),
493
+                'trycatch'            => $conf->get('autoptimize_js_trycatch'),
494
+                'js_exclude'          => $conf->get('autoptimize_js_exclude'),
495
+                'cdn_url'             => $conf->get('autoptimize_cdn_url'),
496
+                'include_inline'      => $conf->get('autoptimize_js_include_inline'),
497
+                'minify_excluded'     => $conf->get('autoptimize_minify_excluded'),
498 498
             ),
499 499
             'autoptimizeStyles'  => array(
500
-                'aggregate'       => $conf->get( 'autoptimize_css_aggregate' ),
501
-                'justhead'        => $conf->get( 'autoptimize_css_justhead' ),
502
-                'datauris'        => $conf->get( 'autoptimize_css_datauris' ),
503
-                'defer'           => $conf->get( 'autoptimize_css_defer' ),
504
-                'defer_inline'    => $conf->get( 'autoptimize_css_defer_inline' ),
505
-                'inline'          => $conf->get( 'autoptimize_css_inline' ),
506
-                'css_exclude'     => $conf->get( 'autoptimize_css_exclude' ),
507
-                'cdn_url'         => $conf->get( 'autoptimize_cdn_url' ),
508
-                'include_inline'  => $conf->get( 'autoptimize_css_include_inline' ),
509
-                'nogooglefont'    => $conf->get( 'autoptimize_css_nogooglefont' ),
510
-                'minify_excluded' => $conf->get( 'autoptimize_minify_excluded' ),
500
+                'aggregate'       => $conf->get('autoptimize_css_aggregate'),
501
+                'justhead'        => $conf->get('autoptimize_css_justhead'),
502
+                'datauris'        => $conf->get('autoptimize_css_datauris'),
503
+                'defer'           => $conf->get('autoptimize_css_defer'),
504
+                'defer_inline'    => $conf->get('autoptimize_css_defer_inline'),
505
+                'inline'          => $conf->get('autoptimize_css_inline'),
506
+                'css_exclude'     => $conf->get('autoptimize_css_exclude'),
507
+                'cdn_url'         => $conf->get('autoptimize_cdn_url'),
508
+                'include_inline'  => $conf->get('autoptimize_css_include_inline'),
509
+                'nogooglefont'    => $conf->get('autoptimize_css_nogooglefont'),
510
+                'minify_excluded' => $conf->get('autoptimize_minify_excluded'),
511 511
             ),
512 512
             'autoptimizeHTML'    => array(
513
-                'keepcomments' => $conf->get( 'autoptimize_html_keepcomments' ),
513
+                'keepcomments' => $conf->get('autoptimize_html_keepcomments'),
514 514
             ),
515 515
         );
516 516
 
517
-        $content = apply_filters( 'autoptimize_filter_html_before_minify', $content );
517
+        $content = apply_filters('autoptimize_filter_html_before_minify', $content);
518 518
 
519 519
         // Run the classes!
520
-        foreach ( $classes as $name ) {
521
-            $instance = new $name( $content );
522
-            if ( $instance->read( $classoptions[ $name ] ) ) {
520
+        foreach ($classes as $name) {
521
+            $instance = new $name($content);
522
+            if ($instance->read($classoptions[$name])) {
523 523
                 $instance->minify();
524 524
                 $instance->cache();
525 525
                 $content = $instance->getcontent();
526 526
             }
527
-            unset( $instance );
527
+            unset($instance);
528 528
         }
529 529
 
530
-        $content = apply_filters( 'autoptimize_html_after_minify', $content );
530
+        $content = apply_filters('autoptimize_html_after_minify', $content);
531 531
 
532 532
         return $content;
533 533
     }
534 534
 
535
-    public static function autoptimize_nobuffer_optimize( $html_in ) {
535
+    public static function autoptimize_nobuffer_optimize($html_in) {
536 536
         $html_out = $html_in;
537 537
 
538
-        if ( apply_filters( 'autoptimize_filter_speedupper', true ) ) {
538
+        if (apply_filters('autoptimize_filter_speedupper', true)) {
539 539
             $ao_speedupper = new autoptimizeSpeedupper();
540 540
         }
541 541
 
542
-        $self = new self( AUTOPTIMIZE_PLUGIN_VERSION, AUTOPTIMIZE_PLUGIN_FILE );
543
-        if ( $self->should_buffer() ) {
544
-            $html_out = $self->end_buffering( $html_in );
542
+        $self = new self(AUTOPTIMIZE_PLUGIN_VERSION, AUTOPTIMIZE_PLUGIN_FILE);
543
+        if ($self->should_buffer()) {
544
+            $html_out = $self->end_buffering($html_in);
545 545
         }
546 546
         return $html_out;
547 547
     }
@@ -605,45 +605,45 @@  discard block
 block discarded – undo
605 605
             'autoptimize_ccss_unloadccss',
606 606
         );
607 607
 
608
-        if ( ! is_multisite() ) {
609
-            foreach ( $delete_options as $del_opt ) {
610
-                delete_option( $del_opt );
608
+        if (!is_multisite()) {
609
+            foreach ($delete_options as $del_opt) {
610
+                delete_option($del_opt);
611 611
             }
612 612
             autoptimizeMain::remove_cronjobs();
613 613
         } else {
614 614
             global $wpdb;
615
-            $blog_ids         = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" );
615
+            $blog_ids         = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
616 616
             $original_blog_id = get_current_blog_id();
617
-            foreach ( $blog_ids as $blog_id ) {
618
-                switch_to_blog( $blog_id );
619
-                foreach ( $delete_options as $del_opt ) {
620
-                    delete_option( $del_opt );
617
+            foreach ($blog_ids as $blog_id) {
618
+                switch_to_blog($blog_id);
619
+                foreach ($delete_options as $del_opt) {
620
+                    delete_option($del_opt);
621 621
                 }
622 622
                 autoptimizeMain::remove_cronjobs();
623 623
             }
624
-            switch_to_blog( $original_blog_id );
624
+            switch_to_blog($original_blog_id);
625 625
         }
626 626
 
627 627
         // Remove AO CCSS cached files and directory.
628
-        $ao_ccss_dir = WP_CONTENT_DIR . '/uploads/ao_ccss/';
629
-        if ( file_exists( $ao_ccss_dir ) && is_dir( $ao_ccss_dir ) ) {
628
+        $ao_ccss_dir = WP_CONTENT_DIR.'/uploads/ao_ccss/';
629
+        if (file_exists($ao_ccss_dir) && is_dir($ao_ccss_dir)) {
630 630
             // fixme: should check for subdirs when in multisite and remove contents of those as well.
631
-            array_map( 'unlink', glob( $ao_ccss_dir . '*.{css,html,json,log,zip,lock}', GLOB_BRACE ) );
632
-            rmdir( $ao_ccss_dir );
631
+            array_map('unlink', glob($ao_ccss_dir.'*.{css,html,json,log,zip,lock}', GLOB_BRACE));
632
+            rmdir($ao_ccss_dir);
633 633
         }
634 634
     }
635 635
 
636 636
     public static function on_deactivation()
637 637
     {
638
-        if ( is_multisite() && is_network_admin() ) {
638
+        if (is_multisite() && is_network_admin()) {
639 639
             global $wpdb;
640
-            $blog_ids         = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" );
640
+            $blog_ids         = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
641 641
             $original_blog_id = get_current_blog_id();
642
-            foreach ( $blog_ids as $blog_id ) {
643
-                switch_to_blog( $blog_id );
642
+            foreach ($blog_ids as $blog_id) {
643
+                switch_to_blog($blog_id);
644 644
                 autoptimizeMain::remove_cronjobs();
645 645
             }
646
-            switch_to_blog( $original_blog_id );
646
+            switch_to_blog($original_blog_id);
647 647
         } else {
648 648
             autoptimizeMain::remove_cronjobs();
649 649
         }
@@ -652,9 +652,9 @@  discard block
 block discarded – undo
652 652
 
653 653
     public static function remove_cronjobs() {
654 654
         // Remove scheduled events.
655
-        foreach ( array( 'ao_cachechecker', 'ao_ccss_queue', 'ao_ccss_maintenance' ) as $_event ) {
656
-            if ( wp_get_schedule( $_event ) ) {
657
-                wp_clear_scheduled_hook( $_event );
655
+        foreach (array('ao_cachechecker', 'ao_ccss_queue', 'ao_ccss_maintenance') as $_event) {
656
+            if (wp_get_schedule($_event)) {
657
+                wp_clear_scheduled_hook($_event);
658 658
             }
659 659
         }
660 660
     }
@@ -663,36 +663,36 @@  discard block
 block discarded – undo
663 663
     {
664 664
         echo '<div class="error"><p>';
665 665
         // Translators: %s is the cache directory location.
666
-        printf( __( 'Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize' ), AUTOPTIMIZE_CACHE_DIR );
666
+        printf(__('Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize'), AUTOPTIMIZE_CACHE_DIR);
667 667
         echo '</p></div>';
668 668
     }
669 669
 
670 670
     public static function notice_installed()
671 671
     {
672 672
         echo '<div class="updated"><p>';
673
-        _e( 'Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize' );
673
+        _e('Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize');
674 674
         echo '</p></div>';
675 675
     }
676 676
 
677 677
     public static function notice_updated()
678 678
     {
679 679
         echo '<div class="updated"><p>';
680
-        _e( 'Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize' );
680
+        _e('Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize');
681 681
         echo '</p></div>';
682 682
     }
683 683
 
684 684
     public static function notice_plug_imgopt()
685 685
     {
686 686
         // Translators: the URL added points to the Autopmize Extra settings.
687
-        $_ao_imgopt_plug_notice      = sprintf( __( 'Did you know Autoptimize includes on-the-fly image optimization (with support for WebP and AVIF) and CDN via ShortPixel? Check out the %1$sAutoptimize Image settings%2$s to activate this option.', 'autoptimize' ), '<a href="options-general.php?page=autoptimize_imgopt">', '</a>' );
688
-        $_ao_imgopt_plug_notice      = apply_filters( 'autoptimize_filter_main_imgopt_plug_notice', $_ao_imgopt_plug_notice );
687
+        $_ao_imgopt_plug_notice      = sprintf(__('Did you know Autoptimize includes on-the-fly image optimization (with support for WebP and AVIF) and CDN via ShortPixel? Check out the %1$sAutoptimize Image settings%2$s to activate this option.', 'autoptimize'), '<a href="options-general.php?page=autoptimize_imgopt">', '</a>');
688
+        $_ao_imgopt_plug_notice      = apply_filters('autoptimize_filter_main_imgopt_plug_notice', $_ao_imgopt_plug_notice);
689 689
         $_ao_imgopt_launch_ok        = autoptimizeImages::launch_ok_wrapper();
690 690
         $_ao_imgopt_plug_dismissible = 'ao-img-opt-plug-123';
691 691
         $_ao_imgopt_active           = autoptimizeImages::imgopt_active();
692
-        $_is_ao_settings_page        = ( str_replace( array( 'autoptimize', 'autoptimize_imgopt', 'ao_critcss', 'autoptimize_extra', 'ao_partners' ), '', $_SERVER['REQUEST_URI'] ) !== $_SERVER['REQUEST_URI'] ? true : false );
692
+        $_is_ao_settings_page        = (str_replace(array('autoptimize', 'autoptimize_imgopt', 'ao_critcss', 'autoptimize_extra', 'ao_partners'), '', $_SERVER['REQUEST_URI']) !== $_SERVER['REQUEST_URI'] ? true : false);
693 693
 
694
-        if ( current_user_can( 'manage_options' ) && $_is_ao_settings_page && '' !== $_ao_imgopt_plug_notice && ! $_ao_imgopt_active && $_ao_imgopt_launch_ok && PAnD::is_admin_notice_active( $_ao_imgopt_plug_dismissible ) ) {
695
-            echo '<div class="notice notice-info is-dismissible" data-dismissible="' . $_ao_imgopt_plug_dismissible . '"><p>';
694
+        if (current_user_can('manage_options') && $_is_ao_settings_page && '' !== $_ao_imgopt_plug_notice && !$_ao_imgopt_active && $_ao_imgopt_launch_ok && PAnD::is_admin_notice_active($_ao_imgopt_plug_dismissible)) {
695
+            echo '<div class="notice notice-info is-dismissible" data-dismissible="'.$_ao_imgopt_plug_dismissible.'"><p>';
696 696
             echo $_ao_imgopt_plug_notice;
697 697
             echo '</p></div>';
698 698
         }
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
-            autoptimizeOptionWrapper::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', autoptimizeOptionWrapper::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
+            autoptimizeOptionWrapper::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', autoptimizeOptionWrapper::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) autoptimizeOptionWrapper::get_option( 'autoptimize_cachesize_notice', false ) && current_user_can( 'manage_options' ) ) {
90
+        if ((bool) autoptimizeOptionWrapper::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
-            autoptimizeOptionWrapper::update_option( 'autoptimize_cachesize_notice', false );
94
+            autoptimizeOptionWrapper::update_option('autoptimize_cachesize_notice', false);
95 95
         }
96 96
 
97 97
         // Notice for image proxy usage.
98 98
         $_imgopt_notice = autoptimizeImages::instance()->get_imgopt_status_notice_wrapper();
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, -3 ) ) ) {
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, -3))) {
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><strong>' . __( 'Autoptimize', 'autoptimize' ) . '</strong>: ' . $_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><strong>'.__('Autoptimize', 'autoptimize').'</strong>: '.$_imgopt_notice['notice'].'</p></div>';
111 111
             }
112 112
         }
113 113
     }
Please login to merge, or discard this patch.
classes/autoptimizePartners.php 1 patch
Spacing   +31 added lines, -31 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  * addons and/or affiliate services.
5 5
  */
6 6
 
7
-if ( ! defined( 'ABSPATH' ) ) {
7
+if (!defined('ABSPATH')) {
8 8
     exit;
9 9
 }
10 10
 
@@ -17,68 +17,68 @@  discard block
 block discarded – undo
17 17
 
18 18
     public function run()
19 19
     {
20
-        if ( $this->enabled() ) {
21
-            add_filter( 'autoptimize_filter_settingsscreen_tabs', array( $this, 'add_partner_tabs' ), 10, 1 );
20
+        if ($this->enabled()) {
21
+            add_filter('autoptimize_filter_settingsscreen_tabs', array($this, 'add_partner_tabs'), 10, 1);
22 22
         }
23
-        if ( is_multisite() && is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network() ) {
24
-            add_action( 'network_admin_menu', array( $this, 'add_admin_menu' ) );
23
+        if (is_multisite() && is_network_admin() && autoptimizeOptionWrapper::is_ao_active_for_network()) {
24
+            add_action('network_admin_menu', array($this, 'add_admin_menu'));
25 25
         } else {
26
-            add_action( 'admin_menu', array( $this, 'add_admin_menu' ) );
26
+            add_action('admin_menu', array($this, 'add_admin_menu'));
27 27
         }
28 28
     }
29 29
 
30 30
     protected function enabled()
31 31
     {
32
-        return apply_filters( 'autoptimize_filter_show_partner_tabs', true );
32
+        return apply_filters('autoptimize_filter_show_partner_tabs', true);
33 33
     }
34 34
 
35
-    public function add_partner_tabs( $in )
35
+    public function add_partner_tabs($in)
36 36
     {
37
-        $in = array_merge( $in, array(
38
-            'ao_partners' => __( 'Optimize More!', 'autoptimize' ),
39
-        ) );
37
+        $in = array_merge($in, array(
38
+            'ao_partners' => __('Optimize More!', 'autoptimize'),
39
+        ));
40 40
 
41 41
         return $in;
42 42
     }
43 43
 
44 44
     public function add_admin_menu()
45 45
     {
46
-        if ( $this->enabled() ) {
47
-            add_submenu_page( null, 'AO partner', 'AO partner', 'manage_options', 'ao_partners', array( $this, 'ao_partners_page' ) );
46
+        if ($this->enabled()) {
47
+            add_submenu_page(null, 'AO partner', 'AO partner', 'manage_options', 'ao_partners', array($this, 'ao_partners_page'));
48 48
         }
49 49
     }
50 50
 
51 51
     protected function get_ao_partner_feed_markup()
52 52
     {
53
-        $no_feed_text = __( 'Have a look at <a href="http://optimizingmatters.com/">optimizingmatters.com</a> for Autoptimize power-ups!', 'autoptimize' );
53
+        $no_feed_text = __('Have a look at <a href="http://optimizingmatters.com/">optimizingmatters.com</a> for Autoptimize power-ups!', 'autoptimize');
54 54
         $output       = '';
55
-        if ( apply_filters( 'autoptimize_settingsscreen_remotehttp', true ) ) {
56
-            $rss      = fetch_feed( 'http://feeds.feedburner.com/OptimizingMattersDownloads' );
55
+        if (apply_filters('autoptimize_settingsscreen_remotehttp', true)) {
56
+            $rss      = fetch_feed('http://feeds.feedburner.com/OptimizingMattersDownloads');
57 57
             $maxitems = 0;
58 58
 
59
-            if ( ! is_wp_error( $rss ) ) {
60
-                $maxitems  = $rss->get_item_quantity( 20 );
61
-                $rss_items = $rss->get_items( 0, $maxitems );
59
+            if (!is_wp_error($rss)) {
60
+                $maxitems  = $rss->get_item_quantity(20);
61
+                $rss_items = $rss->get_items(0, $maxitems);
62 62
             }
63 63
 
64
-            if ( 0 == $maxitems ) {
64
+            if (0 == $maxitems) {
65 65
                 $output .= $no_feed_text;
66 66
             } else {
67 67
                 $output .= '<ul>';
68
-                foreach ( $rss_items as $item ) {
69
-                    $item_url  = esc_url( $item->get_permalink() );
68
+                foreach ($rss_items as $item) {
69
+                    $item_url  = esc_url($item->get_permalink());
70 70
                     $enclosure = $item->get_enclosure();
71 71
 
72 72
                     $output .= '<li class="itemDetail">';
73
-                    $output .= '<h3 class="itemTitle"><a href="' . $item_url . '" target="_blank">' . esc_html( $item->get_title() ) . '</a></h3>';
73
+                    $output .= '<h3 class="itemTitle"><a href="'.$item_url.'" target="_blank">'.esc_html($item->get_title()).'</a></h3>';
74 74
 
75
-                    if ( $enclosure && ( false !== strpos( $enclosure->get_type(), 'image' ) ) ) {
76
-                        $img_url = esc_url( $enclosure->get_link() );
77
-                        $output .= '<div class="itemImage"><a href="' . $item_url . '" target="_blank"><img src="' . $img_url . '"></a></div>';
75
+                    if ($enclosure && (false !== strpos($enclosure->get_type(), 'image'))) {
76
+                        $img_url = esc_url($enclosure->get_link());
77
+                        $output .= '<div class="itemImage"><a href="'.$item_url.'" target="_blank"><img src="'.$img_url.'"></a></div>';
78 78
                     }
79 79
 
80
-                    $output .= '<div class="itemDescription">' . wp_kses_post( $item->get_description() ) . '</div>';
81
-                    $output .= '<div class="itemButtonRow"><div class="itemButton button-secondary"><a href="' . $item_url . '" target="_blank">' . __( 'More info', 'autoptimize' ) . '</a></div></div>';
80
+                    $output .= '<div class="itemDescription">'.wp_kses_post($item->get_description()).'</div>';
81
+                    $output .= '<div class="itemButtonRow"><div class="itemButton button-secondary"><a href="'.$item_url.'" target="_blank">'.__('More info', 'autoptimize').'</a></div></div>';
82 82
                     $output .= '</li>';
83 83
                 }
84 84
                 $output .= '</ul>';
@@ -136,11 +136,11 @@  discard block
 block discarded – undo
136 136
         color: #23282d;
137 137
     }
138 138
     </style>
139
-    <script>document.title = "Autoptimize: <?php _e( 'Optimize More!', 'autoptimize' ); ?> " + document.title;</script>
139
+    <script>document.title = "Autoptimize: <?php _e('Optimize More!', 'autoptimize'); ?> " + document.title;</script>
140 140
     <div class="wrap">
141
-        <h1><?php _e( 'Autoptimize Settings', 'autoptimize' ); ?></h1>
141
+        <h1><?php _e('Autoptimize Settings', 'autoptimize'); ?></h1>
142 142
         <?php echo autoptimizeConfig::ao_admin_tabs(); ?>
143
-        <?php echo '<h2>' . __( "These Autoptimize power-ups and related services will improve your site's performance even more!", 'autoptimize' ) . '</h2>'; ?>
143
+        <?php echo '<h2>'.__("These Autoptimize power-ups and related services will improve your site's performance even more!", 'autoptimize').'</h2>'; ?>
144 144
         <div>
145 145
             <?php echo $this->get_ao_partner_feed_markup(); ?>
146 146
         </div>
Please login to merge, or discard this patch.
classes/autoptimizeOptionWrapper.php 1 patch
Spacing   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Autoptimize options handler.
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -21,8 +21,8 @@  discard block
 block discarded – undo
21 21
      * Ensure that is_plugin_active_for_network function is declared.
22 22
      */
23 23
     public static function maybe_include_plugin_functions() {
24
-        if ( ! function_exists( 'is_plugin_active_for_network' ) ) {
25
-            include_once ABSPATH . 'wp-admin/includes/plugin.php';
24
+        if (!function_exists('is_plugin_active_for_network')) {
25
+            include_once ABSPATH.'wp-admin/includes/plugin.php';
26 26
         }
27 27
     }
28 28
 
@@ -33,19 +33,19 @@  discard block
 block discarded – undo
33 33
      * @param mixed  $default Optional. Default value to return if the option does not exist.
34 34
      * @return mixed Value set for the option.
35 35
      */
36
-    public static function get_option( $option, $default = false ) {
36
+    public static function get_option($option, $default = false) {
37 37
         // This is always a network setting, it is on by default to ensure settings are available at site level unless explicitly turned off.
38
-        if ( 'autoptimize_enable_site_config' === $option ) {
39
-            return get_network_option( get_main_network_id(), $option, 'on' );
38
+        if ('autoptimize_enable_site_config' === $option) {
39
+            return get_network_option(get_main_network_id(), $option, 'on');
40 40
         }
41 41
 
42 42
         // If the plugin is network activated and our per site setting is not on, use the network configuration.
43
-        $configuration_per_site = get_network_option( get_main_network_id(), 'autoptimize_enable_site_config', 'on' );
44
-        if ( self::is_ao_active_for_network() && ( 'on' !== $configuration_per_site || is_network_admin() ) ) {
45
-            return get_network_option( get_main_network_id(), $option, $default );
43
+        $configuration_per_site = get_network_option(get_main_network_id(), 'autoptimize_enable_site_config', 'on');
44
+        if (self::is_ao_active_for_network() && ('on' !== $configuration_per_site || is_network_admin())) {
45
+            return get_network_option(get_main_network_id(), $option, $default);
46 46
         }
47 47
 
48
-        return get_option( $option, $default );
48
+        return get_option($option, $default);
49 49
     }
50 50
 
51 51
     /**
@@ -59,11 +59,11 @@  discard block
 block discarded – undo
59 59
      *                              the default value is 'yes'. Default null.
60 60
      * @return bool False if value was not updated and true if value was updated.
61 61
      */
62
-    public static function update_option( $option, $value, $autoload = null ) {
63
-        if ( self::is_ao_active_for_network() && is_network_admin() ) {
64
-            return update_network_option( get_main_network_id(), $option, $value );
65
-        } elseif ( 'autoptimize_enable_site_config' !== $option ) {
66
-            return update_option( $option, $value, $autoload );
62
+    public static function update_option($option, $value, $autoload = null) {
63
+        if (self::is_ao_active_for_network() && is_network_admin()) {
64
+            return update_network_option(get_main_network_id(), $option, $value);
65
+        } elseif ('autoptimize_enable_site_config' !== $option) {
66
+            return update_option($option, $value, $autoload);
67 67
         }
68 68
     }
69 69
 
@@ -72,8 +72,8 @@  discard block
 block discarded – undo
72 72
      * in that case, take care of multisite case.
73 73
      */
74 74
     public static function check_multisite_on_saving_options() {
75
-        if ( self::is_ao_active_for_network() ) {
76
-            add_filter( 'pre_update_option', 'autoptimizeOptionWrapper::update_autoptimize_option_on_network', 10, 3 );
75
+        if (self::is_ao_active_for_network()) {
76
+            add_filter('pre_update_option', 'autoptimizeOptionWrapper::update_autoptimize_option_on_network', 10, 3);
77 77
         }
78 78
     }
79 79
 
@@ -84,16 +84,16 @@  discard block
 block discarded – undo
84 84
      * @param string $option    Option name.
85 85
      * @param string $old_value Old value.
86 86
      */
87
-    public static function update_autoptimize_option_on_network( $value, $option, $old_value ) {
88
-        if ( strpos( $option, 'autoptimize_' ) === 0 && self::is_options_from_network_admin() ) {
89
-            if ( self::is_ao_active_for_network() ) {
90
-                update_network_option( get_main_network_id(), $option, $value );
87
+    public static function update_autoptimize_option_on_network($value, $option, $old_value) {
88
+        if (strpos($option, 'autoptimize_') === 0 && self::is_options_from_network_admin()) {
89
+            if (self::is_ao_active_for_network()) {
90
+                update_network_option(get_main_network_id(), $option, $value);
91 91
                 // Return old value, to stop update_option logic.
92 92
                 return $old_value;
93 93
             }
94
-            if ( apply_filters( 'autoptimize_filter_optionwrapper_wp_cache_delete', false ) ) {
94
+            if (apply_filters('autoptimize_filter_optionwrapper_wp_cache_delete', false)) {
95 95
                 // in some (rare) cases options seem to get stuck in WP's Object cache, this should clear it there.
96
-                wp_cache_delete( $option );
96
+                wp_cache_delete($option);
97 97
             }
98 98
         }
99 99
         return $value;
@@ -107,8 +107,8 @@  discard block
 block discarded – undo
107 107
     public static function is_options_from_network_admin() {
108 108
         static $_really_is_network_admin = null;
109 109
 
110
-        if ( null === $_really_is_network_admin ) {
111
-            if ( array_key_exists( '_wp_http_referer', $_POST ) && strpos( network_admin_url( 'settings.php' ), strtok( $_POST['_wp_http_referer'], '?' ) ) !== false ) {
110
+        if (null === $_really_is_network_admin) {
111
+            if (array_key_exists('_wp_http_referer', $_POST) && strpos(network_admin_url('settings.php'), strtok($_POST['_wp_http_referer'], '?')) !== false) {
112 112
                 $_really_is_network_admin = true;
113 113
             } else {
114 114
                 $_really_is_network_admin = false;
@@ -123,9 +123,9 @@  discard block
 block discarded – undo
123 123
      */
124 124
     public static function is_ao_active_for_network() {
125 125
         static $_is_ao_active_for_network = null;
126
-        if ( null === $_is_ao_active_for_network || defined( 'TEST_MULTISITE_FORCE_AO_ON_NETWORK' ) ) {
126
+        if (null === $_is_ao_active_for_network || defined('TEST_MULTISITE_FORCE_AO_ON_NETWORK')) {
127 127
             self::maybe_include_plugin_functions();
128
-            if ( is_plugin_active_for_network( 'autoptimize/autoptimize.php' ) || is_plugin_active_for_network( 'autoptimize-beta/autoptimize.php' ) || defined( 'TEST_MULTISITE_FORCE_AO_ON_NETWORK' ) ) {
128
+            if (is_plugin_active_for_network('autoptimize/autoptimize.php') || is_plugin_active_for_network('autoptimize-beta/autoptimize.php') || defined('TEST_MULTISITE_FORCE_AO_ON_NETWORK')) {
129 129
                 $_is_ao_active_for_network = true;
130 130
             } else {
131 131
                 $_is_ao_active_for_network = false;
Please login to merge, or discard this patch.
classes/autoptimizeCriticalCSSCore.php 2 patches
Doc Comments   +6 added lines patch added patch discarded remove patch
@@ -335,6 +335,9 @@  discard block
 block discarded – undo
335 335
         }
336 336
     }
337 337
 
338
+    /**
339
+     * @param boolean $render
340
+     */
338 341
     public static function ao_ccss_key_status( $render ) {
339 342
         // Provide key status
340 343
         // Get key and key status.
@@ -539,6 +542,9 @@  discard block
 block discarded – undo
539 542
         return true;
540 543
     }
541 544
 
545
+    /**
546
+     * @param integer $lvl
547
+     */
542 548
     public static function ao_ccss_log( $msg, $lvl ) {
543 549
         // Commom logging facility
544 550
         // Attach debug option.
Please login to merge, or discard this patch.
Spacing   +152 added lines, -152 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@  discard block
 block discarded – undo
4 4
  * gets called by AO core, checks the rules and if a matching rule is found returns the associated CCSS.
5 5
  */
6 6
 
7
-if ( ! defined( 'ABSPATH' ) ) {
7
+if (!defined('ABSPATH')) {
8 8
     exit;
9 9
 }
10 10
 
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
     {
14 14
         // fetch all options at once and populate them individually explicitely as globals.
15 15
         $all_options = autoptimizeCriticalCSSBase::fetch_options();
16
-        foreach ( $all_options as $_option => $_value ) {
16
+        foreach ($all_options as $_option => $_value) {
17 17
             global ${$_option};
18 18
             ${$_option} = $_value;
19 19
         }
@@ -28,28 +28,28 @@  discard block
 block discarded – undo
28 28
         global $ao_ccss_unloadccss;
29 29
 
30 30
         // add all filters to do CCSS if key present.
31
-        if ( $ao_css_defer && isset( $ao_ccss_key ) && ! empty( $ao_ccss_key ) ) {
31
+        if ($ao_css_defer && isset($ao_ccss_key) && !empty($ao_ccss_key)) {
32 32
             // Set AO behavior: disable minification to avoid double minifying and caching.
33
-            add_filter( 'autoptimize_filter_css_critcss_minify', '__return_false' );
34
-            add_filter( 'autoptimize_filter_css_defer_inline', array( $this, 'ao_ccss_frontend' ), 10, 1 );
33
+            add_filter('autoptimize_filter_css_critcss_minify', '__return_false');
34
+            add_filter('autoptimize_filter_css_defer_inline', array($this, 'ao_ccss_frontend'), 10, 1);
35 35
 
36 36
             // Add the action to enqueue jobs for CriticalCSS cron.
37
-            add_action( 'autoptimize_action_css_hash', array( 'autoptimizeCriticalCSSEnqueue', 'ao_ccss_enqueue' ), 10, 1 );
37
+            add_action('autoptimize_action_css_hash', array('autoptimizeCriticalCSSEnqueue', 'ao_ccss_enqueue'), 10, 1);
38 38
 
39 39
             // conditionally add the filter to defer jquery and others.
40
-            if ( $ao_ccss_deferjquery ) {
41
-                add_filter( 'autoptimize_html_after_minify', array( $this, 'ao_ccss_defer_jquery' ), 11, 1 );
40
+            if ($ao_ccss_deferjquery) {
41
+                add_filter('autoptimize_html_after_minify', array($this, 'ao_ccss_defer_jquery'), 11, 1);
42 42
             }
43 43
 
44 44
             // conditionally add filter to unload the CCSS.
45
-            if ( $ao_ccss_unloadccss ) {
46
-                add_filter( 'autoptimize_html_after_minify', array( $this, 'ao_ccss_unloadccss' ), 12, 1 );
45
+            if ($ao_ccss_unloadccss) {
46
+                add_filter('autoptimize_html_after_minify', array($this, 'ao_ccss_unloadccss'), 12, 1);
47 47
             }
48 48
 
49 49
             // Order paths by length, as longest ones have greater priority in the rules.
50
-            if ( ! empty( $ao_ccss_rules['paths'] ) ) {
51
-                $keys = array_map( 'strlen', array_keys( $ao_ccss_rules['paths'] ) );
52
-                array_multisort( $keys, SORT_DESC, $ao_ccss_rules['paths'] );
50
+            if (!empty($ao_ccss_rules['paths'])) {
51
+                $keys = array_map('strlen', array_keys($ao_ccss_rules['paths']));
52
+                array_multisort($keys, SORT_DESC, $ao_ccss_rules['paths']);
53 53
             }
54 54
 
55 55
             // Add an array with default WordPress's conditional tags
@@ -58,14 +58,14 @@  discard block
 block discarded – undo
58 58
             $ao_ccss_types = $this->get_ao_ccss_core_types();
59 59
 
60 60
             // Extend conditional tags on plugin initalization.
61
-            add_action( apply_filters( 'autoptimize_filter_ccss_extend_types_hook', 'init' ), array( $this, 'ao_ccss_extend_types' ) );
61
+            add_action(apply_filters('autoptimize_filter_ccss_extend_types_hook', 'init'), array($this, 'ao_ccss_extend_types'));
62 62
 
63 63
             // When autoptimize cache is cleared, also clear transient cache for page templates.
64
-            add_action( 'autoptimize_action_cachepurged', array( 'autoptimizeCriticalCSSCore', 'ao_ccss_clear_page_tpl_cache' ), 10, 0 );
64
+            add_action('autoptimize_action_cachepurged', array('autoptimizeCriticalCSSCore', 'ao_ccss_clear_page_tpl_cache'), 10, 0);
65 65
         }
66 66
     }
67 67
 
68
-    public function ao_ccss_frontend( $inlined ) {
68
+    public function ao_ccss_frontend($inlined) {
69 69
         // Apply CriticalCSS to frontend pages
70 70
         // Attach types and settings arrays.
71 71
         global $ao_ccss_types;
@@ -76,23 +76,23 @@  discard block
 block discarded – undo
76 76
         global $ao_ccss_keyst;
77 77
 
78 78
         $no_ccss = '';
79
-        $ao_ccss_additional = autoptimizeStyles::sanitize_css( $ao_ccss_additional );
79
+        $ao_ccss_additional = autoptimizeStyles::sanitize_css($ao_ccss_additional);
80 80
 
81 81
         // Only if keystatus is OK and option to add CCSS for logged on users is on or user is not logged in.
82
-        if ( ( $ao_ccss_keyst && 2 == $ao_ccss_keyst ) && ( $ao_ccss_loggedin || ! is_user_logged_in() ) ) {
82
+        if (($ao_ccss_keyst && 2 == $ao_ccss_keyst) && ($ao_ccss_loggedin || !is_user_logged_in())) {
83 83
             // Check for a valid CriticalCSS based on path to return its contents.
84
-            $req_path = strtok( $_SERVER['REQUEST_URI'], '?' );
85
-            if ( ! empty( $ao_ccss_rules['paths'] ) ) {
86
-                foreach ( $ao_ccss_rules['paths'] as $path => $rule ) {
84
+            $req_path = strtok($_SERVER['REQUEST_URI'], '?');
85
+            if (!empty($ao_ccss_rules['paths'])) {
86
+                foreach ($ao_ccss_rules['paths'] as $path => $rule) {
87 87
                     // explicit match OR partial match if MANUAL rule.
88
-                    if ( $req_path == $path || urldecode( $req_path ) == $path || ( false == $rule['hash'] && false != $rule['file'] && strpos( $req_path, str_replace( site_url(), '', $path ) ) !== false ) ) {
89
-                        if ( file_exists( AO_CCSS_DIR . $rule['file'] ) ) {
90
-                            $_ccss_contents = file_get_contents( AO_CCSS_DIR . $rule['file'] );
91
-                            if ( 'none' != $_ccss_contents ) {
92
-                                if ( $ao_ccss_debug ) {
93
-                                    $_ccss_contents = '/* PATH: ' . $path . ' hash: ' . $rule['hash'] . ' file: ' . $rule['file'] . ' */ ' . $_ccss_contents;
88
+                    if ($req_path == $path || urldecode($req_path) == $path || (false == $rule['hash'] && false != $rule['file'] && strpos($req_path, str_replace(site_url(), '', $path)) !== false)) {
89
+                        if (file_exists(AO_CCSS_DIR.$rule['file'])) {
90
+                            $_ccss_contents = file_get_contents(AO_CCSS_DIR.$rule['file']);
91
+                            if ('none' != $_ccss_contents) {
92
+                                if ($ao_ccss_debug) {
93
+                                    $_ccss_contents = '/* PATH: '.$path.' hash: '.$rule['hash'].' file: '.$rule['file'].' */ '.$_ccss_contents;
94 94
                                 }
95
-                                return apply_filters( 'autoptimize_filter_ccss_core_ccss', $_ccss_contents . $ao_ccss_additional );
95
+                                return apply_filters('autoptimize_filter_ccss_core_ccss', $_ccss_contents.$ao_ccss_additional);
96 96
                             } else {
97 97
                                 $no_ccss = 'none';
98 98
                             }
@@ -102,55 +102,55 @@  discard block
 block discarded – undo
102 102
             }
103 103
 
104 104
             // Check for a valid CriticalCSS based on conditional tags to return its contents.
105
-            if ( ! empty( $ao_ccss_rules['types'] ) && 'none' !== $no_ccss ) {
105
+            if (!empty($ao_ccss_rules['types']) && 'none' !== $no_ccss) {
106 106
                 // order types-rules by the order of the original $ao_ccss_types array so as not to depend on the order in which rules were added.
107
-                $ao_ccss_rules['types'] = array_replace( array_intersect_key( array_flip( $ao_ccss_types ), $ao_ccss_rules['types'] ), $ao_ccss_rules['types'] );
107
+                $ao_ccss_rules['types'] = array_replace(array_intersect_key(array_flip($ao_ccss_types), $ao_ccss_rules['types']), $ao_ccss_rules['types']);
108 108
                 $is_front_page          = is_front_page();
109 109
 
110
-                foreach ( $ao_ccss_rules['types'] as $type => $rule ) {
111
-                    if ( in_array( $type, $ao_ccss_types ) && file_exists( AO_CCSS_DIR . $rule['file'] ) ) {
112
-                        $_ccss_contents = file_get_contents( AO_CCSS_DIR . $rule['file'] );
113
-                        if ( $is_front_page && 'is_front_page' == $type ) {
114
-                            if ( 'none' != $_ccss_contents ) {
115
-                                if ( $ao_ccss_debug ) {
116
-                                    $_ccss_contents = '/* TYPES: ' . $type . ' hash: ' . $rule['hash'] . ' file: ' . $rule['file'] . ' */ ' . $_ccss_contents;
110
+                foreach ($ao_ccss_rules['types'] as $type => $rule) {
111
+                    if (in_array($type, $ao_ccss_types) && file_exists(AO_CCSS_DIR.$rule['file'])) {
112
+                        $_ccss_contents = file_get_contents(AO_CCSS_DIR.$rule['file']);
113
+                        if ($is_front_page && 'is_front_page' == $type) {
114
+                            if ('none' != $_ccss_contents) {
115
+                                if ($ao_ccss_debug) {
116
+                                    $_ccss_contents = '/* TYPES: '.$type.' hash: '.$rule['hash'].' file: '.$rule['file'].' */ '.$_ccss_contents;
117 117
                                 }
118
-                                return apply_filters( 'autoptimize_filter_ccss_core_ccss', $_ccss_contents . $ao_ccss_additional );
118
+                                return apply_filters('autoptimize_filter_ccss_core_ccss', $_ccss_contents.$ao_ccss_additional);
119 119
                             } else {
120 120
                                 $no_ccss = 'none';
121 121
                             }
122
-                        } elseif ( strpos( $type, 'custom_post_' ) === 0 && ! $is_front_page ) {
123
-                            if ( get_post_type( get_the_ID() ) === substr( $type, 12 ) ) {
124
-                                if ( 'none' != $_ccss_contents ) {
125
-                                    if ( $ao_ccss_debug ) {
126
-                                        $_ccss_contents = '/* TYPES: ' . $type . ' hash: ' . $rule['hash'] . ' file: ' . $rule['file'] . ' */ ' . $_ccss_contents;
122
+                        } elseif (strpos($type, 'custom_post_') === 0 && !$is_front_page) {
123
+                            if (get_post_type(get_the_ID()) === substr($type, 12)) {
124
+                                if ('none' != $_ccss_contents) {
125
+                                    if ($ao_ccss_debug) {
126
+                                        $_ccss_contents = '/* TYPES: '.$type.' hash: '.$rule['hash'].' file: '.$rule['file'].' */ '.$_ccss_contents;
127 127
                                     }
128
-                                    return apply_filters( 'autoptimize_filter_ccss_core_ccss', $_ccss_contents . $ao_ccss_additional );
128
+                                    return apply_filters('autoptimize_filter_ccss_core_ccss', $_ccss_contents.$ao_ccss_additional);
129 129
                                 } else {
130 130
                                     $no_ccss = 'none';
131 131
                                 }
132 132
                             }
133
-                        } elseif ( 0 === strpos( $type, 'template_' ) && ! $is_front_page ) {
134
-                            if ( is_page_template( substr( $type, 9 ) ) ) {
135
-                                if ( 'none' != $_ccss_contents ) {
136
-                                    if ( $ao_ccss_debug ) {
137
-                                        $_ccss_contents = '/* TYPES: ' . $type . ' hash: ' . $rule['hash'] . ' file: ' . $rule['file'] . ' */ ' . $_ccss_contents;
133
+                        } elseif (0 === strpos($type, 'template_') && !$is_front_page) {
134
+                            if (is_page_template(substr($type, 9))) {
135
+                                if ('none' != $_ccss_contents) {
136
+                                    if ($ao_ccss_debug) {
137
+                                        $_ccss_contents = '/* TYPES: '.$type.' hash: '.$rule['hash'].' file: '.$rule['file'].' */ '.$_ccss_contents;
138 138
                                     }
139
-                                    return apply_filters( 'autoptimize_filter_ccss_core_ccss', $_ccss_contents . $ao_ccss_additional );
139
+                                    return apply_filters('autoptimize_filter_ccss_core_ccss', $_ccss_contents.$ao_ccss_additional);
140 140
                                 } else {
141 141
                                     $no_ccss = 'none';
142 142
                                 }
143 143
                             }
144
-                        } elseif ( ! $is_front_page ) {
144
+                        } elseif (!$is_front_page) {
145 145
                             // all "normal" conditional tags, core + woo + buddypress + edd + bbpress
146 146
                             // but we have to remove the prefix for the non-core ones for them to function.
147
-                            $type = str_replace( array( 'woo_', 'bp_', 'bbp_', 'edd_' ), '', $type );
148
-                            if ( function_exists( $type ) && call_user_func( $type ) ) {
149
-                                if ( 'none' != $_ccss_contents ) {
150
-                                    if ( $ao_ccss_debug ) {
151
-                                        $_ccss_contents = '/* TYPES: ' . $type . ' hash: ' . $rule['hash'] . ' file: ' . $rule['file'] . ' */ ' . $_ccss_contents;
147
+                            $type = str_replace(array('woo_', 'bp_', 'bbp_', 'edd_'), '', $type);
148
+                            if (function_exists($type) && call_user_func($type)) {
149
+                                if ('none' != $_ccss_contents) {
150
+                                    if ($ao_ccss_debug) {
151
+                                        $_ccss_contents = '/* TYPES: '.$type.' hash: '.$rule['hash'].' file: '.$rule['file'].' */ '.$_ccss_contents;
152 152
                                     }
153
-                                    return apply_filters( 'autoptimize_filter_ccss_core_ccss', $_ccss_contents . $ao_ccss_additional );
153
+                                    return apply_filters('autoptimize_filter_ccss_core_ccss', $_ccss_contents.$ao_ccss_additional);
154 154
                                 } else {
155 155
                                     $no_ccss = 'none';
156 156
                                 }
@@ -163,45 +163,45 @@  discard block
 block discarded – undo
163 163
 
164 164
         // Finally, inline the default CriticalCSS if any or else the entire CSS for the page
165 165
         // This also applies to logged in users if the option to add CCSS for logged in users has been disabled.
166
-        if ( ! empty( $inlined ) && 'none' !== $no_ccss ) {
167
-            return apply_filters( 'autoptimize_filter_ccss_core_ccss', $inlined . $ao_ccss_additional );
166
+        if (!empty($inlined) && 'none' !== $no_ccss) {
167
+            return apply_filters('autoptimize_filter_ccss_core_ccss', $inlined.$ao_ccss_additional);
168 168
         } else {
169
-            add_filter( 'autoptimize_filter_css_inline', '__return_true' );
169
+            add_filter('autoptimize_filter_css_inline', '__return_true');
170 170
             return;
171 171
         }
172 172
     }
173 173
 
174
-    public function ao_ccss_defer_jquery( $in ) {
174
+    public function ao_ccss_defer_jquery($in) {
175 175
         global $ao_ccss_loggedin;
176 176
         // defer all linked and inline JS.
177
-        if ( ( ! is_user_logged_in() || $ao_ccss_loggedin ) && preg_match_all( '#<script.*>(.*)</script>#Usmi', $in, $matches, PREG_SET_ORDER ) ) {
178
-            foreach ( $matches as $match ) {
179
-                if ( str_replace( apply_filters( 'autoptimize_filter_ccss_core_defer_exclude', array( 'data-noptimize="1"', 'data-cfasync="false"', 'data-pagespeed-no-defer' ) ), '', $match[0] ) !== $match[0] ) {
177
+        if ((!is_user_logged_in() || $ao_ccss_loggedin) && preg_match_all('#<script.*>(.*)</script>#Usmi', $in, $matches, PREG_SET_ORDER)) {
178
+            foreach ($matches as $match) {
179
+                if (str_replace(apply_filters('autoptimize_filter_ccss_core_defer_exclude', array('data-noptimize="1"', 'data-cfasync="false"', 'data-pagespeed-no-defer')), '', $match[0]) !== $match[0]) {
180 180
                     // do not touch JS with noptimize/ cfasync/ pagespeed-no-defer flags.
181 181
                     continue;
182
-                } elseif ( '' !== $match[1] && ( ! preg_match( '/<script.* type\s?=.*>/', $match[0] ) || preg_match( '/type\s*=\s*[\'"]?(?:text|application)\/(?:javascript|ecmascript)[\'"]?/i', $match[0] ) ) ) {
182
+                } elseif ('' !== $match[1] && (!preg_match('/<script.* type\s?=.*>/', $match[0]) || preg_match('/type\s*=\s*[\'"]?(?:text|application)\/(?:javascript|ecmascript)[\'"]?/i', $match[0]))) {
183 183
                     // base64-encode and defer all inline JS.
184
-                    $base64_js = '<script defer src="data:text/javascript;base64,' . base64_encode( $match[1] ) . '"></script>';
185
-                    $in        = str_replace( $match[0], $base64_js, $in );
186
-                } elseif ( str_replace( array( ' defer', ' async' ), '', $match[0] ) === $match[0] ) {
184
+                    $base64_js = '<script defer src="data:text/javascript;base64,'.base64_encode($match[1]).'"></script>';
185
+                    $in        = str_replace($match[0], $base64_js, $in);
186
+                } elseif (str_replace(array(' defer', ' async'), '', $match[0]) === $match[0]) {
187 187
                     // and defer linked JS unless already deferred or asynced.
188
-                    $new_match = str_replace( '<script ', '<script defer ', $match[0] );
189
-                    $in        = str_replace( $match[0], $new_match, $in );
188
+                    $new_match = str_replace('<script ', '<script defer ', $match[0]);
189
+                    $in        = str_replace($match[0], $new_match, $in);
190 190
                 }
191 191
             }
192 192
         }
193 193
         return $in;
194 194
     }
195 195
 
196
-    public function ao_ccss_unloadccss( $html_in ) {
196
+    public function ao_ccss_unloadccss($html_in) {
197 197
         // set media attrib of inline CCSS to none at onLoad to avoid it impacting full CSS (rarely needed).
198
-        $_unloadccss_js = apply_filters( 'autoptimize_filter_ccss_core_unloadccss_js', '<script>window.addEventListener("load", function(event) {document.getElementById("aoatfcss").media="none";})</script>' );
198
+        $_unloadccss_js = apply_filters('autoptimize_filter_ccss_core_unloadccss_js', '<script>window.addEventListener("load", function(event) {document.getElementById("aoatfcss").media="none";})</script>');
199 199
 
200
-        if ( false !== strpos( $html_in, $_unloadccss_js . '</body>' ) ) {
200
+        if (false !== strpos($html_in, $_unloadccss_js.'</body>')) {
201 201
             return $html_in;
202 202
         }
203 203
 
204
-        return str_replace( '</body>', $_unloadccss_js . '</body>', $html_in );
204
+        return str_replace('</body>', $_unloadccss_js.'</body>', $html_in);
205 205
     }
206 206
 
207 207
     public function ao_ccss_extend_types() {
@@ -210,9 +210,9 @@  discard block
 block discarded – undo
210 210
         global $ao_ccss_types;
211 211
 
212 212
         // in some cases $ao_ccss_types is empty and/or not an array, this should work around that problem.
213
-        if ( empty( $ao_ccss_types ) || ! is_array( $ao_ccss_types ) ) {
213
+        if (empty($ao_ccss_types) || !is_array($ao_ccss_types)) {
214 214
             $ao_ccss_types = get_ao_ccss_core_types();
215
-            autoptimizeCriticalCSSCore::ao_ccss_log( 'Empty types array in extend, refetching array with core conditionals.', 3 );
215
+            autoptimizeCriticalCSSCore::ao_ccss_log('Empty types array in extend, refetching array with core conditionals.', 3);
216 216
         }
217 217
 
218 218
         // Custom Post Types.
@@ -224,23 +224,23 @@  discard block
 block discarded – undo
224 224
             'names',
225 225
             'and'
226 226
         );
227
-        foreach ( $cpts as $cpt ) {
228
-            array_unshift( $ao_ccss_types, 'custom_post_' . $cpt );
227
+        foreach ($cpts as $cpt) {
228
+            array_unshift($ao_ccss_types, 'custom_post_'.$cpt);
229 229
         }
230 230
 
231 231
         // Templates.
232 232
         // Transient cache to avoid frequent disk reads.
233
-        $templates = get_transient( 'autoptimize_ccss_page_templates' );
234
-        if ( ! $templates ) {
233
+        $templates = get_transient('autoptimize_ccss_page_templates');
234
+        if (!$templates) {
235 235
             $templates = wp_get_theme()->get_page_templates();
236
-            set_transient( 'autoptimize_ccss_page_templates', $templates, HOUR_IN_SECONDS );
236
+            set_transient('autoptimize_ccss_page_templates', $templates, HOUR_IN_SECONDS);
237 237
         }
238
-        foreach ( $templates as $tplfile => $tplname ) {
239
-            array_unshift( $ao_ccss_types, 'template_' . $tplfile );
238
+        foreach ($templates as $tplfile => $tplname) {
239
+            array_unshift($ao_ccss_types, 'template_'.$tplfile);
240 240
         }
241 241
 
242 242
         // bbPress tags.
243
-        if ( function_exists( 'is_bbpress' ) ) {
243
+        if (function_exists('is_bbpress')) {
244 244
             $ao_ccss_types = array_merge(
245 245
                 array(
246 246
                     'bbp_is_bbpress',
@@ -272,7 +272,7 @@  discard block
 block discarded – undo
272 272
         }
273 273
 
274 274
         // BuddyPress tags.
275
-        if ( function_exists( 'is_buddypress' ) ) {
275
+        if (function_exists('is_buddypress')) {
276 276
             $ao_ccss_types = array_merge(
277 277
                 array(
278 278
                     'bp_is_activation_page',
@@ -314,7 +314,7 @@  discard block
 block discarded – undo
314 314
         }
315 315
 
316 316
         // Easy Digital Downloads (EDD) tags.
317
-        if ( function_exists( 'edd_is_checkout' ) ) {
317
+        if (function_exists('edd_is_checkout')) {
318 318
             $ao_ccss_types = array_merge(
319 319
                 array(
320 320
                     'edd_is_checkout',
@@ -326,7 +326,7 @@  discard block
 block discarded – undo
326 326
         }
327 327
 
328 328
         // WooCommerce tags.
329
-        if ( class_exists( 'WooCommerce' ) ) {
329
+        if (class_exists('WooCommerce')) {
330 330
             $ao_ccss_types = array_merge(
331 331
                 array(
332 332
                     'woo_is_account_page',
@@ -345,7 +345,7 @@  discard block
 block discarded – undo
345 345
 
346 346
     public function get_ao_ccss_core_types() {
347 347
         global $ao_ccss_types;
348
-        if ( empty( $ao_ccss_types ) || ! is_array( $ao_ccss_types ) ) {
348
+        if (empty($ao_ccss_types) || !is_array($ao_ccss_types)) {
349 349
             return array(
350 350
                 'is_404',
351 351
                 'is_archive',
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
         }
367 367
     }
368 368
 
369
-    public static function ao_ccss_key_status( $render ) {
369
+    public static function ao_ccss_key_status($render) {
370 370
         // Provide key status
371 371
         // Get key and key status.
372 372
         global $ao_ccss_key;
@@ -379,55 +379,55 @@  discard block
 block discarded – undo
379 379
         $key_return = array();
380 380
         $status     = false;
381 381
 
382
-        if ( $key && 2 == $key_status ) {
382
+        if ($key && 2 == $key_status) {
383 383
             // Key exists and its status is valid.
384 384
             // Set valid key status.
385 385
             $status     = 'valid';
386
-            $status_msg = __( 'Valid' );
386
+            $status_msg = __('Valid');
387 387
             $color      = '#46b450'; // Green.
388 388
             $message    = null;
389
-        } elseif ( $key && 1 == $key_status ) {
389
+        } elseif ($key && 1 == $key_status) {
390 390
             // Key exists but its validation has failed.
391 391
             // Set invalid key status.
392 392
             $status     = 'invalid';
393
-            $status_msg = __( 'Invalid' );
393
+            $status_msg = __('Invalid');
394 394
             $color      = '#dc3232'; // Red.
395
-            $message    = __( 'Your API key is invalid. Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> key.', 'autoptimize' );
396
-        } elseif ( $key && ! $key_status ) {
395
+            $message    = __('Your API key is invalid. Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> key.', 'autoptimize');
396
+        } elseif ($key && !$key_status) {
397 397
             // Key exists but it has no valid status yet
398 398
             // Perform key validation.
399
-            $key_check = $self->ao_ccss_key_validation( $key );
399
+            $key_check = $self->ao_ccss_key_validation($key);
400 400
 
401 401
             // Key is valid, set valid status.
402
-            if ( $key_check ) {
402
+            if ($key_check) {
403 403
                 $status     = 'valid';
404
-                $status_msg = __( 'Valid' );
404
+                $status_msg = __('Valid');
405 405
                 $color      = '#46b450'; // Green.
406 406
                 $message    = null;
407 407
             } else {
408 408
                 // Key is invalid, set invalid status.
409 409
                 $status     = 'invalid';
410
-                $status_msg = __( 'Invalid' );
410
+                $status_msg = __('Invalid');
411 411
                 $color      = '#dc3232'; // Red.
412
-                if ( get_option( 'autoptimize_ccss_keyst' ) == 1 ) {
413
-                    $message = __( 'Your API key is invalid. Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> key.', 'autoptimize' );
412
+                if (get_option('autoptimize_ccss_keyst') == 1) {
413
+                    $message = __('Your API key is invalid. Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> key.', 'autoptimize');
414 414
                 } else {
415
-                    $message = __( 'Something went wrong when checking your API key, make sure you server can communicate with https://criticalcss.com and/ or try again later.', 'autoptimize' );
415
+                    $message = __('Something went wrong when checking your API key, make sure you server can communicate with https://criticalcss.com and/ or try again later.', 'autoptimize');
416 416
                 }
417 417
             }
418 418
         } else {
419 419
             // No key nor status
420 420
             // Set no key status.
421 421
             $status     = 'nokey';
422
-            $status_msg = __( 'None' );
422
+            $status_msg = __('None');
423 423
             $color      = '#ffb900'; // Yellow.
424
-            $message    = __( 'Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> API key to start.', 'autoptimize' );
424
+            $message    = __('Please enter a valid <a href="https://criticalcss.com/?aff=1" target="_blank">criticalcss.com</a> API key to start.', 'autoptimize');
425 425
         }
426 426
 
427 427
         // Fill returned values.
428 428
         $key_return['status'] = $status;
429 429
         // Provide rendering information if required.
430
-        if ( $render ) {
430
+        if ($render) {
431 431
             $key_return['stmsg'] = $status_msg;
432 432
             $key_return['color'] = $color;
433 433
             $key_return['msg']   = $message;
@@ -437,7 +437,7 @@  discard block
 block discarded – undo
437 437
         return $key_return;
438 438
     }
439 439
 
440
-    public function ao_ccss_key_validation( $key ) {
440
+    public function ao_ccss_key_validation($key) {
441 441
         global $ao_ccss_noptimize;
442 442
 
443 443
         // POST a dummy job to criticalcss.com to check for key validation
@@ -445,26 +445,26 @@  discard block
 block discarded – undo
445 445
         $src_url = get_home_url();
446 446
 
447 447
         // Avoid AO optimizations if required by config or avoid lazyload if lazyload is active in AO.
448
-        if ( ! empty( $ao_ccss_noptimize ) ) {
448
+        if (!empty($ao_ccss_noptimize)) {
449 449
             $src_url .= '?ao_noptirocket=1';
450
-        } elseif ( class_exists( 'autoptimizeImages', false ) && autoptimizeImages::should_lazyload_wrapper() ) {
450
+        } elseif (class_exists('autoptimizeImages', false) && autoptimizeImages::should_lazyload_wrapper()) {
451 451
             $src_url .= '?ao_nolazy=1';
452 452
         }
453 453
 
454
-        $src_url = apply_filters( 'autoptimize_filter_ccss_cron_srcurl', $src_url );
454
+        $src_url = apply_filters('autoptimize_filter_ccss_cron_srcurl', $src_url);
455 455
 
456 456
         // Prepare the request.
457
-        $url  = esc_url_raw( AO_CCSS_API . 'generate' );
457
+        $url  = esc_url_raw(AO_CCSS_API.'generate');
458 458
         $args = array(
459 459
             'headers' => array(
460
-                'User-Agent'    => 'Autoptimize v' . AO_CCSS_VER,
460
+                'User-Agent'    => 'Autoptimize v'.AO_CCSS_VER,
461 461
                 'Content-type'  => 'application/json; charset=utf-8',
462
-                'Authorization' => 'JWT ' . $key,
462
+                'Authorization' => 'JWT '.$key,
463 463
                 'Connection'    => 'close',
464 464
             ),
465 465
             // Body must be JSON.
466 466
             'body'    => json_encode(
467
-                apply_filters( 'autoptimize_ccss_cron_api_generate_body',
467
+                apply_filters('autoptimize_ccss_cron_api_generate_body',
468 468
                     array(
469 469
                         'url'    => $src_url,
470 470
                         'aff'    => 1,
@@ -475,23 +475,23 @@  discard block
 block discarded – undo
475 475
         );
476 476
 
477 477
         // Dispatch the request and store its response code.
478
-        $req  = wp_safe_remote_post( $url, $args );
479
-        $code = wp_remote_retrieve_response_code( $req );
480
-        $body = json_decode( wp_remote_retrieve_body( $req ), true );
478
+        $req  = wp_safe_remote_post($url, $args);
479
+        $code = wp_remote_retrieve_response_code($req);
480
+        $body = json_decode(wp_remote_retrieve_body($req), true);
481 481
 
482
-        if ( 200 == $code ) {
482
+        if (200 == $code) {
483 483
             // Response is OK.
484 484
             // Set key status as valid and log key check.
485
-            update_option( 'autoptimize_ccss_keyst', 2 );
486
-            autoptimizeCriticalCSSCore::ao_ccss_log( 'criticalcss.com: API key is valid, updating key status', 3 );
485
+            update_option('autoptimize_ccss_keyst', 2);
486
+            autoptimizeCriticalCSSCore::ao_ccss_log('criticalcss.com: API key is valid, updating key status', 3);
487 487
 
488 488
             // extract job-id from $body and put it in the queue as a P job
489 489
             // but only if no jobs and no rules!
490 490
             global $ao_ccss_queue;
491 491
             global $ao_ccss_rules;
492 492
 
493
-            if ( 0 == count( $ao_ccss_queue ) && 0 == count( $ao_ccss_rules['types'] ) && 0 == count( $ao_ccss_rules['paths'] ) ) {
494
-                if ( 'JOB_QUEUED' == $body['job']['status'] || 'JOB_ONGOING' == $body['job']['status'] ) {
493
+            if (0 == count($ao_ccss_queue) && 0 == count($ao_ccss_rules['types']) && 0 == count($ao_ccss_rules['paths'])) {
494
+                if ('JOB_QUEUED' == $body['job']['status'] || 'JOB_ONGOING' == $body['job']['status']) {
495 495
                     $jprops['ljid']     = 'firstrun';
496 496
                     $jprops['rtarget']  = 'types|is_front_page';
497 497
                     $jprops['ptype']    = 'is_front_page';
@@ -502,30 +502,30 @@  discard block
 block discarded – undo
502 502
                     $jprops['jqstat']   = $body['job']['status'];
503 503
                     $jprops['jrstat']   = null;
504 504
                     $jprops['jvstat']   = null;
505
-                    $jprops['jctime']   = microtime( true );
505
+                    $jprops['jctime']   = microtime(true);
506 506
                     $jprops['jftime']   = null;
507 507
                     $ao_ccss_queue['/'] = $jprops;
508
-                    $ao_ccss_queue_raw  = json_encode( $ao_ccss_queue );
509
-                    update_option( 'autoptimize_ccss_queue', $ao_ccss_queue_raw, false );
510
-                    autoptimizeCriticalCSSCore::ao_ccss_log( 'Created P job for is_front_page based on API key check response.', 3 );
508
+                    $ao_ccss_queue_raw  = json_encode($ao_ccss_queue);
509
+                    update_option('autoptimize_ccss_queue', $ao_ccss_queue_raw, false);
510
+                    autoptimizeCriticalCSSCore::ao_ccss_log('Created P job for is_front_page based on API key check response.', 3);
511 511
                 }
512 512
             }
513 513
             return true;
514
-        } elseif ( 401 == $code ) {
514
+        } elseif (401 == $code) {
515 515
             // Response is unauthorized
516 516
             // Set key status as invalid and log key check.
517
-            update_option( 'autoptimize_ccss_keyst', 1 );
518
-            autoptimizeCriticalCSSCore::ao_ccss_log( 'criticalcss.com: API key is invalid, updating key status', 3 );
517
+            update_option('autoptimize_ccss_keyst', 1);
518
+            autoptimizeCriticalCSSCore::ao_ccss_log('criticalcss.com: API key is invalid, updating key status', 3);
519 519
             return false;
520 520
         } else {
521 521
             // Response unkown
522 522
             // Log key check attempt.
523
-            autoptimizeCriticalCSSCore::ao_ccss_log( 'criticalcss.com: could not check API key status, this is a service error, body follows if any...', 2 );
524
-            if ( ! empty( $body ) ) {
525
-                autoptimizeCriticalCSSCore::ao_ccss_log( print_r( $body, true ), 2 );
523
+            autoptimizeCriticalCSSCore::ao_ccss_log('criticalcss.com: could not check API key status, this is a service error, body follows if any...', 2);
524
+            if (!empty($body)) {
525
+                autoptimizeCriticalCSSCore::ao_ccss_log(print_r($body, true), 2);
526 526
             }
527
-            if ( is_wp_error( $req ) ) {
528
-                autoptimizeCriticalCSSCore::ao_ccss_log( $req->get_error_message(), 2 );
527
+            if (is_wp_error($req)) {
528
+                autoptimizeCriticalCSSCore::ao_ccss_log($req->get_error_message(), 2);
529 529
             }
530 530
             return false;
531 531
         }
@@ -540,14 +540,14 @@  discard block
 block discarded – undo
540 540
         $viewport = array();
541 541
 
542 542
         // Viewport Width.
543
-        if ( ! empty( $ao_ccss_viewport['w'] ) ) {
543
+        if (!empty($ao_ccss_viewport['w'])) {
544 544
             $viewport['w'] = $ao_ccss_viewport['w'];
545 545
         } else {
546 546
             $viewport['w'] = '';
547 547
         }
548 548
 
549 549
         // Viewport Height.
550
-        if ( ! empty( $ao_ccss_viewport['h'] ) ) {
550
+        if (!empty($ao_ccss_viewport['h'])) {
551 551
             $viewport['h'] = $ao_ccss_viewport['h'];
552 552
         } else {
553 553
             $viewport['h'] = '';
@@ -556,23 +556,23 @@  discard block
 block discarded – undo
556 556
         return $viewport;
557 557
     }
558 558
 
559
-    public static function ao_ccss_check_contents( $ccss ) {
559
+    public static function ao_ccss_check_contents($ccss) {
560 560
         // Perform basic exploit avoidance and CSS validation.
561
-        if ( ! empty( $ccss ) ) {
561
+        if (!empty($ccss)) {
562 562
             // Try to avoid code injection.
563
-            $blocklist = array( '#!/', 'function(', '<script', '<?php' );
564
-            foreach ( $blocklist as $blocklisted ) {
565
-                if ( strpos( $ccss, $blocklisted ) !== false ) {
566
-                    autoptimizeCriticalCSSCore::ao_ccss_log( 'Critical CSS received contained blocklisted content.', 2 );
563
+            $blocklist = array('#!/', 'function(', '<script', '<?php');
564
+            foreach ($blocklist as $blocklisted) {
565
+                if (strpos($ccss, $blocklisted) !== false) {
566
+                    autoptimizeCriticalCSSCore::ao_ccss_log('Critical CSS received contained blocklisted content.', 2);
567 567
                     return false;
568 568
                 }
569 569
             }
570 570
 
571 571
             // Check for most basics CSS structures.
572
-            $needlist = array( '{', '}', ':' );
573
-            foreach ( $needlist as $needed ) {
574
-                if ( false === strpos( $ccss, $needed ) && 'none' !== $ccss ) {
575
-                    autoptimizeCriticalCSSCore::ao_ccss_log( 'Critical CSS received did not seem to contain real CSS.', 2 );
572
+            $needlist = array('{', '}', ':');
573
+            foreach ($needlist as $needed) {
574
+                if (false === strpos($ccss, $needed) && 'none' !== $ccss) {
575
+                    autoptimizeCriticalCSSCore::ao_ccss_log('Critical CSS received did not seem to contain real CSS.', 2);
576 576
                     return false;
577 577
                 }
578 578
             }
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
         return true;
583 583
     }
584 584
 
585
-    public static function ao_ccss_log( $msg, $lvl ) {
585
+    public static function ao_ccss_log($msg, $lvl) {
586 586
         // Commom logging facility
587 587
         // Attach debug option.
588 588
         global $ao_ccss_debug;
@@ -593,7 +593,7 @@  discard block
 block discarded – undo
593 593
         // 3: DD (for debug)
594 594
         // Default: UU (for unkown).
595 595
         $level = false;
596
-        switch ( $lvl ) {
596
+        switch ($lvl) {
597 597
             case 1:
598 598
                 $level = 'II';
599 599
                 break;
@@ -602,7 +602,7 @@  discard block
 block discarded – undo
602 602
                 break;
603 603
             case 3:
604 604
                 // Output debug messages only if debug mode is enabled.
605
-                if ( $ao_ccss_debug ) {
605
+                if ($ao_ccss_debug) {
606 606
                     $level = 'DD';
607 607
                 }
608 608
                 break;
@@ -611,19 +611,19 @@  discard block
 block discarded – undo
611 611
         }
612 612
 
613 613
         // Prepare and write a log message if there's a valid level.
614
-        if ( $level ) {
614
+        if ($level) {
615 615
 
616 616
             // Prepare message.
617
-            $message = date( 'c' ) . ' - [' . $level . '] ' . htmlentities( $msg ) . '<br>';
617
+            $message = date('c').' - ['.$level.'] '.htmlentities($msg).'<br>';
618 618
 
619 619
             // Write message to log file.
620
-            error_log( $message, 3, AO_CCSS_LOG );
620
+            error_log($message, 3, AO_CCSS_LOG);
621 621
         }
622 622
     }
623 623
 
624 624
     public static function ao_ccss_clear_page_tpl_cache() {
625 625
         // Clears transient cache for page templates.
626
-        delete_transient( 'autoptimize_ccss_page_templates' );
626
+        delete_transient('autoptimize_ccss_page_templates');
627 627
     }
628 628
 
629 629
 }
Please login to merge, or discard this patch.