Completed
Push — master ( 8e7dca...6ec0d0 )
by frank
01:41
created
classes/autoptimizeConfig.php 1 patch
Spacing   +213 added lines, -213 removed lines patch added patch discarded remove patch
@@ -1,5 +1,5 @@  discard block
 block discarded – undo
1 1
 <?php
2
-if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly.
2
+if (!defined('ABSPATH')) exit; // Exit if accessed directly.
3 3
 
4 4
 class autoptimizeConfig
5 5
 {
@@ -13,28 +13,28 @@  discard block
 block discarded – undo
13 13
      */
14 14
     private function __construct()
15 15
     {
16
-        if ( is_admin() ) {
16
+        if (is_admin()) {
17 17
             // Add the admin page and settings.
18
-            add_action( 'admin_menu', array( $this, 'addmenu' ) );
19
-            add_action( 'admin_init', array( $this, 'registersettings' ) );
18
+            add_action('admin_menu', array($this, 'addmenu'));
19
+            add_action('admin_init', array($this, 'registersettings'));
20 20
 
21 21
             // Set meta info.
22
-            if ( function_exists( 'plugin_row_meta' ) ) {
22
+            if (function_exists('plugin_row_meta')) {
23 23
                 // 2.8 and higher.
24
-                add_filter( 'plugin_row_meta', array( $this, 'setmeta' ), 10, 2 );
25
-            } elseif ( function_exists( 'post_class' ) ) {
24
+                add_filter('plugin_row_meta', array($this, 'setmeta'), 10, 2);
25
+            } elseif (function_exists('post_class')) {
26 26
                 // 2.7 and lower.
27
-                $plugin = plugin_basename( AUTOPTIMIZE_PLUGIN_DIR . 'autoptimize.php' );
28
-                add_filter( 'plugin_action_links_' . $plugin, array( $this, 'setmeta' ) );
27
+                $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php');
28
+                add_filter('plugin_action_links_'.$plugin, array($this, 'setmeta'));
29 29
             }
30 30
 
31 31
             // Clean cache?
32
-            if ( get_option( 'autoptimize_cache_clean' ) ) {
32
+            if (get_option('autoptimize_cache_clean')) {
33 33
                 autoptimizeCache::clearall();
34
-                update_option( 'autoptimize_cache_clean', 0 );
34
+                update_option('autoptimize_cache_clean', 0);
35 35
             }
36 36
 
37
-            $this->settings_screen_do_remote_http = apply_filters( 'autoptimize_settingsscreen_remotehttp', $this->settings_screen_do_remote_http );
37
+            $this->settings_screen_do_remote_http = apply_filters('autoptimize_settingsscreen_remotehttp', $this->settings_screen_do_remote_http);
38 38
         }
39 39
 
40 40
         // Adds the Autoptimize Toolbar to the Admin bar.
@@ -48,7 +48,7 @@  discard block
 block discarded – undo
48 48
     static public function instance()
49 49
     {
50 50
         // Only one instance.
51
-        if ( null === self::$instance ) {
51
+        if (null === self::$instance) {
52 52
             self::$instance = new autoptimizeConfig();
53 53
         }
54 54
 
@@ -174,28 +174,28 @@  discard block
 block discarded – undo
174 174
 
175 175
 <div class="wrap">
176 176
 
177
-<?php if ( version_compare( PHP_VERSION, '5.3.0' ) < 0 ) { ?>
178
-<div class="notice-error notice"><?php echo '<p>' . sprintf( __( '<strong>You are using a very old version of PHP</strong> (5.2.x or older) which has <a href=%s>serious security and performance issues</a>. Support for PHP 5.5 and below will be removed in one of the next AO released, please ask your hoster to provide you with an upgrade path to 7.x.', 'autoptimize' ), '"http://blog.futtta.be/2016/03/15/why-would-you-still-be-on-php-5-2/" target="_blank"' ) . '</p>'; ?></div>
177
+<?php if (version_compare(PHP_VERSION, '5.3.0') < 0) { ?>
178
+<div class="notice-error notice"><?php echo '<p>'.sprintf(__('<strong>You are using a very old version of PHP</strong> (5.2.x or older) which has <a href=%s>serious security and performance issues</a>. Support for PHP 5.5 and below will be removed in one of the next AO released, please ask your hoster to provide you with an upgrade path to 7.x.', 'autoptimize'), '"http://blog.futtta.be/2016/03/15/why-would-you-still-be-on-php-5-2/" target="_blank"').'</p>'; ?></div>
179 179
 <?php } ?>
180 180
 
181
-<?php if ( defined( 'AUTOPTIMIZE_LEGACY_MINIFIERS' ) ) { ?>
181
+<?php if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { ?>
182 182
     <div class="notice-error notice"><p>
183
-        <?php _e( "You are using the (no longer supported) AUTOPTIMIZE_LEGACY_MINIFIERS constant. Ensure your site is working properly and remove the constant, it doesn't do anything any more.", 'autoptimize' ); ?>
183
+        <?php _e("You are using the (no longer supported) AUTOPTIMIZE_LEGACY_MINIFIERS constant. Ensure your site is working properly and remove the constant, it doesn't do anything any more.", 'autoptimize'); ?>
184 184
     </p></div>
185 185
 <?php } ?>
186 186
 
187 187
 <div id="autoptimize_main">
188 188
     <div id="ao_title_and_button">
189
-        <h1 id="ao_title"><?php _e( 'Autoptimize Settings', 'autoptimize' ); ?>
189
+        <h1 id="ao_title"><?php _e('Autoptimize Settings', 'autoptimize'); ?>
190 190
         <span id="ao_adv_button">
191
-        <?php if ( get_option( 'autoptimize_show_adv', '0' ) == '1' ) { ?>
192
-            <a href="javascript:void(0);" id="ao_show_adv" class="button" style="display:none;"><span><?php _e("Show advanced settings","autoptimize") ?></span></a>
193
-            <a href="javascript:void(0);" id="ao_hide_adv" class="button"><span><?php _e("Hide advanced settings","autoptimize") ?></span></a>
191
+        <?php if (get_option('autoptimize_show_adv', '0') == '1') { ?>
192
+            <a href="javascript:void(0);" id="ao_show_adv" class="button" style="display:none;"><span><?php _e("Show advanced settings", "autoptimize") ?></span></a>
193
+            <a href="javascript:void(0);" id="ao_hide_adv" class="button"><span><?php _e("Hide advanced settings", "autoptimize") ?></span></a>
194 194
             <style>tr.ao_adv{display:table-row;} li.ao_adv{display:list-item;}</style>
195 195
             <?php $hiddenClass = ''; ?>
196 196
         <?php } else { ?>
197
-            <a href="javascript:void(0);" id="ao_show_adv" class="button"><span><?php _e("Show advanced settings","autoptimize") ?></span></a>
198
-            <a href="javascript:void(0);" id="ao_hide_adv" class="button" style="display:none;"><span><?php _e("Hide advanced settings","autoptimize") ?></span></a>
197
+            <a href="javascript:void(0);" id="ao_show_adv" class="button"><span><?php _e("Show advanced settings", "autoptimize") ?></span></a>
198
+            <a href="javascript:void(0);" id="ao_hide_adv" class="button" style="display:none;"><span><?php _e("Hide advanced settings", "autoptimize") ?></span></a>
199 199
             <?php $hiddenClass = 'hidden '; ?>
200 200
         <?php } ?>
201 201
         </span>
@@ -205,185 +205,185 @@  discard block
 block discarded – undo
205 205
     <?php echo $this->ao_admin_tabs(); ?>
206 206
 
207 207
 <form method="post" action="options.php">
208
-<?php settings_fields( 'autoptimize' ); ?>
208
+<?php settings_fields('autoptimize'); ?>
209 209
 
210 210
 <ul>
211 211
 
212 212
 <li class="itemDetail">
213
-<h2 class="itemTitle"><?php _e('HTML Options','autoptimize'); ?></h2>
213
+<h2 class="itemTitle"><?php _e('HTML Options', 'autoptimize'); ?></h2>
214 214
 <table class="form-table">
215 215
 <tr valign="top">
216
-<th scope="row"><?php _e('Optimize HTML Code?','autoptimize'); ?></th>
217
-<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo get_option('autoptimize_html')?'checked="checked" ':''; ?>/></td>
216
+<th scope="row"><?php _e('Optimize HTML Code?', 'autoptimize'); ?></th>
217
+<td><input type="checkbox" id="autoptimize_html" name="autoptimize_html" <?php echo get_option('autoptimize_html') ? 'checked="checked" ' : ''; ?>/></td>
218 218
 </tr>
219
-<tr class="<?php echo $hiddenClass;?>html_sub ao_adv" valign="top">
220
-<th scope="row"><?php _e('Keep HTML comments?','autoptimize'); ?></th>
221
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo get_option('autoptimize_html_keepcomments')?'checked="checked" ':''; ?>/>
222
-<?php _e('Enable this if you want HTML comments to remain in the page.','autoptimize'); ?></label></td>
219
+<tr class="<?php echo $hiddenClass; ?>html_sub ao_adv" valign="top">
220
+<th scope="row"><?php _e('Keep HTML comments?', 'autoptimize'); ?></th>
221
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_html_keepcomments" <?php echo get_option('autoptimize_html_keepcomments') ? 'checked="checked" ' : ''; ?>/>
222
+<?php _e('Enable this if you want HTML comments to remain in the page.', 'autoptimize'); ?></label></td>
223 223
 </tr>
224 224
 </table>
225 225
 </li>
226 226
 
227 227
 <li class="itemDetail">
228
-<h2 class="itemTitle"><?php _e('JavaScript Options','autoptimize'); ?></h2>
228
+<h2 class="itemTitle"><?php _e('JavaScript Options', 'autoptimize'); ?></h2>
229 229
 <table class="form-table">
230 230
 <tr valign="top">
231
-<th scope="row"><?php _e('Optimize JavaScript Code?','autoptimize'); ?></th>
232
-<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo get_option('autoptimize_js')?'checked="checked" ':''; ?>/></td>
231
+<th scope="row"><?php _e('Optimize JavaScript Code?', 'autoptimize'); ?></th>
232
+<td><input type="checkbox" id="autoptimize_js" name="autoptimize_js" <?php echo get_option('autoptimize_js') ? 'checked="checked" ' : ''; ?>/></td>
233 233
 </tr>
234
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv">
235
-<th scope="row"><?php _e( 'Aggregate JS-files?', 'autoptimize' ); ?></th>
236
-<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" ':''; ?>/>
237
-<?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>
234
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv">
235
+<th scope="row"><?php _e('Aggregate JS-files?', 'autoptimize'); ?></th>
236
+<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" ' : ''; ?>/>
237
+<?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>
238 238
 </tr>
239
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv js_aggregate">
240
-<th scope="row"><?php _e('Also aggregate inline JS?','autoptimize'); ?></th>
241
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo get_option('autoptimize_js_include_inline')?'checked="checked" ':''; ?>/>
242
-<?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>
239
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv js_aggregate">
240
+<th scope="row"><?php _e('Also aggregate inline JS?', 'autoptimize'); ?></th>
241
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_include_inline" <?php echo get_option('autoptimize_js_include_inline') ? 'checked="checked" ' : ''; ?>/>
242
+<?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>
243 243
 </tr>
244
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv js_aggregate">
245
-<th scope="row"><?php _e('Force JavaScript in &lt;head&gt;?','autoptimize'); ?></th>
246
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo get_option('autoptimize_js_forcehead')?'checked="checked" ':''; ?>/>
247
-<?php _e('Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.','autoptimize'); ?></label></td>
244
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv js_aggregate">
245
+<th scope="row"><?php _e('Force JavaScript in &lt;head&gt;?', 'autoptimize'); ?></th>
246
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_forcehead" <?php echo get_option('autoptimize_js_forcehead') ? 'checked="checked" ' : ''; ?>/>
247
+<?php _e('Load JavaScript early, this can potentially fix some JS-errors, but makes the JS render blocking.', 'autoptimize'); ?></label></td>
248 248
 </tr>
249 249
 <?php if (get_option('autoptimize_js_justhead')) { ?>
250
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv js_aggregate">
251
-<th scope="row"><?php _e('Look for scripts only in &lt;head&gt;?','autoptimize'); echo ' <i>'. __('(deprecated)','autoptimize') . '</i>'; ?></th>
252
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo get_option('autoptimize_js_justhead')?'checked="checked" ':''; ?>/>
253
-<?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>
250
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv js_aggregate">
251
+<th scope="row"><?php _e('Look for scripts only in &lt;head&gt;?', 'autoptimize'); echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>'; ?></th>
252
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_justhead" <?php echo get_option('autoptimize_js_justhead') ? 'checked="checked" ' : ''; ?>/>
253
+<?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>
254 254
 </tr>
255 255
 <?php } ?>
256
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv js_aggregate">
257
-<th scope="row"><?php _e('Exclude scripts from Autoptimize:','autoptimize'); ?></th>
258
-<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo get_option('autoptimize_js_exclude',"seal.js, js/jquery/jquery.js"); ?>"/><br />
259
-<?php _e('A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated by Autoptimize.','autoptimize'); ?></label></td>
256
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv js_aggregate">
257
+<th scope="row"><?php _e('Exclude scripts from Autoptimize:', 'autoptimize'); ?></th>
258
+<td><label><input type="text" style="width:100%;" name="autoptimize_js_exclude" value="<?php echo get_option('autoptimize_js_exclude', "seal.js, js/jquery/jquery.js"); ?>"/><br />
259
+<?php _e('A comma-separated list of scripts you want to exclude from being optimized, for example \'whatever.js, another.js\' (without the quotes) to exclude those scripts from being aggregated by Autoptimize.', 'autoptimize'); ?></label></td>
260 260
 </tr>
261
-<tr valign="top" class="<?php echo $hiddenClass;?>js_sub ao_adv js_aggregate">
262
-<th scope="row"><?php _e('Add try-catch wrapping?','autoptimize'); ?></th>
263
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo get_option('autoptimize_js_trycatch')?'checked="checked" ':''; ?>/>
264
-<?php _e('If your scripts break because of a JS-error, you might want to try this.','autoptimize'); ?></label></td>
261
+<tr valign="top" class="<?php echo $hiddenClass; ?>js_sub ao_adv js_aggregate">
262
+<th scope="row"><?php _e('Add try-catch wrapping?', 'autoptimize'); ?></th>
263
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_js_trycatch" <?php echo get_option('autoptimize_js_trycatch') ? 'checked="checked" ' : ''; ?>/>
264
+<?php _e('If your scripts break because of a JS-error, you might want to try this.', 'autoptimize'); ?></label></td>
265 265
 </tr>
266 266
 </table>
267 267
 </li>
268 268
 
269 269
 <li class="itemDetail">
270
-<h2 class="itemTitle"><?php _e('CSS Options','autoptimize'); ?></h2>
270
+<h2 class="itemTitle"><?php _e('CSS Options', 'autoptimize'); ?></h2>
271 271
 <table class="form-table">
272 272
 <tr valign="top">
273
-<th scope="row"><?php _e('Optimize CSS Code?','autoptimize'); ?></th>
274
-<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo get_option('autoptimize_css')?'checked="checked" ':''; ?>/></td>
273
+<th scope="row"><?php _e('Optimize CSS Code?', 'autoptimize'); ?></th>
274
+<td><input type="checkbox" id="autoptimize_css" name="autoptimize_css" <?php echo get_option('autoptimize_css') ? 'checked="checked" ' : ''; ?>/></td>
275 275
 </tr>
276
-<tr class="<?php echo $hiddenClass;?>css_sub ao_adv" valign="top">
277
-<th scope="row"><?php _e( 'Aggregate CSS-files?', 'autoptimize' ); ?></th>
278
-<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" ' : ''; ?>/>
279
-<?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>
276
+<tr class="<?php echo $hiddenClass; ?>css_sub ao_adv" valign="top">
277
+<th scope="row"><?php _e('Aggregate CSS-files?', 'autoptimize'); ?></th>
278
+<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" ' : ''; ?>/>
279
+<?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>
280 280
 </tr>
281
-<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv css_aggregate">
282
-<th scope="row"><?php _e('Also aggregate inline CSS?','autoptimize'); ?></th>
283
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo get_option('autoptimize_css_include_inline','1')?'checked="checked" ':''; ?>/>
284
-<?php _e('Check this option for Autoptimize to also aggregate CSS in the HTML.','autoptimize'); ?></label></td>
281
+<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv css_aggregate">
282
+<th scope="row"><?php _e('Also aggregate inline CSS?', 'autoptimize'); ?></th>
283
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_include_inline" <?php echo get_option('autoptimize_css_include_inline', '1') ? 'checked="checked" ' : ''; ?>/>
284
+<?php _e('Check this option for Autoptimize to also aggregate CSS in the HTML.', 'autoptimize'); ?></label></td>
285 285
 </tr>
286
-<tr class="<?php echo $hiddenClass;?>css_sub ao_adv css_aggregate" valign="top">
287
-<th scope="row"><?php _e('Generate data: URIs for images?','autoptimize'); ?></th>
288
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo get_option('autoptimize_css_datauris')?'checked="checked" ':''; ?>/>
289
-<?php _e('Enable this to include small background-images in the CSS itself instead of as separate downloads.','autoptimize'); ?></label></td>
286
+<tr class="<?php echo $hiddenClass; ?>css_sub ao_adv css_aggregate" valign="top">
287
+<th scope="row"><?php _e('Generate data: URIs for images?', 'autoptimize'); ?></th>
288
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_datauris" <?php echo get_option('autoptimize_css_datauris') ? 'checked="checked" ' : ''; ?>/>
289
+<?php _e('Enable this to include small background-images in the CSS itself instead of as separate downloads.', 'autoptimize'); ?></label></td>
290 290
 </tr>
291 291
 <?php if (get_option('autoptimize_css_justhead')) { ?>
292
-<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv css_aggregate">
293
-<th scope="row"><?php _e('Look for styles only in &lt;head&gt;?','autoptimize'); echo ' <i>'. __('(deprecated)','autoptimize') . '</i>'; ?></th>
294
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo get_option('autoptimize_css_justhead')?'checked="checked" ':''; ?>/>
295
-<?php _e('Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.','autoptimize'); ?></label></td>
292
+<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv css_aggregate">
293
+<th scope="row"><?php _e('Look for styles only in &lt;head&gt;?', 'autoptimize'); echo ' <i>'.__('(deprecated)', 'autoptimize').'</i>'; ?></th>
294
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_justhead" <?php echo get_option('autoptimize_css_justhead') ? 'checked="checked" ' : ''; ?>/>
295
+<?php _e('Don\'t autoptimize CSS outside the head-section. If the cache gets big, you might want to enable this.', 'autoptimize'); ?></label></td>
296 296
 </tr>
297 297
 <?php } ?>
298
-<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv">
299
-<th scope="row"><?php _e('Inline and Defer CSS?','autoptimize'); ?></th>
300
-<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo get_option('autoptimize_css_defer')?'checked="checked" ':''; ?>/>
298
+<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv">
299
+<th scope="row"><?php _e('Inline and Defer CSS?', 'autoptimize'); ?></th>
300
+<td><label class="cb_label"><input type="checkbox" name="autoptimize_css_defer" id="autoptimize_css_defer" <?php echo get_option('autoptimize_css_defer') ? 'checked="checked" ' : ''; ?>/>
301 301
 <?php
302
-_e( 'Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="http://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> for more info.', 'autoptimize' );
303
-if ( function_exists( 'is_plugin_active' ) && ! is_plugin_active( 'autoptimize-criticalcss/ao_criticss_aas.php' ) ) {
302
+_e('Inline "above the fold CSS" while loading the main autoptimized CSS only after page load. <a href="http://wordpress.org/plugins/autoptimize/faq/" target="_blank">Check the FAQ</a> for more info.', 'autoptimize');
303
+if (function_exists('is_plugin_active') && !is_plugin_active('autoptimize-criticalcss/ao_criticss_aas.php')) {
304 304
     echo ' ';
305
-    $critcss_install_url = network_admin_url() . 'plugin-install.php?s=autoptimize+criticalcss&tab=search&type=term';
306
-    echo sprintf( __( 'This can be fully automated for different types of pages with the %s.', 'autoptimize' ), '<a href="'.$critcss_install_url.'">Autoptimize CriticalCSS Power-Up</a>' );
305
+    $critcss_install_url = network_admin_url().'plugin-install.php?s=autoptimize+criticalcss&tab=search&type=term';
306
+    echo sprintf(__('This can be fully automated for different types of pages with the %s.', 'autoptimize'), '<a href="'.$critcss_install_url.'">Autoptimize CriticalCSS Power-Up</a>');
307 307
 }
308 308
 ?>
309 309
 </label></td>
310 310
 </tr>
311
-<tr valign="top" class="<?php echo $hiddenClass;?>css_sub ao_adv" id="autoptimize_css_defer_inline">
311
+<tr valign="top" class="<?php echo $hiddenClass; ?>css_sub ao_adv" id="autoptimize_css_defer_inline">
312 312
 <th scope="row"></th>
313
-<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e('Paste the above the fold CSS here.','autoptimize'); ?>" name="autoptimize_css_defer_inline"><?php echo get_option('autoptimize_css_defer_inline'); ?></textarea></label></td>
313
+<td><label><textarea rows="10" cols="10" style="width:100%;" placeholder="<?php _e('Paste the above the fold CSS here.', 'autoptimize'); ?>" name="autoptimize_css_defer_inline"><?php echo get_option('autoptimize_css_defer_inline'); ?></textarea></label></td>
314 314
 </tr>
315
-<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv css_sub css_aggregate">
316
-<th scope="row"><?php _e('Inline all CSS?','autoptimize'); ?></th>
317
-<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo get_option('autoptimize_css_inline')?'checked="checked" ':''; ?>/>
318
-<?php _e('Inlining all CSS can improve performance for sites with a low pageviews/ visitor-rate, but may slow down performance otherwise.','autoptimize'); ?></label></td>
315
+<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv css_sub css_aggregate">
316
+<th scope="row"><?php _e('Inline all CSS?', 'autoptimize'); ?></th>
317
+<td><label class="cb_label"><input type="checkbox" id="autoptimize_css_inline" name="autoptimize_css_inline" <?php echo get_option('autoptimize_css_inline') ? 'checked="checked" ' : ''; ?>/>
318
+<?php _e('Inlining all CSS can improve performance for sites with a low pageviews/ visitor-rate, but may slow down performance otherwise.', 'autoptimize'); ?></label></td>
319 319
 </tr>
320
-<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv css_sub css_aggregate">
321
-<th scope="row"><?php _e('Exclude CSS from Autoptimize:','autoptimize'); ?></th>
322
-<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo get_option('autoptimize_css_exclude','wp-content/cache/, wp-content/uploads/, admin-bar.min.css, dashicons.min.css'); ?>"/><br />
323
-<?php _e('A comma-separated list of CSS you want to exclude from being optimized.','autoptimize'); ?></label></td>
320
+<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv css_sub css_aggregate">
321
+<th scope="row"><?php _e('Exclude CSS from Autoptimize:', 'autoptimize'); ?></th>
322
+<td><label><input type="text" style="width:100%;" name="autoptimize_css_exclude" value="<?php echo get_option('autoptimize_css_exclude', 'wp-content/cache/, wp-content/uploads/, admin-bar.min.css, dashicons.min.css'); ?>"/><br />
323
+<?php _e('A comma-separated list of CSS you want to exclude from being optimized.', 'autoptimize'); ?></label></td>
324 324
 </tr>
325 325
 </table>
326 326
 </li>
327 327
 
328 328
 <li class="itemDetail">
329
-<h2 class="itemTitle"><?php _e('CDN Options','autoptimize'); ?></h2>
329
+<h2 class="itemTitle"><?php _e('CDN Options', 'autoptimize'); ?></h2>
330 330
 <table class="form-table">
331 331
 <tr valign="top">
332
-<th scope="row"><?php _e('CDN Base URL','autoptimize'); ?></th>
333
-<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url(get_option('autoptimize_cdn_url',''),array("http","https")); ?>" /><br />
334
-<?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>
332
+<th scope="row"><?php _e('CDN Base URL', 'autoptimize'); ?></th>
333
+<td><label><input id="cdn_url" type="text" name="autoptimize_cdn_url" pattern="^(https?:)?\/\/([\da-z\.-]+)\.([\da-z\.]{2,6})([\/\w \.-]*)*(:\d{2,5})?\/?$" style="width:100%" value="<?php echo esc_url(get_option('autoptimize_cdn_url', ''), array("http", "https")); ?>" /><br />
334
+<?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>
335 335
 </tr>
336 336
 </table>
337 337
 </li>
338 338
 
339
-<li class="<?php echo $hiddenClass;?>itemDetail ao_adv">
340
-<h2 class="itemTitle"><?php _e('Cache Info','autoptimize'); ?></h2>
339
+<li class="<?php echo $hiddenClass; ?>itemDetail ao_adv">
340
+<h2 class="itemTitle"><?php _e('Cache Info', 'autoptimize'); ?></h2>
341 341
 <table class="form-table" >
342
-<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
343
-<th scope="row"><?php _e('Cache folder','autoptimize'); ?></th>
342
+<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
343
+<th scope="row"><?php _e('Cache folder', 'autoptimize'); ?></th>
344 344
 <td><?php echo htmlentities(AUTOPTIMIZE_CACHE_DIR); ?></td>
345 345
 </tr>
346
-<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
347
-<th scope="row"><?php _e('Can we write?','autoptimize'); ?></th>
348
-<td><?php echo (autoptimizeCache::cacheavail() ? __('Yes','autoptimize') : __('No','autoptimize')); ?></td>
346
+<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
347
+<th scope="row"><?php _e('Can we write?', 'autoptimize'); ?></th>
348
+<td><?php echo (autoptimizeCache::cacheavail() ? __('Yes', 'autoptimize') : __('No', 'autoptimize')); ?></td>
349 349
 </tr>
350
-<tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
351
-<th scope="row"><?php _e('Cached styles and scripts','autoptimize'); ?></th>
350
+<tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
351
+<th scope="row"><?php _e('Cached styles and scripts', 'autoptimize'); ?></th>
352 352
 <td><?php
353 353
     $AOstatArr = autoptimizeCache::stats();
354
-    if ( ! empty( $AOstatArr ) && is_array( $AOstatArr ) ) {
355
-        $AOcacheSize = size_format( $AOstatArr[1], 2 );
354
+    if (!empty($AOstatArr) && is_array($AOstatArr)) {
355
+        $AOcacheSize = size_format($AOstatArr[1], 2);
356 356
         $details = '';
357
-        if ( $AOcacheSize > 0 ) {
358
-            $details = ', ~' . $AOcacheSize . ' total';
357
+        if ($AOcacheSize > 0) {
358
+            $details = ', ~'.$AOcacheSize.' total';
359 359
         }
360
-        printf( __( '%1$s files, totalling %2$s Kbytes (calculated at %3$s)', 'autoptimize' ), $AOstatArr[0], $AOcacheSize, date( 'H:i e', $AOstatArr[2] ) );
360
+        printf(__('%1$s files, totalling %2$s Kbytes (calculated at %3$s)', 'autoptimize'), $AOstatArr[0], $AOcacheSize, date('H:i e', $AOstatArr[2]));
361 361
     }
362 362
 ?></td>
363 363
 </tr>
364 364
 </table>
365 365
 </li>
366 366
 
367
-<li class="<?php echo $hiddenClass;?>itemDetail ao_adv">
368
-<h2 class="itemTitle"><?php _e('Misc Options','autoptimize'); ?></h2>
367
+<li class="<?php echo $hiddenClass; ?>itemDetail ao_adv">
368
+<h2 class="itemTitle"><?php _e('Misc Options', 'autoptimize'); ?></h2>
369 369
 <table class="form-table">
370
-    <tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
371
-    <th scope="row"><?php _e('Save aggregated script/css as static files?','autoptimize'); ?></th>
372
-    <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo get_option('autoptimize_cache_nogzip','1')?'checked="checked" ':''; ?>/>
373
-    <?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>
370
+    <tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
371
+    <th scope="row"><?php _e('Save aggregated script/css as static files?', 'autoptimize'); ?></th>
372
+    <td><label class="cb_label"><input type="checkbox" name="autoptimize_cache_nogzip" <?php echo get_option('autoptimize_cache_nogzip', '1') ? 'checked="checked" ' : ''; ?>/>
373
+    <?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>
374 374
     </tr>
375
-    <tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
376
-    <th scope="row"><?php _e('Also optimize for logged in users?','autoptimize'); ?></th>
377
-    <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo get_option('autoptimize_optimize_logged','1')?'checked="checked" ':''; ?>/>
378
-    <?php _e('By default Autoptimize is also active for logged on users, uncheck not to optimize when logged in e.g. to use a pagebuilder.','autoptimize'); ?></label></td>
375
+    <tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
376
+    <th scope="row"><?php _e('Also optimize for logged in users?', 'autoptimize'); ?></th>
377
+    <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_logged" <?php echo get_option('autoptimize_optimize_logged', '1') ? 'checked="checked" ' : ''; ?>/>
378
+    <?php _e('By default Autoptimize is also active for logged on users, uncheck not to optimize when logged in e.g. to use a pagebuilder.', 'autoptimize'); ?></label></td>
379 379
     </tr>
380 380
     <?php
381
-    if ( function_exists("is_checkout") || function_exists("is_cart") || function_exists("edd_is_checkout") || function_exists("wpsc_is_cart") || function_exists("wpsc_is_checkout") ) {
381
+    if (function_exists("is_checkout") || function_exists("is_cart") || function_exists("edd_is_checkout") || function_exists("wpsc_is_cart") || function_exists("wpsc_is_checkout")) {
382 382
     ?>
383
-    <tr valign="top" class="<?php echo $hiddenClass;?>ao_adv">
384
-        <th scope="row"><?php _e('Also optimize shop cart/ checkout?','autoptimize'); ?></th>
385
-        <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_checkout" <?php echo get_option('autoptimize_optimize_checkout','1')?'checked="checked" ':''; ?>/>
386
-            <?php _e('By default Autoptimize is also active on your shop\'s cart/ checkout, uncheck not to optimize those.','autoptimize'); ?></label>
383
+    <tr valign="top" class="<?php echo $hiddenClass; ?>ao_adv">
384
+        <th scope="row"><?php _e('Also optimize shop cart/ checkout?', 'autoptimize'); ?></th>
385
+        <td><label class="cb_label"><input type="checkbox" name="autoptimize_optimize_checkout" <?php echo get_option('autoptimize_optimize_checkout', '1') ? 'checked="checked" ' : ''; ?>/>
386
+            <?php _e('By default Autoptimize is also active on your shop\'s cart/ checkout, uncheck not to optimize those.', 'autoptimize'); ?></label>
387 387
         </td>
388 388
     </tr>
389 389
     <?php } ?>
@@ -392,11 +392,11 @@  discard block
 block discarded – undo
392 392
 
393 393
 </ul>
394 394
 
395
-<input type="hidden" id="autoptimize_show_adv" name="autoptimize_show_adv" value="<?php echo get_option('autoptimize_show_adv','0'); ?>">
395
+<input type="hidden" id="autoptimize_show_adv" name="autoptimize_show_adv" value="<?php echo get_option('autoptimize_show_adv', '0'); ?>">
396 396
 
397 397
 <p class="submit">
398
-<input type="submit" class="button-secondary" value="<?php _e('Save Changes','autoptimize') ?>" />
399
-<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e('Save Changes and Empty Cache','autoptimize') ?>" />
398
+<input type="submit" class="button-secondary" value="<?php _e('Save Changes', 'autoptimize') ?>" />
399
+<input type="submit" class="button-primary" name="autoptimize_cache_clean" value="<?php _e('Save Changes and Empty Cache', 'autoptimize') ?>" />
400 400
 </p>
401 401
 
402 402
 </form>
@@ -405,13 +405,13 @@  discard block
 block discarded – undo
405 405
     <div class="autoptimize_banner hidden">
406 406
       <ul>
407 407
     <?php
408
-    if ( $this->settings_screen_do_remote_http ) {
409
-        $AO_banner = get_transient( 'autoptimize_banner' );
410
-        if ( empty( $AO_banner ) ) {
411
-            $banner_resp = wp_remote_get( 'https://misc.optimizingmatters.com/autoptimize_news.html?ao_ver='.AUTOPTIMIZE_PLUGIN_VERSION );
412
-            if ( ! is_wp_error( $banner_resp ) ) {
413
-                if ( '200' == wp_remote_retrieve_response_code( $banner_resp ) ) {
414
-                    $AO_banner = wp_kses_post( wp_remote_retrieve_body( $banner_resp ) );
408
+    if ($this->settings_screen_do_remote_http) {
409
+        $AO_banner = get_transient('autoptimize_banner');
410
+        if (empty($AO_banner)) {
411
+            $banner_resp = wp_remote_get('https://misc.optimizingmatters.com/autoptimize_news.html?ao_ver='.AUTOPTIMIZE_PLUGIN_VERSION);
412
+            if (!is_wp_error($banner_resp)) {
413
+                if ('200' == wp_remote_retrieve_response_code($banner_resp)) {
414
+                    $AO_banner = wp_kses_post(wp_remote_retrieve_body($banner_resp));
415 415
                     set_transient('autoptimize_banner', $AO_banner, DAY_IN_SECONDS);
416 416
                 }
417 417
             }
@@ -419,17 +419,17 @@  discard block
 block discarded – undo
419 419
         echo $AO_banner;
420 420
     }
421 421
     ?>
422
-        <li><?php _e("Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ here</a>.","autoptimize"); ?></li>
423
-        <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>
422
+        <li><?php _e("Need help? <a href='https://wordpress.org/plugins/autoptimize/faq/'>Check out the FAQ here</a>.", "autoptimize"); ?></li>
423
+        <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>
424 424
     </ul>
425 425
     </div>
426 426
     <div style="margin-left:10px;margin-top:-5px;">
427 427
         <h2>
428
-            <?php _e("futtta about","autoptimize") ?>
428
+            <?php _e("futtta about", "autoptimize") ?>
429 429
             <select id="feed_dropdown" >
430
-                <option value="1"><?php _e("Autoptimize","autoptimize") ?></option>
431
-                <option value="2"><?php _e("WordPress","autoptimize") ?></option>
432
-                <option value="3"><?php _e("Web Technology","autoptimize") ?></option>
430
+                <option value="1"><?php _e("Autoptimize", "autoptimize") ?></option>
431
+                <option value="2"><?php _e("WordPress", "autoptimize") ?></option>
432
+                <option value="3"><?php _e("Web Technology", "autoptimize") ?></option>
433 433
             </select>
434 434
         </h2>
435 435
         <div id="futtta_feed">
@@ -444,7 +444,7 @@  discard block
 block discarded – undo
444 444
             </div>
445 445
         </div>
446 446
     </div>
447
-    <div style="float:right;margin:50px 15px;"><a href="http://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url().'/'.plugin_basename(dirname(__FILE__)).'/external/do_not_donate_smallest.png'; ?>" title="<?php _e("Do not donate for this plugin!","autoptimize"); ?>"></a></div>
447
+    <div style="float:right;margin:50px 15px;"><a href="http://blog.futtta.be/2013/10/21/do-not-donate-to-me/" target="_blank"><img width="100px" height="85px" src="<?php echo plugins_url().'/'.plugin_basename(dirname(__FILE__)).'/external/do_not_donate_smallest.png'; ?>" title="<?php _e("Do not donate for this plugin!", "autoptimize"); ?>"></a></div>
448 448
 </div>
449 449
 
450 450
 <script type="text/javascript">
@@ -607,48 +607,48 @@  discard block
 block discarded – undo
607 607
 
608 608
     public function addmenu()
609 609
     {
610
-        $hook = add_options_page( __( 'Autoptimize Options', 'autoptimize' ), 'Autoptimize', 'manage_options', 'autoptimize', array( $this, 'show' ) );
611
-        add_action( 'admin_print_scripts-' . $hook, array( $this, 'autoptimize_admin_scripts' ) );
612
-        add_action( 'admin_print_styles-' . $hook, array( $this, 'autoptimize_admin_styles' ) );
610
+        $hook = add_options_page(__('Autoptimize Options', 'autoptimize'), 'Autoptimize', 'manage_options', 'autoptimize', array($this, 'show'));
611
+        add_action('admin_print_scripts-'.$hook, array($this, 'autoptimize_admin_scripts'));
612
+        add_action('admin_print_styles-'.$hook, array($this, 'autoptimize_admin_styles'));
613 613
     }
614 614
 
615 615
     public function autoptimize_admin_scripts()
616 616
     {
617
-        wp_enqueue_script( 'jqcookie', plugins_url( '/external/js/jquery.cookie.min.js', __FILE__ ), array( 'jquery' ), null, true );
618
-        wp_enqueue_script( 'unslider', plugins_url( '/external/js/unslider-min.js', __FILE__ ), array( 'jquery' ), null, true );
617
+        wp_enqueue_script('jqcookie', plugins_url('/external/js/jquery.cookie.min.js', __FILE__), array('jquery'), null, true);
618
+        wp_enqueue_script('unslider', plugins_url('/external/js/unslider-min.js', __FILE__), array('jquery'), null, true);
619 619
     }
620 620
 
621 621
     public function autoptimize_admin_styles()
622 622
     {
623
-        wp_enqueue_style( 'unslider', plugins_url( '/external/js/unslider.css', __FILE__ ) );
624
-        wp_enqueue_style( 'unslider-dots', plugins_url( '/external/js/unslider-dots.css', __FILE__ ) );
623
+        wp_enqueue_style('unslider', plugins_url('/external/js/unslider.css', __FILE__));
624
+        wp_enqueue_style('unslider-dots', plugins_url('/external/js/unslider-dots.css', __FILE__));
625 625
     }
626 626
 
627 627
     public function registersettings() {
628
-        register_setting( 'autoptimize', 'autoptimize_html' );
629
-        register_setting( 'autoptimize', 'autoptimize_html_keepcomments' );
630
-        register_setting( 'autoptimize', 'autoptimize_js' );
631
-        register_setting( 'autoptimize', 'autoptimize_js_aggregate' );
632
-        register_setting( 'autoptimize', 'autoptimize_js_exclude' );
633
-        register_setting( 'autoptimize', 'autoptimize_js_trycatch' );
634
-        register_setting( 'autoptimize', 'autoptimize_js_justhead' );
635
-        register_setting( 'autoptimize', 'autoptimize_js_forcehead' );
636
-        register_setting( 'autoptimize', 'autoptimize_js_include_inline' );
637
-        register_setting( 'autoptimize', 'autoptimize_css' );
638
-        register_setting( 'autoptimize', 'autoptimize_css_aggregate' );
639
-        register_setting( 'autoptimize', 'autoptimize_css_exclude' );
640
-        register_setting( 'autoptimize', 'autoptimize_css_justhead' );
641
-        register_setting( 'autoptimize', 'autoptimize_css_datauris' );
642
-        register_setting( 'autoptimize', 'autoptimize_css_defer' );
643
-        register_setting( 'autoptimize', 'autoptimize_css_defer_inline' );
644
-        register_setting( 'autoptimize', 'autoptimize_css_inline' );
645
-        register_setting( 'autoptimize', 'autoptimize_css_include_inline' );
646
-        register_setting( 'autoptimize', 'autoptimize_cdn_url' );
647
-        register_setting( 'autoptimize', 'autoptimize_cache_clean' );
648
-        register_setting( 'autoptimize', 'autoptimize_cache_nogzip' );
649
-        register_setting( 'autoptimize', 'autoptimize_show_adv' );
650
-        register_setting( 'autoptimize', 'autoptimize_optimize_logged' );
651
-        register_setting( 'autoptimize', 'autoptimize_optimize_checkout' );
628
+        register_setting('autoptimize', 'autoptimize_html');
629
+        register_setting('autoptimize', 'autoptimize_html_keepcomments');
630
+        register_setting('autoptimize', 'autoptimize_js');
631
+        register_setting('autoptimize', 'autoptimize_js_aggregate');
632
+        register_setting('autoptimize', 'autoptimize_js_exclude');
633
+        register_setting('autoptimize', 'autoptimize_js_trycatch');
634
+        register_setting('autoptimize', 'autoptimize_js_justhead');
635
+        register_setting('autoptimize', 'autoptimize_js_forcehead');
636
+        register_setting('autoptimize', 'autoptimize_js_include_inline');
637
+        register_setting('autoptimize', 'autoptimize_css');
638
+        register_setting('autoptimize', 'autoptimize_css_aggregate');
639
+        register_setting('autoptimize', 'autoptimize_css_exclude');
640
+        register_setting('autoptimize', 'autoptimize_css_justhead');
641
+        register_setting('autoptimize', 'autoptimize_css_datauris');
642
+        register_setting('autoptimize', 'autoptimize_css_defer');
643
+        register_setting('autoptimize', 'autoptimize_css_defer_inline');
644
+        register_setting('autoptimize', 'autoptimize_css_inline');
645
+        register_setting('autoptimize', 'autoptimize_css_include_inline');
646
+        register_setting('autoptimize', 'autoptimize_cdn_url');
647
+        register_setting('autoptimize', 'autoptimize_cache_clean');
648
+        register_setting('autoptimize', 'autoptimize_cache_nogzip');
649
+        register_setting('autoptimize', 'autoptimize_show_adv');
650
+        register_setting('autoptimize', 'autoptimize_optimize_logged');
651
+        register_setting('autoptimize', 'autoptimize_optimize_checkout');
652 652
     }
653 653
 
654 654
     public function setmeta($links, $file = null)
@@ -656,20 +656,20 @@  discard block
 block discarded – undo
656 656
         // Inspired on http://wpengineer.com/meta-links-for-wordpress-plugins/.
657 657
         // Do it only once - saves time.
658 658
         static $plugin;
659
-        if ( empty( $plugin ) ) {
660
-            $plugin = plugin_basename( AUTOPTIMIZE_PLUGIN_DIR . 'autoptimize.php' );
659
+        if (empty($plugin)) {
660
+            $plugin = plugin_basename(AUTOPTIMIZE_PLUGIN_DIR.'autoptimize.php');
661 661
         }
662 662
 
663
-        if ( null === $file ) {
663
+        if (null === $file) {
664 664
             // 2.7 and lower.
665
-            $settings_link = sprintf( '<a href="options-general.php?page=autoptimize">%s</a>', __( 'Settings' ) );
666
-            array_unshift( $links, $settings_link );
665
+            $settings_link = sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings'));
666
+            array_unshift($links, $settings_link);
667 667
         } else {
668 668
             // 2.8 and higher.
669 669
             // If it's us, add the link.
670
-            if ( $file === $plugin ) {
671
-                $newlink = array( sprintf( '<a href="options-general.php?page=autoptimize">%s</a>', __( 'Settings' ) ) );
672
-                $links = array_merge( $links, $newlink );
670
+            if ($file === $plugin) {
671
+                $newlink = array(sprintf('<a href="options-general.php?page=autoptimize">%s</a>', __('Settings')));
672
+                $links = array_merge($links, $newlink);
673 673
             }
674 674
         }
675 675
 
@@ -737,7 +737,7 @@  discard block
 block discarded – undo
737 737
      */
738 738
     public static function get_ao_css_preload_polyfill()
739 739
     {
740
-        $preload_poly = apply_filters('autoptimize_css_preload_polyfill','<script data-cfasync=\'false\'>!function(t){"use strict";t.loadCSS||(t.loadCSS=function(){});var e=loadCSS.relpreload={};if(e.support=function(){var e;try{e=t.document.createElement("link").relList.supports("preload")}catch(t){e=!1}return function(){return e}}(),e.bindMediaToggle=function(t){function e(){t.media=a}var a=t.media||"all";t.addEventListener?t.addEventListener("load",e):t.attachEvent&&t.attachEvent("onload",e),setTimeout(function(){t.rel="stylesheet",t.media="only x"}),setTimeout(e,3e3)},e.poly=function(){if(!e.support())for(var a=t.document.getElementsByTagName("link"),n=0;n<a.length;n++){var o=a[n];"preload"!==o.rel||"style"!==o.getAttribute("as")||o.getAttribute("data-loadcss")||(o.setAttribute("data-loadcss",!0),e.bindMediaToggle(o))}},!e.support()){e.poly();var a=t.setInterval(e.poly,500);t.addEventListener?t.addEventListener("load",function(){e.poly(),t.clearInterval(a)}):t.attachEvent&&t.attachEvent("onload",function(){e.poly(),t.clearInterval(a)})}"undefined"!=typeof exports?exports.loadCSS=loadCSS:t.loadCSS=loadCSS}("undefined"!=typeof global?global:this);</script>');
740
+        $preload_poly = apply_filters('autoptimize_css_preload_polyfill', '<script data-cfasync=\'false\'>!function(t){"use strict";t.loadCSS||(t.loadCSS=function(){});var e=loadCSS.relpreload={};if(e.support=function(){var e;try{e=t.document.createElement("link").relList.supports("preload")}catch(t){e=!1}return function(){return e}}(),e.bindMediaToggle=function(t){function e(){t.media=a}var a=t.media||"all";t.addEventListener?t.addEventListener("load",e):t.attachEvent&&t.attachEvent("onload",e),setTimeout(function(){t.rel="stylesheet",t.media="only x"}),setTimeout(e,3e3)},e.poly=function(){if(!e.support())for(var a=t.document.getElementsByTagName("link"),n=0;n<a.length;n++){var o=a[n];"preload"!==o.rel||"style"!==o.getAttribute("as")||o.getAttribute("data-loadcss")||(o.setAttribute("data-loadcss",!0),e.bindMediaToggle(o))}},!e.support()){e.poly();var a=t.setInterval(e.poly,500);t.addEventListener?t.addEventListener("load",function(){e.poly(),t.clearInterval(a)}):t.attachEvent&&t.attachEvent("onload",function(){e.poly(),t.clearInterval(a)})}"undefined"!=typeof exports?exports.loadCSS=loadCSS:t.loadCSS=loadCSS}("undefined"!=typeof global?global:this);</script>');
741 741
         return $preload_poly;
742 742
     }
743 743
 
@@ -748,55 +748,55 @@  discard block
 block discarded – undo
748 748
      */
749 749
     public static function get_ao_css_preload_onload()
750 750
     {
751
-        $preload_onload = apply_filters('autoptimize_filter_css_preload_onload',"this.onload=null;this.rel='stylesheet'");
751
+        $preload_onload = apply_filters('autoptimize_filter_css_preload_onload', "this.onload=null;this.rel='stylesheet'");
752 752
         return $preload_onload;
753 753
     }
754 754
 
755 755
     public function get($key)
756 756
     {
757
-        if ( ! is_array( $this->config ) ) {
757
+        if (!is_array($this->config)) {
758 758
             // Default config.
759 759
             $config = self::get_defaults();
760 760
 
761 761
             // Override with user settings.
762
-            foreach ( array_keys( $config ) as $name ) {
763
-                $conf = get_option( $name );
764
-                if ( false !== $conf ) {
762
+            foreach (array_keys($config) as $name) {
763
+                $conf = get_option($name);
764
+                if (false !== $conf) {
765 765
                     // It was set before!
766
-                    $config[ $name ] = $conf;
766
+                    $config[$name] = $conf;
767 767
                 }
768 768
             }
769 769
 
770 770
             // Save for next call.
771
-            $this->config = apply_filters( 'autoptimize_filter_get_config', $config );
771
+            $this->config = apply_filters('autoptimize_filter_get_config', $config);
772 772
         }
773 773
 
774
-        if ( isset( $this->config[ $key ] ) ) {
775
-            return $this->config[ $key ];
774
+        if (isset($this->config[$key])) {
775
+            return $this->config[$key];
776 776
         }
777 777
 
778 778
         return false;
779 779
     }
780 780
 
781 781
     private function getFutttaFeeds($url) {
782
-        if ( $this->settings_screen_do_remote_http ) {
783
-            $rss = fetch_feed( $url );
782
+        if ($this->settings_screen_do_remote_http) {
783
+            $rss = fetch_feed($url);
784 784
             $maxitems = 0;
785 785
 
786
-            if ( ! is_wp_error( $rss ) ) {
787
-                $maxitems = $rss->get_item_quantity( 7 );
788
-                $rss_items = $rss->get_items( 0, $maxitems );
786
+            if (!is_wp_error($rss)) {
787
+                $maxitems = $rss->get_item_quantity(7);
788
+                $rss_items = $rss->get_items(0, $maxitems);
789 789
             }
790 790
             ?>
791 791
             <ul>
792
-                <?php if ( $maxitems == 0 ) : ?>
793
-                    <li><?php _e( 'No items', 'autoptimize' ); ?></li>
792
+                <?php if ($maxitems == 0) : ?>
793
+                    <li><?php _e('No items', 'autoptimize'); ?></li>
794 794
                 <?php else : ?>
795
-                    <?php foreach ( $rss_items as $item ) : ?>
795
+                    <?php foreach ($rss_items as $item) : ?>
796 796
                         <li>
797
-                            <a href="<?php echo esc_url( $item->get_permalink() ); ?>"
798
-                                title="<?php printf( __( 'Posted %s', 'autoptimize' ), $item->get_date('j F Y | g:i a') ); ?>">
799
-                                <?php echo esc_html( $item->get_title() ); ?>
797
+                            <a href="<?php echo esc_url($item->get_permalink()); ?>"
798
+                                title="<?php printf(__('Posted %s', 'autoptimize'), $item->get_date('j F Y | g:i a')); ?>">
799
+                                <?php echo esc_html($item->get_title()); ?>
800 800
                             </a>
801 801
                         </li>
802 802
                     <?php endforeach; ?>
@@ -809,23 +809,23 @@  discard block
 block discarded – undo
809 809
     // based on http://wordpress.stackexchange.com/a/58826
810 810
     static function ao_admin_tabs()
811 811
     {
812
-        $tabs = apply_filters( 'autoptimize_filter_settingsscreen_tabs' ,array( 'autoptimize' => __( 'Main', 'autoptimize' ) ) );
812
+        $tabs = apply_filters('autoptimize_filter_settingsscreen_tabs', array('autoptimize' => __('Main', 'autoptimize')));
813 813
         $tabContent = '';
814 814
         $tabs_count = count($tabs);
815
-        if ( $tabs_count > 1 ) {
816
-            if ( isset( $_GET['page'] ) ) {
815
+        if ($tabs_count > 1) {
816
+            if (isset($_GET['page'])) {
817 817
                 $currentId = $_GET['page'];
818 818
             } else {
819 819
                 $currentId = "autoptimize";
820 820
             }
821 821
             $tabContent .= '<h2 class="nav-tab-wrapper">';
822 822
             foreach ($tabs as $tabId => $tabName) {
823
-                if ( $currentId == $tabId ) {
823
+                if ($currentId == $tabId) {
824 824
                     $class = ' nav-tab-active';
825
-                } else{
825
+                } else {
826 826
                     $class = '';
827 827
                 }
828
-                $tabContent .= '<a class="nav-tab' . $class . '" href="?page=' . $tabId . '">' . $tabName . '</a>';
828
+                $tabContent .= '<a class="nav-tab'.$class.'" href="?page='.$tabId.'">'.$tabName.'</a>';
829 829
             }
830 830
             $tabContent .= '</h2>';
831 831
         } else {
@@ -842,7 +842,7 @@  discard block
 block discarded – undo
842 842
      */
843 843
     public static function is_admin_and_not_ajax()
844 844
     {
845
-        return ( is_admin() && ! self::doing_ajax() );
845
+        return (is_admin() && !self::doing_ajax());
846 846
     }
847 847
 
848 848
     /**
@@ -852,10 +852,10 @@  discard block
 block discarded – undo
852 852
      */
853 853
     protected static function doing_ajax()
854 854
     {
855
-        if ( function_exists( 'wp_doing_ajax' ) ) {
855
+        if (function_exists('wp_doing_ajax')) {
856 856
             return wp_doing_ajax();
857 857
         } else {
858
-            return ( defined( 'DOING_AJAX' ) && DOING_AJAX );
858
+            return (defined('DOING_AJAX') && DOING_AJAX);
859 859
         }
860 860
     }
861 861
 }
Please login to merge, or discard this patch.
classes/autoptimizeCacheChecker.php 1 patch
Spacing   +36 added lines, -36 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,48 +25,48 @@  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', 'daily' );
40
-        if ( ! in_array( $frequency, array( 'hourly', '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', 'daily');
40
+        if (!in_array($frequency, array('hourly', 'daily', 'weekly', 'monthly'))) {
41 41
             $frequency = 'daily';
42 42
         }
43
-        if ( $do_cache_check && ( ! $schedule || $schedule !== $frequency ) ) {
44
-            wp_schedule_event( time(), $frequency, self::SCHEDULE_HOOK );
45
-        } elseif ( $schedule && ! $do_cache_check ) {
46
-            wp_clear_scheduled_hook( self::SCHEDULE_HOOK );
43
+        if ($do_cache_check && (!$schedule || $schedule !== $frequency)) {
44
+            wp_schedule_event(time(), $frequency, self::SCHEDULE_HOOK);
45
+        } elseif ($schedule && !$do_cache_check) {
46
+            wp_clear_scheduled_hook(self::SCHEDULE_HOOK);
47 47
         }
48 48
     }
49 49
 
50 50
     public function cronjob()
51 51
     {
52 52
         // Check cachesize and act accordingly.
53
-        $max_size       = (int) apply_filters( 'autoptimize_filter_cachecheck_maxsize', 536870912 );
54
-        $do_cache_check = (bool) apply_filters( 'autoptimize_filter_cachecheck_do', true );
53
+        $max_size       = (int) apply_filters('autoptimize_filter_cachecheck_maxsize', 536870912);
54
+        $do_cache_check = (bool) apply_filters('autoptimize_filter_cachecheck_do', true);
55 55
         $stat_array     = autoptimizeCache::stats();
56
-        $cache_size     = round( $stat_array[1] );
57
-        if ( ( $cache_size > $max_size ) && ( $do_cache_check ) ) {
58
-            update_option( 'autoptimize_cachesize_notice', true );
59
-            if ( apply_filters( 'autoptimize_filter_cachecheck_sendmail', true ) ) {
60
-                $site_url  = esc_url( site_url() );
61
-                $ao_mailto = apply_filters( 'autoptimize_filter_cachecheck_mailto', get_option( 'admin_email', '' ) );
62
-
63
-                $ao_mailsubject = __( 'Autoptimize cache size warning', 'autoptimize' ) . ' (' . $site_url . ')';
64
-                $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: ' . $site_url . ')';
65
-
66
-                if ( ! empty( $ao_mailto ) ) {
67
-                    $ao_mailresult = wp_mail( $ao_mailto, $ao_mailsubject, $ao_mailbody );
68
-                    if ( ! $ao_mailresult ) {
69
-                        error_log( 'Autoptimize could not send cache size warning mail.' );
56
+        $cache_size     = round($stat_array[1]);
57
+        if (($cache_size > $max_size) && ($do_cache_check)) {
58
+            update_option('autoptimize_cachesize_notice', true);
59
+            if (apply_filters('autoptimize_filter_cachecheck_sendmail', true)) {
60
+                $site_url  = esc_url(site_url());
61
+                $ao_mailto = apply_filters('autoptimize_filter_cachecheck_mailto', get_option('admin_email', ''));
62
+
63
+                $ao_mailsubject = __('Autoptimize cache size warning', 'autoptimize').' ('.$site_url.')';
64
+                $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: '.$site_url.')';
65
+
66
+                if (!empty($ao_mailto)) {
67
+                    $ao_mailresult = wp_mail($ao_mailto, $ao_mailsubject, $ao_mailbody);
68
+                    if (!$ao_mailresult) {
69
+                        error_log('Autoptimize could not send cache size warning mail.');
70 70
                     }
71 71
                 }
72 72
             }
@@ -85,16 +85,16 @@  discard block
 block discarded – undo
85 85
     public function show_admin_notice()
86 86
     {
87 87
         // fixme: make notices dismissable.
88
-        if ( (bool) get_option( 'autoptimize_cachesize_notice', false ) ) {
88
+        if ((bool) get_option('autoptimize_cachesize_notice', false)) {
89 89
             echo '<div class="notice notice-warning"><p>';
90
-            _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' );
90
+            _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');
91 91
             echo '</p></div>';
92
-            update_option( 'autoptimize_cachesize_notice', false );
92
+            update_option('autoptimize_cachesize_notice', false);
93 93
         }
94 94
 
95 95
         // Notice for image proxy usage.
96 96
         $_imgopt_notice = autoptimizeExtra::get_imgopt_status_notice_wrapper();
97
-        if ( is_array( $_imgopt_notice ) && array_key_exists( 'status', $_imgopt_notice ) && in_array( $_imgopt_notice['status'], array( 1, -1 ) ) ) {
97
+        if (is_array($_imgopt_notice) && array_key_exists('status', $_imgopt_notice) && in_array($_imgopt_notice['status'], array(1, -1))) {
98 98
             $_dismissible = 'ao-img-opt-notice-';
99 99
             $_hide_notice = '7';
100 100
 
@@ -102,10 +102,10 @@  discard block
 block discarded – undo
102 102
                 $_hide_notice = '1';
103 103
             }
104 104
 
105
-            $_imgopt_notice_dismissible = apply_filters( 'autoptimize_filter_imgopt_notice_dismissable', $_dismissible . $_hide_notice );
105
+            $_imgopt_notice_dismissible = apply_filters('autoptimize_filter_imgopt_notice_dismissable', $_dismissible.$_hide_notice);
106 106
 
107
-            if ( $_imgopt_notice && PAnD::is_admin_notice_active( $_imgopt_notice_dismissible ) ) {
108
-                echo '<div class="notice notice-warning is-dismissible" data-dismissible="' . $_imgopt_notice_dismissible . '"><p>' . $_imgopt_notice['notice'] . '</p></div>';
107
+            if ($_imgopt_notice && PAnD::is_admin_notice_active($_imgopt_notice_dismissible)) {
108
+                echo '<div class="notice notice-warning is-dismissible" data-dismissible="'.$_imgopt_notice_dismissible.'"><p>'.$_imgopt_notice['notice'].'</p></div>';
109 109
             }
110 110
         }
111 111
     }
Please login to merge, or discard this patch.
classes/autoptimizeExtra.php 1 patch
Spacing   +300 added lines, -300 removed lines patch added patch discarded remove patch
@@ -3,7 +3,7 @@  discard block
 block discarded – undo
3 3
  * Handles autoptimizeExtra frontend features + admin options page
4 4
  */
5 5
 
6
-if ( ! defined( 'ABSPATH' ) ) {
6
+if (!defined('ABSPATH')) {
7 7
     exit;
8 8
 }
9 9
 
@@ -21,9 +21,9 @@  discard block
 block discarded – undo
21 21
      *
22 22
      * @param array $options Optional. Allows overriding options without having to specify them via admin options page.
23 23
      */
24
-    public function __construct( $options = array() )
24
+    public function __construct($options = array())
25 25
     {
26
-        if ( empty( $options ) ) {
26
+        if (empty($options)) {
27 27
             $options = $this->fetch_options();
28 28
         }
29 29
 
@@ -32,9 +32,9 @@  discard block
 block discarded – undo
32 32
 
33 33
     public function run()
34 34
     {
35
-        if ( is_admin() ) {
36
-            add_action( 'admin_menu', array( $this, 'admin_menu' ) );
37
-            add_filter( 'autoptimize_filter_settingsscreen_tabs', array( $this, 'add_extra_tab' ) );
35
+        if (is_admin()) {
36
+            add_action('admin_menu', array($this, 'admin_menu'));
37
+            add_filter('autoptimize_filter_settingsscreen_tabs', array($this, 'add_extra_tab'));
38 38
         } else {
39 39
             $this->run_on_frontend();
40 40
         }
@@ -42,17 +42,17 @@  discard block
 block discarded – undo
42 42
 
43 43
     protected function fetch_options()
44 44
     {
45
-        $value = get_option( 'autoptimize_extra_settings' );
46
-        if ( empty( $value ) ) {
45
+        $value = get_option('autoptimize_extra_settings');
46
+        if (empty($value)) {
47 47
             // Fallback to returning defaults when no stored option exists yet.
48 48
             $value = autoptimizeConfig::get_ao_extra_default_options();
49 49
         }
50 50
 
51 51
         // get service availability.
52
-        $value['availabilities'] = get_option( 'autoptimize_service_availablity' );
52
+        $value['availabilities'] = get_option('autoptimize_service_availablity');
53 53
 
54
-        if ( empty( $value['availabilities'] ) ) {
55
-            $value['availabilities'] = autoptimizeUtils::check_service_availability( true );
54
+        if (empty($value['availabilities'])) {
55
+            $value['availabilities'] = autoptimizeUtils::check_service_availability(true);
56 56
         }
57 57
 
58 58
         return $value;
@@ -61,54 +61,54 @@  discard block
 block discarded – undo
61 61
     public function disable_emojis()
62 62
     {
63 63
         // Removing all actions related to emojis!
64
-        remove_action( 'admin_print_styles', 'print_emoji_styles' );
65
-        remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
66
-        remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
67
-        remove_action( 'wp_print_styles', 'print_emoji_styles' );
68
-        remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
69
-        remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
70
-        remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
64
+        remove_action('admin_print_styles', 'print_emoji_styles');
65
+        remove_action('wp_head', 'print_emoji_detection_script', 7);
66
+        remove_action('admin_print_scripts', 'print_emoji_detection_script');
67
+        remove_action('wp_print_styles', 'print_emoji_styles');
68
+        remove_filter('wp_mail', 'wp_staticize_emoji_for_email');
69
+        remove_filter('the_content_feed', 'wp_staticize_emoji');
70
+        remove_filter('comment_text_rss', 'wp_staticize_emoji');
71 71
 
72 72
         // Removes TinyMCE emojis.
73
-        add_filter( 'tiny_mce_plugins', array( $this, 'filter_disable_emojis_tinymce' ) );
73
+        add_filter('tiny_mce_plugins', array($this, 'filter_disable_emojis_tinymce'));
74 74
 
75 75
         // Removes emoji dns-preftech.
76
-        add_filter( 'wp_resource_hints', array( $this, 'filter_remove_emoji_dns_prefetch' ), 10, 2 );
76
+        add_filter('wp_resource_hints', array($this, 'filter_remove_emoji_dns_prefetch'), 10, 2);
77 77
     }
78 78
 
79
-    public function filter_disable_emojis_tinymce( $plugins )
79
+    public function filter_disable_emojis_tinymce($plugins)
80 80
     {
81
-        if ( is_array( $plugins ) ) {
82
-            return array_diff( $plugins, array( 'wpemoji' ) );
81
+        if (is_array($plugins)) {
82
+            return array_diff($plugins, array('wpemoji'));
83 83
         } else {
84 84
             return array();
85 85
         }
86 86
     }
87 87
 
88
-    public function filter_remove_qs( $src ) {
89
-        if ( strpos( $src, '?ver=' ) ) {
90
-            $src = remove_query_arg( 'ver', $src );
88
+    public function filter_remove_qs($src) {
89
+        if (strpos($src, '?ver=')) {
90
+            $src = remove_query_arg('ver', $src);
91 91
         }
92 92
 
93 93
         return $src;
94 94
     }
95 95
 
96
-    public function extra_async_js( $in )
96
+    public function extra_async_js($in)
97 97
     {
98 98
         $exclusions = array();
99
-        if ( ! empty( $in ) ) {
100
-            $exclusions = array_fill_keys( array_filter( array_map( 'trim', explode( ',', $in ) ) ), '' );
99
+        if (!empty($in)) {
100
+            $exclusions = array_fill_keys(array_filter(array_map('trim', explode(',', $in))), '');
101 101
         }
102 102
 
103 103
         $settings = $this->options['autoptimize_extra_text_field_3'];
104
-        $async    = array_fill_keys( array_filter( array_map( 'trim', explode( ',', $settings ) ) ), '' );
105
-        $attr     = apply_filters( 'autoptimize_filter_extra_async', 'async' );
106
-        foreach ( $async as $k => $v ) {
107
-            $async[ $k ] = $attr;
104
+        $async    = array_fill_keys(array_filter(array_map('trim', explode(',', $settings))), '');
105
+        $attr     = apply_filters('autoptimize_filter_extra_async', 'async');
106
+        foreach ($async as $k => $v) {
107
+            $async[$k] = $attr;
108 108
         }
109 109
 
110 110
         // Merge exclusions & asyncs in one array and return to AO API.
111
-        $merged = array_merge( $exclusions, $async );
111
+        $merged = array_merge($exclusions, $async);
112 112
 
113 113
         return $merged;
114 114
     }
@@ -118,76 +118,76 @@  discard block
 block discarded – undo
118 118
         $options = $this->options;
119 119
 
120 120
         // Disable emojis if specified.
121
-        if ( ! empty( $options['autoptimize_extra_checkbox_field_1'] ) ) {
121
+        if (!empty($options['autoptimize_extra_checkbox_field_1'])) {
122 122
             $this->disable_emojis();
123 123
         }
124 124
 
125 125
         // Remove version query parameters.
126
-        if ( ! empty( $options['autoptimize_extra_checkbox_field_0'] ) ) {
127
-            add_filter( 'script_loader_src', array( $this, 'filter_remove_qs' ), 15, 1 );
128
-            add_filter( 'style_loader_src', array( $this, 'filter_remove_qs' ), 15, 1 );
126
+        if (!empty($options['autoptimize_extra_checkbox_field_0'])) {
127
+            add_filter('script_loader_src', array($this, 'filter_remove_qs'), 15, 1);
128
+            add_filter('style_loader_src', array($this, 'filter_remove_qs'), 15, 1);
129 129
         }
130 130
 
131 131
         // Making sure is_plugin_active() exists when we need it.
132
-        if ( ! function_exists( 'is_plugin_active' ) ) {
133
-            require_once ABSPATH . 'wp-admin/includes/plugin.php';
132
+        if (!function_exists('is_plugin_active')) {
133
+            require_once ABSPATH.'wp-admin/includes/plugin.php';
134 134
         }
135 135
         // Avoiding conflicts of interest when async-javascript plugin is active!
136 136
         $async_js_plugin_active = false;
137
-        if ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'async-javascript/async-javascript.php' ) ) {
137
+        if (function_exists('is_plugin_active') && is_plugin_active('async-javascript/async-javascript.php')) {
138 138
             $async_js_plugin_active = true;
139 139
         }
140
-        if ( ! empty( $options['autoptimize_extra_text_field_3'] ) && ! $async_js_plugin_active ) {
141
-            add_filter( 'autoptimize_filter_js_exclude', array( $this, 'extra_async_js' ), 10, 1 );
140
+        if (!empty($options['autoptimize_extra_text_field_3']) && !$async_js_plugin_active) {
141
+            add_filter('autoptimize_filter_js_exclude', array($this, 'extra_async_js'), 10, 1);
142 142
         }
143 143
 
144 144
         // Optimize google fonts!
145
-        if ( ! empty( $options['autoptimize_extra_radio_field_4'] ) && ( '1' !== $options['autoptimize_extra_radio_field_4'] ) ) {
146
-            add_filter( 'wp_resource_hints', array( $this, 'filter_remove_gfonts_dnsprefetch' ), 10, 2 );
147
-            add_filter( 'autoptimize_html_after_minify', array( $this, 'filter_optimize_google_fonts' ), 10, 1 );
148
-            add_filter( 'autoptimize_extra_filter_tobepreconn', array( $this, 'filter_preconnect_google_fonts' ), 10, 1 );
145
+        if (!empty($options['autoptimize_extra_radio_field_4']) && ('1' !== $options['autoptimize_extra_radio_field_4'])) {
146
+            add_filter('wp_resource_hints', array($this, 'filter_remove_gfonts_dnsprefetch'), 10, 2);
147
+            add_filter('autoptimize_html_after_minify', array($this, 'filter_optimize_google_fonts'), 10, 1);
148
+            add_filter('autoptimize_extra_filter_tobepreconn', array($this, 'filter_preconnect_google_fonts'), 10, 1);
149 149
         }
150 150
 
151 151
         // Preconnect!
152
-        if ( ! empty( $options['autoptimize_extra_text_field_2'] ) || has_filter( 'autoptimize_extra_filter_tobepreconn' ) ) {
153
-            add_filter( 'wp_resource_hints', array( $this, 'filter_preconnect' ), 10, 2 );
152
+        if (!empty($options['autoptimize_extra_text_field_2']) || has_filter('autoptimize_extra_filter_tobepreconn')) {
153
+            add_filter('wp_resource_hints', array($this, 'filter_preconnect'), 10, 2);
154 154
         }
155 155
 
156 156
         // Optimize Images!
157
-        if ( ! empty( $options['autoptimize_extra_checkbox_field_5'] ) && 'down' !== $options['availabilities']['extra_imgopt']['status'] && ( 'launch' !== $options['availabilities']['extra_imgopt']['status'] || $this->imgopt_launch_ok() ) ) {
158
-            if ( apply_filters( 'autoptimize_filter_extra_imgopt_do', true ) ) {
159
-                add_filter( 'autoptimize_html_after_minify', array( $this, 'filter_optimize_images' ), 10, 1 );
157
+        if (!empty($options['autoptimize_extra_checkbox_field_5']) && 'down' !== $options['availabilities']['extra_imgopt']['status'] && ('launch' !== $options['availabilities']['extra_imgopt']['status'] || $this->imgopt_launch_ok())) {
158
+            if (apply_filters('autoptimize_filter_extra_imgopt_do', true)) {
159
+                add_filter('autoptimize_html_after_minify', array($this, 'filter_optimize_images'), 10, 1);
160 160
                 $_imgopt_active = true;
161 161
             }
162
-            if ( apply_filters( 'autoptimize_filter_extra_imgopt_do_css', true ) ) {
163
-                add_filter( 'autoptimize_filter_base_replace_cdn', array( $this, 'filter_optimize_css_images' ), 10, 1 );
162
+            if (apply_filters('autoptimize_filter_extra_imgopt_do_css', true)) {
163
+                add_filter('autoptimize_filter_base_replace_cdn', array($this, 'filter_optimize_css_images'), 10, 1);
164 164
                 $_imgopt_active = true;
165 165
             }
166
-            if ( $_imgopt_active ) {
167
-                add_filter( 'autoptimize_extra_filter_tobepreconn', array( $this, 'filter_preconnect_imgopt_url' ), 10, 1 );
166
+            if ($_imgopt_active) {
167
+                add_filter('autoptimize_extra_filter_tobepreconn', array($this, 'filter_preconnect_imgopt_url'), 10, 1);
168 168
             }
169 169
         }
170 170
     }
171 171
 
172
-    public function filter_remove_emoji_dns_prefetch( $urls, $relation_type )
172
+    public function filter_remove_emoji_dns_prefetch($urls, $relation_type)
173 173
     {
174
-        $emoji_svg_url = apply_filters( 'emoji_svg_url', 'https://s.w.org/images/core/emoji/' );
174
+        $emoji_svg_url = apply_filters('emoji_svg_url', 'https://s.w.org/images/core/emoji/');
175 175
 
176
-        return $this->filter_remove_dns_prefetch( $urls, $relation_type, $emoji_svg_url );
176
+        return $this->filter_remove_dns_prefetch($urls, $relation_type, $emoji_svg_url);
177 177
     }
178 178
 
179
-    public function filter_remove_gfonts_dnsprefetch( $urls, $relation_type )
179
+    public function filter_remove_gfonts_dnsprefetch($urls, $relation_type)
180 180
     {
181
-        return $this->filter_remove_dns_prefetch( $urls, $relation_type, 'fonts.googleapis.com' );
181
+        return $this->filter_remove_dns_prefetch($urls, $relation_type, 'fonts.googleapis.com');
182 182
     }
183 183
 
184
-    public function filter_remove_dns_prefetch( $urls, $relation_type, $url_to_remove )
184
+    public function filter_remove_dns_prefetch($urls, $relation_type, $url_to_remove)
185 185
     {
186
-        if ( 'dns-prefetch' === $relation_type ) {
186
+        if ('dns-prefetch' === $relation_type) {
187 187
             $cnt = 0;
188
-            foreach ( $urls as $url ) {
189
-                if ( false !== strpos( $url, $url_to_remove ) ) {
190
-                    unset( $urls[ $cnt ] );
188
+            foreach ($urls as $url) {
189
+                if (false !== strpos($url, $url_to_remove)) {
190
+                    unset($urls[$cnt]);
191 191
                 }
192 192
                 $cnt++;
193 193
             }
@@ -196,131 +196,131 @@  discard block
 block discarded – undo
196 196
         return $urls;
197 197
     }
198 198
 
199
-    public function filter_optimize_google_fonts( $in )
199
+    public function filter_optimize_google_fonts($in)
200 200
     {
201 201
         // Extract fonts, partly based on wp rocket's extraction code.
202
-        $markup = preg_replace( '/<!--(.*)-->/Uis', '', $in );
203
-        preg_match_all( '#<link(?:\s+(?:(?!href\s*=\s*)[^>])+)?(?:\s+href\s*=\s*([\'"])((?:https?:)?\/\/fonts\.googleapis\.com\/css(?:(?!\1).)+)\1)(?:\s+[^>]*)?>#iU', $markup, $matches );
202
+        $markup = preg_replace('/<!--(.*)-->/Uis', '', $in);
203
+        preg_match_all('#<link(?:\s+(?:(?!href\s*=\s*)[^>])+)?(?:\s+href\s*=\s*([\'"])((?:https?:)?\/\/fonts\.googleapis\.com\/css(?:(?!\1).)+)\1)(?:\s+[^>]*)?>#iU', $markup, $matches);
204 204
 
205 205
         $fonts_collection = array();
206
-        if ( ! $matches[2] ) {
206
+        if (!$matches[2]) {
207 207
             return $in;
208 208
         }
209 209
 
210 210
         // Store them in $fonts array.
211 211
         $i = 0;
212
-        foreach ( $matches[2] as $font ) {
213
-            if ( ! preg_match( '/rel=["\']dns-prefetch["\']/', $matches[0][ $i ] ) ) {
212
+        foreach ($matches[2] as $font) {
213
+            if (!preg_match('/rel=["\']dns-prefetch["\']/', $matches[0][$i])) {
214 214
                 // Get fonts name.
215
-                $font = str_replace( array( '%7C', '%7c' ), '|', $font );
216
-                $font = explode( 'family=', $font );
217
-                $font = ( isset( $font[1] ) ) ? explode( '&', $font[1] ) : array();
215
+                $font = str_replace(array('%7C', '%7c'), '|', $font);
216
+                $font = explode('family=', $font);
217
+                $font = (isset($font[1])) ? explode('&', $font[1]) : array();
218 218
                 // Add font to $fonts[$i] but make sure not to pollute with an empty family!
219
-                $_thisfont = array_values( array_filter( explode( '|', reset( $font ) ) ) );
220
-                if ( ! empty( $_thisfont ) ) {
221
-                    $fonts_collection[ $i ]['fonts'] = $_thisfont;
219
+                $_thisfont = array_values(array_filter(explode('|', reset($font))));
220
+                if (!empty($_thisfont)) {
221
+                    $fonts_collection[$i]['fonts'] = $_thisfont;
222 222
                     // And add subset if any!
223
-                    $subset = ( is_array( $font ) ) ? end( $font ) : '';
224
-                    if ( false !== strpos( $subset, 'subset=' ) ) {
225
-                        $subset                            = explode( 'subset=', $subset );
226
-                        $fonts_collection[ $i ]['subsets'] = explode( ',', $subset[1] );
223
+                    $subset = (is_array($font)) ? end($font) : '';
224
+                    if (false !== strpos($subset, 'subset=')) {
225
+                        $subset                            = explode('subset=', $subset);
226
+                        $fonts_collection[$i]['subsets'] = explode(',', $subset[1]);
227 227
                     }
228 228
                 }
229 229
                 // And remove Google Fonts.
230
-                $in = str_replace( $matches[0][ $i ], '', $in );
230
+                $in = str_replace($matches[0][$i], '', $in);
231 231
             }
232 232
             $i++;
233 233
         }
234 234
 
235 235
         $options      = $this->options;
236 236
         $fonts_markup = '';
237
-        if ( '2' === $options['autoptimize_extra_radio_field_4'] ) {
237
+        if ('2' === $options['autoptimize_extra_radio_field_4']) {
238 238
             // Remove Google Fonts.
239
-            unset( $fonts_collection );
239
+            unset($fonts_collection);
240 240
             return $in;
241
-        } elseif ( '3' === $options['autoptimize_extra_radio_field_4'] || '5' === $options['autoptimize_extra_radio_field_4'] ) {
241
+        } elseif ('3' === $options['autoptimize_extra_radio_field_4'] || '5' === $options['autoptimize_extra_radio_field_4']) {
242 242
             // Aggregate & link!
243 243
             $fonts_string  = '';
244 244
             $subset_string = '';
245
-            foreach ( $fonts_collection as $font ) {
246
-                $fonts_string .= '|' . trim( implode( '|', $font['fonts'] ), '|' );
247
-                if ( ! empty( $font['subsets'] ) ) {
248
-                    $subset_string .= implode( ',', $font['subsets'] );
245
+            foreach ($fonts_collection as $font) {
246
+                $fonts_string .= '|'.trim(implode('|', $font['fonts']), '|');
247
+                if (!empty($font['subsets'])) {
248
+                    $subset_string .= implode(',', $font['subsets']);
249 249
                 }
250 250
             }
251 251
 
252
-            if ( ! empty( $subset_string ) ) {
253
-                $fonts_string = $fonts_string . '#038;subset=' . $subset_string;
252
+            if (!empty($subset_string)) {
253
+                $fonts_string = $fonts_string.'#038;subset='.$subset_string;
254 254
             }
255 255
 
256
-            $fonts_string = str_replace( '|', '%7C', ltrim( $fonts_string, '|' ) );
256
+            $fonts_string = str_replace('|', '%7C', ltrim($fonts_string, '|'));
257 257
 
258
-            if ( ! empty( $fonts_string ) ) {
259
-                if ( '5' === $options['autoptimize_extra_radio_field_4'] ) {
260
-                    $rel_string = 'rel="preload" as="style" onload="' . autoptimizeConfig::get_ao_css_preload_onload() . '"';
258
+            if (!empty($fonts_string)) {
259
+                if ('5' === $options['autoptimize_extra_radio_field_4']) {
260
+                    $rel_string = 'rel="preload" as="style" onload="'.autoptimizeConfig::get_ao_css_preload_onload().'"';
261 261
                 } else {
262 262
                     $rel_string = 'rel="stylesheet"';
263 263
                 }
264
-                $fonts_markup = '<link ' . $rel_string . ' id="ao_optimized_gfonts" href="https://fonts.googleapis.com/css?family=' . $fonts_string . '" />';
264
+                $fonts_markup = '<link '.$rel_string.' id="ao_optimized_gfonts" href="https://fonts.googleapis.com/css?family='.$fonts_string.'" />';
265 265
             }
266
-        } elseif ( '4' === $options['autoptimize_extra_radio_field_4'] ) {
266
+        } elseif ('4' === $options['autoptimize_extra_radio_field_4']) {
267 267
             // Aggregate & load async (webfont.js impl.)!
268 268
             $fonts_array = array();
269
-            foreach ( $fonts_collection as $_fonts ) {
270
-                if ( ! empty( $_fonts['subsets'] ) ) {
271
-                    $_subset = implode( ',', $_fonts['subsets'] );
272
-                    foreach ( $_fonts['fonts'] as $key => $_one_font ) {
273
-                        $_one_font               = $_one_font . ':' . $_subset;
274
-                        $_fonts['fonts'][ $key ] = $_one_font;
269
+            foreach ($fonts_collection as $_fonts) {
270
+                if (!empty($_fonts['subsets'])) {
271
+                    $_subset = implode(',', $_fonts['subsets']);
272
+                    foreach ($_fonts['fonts'] as $key => $_one_font) {
273
+                        $_one_font               = $_one_font.':'.$_subset;
274
+                        $_fonts['fonts'][$key] = $_one_font;
275 275
                     }
276 276
                 }
277
-                $fonts_array = array_merge( $fonts_array, $_fonts['fonts'] );
277
+                $fonts_array = array_merge($fonts_array, $_fonts['fonts']);
278 278
             }
279 279
 
280 280
             $fonts_markup = '<script data-cfasync="false" id="ao_optimized_gfonts" type="text/javascript">WebFontConfig={google:{families:[\'';
281
-            foreach ( $fonts_array as $fnt ) {
282
-                $fonts_markup .= $fnt . "','";
281
+            foreach ($fonts_array as $fnt) {
282
+                $fonts_markup .= $fnt."','";
283 283
             }
284
-            $fonts_markup  = trim( trim( $fonts_markup, "'" ), ',' );
284
+            $fonts_markup  = trim(trim($fonts_markup, "'"), ',');
285 285
             $fonts_markup .= '] },classes:false, events:false, timeout:1500};(function() {var wf = document.createElement(\'script\');wf.src=\'https://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js\';wf.type=\'text/javascript\';wf.async=\'true\';var s=document.getElementsByTagName(\'script\')[0];s.parentNode.insertBefore(wf, s);})();</script>';
286 286
         }
287 287
 
288 288
         // Replace back in markup.
289
-        $out = substr_replace( $in, $fonts_markup . '<link', strpos( $in, '<link' ), strlen( '<link' ) );
290
-        unset( $fonts_collection );
289
+        $out = substr_replace($in, $fonts_markup.'<link', strpos($in, '<link'), strlen('<link'));
290
+        unset($fonts_collection);
291 291
 
292 292
         // and insert preload polyfill if "link preload" and if the polyfill isn't there yet (courtesy of inline&defer).
293 293
         $preload_polyfill = autoptimizeConfig::get_ao_css_preload_polyfill();
294
-        if ( '5' === $options['autoptimize_extra_radio_field_4'] && strpos( $out, $preload_polyfill ) === false ) {
295
-            $out = str_replace( '</body>', $preload_polyfill . '</body>', $out );
294
+        if ('5' === $options['autoptimize_extra_radio_field_4'] && strpos($out, $preload_polyfill) === false) {
295
+            $out = str_replace('</body>', $preload_polyfill.'</body>', $out);
296 296
         }
297 297
         return $out;
298 298
     }
299 299
 
300
-    public function filter_preconnect( $hints, $relation_type )
300
+    public function filter_preconnect($hints, $relation_type)
301 301
     {
302 302
         $options = $this->options;
303 303
 
304 304
         // Get settings and store in array.
305
-        $preconns = array_filter( array_map( 'trim', explode( ',', $options['autoptimize_extra_text_field_2'] ) ) );
306
-        $preconns = apply_filters( 'autoptimize_extra_filter_tobepreconn', $preconns );
305
+        $preconns = array_filter(array_map('trim', explode(',', $options['autoptimize_extra_text_field_2'])));
306
+        $preconns = apply_filters('autoptimize_extra_filter_tobepreconn', $preconns);
307 307
 
308 308
         // Walk array, extract domain and add to new array with crossorigin attribute.
309
-        foreach ( $preconns as $preconn ) {
310
-            $parsed = parse_url( $preconn );
309
+        foreach ($preconns as $preconn) {
310
+            $parsed = parse_url($preconn);
311 311
 
312
-            if ( is_array( $parsed ) && empty( $parsed['scheme'] ) ) {
313
-                $domain = '//' . $parsed['host'];
314
-            } elseif ( is_array( $parsed ) ) {
315
-                $domain = $parsed['scheme'] . '://' . $parsed['host'];
312
+            if (is_array($parsed) && empty($parsed['scheme'])) {
313
+                $domain = '//'.$parsed['host'];
314
+            } elseif (is_array($parsed)) {
315
+                $domain = $parsed['scheme'].'://'.$parsed['host'];
316 316
             }
317 317
 
318
-            if ( ! empty( $domain ) ) {
319
-                $hint = array( 'href' => $domain );
318
+            if (!empty($domain)) {
319
+                $hint = array('href' => $domain);
320 320
                 // Fonts don't get preconnected unless crossorigin flag is set, non-fonts don't get preconnected if origin flag is set
321 321
                 // so hardcode fonts.gstatic.com to come with crossorigin and have filter to add other domains if needed.
322
-                $crossorigins = apply_filters( 'autoptimize_extra_filter_preconn_crossorigin', array( 'https://fonts.gstatic.com' ) );
323
-                if ( in_array( $domain, $crossorigins ) ) {
322
+                $crossorigins = apply_filters('autoptimize_extra_filter_preconn_crossorigin', array('https://fonts.gstatic.com'));
323
+                if (in_array($domain, $crossorigins)) {
324 324
                     $hint['crossorigin'] = 'anonymous';
325 325
                 }
326 326
                 $new_hints[] = $hint;
@@ -328,21 +328,21 @@  discard block
 block discarded – undo
328 328
         }
329 329
 
330 330
         // Merge in WP's preconnect hints.
331
-        if ( 'preconnect' === $relation_type && ! empty( $new_hints ) ) {
332
-            $hints = array_merge( $hints, $new_hints );
331
+        if ('preconnect' === $relation_type && !empty($new_hints)) {
332
+            $hints = array_merge($hints, $new_hints);
333 333
         }
334 334
 
335 335
         return $hints;
336 336
     }
337 337
 
338
-    public function filter_preconnect_google_fonts( $in )
338
+    public function filter_preconnect_google_fonts($in)
339 339
     {
340
-        if ( '2' !== $this->options['autoptimize_extra_radio_field_4'] ) {
340
+        if ('2' !== $this->options['autoptimize_extra_radio_field_4']) {
341 341
             // Preconnect to fonts.gstatic.com unless we remove gfonts.
342 342
             $in[] = 'https://fonts.gstatic.com';
343 343
         }
344 344
 
345
-        if ( '4' === $this->options['autoptimize_extra_radio_field_4'] ) {
345
+        if ('4' === $this->options['autoptimize_extra_radio_field_4']) {
346 346
             // Preconnect even more hosts for webfont.js!
347 347
             $in[] = 'https://ajax.googleapis.com';
348 348
             $in[] = 'https://fonts.googleapis.com';
@@ -351,7 +351,7 @@  discard block
 block discarded – undo
351 351
         return $in;
352 352
     }
353 353
 
354
-    public function filter_optimize_images( $in )
354
+    public function filter_optimize_images($in)
355 355
     {
356 356
         /*
357 357
          * potential future functional improvements:
@@ -364,24 +364,24 @@  discard block
 block discarded – undo
364 364
         $to_replace      = array();
365 365
 
366 366
         // extract img tags.
367
-        if ( preg_match_all( '#<img[^>]*src[^>]*>#Usmi', $in, $matches ) ) {
368
-            foreach ( $matches[0] as $tag ) {
367
+        if (preg_match_all('#<img[^>]*src[^>]*>#Usmi', $in, $matches)) {
368
+            foreach ($matches[0] as $tag) {
369 369
                 $orig_tag = $tag;
370 370
 
371 371
                 // first do (data-)srcsets.
372
-                if ( preg_match_all( '#srcset=("|\')(.*)("|\')#Usmi', $tag, $allsrcsets, PREG_SET_ORDER ) ) {
373
-                    foreach ( $allsrcsets as $srcset ) {
372
+                if (preg_match_all('#srcset=("|\')(.*)("|\')#Usmi', $tag, $allsrcsets, PREG_SET_ORDER)) {
373
+                    foreach ($allsrcsets as $srcset) {
374 374
                         $srcset  = $srcset[2];
375
-                        $srcsets = explode( ',', $srcset );
376
-                        foreach ( $srcsets as $indiv_srcset ) {
377
-                            $indiv_srcset_parts = explode( ' ', trim( $indiv_srcset ) );
378
-                            if ( $indiv_srcset_parts[1] && rtrim( $indiv_srcset_parts[1], 'w' ) !== $indiv_srcset_parts[1] ) {
379
-                                $imgopt_w = rtrim( $indiv_srcset_parts[1], 'w' );
375
+                        $srcsets = explode(',', $srcset);
376
+                        foreach ($srcsets as $indiv_srcset) {
377
+                            $indiv_srcset_parts = explode(' ', trim($indiv_srcset));
378
+                            if ($indiv_srcset_parts[1] && rtrim($indiv_srcset_parts[1], 'w') !== $indiv_srcset_parts[1]) {
379
+                                $imgopt_w = rtrim($indiv_srcset_parts[1], 'w');
380 380
                             }
381
-                            if ( $this->can_optimize_image( $indiv_srcset_parts[0] ) ) {
382
-                                $imgopt_url              = $this->build_imgopt_url( $indiv_srcset_parts[0], $imgopt_w, '' );
383
-                                $tag                     = str_replace( $indiv_srcset_parts[0], $imgopt_url, $tag );
384
-                                $to_replace[ $orig_tag ] = $tag;
381
+                            if ($this->can_optimize_image($indiv_srcset_parts[0])) {
382
+                                $imgopt_url              = $this->build_imgopt_url($indiv_srcset_parts[0], $imgopt_w, '');
383
+                                $tag                     = str_replace($indiv_srcset_parts[0], $imgopt_url, $tag);
384
+                                $to_replace[$orig_tag] = $tag;
385 385
                             }
386 386
                         }
387 387
                     }
@@ -389,35 +389,35 @@  discard block
 block discarded – undo
389 389
 
390 390
                 // proceed with img src.
391 391
                 // first get width and height and add to $imgopt_size.
392
-                if ( preg_match( '#width=("|\')(.*)("|\')#Usmi', $tag, $width ) ) {
392
+                if (preg_match('#width=("|\')(.*)("|\')#Usmi', $tag, $width)) {
393 393
                     $imgopt_w = $width[2];
394 394
                 }
395
-                if ( preg_match( '#height=("|\')(.*)("|\')#Usmi', $tag, $height ) ) {
395
+                if (preg_match('#height=("|\')(.*)("|\')#Usmi', $tag, $height)) {
396 396
                     $imgopt_h = $height[2];
397 397
                 }
398 398
 
399 399
                 // then start replacing images src.
400
-                if ( preg_match_all( '#src=(?:"|\')(?!data)(.*)(?:"|\')#Usmi', $tag, $urls, PREG_SET_ORDER ) ) {
401
-                    foreach ( $urls as $url ) {
400
+                if (preg_match_all('#src=(?:"|\')(?!data)(.*)(?:"|\')#Usmi', $tag, $urls, PREG_SET_ORDER)) {
401
+                    foreach ($urls as $url) {
402 402
                         $full_src_orig = $url[0];
403 403
                         $url           = $url[1];
404
-                        if ( $this->can_optimize_image( $url ) ) {
405
-                            $imgopt_url              = $this->build_imgopt_url( $url, $imgopt_w, $imgopt_h );
406
-                            $full_imgopt_src         = str_replace( $url, $imgopt_url, $full_src_orig );
407
-                            $tag                     = str_replace( $full_src_orig, $full_imgopt_src, $tag );
408
-                            $to_replace[ $orig_tag ] = $tag;
404
+                        if ($this->can_optimize_image($url)) {
405
+                            $imgopt_url              = $this->build_imgopt_url($url, $imgopt_w, $imgopt_h);
406
+                            $full_imgopt_src         = str_replace($url, $imgopt_url, $full_src_orig);
407
+                            $tag                     = str_replace($full_src_orig, $full_imgopt_src, $tag);
408
+                            $to_replace[$orig_tag] = $tag;
409 409
                         }
410 410
                     }
411 411
                 }
412 412
             }
413 413
         }
414
-        $out = str_replace( array_keys( $to_replace ), array_values( $to_replace ), $in );
414
+        $out = str_replace(array_keys($to_replace), array_values($to_replace), $in);
415 415
 
416 416
         // img thumbnails in e.g. woocommerce.
417
-        if ( strpos( $out, 'data-thumb' ) !== false && apply_filters( 'autoptimize_filter_extra_imgopt_datathumbs', true ) ) {
417
+        if (strpos($out, 'data-thumb') !== false && apply_filters('autoptimize_filter_extra_imgopt_datathumbs', true)) {
418 418
             $out = preg_replace_callback(
419 419
                 '/\<div(?:[^>]?)\sdata-thumb\=(?:\"|\')(.+?)(?:\"|\')(?:[^>]*)?\>/s',
420
-                array( $this, 'replace_data_thumbs' ),
420
+                array($this, 'replace_data_thumbs'),
421 421
                 $out
422 422
             );
423 423
         }
@@ -425,13 +425,13 @@  discard block
 block discarded – undo
425 425
         return $out;
426 426
     }
427 427
 
428
-    public function filter_optimize_css_images( $in )
428
+    public function filter_optimize_css_images($in)
429 429
     {
430 430
         $imgopt_base_url = $this->get_imgopt_base_url();
431
-        $in              = $this->normalize_img_urls( $in );
431
+        $in              = $this->normalize_img_urls($in);
432 432
 
433
-        if ( $this->can_optimize_image( $in ) ) {
434
-            return $this->build_imgopt_url( $in, '', '' );
433
+        if ($this->can_optimize_image($in)) {
434
+            return $this->build_imgopt_url($in, '', '');
435 435
         } else {
436 436
             return $in;
437 437
         }
@@ -441,47 +441,47 @@  discard block
 block discarded – undo
441 441
     {
442 442
         static $imgopt_base_url = null;
443 443
 
444
-        if ( is_null( $imgopt_base_url ) ) {
444
+        if (is_null($imgopt_base_url)) {
445 445
             $imgopt_host     = $this->get_imgopt_host();
446 446
             $quality         = $this->get_img_quality_string();
447
-            $ret_val         = apply_filters( 'autoptimize_filter_extra_imgopt_wait', 'ret_img' ); // values: ret_wait, ret_img, ret_json, ret_blank.
448
-            $imgopt_base_url = $imgopt_host . 'client/' . $quality . ',' . $ret_val;
449
-            $imgopt_base_url = apply_filters( 'autoptimize_filter_extra_imgopt_base_url', $imgopt_base_url );
447
+            $ret_val         = apply_filters('autoptimize_filter_extra_imgopt_wait', 'ret_img'); // values: ret_wait, ret_img, ret_json, ret_blank.
448
+            $imgopt_base_url = $imgopt_host.'client/'.$quality.','.$ret_val;
449
+            $imgopt_base_url = apply_filters('autoptimize_filter_extra_imgopt_base_url', $imgopt_base_url);
450 450
         }
451 451
 
452 452
         return $imgopt_base_url;
453 453
     }
454 454
 
455
-    private function can_optimize_image( $url )
455
+    private function can_optimize_image($url)
456 456
     {
457 457
         static $cdn_url      = null;
458 458
         static $nopti_images = null;
459 459
 
460
-        if ( is_null( $cdn_url ) ) {
461
-            $cdn_url = apply_filters( 'autoptimize_filter_base_cdnurl', get_option( 'autoptimize_cdn_url', '' ) );
460
+        if (is_null($cdn_url)) {
461
+            $cdn_url = apply_filters('autoptimize_filter_base_cdnurl', get_option('autoptimize_cdn_url', ''));
462 462
         }
463 463
 
464
-        if ( is_null( $nopti_images ) ) {
465
-            $nopti_images = apply_filters( 'autoptimize_filter_extra_imgopt_noptimize', '' );
464
+        if (is_null($nopti_images)) {
465
+            $nopti_images = apply_filters('autoptimize_filter_extra_imgopt_noptimize', '');
466 466
         }
467 467
 
468 468
         $imgopt_base_url = $this->get_imgopt_base_url();
469 469
         $site_host       = AUTOPTIMIZE_SITE_DOMAIN;
470
-        $url_parsed      = parse_url( $url );
470
+        $url_parsed      = parse_url($url);
471 471
 
472
-        if ( $url_parsed['host'] !== $site_host && empty( $cdn_url ) ) {
472
+        if ($url_parsed['host'] !== $site_host && empty($cdn_url)) {
473 473
             return false;
474
-        } elseif ( ! empty( $cdn_url ) && strpos( $url, $cdn_url ) === false && $url_parsed['host'] !== $site_host ) {
474
+        } elseif (!empty($cdn_url) && strpos($url, $cdn_url) === false && $url_parsed['host'] !== $site_host) {
475 475
             return false;
476
-        } elseif ( strpos( $url, '.php' ) !== false ) {
476
+        } elseif (strpos($url, '.php') !== false) {
477 477
             return false;
478
-        } elseif ( str_ireplace( array( '.png', '.gif', '.jpg', '.jpeg' ), '', $url_parsed['path'] ) === $url_parsed['path'] ) {
478
+        } elseif (str_ireplace(array('.png', '.gif', '.jpg', '.jpeg'), '', $url_parsed['path']) === $url_parsed['path']) {
479 479
             // fixme: better check against end of string.
480 480
             return false;
481
-        } elseif ( ! empty( $nopti_images ) ) {
482
-            $nopti_images_array = array_filter( array_map( 'trim', explode( ',', $nopti_images ) ) );
483
-            foreach ( $nopti_images_array as $nopti_image ) {
484
-                if ( strpos( $url, $nopti_image ) !== false ) {
481
+        } elseif (!empty($nopti_images)) {
482
+            $nopti_images_array = array_filter(array_map('trim', explode(',', $nopti_images)));
483
+            foreach ($nopti_images_array as $nopti_image) {
484
+                if (strpos($url, $nopti_image) !== false) {
485 485
                     return false;
486 486
                 }
487 487
             }
@@ -489,72 +489,72 @@  discard block
 block discarded – undo
489 489
         return true;
490 490
     }
491 491
 
492
-    private function build_imgopt_url( $orig_url, $width = 0, $height = 0 )
492
+    private function build_imgopt_url($orig_url, $width = 0, $height = 0)
493 493
     {
494
-        $filtered_url = apply_filters( 'autoptimize_filter_extra_imgopt_build_url', $orig_url, $width, $height );
494
+        $filtered_url = apply_filters('autoptimize_filter_extra_imgopt_build_url', $orig_url, $width, $height);
495 495
 
496
-        if ( $filtered_url !== $orig_url ) {
496
+        if ($filtered_url !== $orig_url) {
497 497
             return $filtered_url;
498 498
         }
499 499
 
500
-        $orig_url        = $this->normalize_img_urls( $orig_url );
500
+        $orig_url        = $this->normalize_img_urls($orig_url);
501 501
         $imgopt_base_url = $this->get_imgopt_base_url();
502 502
         $imgopt_size     = '';
503 503
 
504
-        if ( $width && 0 !== $width ) {
505
-            $imgopt_size = ',w_' . $width;
504
+        if ($width && 0 !== $width) {
505
+            $imgopt_size = ',w_'.$width;
506 506
         }
507 507
 
508
-        if ( $height && 0 !== $height ) {
509
-            $imgopt_size .= ',h_' . $height;
508
+        if ($height && 0 !== $height) {
509
+            $imgopt_size .= ',h_'.$height;
510 510
         }
511 511
 
512
-        $url = $imgopt_base_url . $imgopt_size . '/' . $orig_url;
512
+        $url = $imgopt_base_url.$imgopt_size.'/'.$orig_url;
513 513
 
514 514
         return $url;
515 515
     }
516 516
 
517
-    public function replace_data_thumbs( $matches )
517
+    public function replace_data_thumbs($matches)
518 518
     {
519
-        if ( $this->can_optimize_image( $matches[1] ) ) {
520
-            return str_replace( $matches[1], $this->build_imgopt_url( $matches[1], 150, 150 ), $matches[0] );
519
+        if ($this->can_optimize_image($matches[1])) {
520
+            return str_replace($matches[1], $this->build_imgopt_url($matches[1], 150, 150), $matches[0]);
521 521
         } else {
522 522
             return $matches[0];
523 523
         }
524 524
     }
525 525
 
526
-    public function filter_preconnect_imgopt_url( $in )
526
+    public function filter_preconnect_imgopt_url($in)
527 527
     {
528
-        $imgopt_url_array = parse_url( $this->get_imgopt_base_url() );
529
-        $in[]             = $imgopt_url_array['scheme'] . '://' . $imgopt_url_array['host'];
528
+        $imgopt_url_array = parse_url($this->get_imgopt_base_url());
529
+        $in[]             = $imgopt_url_array['scheme'].'://'.$imgopt_url_array['host'];
530 530
 
531 531
         return $in;
532 532
     }
533 533
 
534
-    private function normalize_img_urls( $in )
534
+    private function normalize_img_urls($in)
535 535
     {
536
-        $parsed_site_url = parse_url( site_url() );
536
+        $parsed_site_url = parse_url(site_url());
537 537
 
538
-        if ( strpos( $in, 'http' ) !== 0 && strpos( $in, '//' ) === 0 ) {
539
-            $in = $parsed_site_url['scheme'] . ':' . $in;
540
-        } elseif ( strpos( $in, '/' ) === 0 ) {
541
-            $in = $parsed_site_url['scheme'] . '://' . $parsed_site_url['host'] . $in;
538
+        if (strpos($in, 'http') !== 0 && strpos($in, '//') === 0) {
539
+            $in = $parsed_site_url['scheme'].':'.$in;
540
+        } elseif (strpos($in, '/') === 0) {
541
+            $in = $parsed_site_url['scheme'].'://'.$parsed_site_url['host'].$in;
542 542
         }
543 543
 
544
-        return apply_filters( 'autoptimize_filter_extra_imgopt_normalized_url', $in );
544
+        return apply_filters('autoptimize_filter_extra_imgopt_normalized_url', $in);
545 545
     }
546 546
 
547 547
     private function get_img_quality_array()
548 548
     {
549 549
         static $img_quality_array = null;
550 550
 
551
-        if ( is_null( $img_quality_array ) ) {
551
+        if (is_null($img_quality_array)) {
552 552
             $img_quality_array = array(
553 553
                 '1' => 'lossy',
554 554
                 '2' => 'glossy',
555 555
                 '3' => 'lossless',
556 556
             );
557
-            $img_quality_array = apply_filters( 'autoptimize_filter_extra_imgopt_quality_array', $img_quality_array );
557
+            $img_quality_array = apply_filters('autoptimize_filter_extra_imgopt_quality_array', $img_quality_array);
558 558
         }
559 559
 
560 560
         return $img_quality_array;
@@ -564,10 +564,10 @@  discard block
 block discarded – undo
564 564
     {
565 565
         static $_img_q = null;
566 566
 
567
-        if ( is_null( $_img_q ) ) {
567
+        if (is_null($_img_q)) {
568 568
             $_setting = $this->options['autoptimize_extra_select_field_6'];
569 569
 
570
-            if ( ! $_setting || empty( $_setting ) || ( '1' !== $_setting && '3' !== $_setting ) ) {
570
+            if (!$_setting || empty($_setting) || ('1' !== $_setting && '3' !== $_setting)) {
571 571
                 // default image opt. value is 2 ("glossy").
572 572
                 $_img_q = '2';
573 573
             } else {
@@ -582,10 +582,10 @@  discard block
 block discarded – undo
582 582
     {
583 583
         static $_img_q_string = null;
584 584
 
585
-        if ( is_null( $_img_q_string ) ) {
585
+        if (is_null($_img_q_string)) {
586 586
             $_quality_array = $this->get_img_quality_array();
587 587
             $_setting       = $this->get_img_quality_setting();
588
-            $_img_q_string  = apply_filters( 'autoptimize_filter_extra_imgopt_quality', 'q_' . $_quality_array[ $_setting ] );
588
+            $_img_q_string  = apply_filters('autoptimize_filter_extra_imgopt_quality', 'q_'.$_quality_array[$_setting]);
589 589
         }
590 590
 
591 591
         return $_img_q_string;
@@ -600,25 +600,25 @@  discard block
 block discarded – undo
600 600
 
601 601
     public function query_img_provider_stats()
602 602
     {
603
-        if ( ! empty( $this->options['autoptimize_extra_checkbox_field_5'] ) ) {
603
+        if (!empty($this->options['autoptimize_extra_checkbox_field_5'])) {
604 604
             $_img_provider_stat_url = '';
605
-            $_img_provider_endpoint = $this->get_imgopt_host() . 'read-domain/';
605
+            $_img_provider_endpoint = $this->get_imgopt_host().'read-domain/';
606 606
             $_site_host             = AUTOPTIMIZE_SITE_DOMAIN;
607 607
 
608 608
             // make sure parse_url result makes sense, keeping $_img_provider_stat_url empty if not.
609
-            if ( $_site_host && ! empty( $_site_host ) ) {
610
-                $_img_provider_stat_url = $_img_provider_endpoint . $_site_host;
609
+            if ($_site_host && !empty($_site_host)) {
610
+                $_img_provider_stat_url = $_img_provider_endpoint.$_site_host;
611 611
             }
612 612
 
613
-            $_img_provider_stat_url = apply_filters( 'autoptimize_filter_extra_imgopt_stat_url', $_img_provider_stat_url );
613
+            $_img_provider_stat_url = apply_filters('autoptimize_filter_extra_imgopt_stat_url', $_img_provider_stat_url);
614 614
 
615 615
             // only do the remote call if $_img_provider_stat_url is not empty to make sure no parse_url weirdness results in useless calls.
616
-            if ( ! empty( $_img_provider_stat_url ) ) {
617
-                $_img_stat_resp = wp_remote_get( $_img_provider_stat_url );
618
-                if ( ! is_wp_error( $_img_stat_resp ) ) {
619
-                    if ( '200' == wp_remote_retrieve_response_code( $_img_stat_resp ) ) {
620
-                        $_img_provider_stat = json_decode( wp_remote_retrieve_body( $_img_stat_resp ), true );
621
-                        update_option( 'autoptimize_imgopt_provider_stat', $_img_provider_stat );
616
+            if (!empty($_img_provider_stat_url)) {
617
+                $_img_stat_resp = wp_remote_get($_img_provider_stat_url);
618
+                if (!is_wp_error($_img_stat_resp)) {
619
+                    if ('200' == wp_remote_retrieve_response_code($_img_stat_resp)) {
620
+                        $_img_provider_stat = json_decode(wp_remote_retrieve_body($_img_stat_resp), true);
621
+                        update_option('autoptimize_imgopt_provider_stat', $_img_provider_stat);
622 622
                     }
623 623
                 }
624 624
             }
@@ -629,14 +629,14 @@  discard block
 block discarded – undo
629 629
     {
630 630
         static $launch_status = null;
631 631
 
632
-        if ( is_null( $launch_status ) ) {
632
+        if (is_null($launch_status)) {
633 633
             $avail_imgopt = $this->options['availabilities']['extra_imgopt'];
634
-            $magic_number = intval( substr( md5( parse_url( AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST ) ), 0, 3 ), 16 );
635
-            $has_launched = get_option( 'autoptimize_imgopt_launched', '' );
636
-            if ( $has_launched || ( array_key_exists( 'launch-threshold', $avail_imgopt ) && $magic_number < $avail_imgopt['launch-threshold'] ) ) {
634
+            $magic_number = intval(substr(md5(parse_url(AUTOPTIMIZE_WP_SITE_URL, PHP_URL_HOST)), 0, 3), 16);
635
+            $has_launched = get_option('autoptimize_imgopt_launched', '');
636
+            if ($has_launched || (array_key_exists('launch-threshold', $avail_imgopt) && $magic_number < $avail_imgopt['launch-threshold'])) {
637 637
                 $launch_status = true;
638
-                if ( ! $has_launched ) {
639
-                    update_option( 'autoptimize_imgopt_launched', 'on' );
638
+                if (!$has_launched) {
639
+                    update_option('autoptimize_imgopt_launched', 'on');
640 640
                 }
641 641
             } else {
642 642
                 $launch_status = false;
@@ -650,10 +650,10 @@  discard block
 block discarded – undo
650 650
     {
651 651
         static $imgopt_host = null;
652 652
 
653
-        if ( is_null( $imgopt_host ) ) {
653
+        if (is_null($imgopt_host)) {
654 654
             $avail_imgopt = $this->options['availabilities']['extra_imgopt'];
655
-            if ( ! empty( $avail_imgopt ) && array_key_exists( 'hosts', $avail_imgopt ) && is_array( $avail_imgopt['hosts'] ) ) {
656
-                $imgopt_host = array_rand( array_flip( $avail_imgopt['hosts'] ) );
655
+            if (!empty($avail_imgopt) && array_key_exists('hosts', $avail_imgopt) && is_array($avail_imgopt['hosts'])) {
656
+                $imgopt_host = array_rand(array_flip($avail_imgopt['hosts']));
657 657
             } else {
658 658
                 $imgopt_host = 'https://cdn.shortpixel.ai/';
659 659
             }
@@ -671,28 +671,28 @@  discard block
 block discarded – undo
671 671
 
672 672
     public function get_imgopt_status_notice() {
673 673
         $_extra_options = $this->options;
674
-        if ( ! empty( $_extra_options ) && is_array( $_extra_options ) && array_key_exists( 'autoptimize_extra_checkbox_field_5', $_extra_options ) && ! empty( $_extra_options['autoptimize_extra_checkbox_field_5'] ) ) {
674
+        if (!empty($_extra_options) && is_array($_extra_options) && array_key_exists('autoptimize_extra_checkbox_field_5', $_extra_options) && !empty($_extra_options['autoptimize_extra_checkbox_field_5'])) {
675 675
             $_imgopt_notice = '';
676
-            $_stat          = get_option( 'autoptimize_imgopt_provider_stat', '' );
676
+            $_stat          = get_option('autoptimize_imgopt_provider_stat', '');
677 677
             $_site_host     = AUTOPTIMIZE_SITE_DOMAIN;
678
-            $_imgopt_upsell = 'https://shortpixel.com/aospai/af/GWRGFLW109483/' . $_site_host;
678
+            $_imgopt_upsell = 'https://shortpixel.com/aospai/af/GWRGFLW109483/'.$_site_host;
679 679
 
680
-            if ( is_array( $_stat ) ) {
681
-                if ( 1 == $_stat['Status'] ) {
680
+            if (is_array($_stat)) {
681
+                if (1 == $_stat['Status']) {
682 682
                     // translators: "add more credits" will appear in a "a href".
683
-                    $_imgopt_notice = sprintf( __( 'Your ShortPixel image optimization and CDN quota is almost used, make sure you %1$sadd more credits%2$s to avoid slowing down your website.', 'autoptimize' ), '<a href="' . $_imgopt_upsell . '" target="_blank">', '</a>' );
683
+                    $_imgopt_notice = sprintf(__('Your ShortPixel image optimization and CDN quota is almost used, make sure you %1$sadd more credits%2$s to avoid slowing down your website.', 'autoptimize'), '<a href="'.$_imgopt_upsell.'" target="_blank">', '</a>');
684 684
                 } elseif ( -1 == $_stat['Status'] ) {
685 685
                     // translators: "add more credits" will appear in a "a href".
686
-                    $_imgopt_notice = sprintf( __( 'Your ShortPixel image optimization and CDN quota was used, %1$sadd more credits%2$s to keep fast serving optimized images on your site.', 'autoptimize' ), '<a href="' . $_imgopt_upsell . '" target="_blank">', '</a>' );
686
+                    $_imgopt_notice = sprintf(__('Your ShortPixel image optimization and CDN quota was used, %1$sadd more credits%2$s to keep fast serving optimized images on your site.', 'autoptimize'), '<a href="'.$_imgopt_upsell.'" target="_blank">', '</a>');
687 687
                 } else {
688 688
                     $_imgopt_upsell = 'https://shortpixel.com/g/af/GWRGFLW109483';
689 689
                     // translators: "log in to check your account" will appear in a "a href".
690
-                    $_imgopt_notice = sprintf( __( 'Your ShortPixel image optimization and CDN quota are in good shape, %1$slog in to check your account%2$s.', 'autoptimize' ), '<a href="' . $_imgopt_upsell . '" target="_blank">', '</a>' );
690
+                    $_imgopt_notice = sprintf(__('Your ShortPixel image optimization and CDN quota are in good shape, %1$slog in to check your account%2$s.', 'autoptimize'), '<a href="'.$_imgopt_upsell.'" target="_blank">', '</a>');
691 691
                 }
692
-                $_imgopt_notice = apply_filters( 'autoptimize_filter_imgopt_notice', $_imgopt_notice );
692
+                $_imgopt_notice = apply_filters('autoptimize_filter_imgopt_notice', $_imgopt_notice);
693 693
 
694 694
                 return array(
695
-                    'status' => $_stat[ 'Status' ],
695
+                    'status' => $_stat['Status'],
696 696
                     'notice' => $_imgopt_notice,
697 697
                 );
698 698
             }
@@ -708,13 +708,13 @@  discard block
 block discarded – undo
708 708
 
709 709
     public function admin_menu()
710 710
     {
711
-        add_submenu_page( null, 'autoptimize_extra', 'autoptimize_extra', 'manage_options', 'autoptimize_extra', array( $this, 'options_page' ) );
712
-        register_setting( 'autoptimize_extra_settings', 'autoptimize_extra_settings' );
711
+        add_submenu_page(null, 'autoptimize_extra', 'autoptimize_extra', 'manage_options', 'autoptimize_extra', array($this, 'options_page'));
712
+        register_setting('autoptimize_extra_settings', 'autoptimize_extra_settings');
713 713
     }
714 714
 
715
-    public function add_extra_tab( $in )
715
+    public function add_extra_tab($in)
716 716
     {
717
-        $in = array_merge( $in, array( 'autoptimize_extra' => __( 'Extra', 'autoptimize' ) ) );
717
+        $in = array_merge($in, array('autoptimize_extra' => __('Extra', 'autoptimize')));
718 718
 
719 719
         return $in;
720 720
     }
@@ -727,7 +727,7 @@  discard block
 block discarded – undo
727 727
         // behavior being persisted in the DB even if save is done here.
728 728
         $options       = $this->fetch_options();
729 729
         $gfonts        = $options['autoptimize_extra_radio_field_4'];
730
-        $sp_url_suffix = '/af/GWRGFLW109483/' . AUTOPTIMIZE_SITE_DOMAIN;
730
+        $sp_url_suffix = '/af/GWRGFLW109483/'.AUTOPTIMIZE_SITE_DOMAIN;
731 731
     ?>
732 732
     <style>
733 733
         #ao_settings_form {background: white;border: 1px solid #ccc;padding: 1px 15px;margin: 15px 10px 10px 0;}
@@ -735,35 +735,35 @@  discard block
 block discarded – undo
735 735
         #autoptimize_extra_descr{font-size: 120%;}
736 736
     </style>
737 737
     <div class="wrap">
738
-    <h1><?php _e( 'Autoptimize Settings', 'autoptimize' ); ?></h1>
738
+    <h1><?php _e('Autoptimize Settings', 'autoptimize'); ?></h1>
739 739
     <?php echo autoptimizeConfig::ao_admin_tabs(); ?>
740 740
     <?php
741
-    if ( 'on' !== get_option( 'autoptimize_js' ) && 'on' !== get_option( 'autoptimize_css' ) && 'on' !== get_option( 'autoptimize_html' ) ) {
741
+    if ('on' !== get_option('autoptimize_js') && 'on' !== get_option('autoptimize_css') && 'on' !== get_option('autoptimize_html')) {
742 742
         ?>
743 743
         <div class="notice-warning notice"><p>
744 744
         <?php
745
-        _e( 'Most of below Extra optimizations require at least one of HTML, JS or CSS autoptimizations being active.', 'autoptimize' );
745
+        _e('Most of below Extra optimizations require at least one of HTML, JS or CSS autoptimizations being active.', 'autoptimize');
746 746
         ?>
747 747
         </p></div>
748 748
         <?php
749 749
     }
750 750
 
751
-    if ( 'down' === $options['availabilities']['extra_imgopt']['status'] ) {
751
+    if ('down' === $options['availabilities']['extra_imgopt']['status']) {
752 752
         ?>
753 753
         <div class="notice-warning notice"><p>
754 754
         <?php
755 755
         // translators: "Autoptimize support forum" will appear in a "a href".
756
-        echo sprintf( __( 'The image optimization service is currently down, image optimization will be skipped until further notice. Check the %1$sAutoptimize support forum%2$s for more info.', 'autoptimize' ), '<a href="https://wordpress.org/support/plugin/autoptimize/" target="_blank">', '</a>' );
756
+        echo sprintf(__('The image optimization service is currently down, image optimization will be skipped until further notice. Check the %1$sAutoptimize support forum%2$s for more info.', 'autoptimize'), '<a href="https://wordpress.org/support/plugin/autoptimize/" target="_blank">', '</a>');
757 757
         ?>
758 758
         </p></div>
759 759
         <?php
760 760
     }
761 761
 
762
-    if ( 'launch' === $options['availabilities']['extra_imgopt']['status'] && ! $this->imgopt_launch_ok() ) {
762
+    if ('launch' === $options['availabilities']['extra_imgopt']['status'] && !$this->imgopt_launch_ok()) {
763 763
         ?>
764 764
         <div class="notice-warning notice"><p>
765 765
         <?php
766
-        _e( 'The image optimization service is launching, but not yet available for this domain, it should become available in the next couple of days.', 'autoptimize' );
766
+        _e('The image optimization service is launching, but not yet available for this domain, it should become available in the next couple of days.', 'autoptimize');
767 767
         ?>
768 768
         </p></div>
769 769
         <?php
@@ -771,29 +771,29 @@  discard block
 block discarded – undo
771 771
 
772 772
     ?>
773 773
     <form id='ao_settings_form' action='options.php' method='post'>
774
-        <?php settings_fields( 'autoptimize_extra_settings' ); ?>
775
-        <h2><?php _e( 'Extra Auto-Optimizations', 'autoptimize' ); ?></h2>
776
-        <span id='autoptimize_extra_descr'><?php _e( 'The following settings can improve your site\'s performance even more.', 'autoptimize' ); ?></span>
774
+        <?php settings_fields('autoptimize_extra_settings'); ?>
775
+        <h2><?php _e('Extra Auto-Optimizations', 'autoptimize'); ?></h2>
776
+        <span id='autoptimize_extra_descr'><?php _e('The following settings can improve your site\'s performance even more.', 'autoptimize'); ?></span>
777 777
         <table class="form-table">
778 778
             <tr>
779
-                <th scope="row"><?php _e( 'Google Fonts', 'autoptimize' ); ?></th>
779
+                <th scope="row"><?php _e('Google Fonts', 'autoptimize'); ?></th>
780 780
                 <td>
781
-                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="1" <?php if ( ! in_array( $gfonts, array( 2, 3, 4, 5 ) ) ) { echo 'checked'; } ?> ><?php _e( 'Leave as is', 'autoptimize' ); ?><br/>
782
-                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="2" <?php checked( 2, $gfonts, true ); ?> ><?php _e( 'Remove Google Fonts', 'autoptimize' ); ?><br/>
783
-                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="3" <?php checked( 3, $gfonts, true ); ?> ><?php _e( 'Combine and link in head (fonts load fast but are render-blocking)', 'autoptimize' ); ?><br/>
784
-                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="5" <?php checked( 5, $gfonts, true ); ?> ><?php _e( 'Combine and preload in head (fonts load late, but are not render-blocking)', 'autoptimize' ); ?><br/>
785
-                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="4" <?php checked( 4, $gfonts, true ); ?> ><?php _e( 'Combine and load fonts asynchronously with <a href="https://github.com/typekit/webfontloader#readme" target="_blank">webfont.js</a>', 'autoptimize' ); ?><br/>
781
+                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="1" <?php if (!in_array($gfonts, array(2, 3, 4, 5))) { echo 'checked'; } ?> ><?php _e('Leave as is', 'autoptimize'); ?><br/>
782
+                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="2" <?php checked(2, $gfonts, true); ?> ><?php _e('Remove Google Fonts', 'autoptimize'); ?><br/>
783
+                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="3" <?php checked(3, $gfonts, true); ?> ><?php _e('Combine and link in head (fonts load fast but are render-blocking)', 'autoptimize'); ?><br/>
784
+                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="5" <?php checked(5, $gfonts, true); ?> ><?php _e('Combine and preload in head (fonts load late, but are not render-blocking)', 'autoptimize'); ?><br/>
785
+                    <input type="radio" name="autoptimize_extra_settings[autoptimize_extra_radio_field_4]" value="4" <?php checked(4, $gfonts, true); ?> ><?php _e('Combine and load fonts asynchronously with <a href="https://github.com/typekit/webfontloader#readme" target="_blank">webfont.js</a>', 'autoptimize'); ?><br/>
786 786
                 </td>
787 787
             </tr>
788 788
             <tr>
789
-                <th scope="row"><?php _e( 'Optimize Images', 'autoptimize' ); ?></th>
789
+                <th scope="row"><?php _e('Optimize Images', 'autoptimize'); ?></th>
790 790
                 <td>
791
-                    <label><input id='autoptimize_imgopt_checkbox' type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_5]' <?php if ( ! empty( $options['autoptimize_extra_checkbox_field_5'] ) && '1' === $options['autoptimize_extra_checkbox_field_5'] ) { echo 'checked="checked"'; } ?> value='1'><?php _e( 'Optimize images on the fly and serve them from a CDN.', 'autoptimize' ); ?></label>
791
+                    <label><input id='autoptimize_imgopt_checkbox' type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_5]' <?php if (!empty($options['autoptimize_extra_checkbox_field_5']) && '1' === $options['autoptimize_extra_checkbox_field_5']) { echo 'checked="checked"'; } ?> value='1'><?php _e('Optimize images on the fly and serve them from a CDN.', 'autoptimize'); ?></label>
792 792
                     <?php
793 793
                     // show shortpixel status.
794 794
                     $_notice = $this->get_imgopt_status_notice();
795
-                    if ( $_notice ) {
796
-                        switch ( $_notice['status'] ) {
795
+                    if ($_notice) {
796
+                        switch ($_notice['status']) {
797 797
                             case 2:
798 798
                                 $_notice_color = 'green';
799 799
                                 break;
@@ -806,24 +806,24 @@  discard block
 block discarded – undo
806 806
                             default:
807 807
                                 $_notice_color = 'green';
808 808
                         }
809
-                        echo apply_filters( 'autoptimize_filter_imgopt_settings_status', '<p><strong><span style="color:' . $_notice_color . ';">' . __( 'Shortpixel status: ', 'autoptimize' ) . '</span></strong>' . $_notice['notice'] . '</p>' );
809
+                        echo apply_filters('autoptimize_filter_imgopt_settings_status', '<p><strong><span style="color:'.$_notice_color.';">'.__('Shortpixel status: ', 'autoptimize').'</span></strong>'.$_notice['notice'].'</p>');
810 810
                     } else {
811
-                        $upsell_msg_1 = '<p>' . __( 'Get more Google love and improve your website\'s loading speed by having the images optimized on the fly by', 'autoptimize' );
812
-                        $upsell_link  = ' <a href="https://shortpixel.com/aospai' . $sp_url_suffix . '" target="_blank">ShortPixel</a> ';
813
-                        $upsell_msg_2 = __( 'and then cached and served fast from a CDN.', 'autoptimize' ) . ' ';
814
-                        if ( 'launch' === $options['availabilities']['extra_imgopt']['status'] ) {
815
-                            $upsell_msg_3 = __( 'For a limited time only, this service is offered free-for-all, <b>don\'t miss the chance to test it</b> and see how much it could improve your site\'s speed.', 'autoptimize' );
811
+                        $upsell_msg_1 = '<p>'.__('Get more Google love and improve your website\'s loading speed by having the images optimized on the fly by', 'autoptimize');
812
+                        $upsell_link  = ' <a href="https://shortpixel.com/aospai'.$sp_url_suffix.'" target="_blank">ShortPixel</a> ';
813
+                        $upsell_msg_2 = __('and then cached and served fast from a CDN.', 'autoptimize').' ';
814
+                        if ('launch' === $options['availabilities']['extra_imgopt']['status']) {
815
+                            $upsell_msg_3 = __('For a limited time only, this service is offered free-for-all, <b>don\'t miss the chance to test it</b> and see how much it could improve your site\'s speed.', 'autoptimize');
816 816
                         } else {
817
-                            $upsell_msg_3 = __( 'The service is offered for free for 100 images/month regardless of the traffic used. More image optimizations can be purchased starting with $4.99.', 'autoptimize' );
817
+                            $upsell_msg_3 = __('The service is offered for free for 100 images/month regardless of the traffic used. More image optimizations can be purchased starting with $4.99.', 'autoptimize');
818 818
                         }
819
-                        echo apply_filters( 'autoptimize_extra_imgopt_settings_copy', $upsell_msg_1 . $upsell_link . $upsell_msg_2 . $upsell_msg_3 . '</p>' );
819
+                        echo apply_filters('autoptimize_extra_imgopt_settings_copy', $upsell_msg_1.$upsell_link.$upsell_msg_2.$upsell_msg_3.'</p>');
820 820
                     }
821
-                    echo '<p>' . __( 'Usage of this feature is subject to Shortpixel\'s', 'autoptimize' ) . ' <a href="https://shortpixel.com/tos' . $sp_url_suffix . '" target="_blank">' . __( 'Terms of Use', 'autoptimize' ) . '</a> ' . __( 'and', 'autoptimize' ) . ' <a href="https://shortpixel.com/pp' . $sp_url_suffix . '" target="_blank">Privacy policy</a>.</p>';
821
+                    echo '<p>'.__('Usage of this feature is subject to Shortpixel\'s', 'autoptimize').' <a href="https://shortpixel.com/tos'.$sp_url_suffix.'" target="_blank">'.__('Terms of Use', 'autoptimize').'</a> '.__('and', 'autoptimize').' <a href="https://shortpixel.com/pp'.$sp_url_suffix.'" target="_blank">Privacy policy</a>.</p>';
822 822
                     ?>
823 823
                 </td>
824 824
             </tr>
825
-            <tr id='autoptimize_imgopt_quality' <?php if ( ! array_key_exists( 'autoptimize_extra_checkbox_field_5', $options ) || ( ! empty( $options['autoptimize_extra_checkbox_field_5'] ) && '1' !== $options['autoptimize_extra_checkbox_field_5'] ) ) { echo 'class="hidden"'; } ?>>
826
-                <th scope="row"><?php _e( 'Image Optimization quality', 'autoptimize' ); ?></th>
825
+            <tr id='autoptimize_imgopt_quality' <?php if (!array_key_exists('autoptimize_extra_checkbox_field_5', $options) || (!empty($options['autoptimize_extra_checkbox_field_5']) && '1' !== $options['autoptimize_extra_checkbox_field_5'])) { echo 'class="hidden"'; } ?>>
826
+                <th scope="row"><?php _e('Image Optimization quality', 'autoptimize'); ?></th>
827 827
                 <td>
828 828
                     <label>
829 829
                     <select name='autoptimize_extra_settings[autoptimize_extra_select_field_6]'>
@@ -831,79 +831,79 @@  discard block
 block discarded – undo
831 831
                         $_imgopt_array = $this->get_img_quality_array();
832 832
                         $_imgopt_val   = $this->get_img_quality_setting();
833 833
 
834
-                        foreach ( $_imgopt_array as $key => $value ) {
835
-                            echo '<option value="' . $key . '"';
836
-                            if ( $_imgopt_val == $key ) {
834
+                        foreach ($_imgopt_array as $key => $value) {
835
+                            echo '<option value="'.$key.'"';
836
+                            if ($_imgopt_val == $key) {
837 837
                                 echo ' selected';
838 838
                             }
839
-                            echo '>' . ucfirst( $value ) . '</option>';
839
+                            echo '>'.ucfirst($value).'</option>';
840 840
                         }
841 841
                         echo "\n";
842 842
                         ?>
843 843
                     </select>
844 844
                     </label>
845
-                    <p><?php echo apply_filters( 'autoptimize_extra_imgopt_quality_copy', __( 'You can', 'autoptimize' ) . ' <a href="https://shortpixel.com/oic' . $sp_url_suffix . '" target="_blank">' . __( 'test compression levels here', 'autoptimize' ) . '</a>.' ); ?></p>
845
+                    <p><?php echo apply_filters('autoptimize_extra_imgopt_quality_copy', __('You can', 'autoptimize').' <a href="https://shortpixel.com/oic'.$sp_url_suffix.'" target="_blank">'.__('test compression levels here', 'autoptimize').'</a>.'); ?></p>
846 846
                 </td>
847 847
             </tr>
848 848
             <tr>
849
-                <th scope="row"><?php _e( 'Remove emojis', 'autoptimize' ); ?></th>
849
+                <th scope="row"><?php _e('Remove emojis', 'autoptimize'); ?></th>
850 850
                 <td>
851
-                    <label><input type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_1]' <?php if ( ! empty( $options['autoptimize_extra_checkbox_field_1'] ) && '1' === $options['autoptimize_extra_checkbox_field_1'] ) { echo 'checked="checked"'; } ?> value='1'><?php _e( 'Removes WordPress\' core emojis\' inline CSS, inline JavaScript, and an otherwise un-autoptimized JavaScript file.', 'autoptimize' ); ?></label>
851
+                    <label><input type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_1]' <?php if (!empty($options['autoptimize_extra_checkbox_field_1']) && '1' === $options['autoptimize_extra_checkbox_field_1']) { echo 'checked="checked"'; } ?> value='1'><?php _e('Removes WordPress\' core emojis\' inline CSS, inline JavaScript, and an otherwise un-autoptimized JavaScript file.', 'autoptimize'); ?></label>
852 852
                 </td>
853 853
             </tr>
854 854
             <tr>
855
-                <th scope="row"><?php _e( 'Remove query strings from static resources', 'autoptimize' ); ?></th>
855
+                <th scope="row"><?php _e('Remove query strings from static resources', 'autoptimize'); ?></th>
856 856
                 <td>
857
-                    <label><input type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_0]' <?php if ( ! empty( $options['autoptimize_extra_checkbox_field_0'] ) && '1' === $options['autoptimize_extra_checkbox_field_0'] ) { echo 'checked="checked"'; } ?> value='1'><?php _e( 'Removing query strings (or more specifically the <code>ver</code> parameter) will not improve load time, but might improve performance scores.', 'autoptimize' ); ?></label>
857
+                    <label><input type='checkbox' name='autoptimize_extra_settings[autoptimize_extra_checkbox_field_0]' <?php if (!empty($options['autoptimize_extra_checkbox_field_0']) && '1' === $options['autoptimize_extra_checkbox_field_0']) { echo 'checked="checked"'; } ?> value='1'><?php _e('Removing query strings (or more specifically the <code>ver</code> parameter) will not improve load time, but might improve performance scores.', 'autoptimize'); ?></label>
858 858
                 </td>
859 859
             </tr>
860 860
             <tr>
861
-                <th scope="row"><?php _e( 'Preconnect to 3rd party domains <em>(advanced users)</em>', 'autoptimize' ); ?></th>
861
+                <th scope="row"><?php _e('Preconnect to 3rd party domains <em>(advanced users)</em>', 'autoptimize'); ?></th>
862 862
                 <td>
863
-                    <label><input type='text' style='width:80%' name='autoptimize_extra_settings[autoptimize_extra_text_field_2]' value='<?php echo esc_attr( $options['autoptimize_extra_text_field_2'] ); ?>'><br /><?php _e( 'Add 3rd party domains you want the browser to <a href="https://www.keycdn.com/support/preconnect/#primary" target="_blank">preconnect</a> to, separated by comma\'s. Make sure to include the correct protocol (HTTP or HTTPS).', 'autoptimize' ); ?></label>
863
+                    <label><input type='text' style='width:80%' name='autoptimize_extra_settings[autoptimize_extra_text_field_2]' value='<?php echo esc_attr($options['autoptimize_extra_text_field_2']); ?>'><br /><?php _e('Add 3rd party domains you want the browser to <a href="https://www.keycdn.com/support/preconnect/#primary" target="_blank">preconnect</a> to, separated by comma\'s. Make sure to include the correct protocol (HTTP or HTTPS).', 'autoptimize'); ?></label>
864 864
                 </td>
865 865
             </tr>
866 866
             <tr>
867
-                <th scope="row"><?php _e( 'Async Javascript-files <em>(advanced users)</em>', 'autoptimize' ); ?></th>
867
+                <th scope="row"><?php _e('Async Javascript-files <em>(advanced users)</em>', 'autoptimize'); ?></th>
868 868
                 <td>
869 869
                     <?php
870
-                    if ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'async-javascript/async-javascript.php' ) ) {
871
-                        _e( 'You have "Async JavaScript" installed,', 'autoptimize' );
870
+                    if (function_exists('is_plugin_active') && is_plugin_active('async-javascript/async-javascript.php')) {
871
+                        _e('You have "Async JavaScript" installed,', 'autoptimize');
872 872
                         $asj_config_url = 'options-general.php?page=async-javascript';
873
-                        echo sprintf( ' <a href="' . $asj_config_url . '">%s</a>', __( 'configuration of async javascript is best done there.', 'autoptimize' ) );
873
+                        echo sprintf(' <a href="'.$asj_config_url.'">%s</a>', __('configuration of async javascript is best done there.', 'autoptimize'));
874 874
                     } else {
875 875
                     ?>
876
-                        <input type='text' style='width:80%' name='autoptimize_extra_settings[autoptimize_extra_text_field_3]' value='<?php echo esc_attr( $options['autoptimize_extra_text_field_3'] ); ?>'>
876
+                        <input type='text' style='width:80%' name='autoptimize_extra_settings[autoptimize_extra_text_field_3]' value='<?php echo esc_attr($options['autoptimize_extra_text_field_3']); ?>'>
877 877
                         <br />
878 878
                         <?php
879
-                            _e( 'Comma-separated list of local or 3rd party JS-files that should loaded with the <code>async</code> flag. JS-files from your own site will be automatically excluded if added here. ', 'autoptimize' );
879
+                            _e('Comma-separated list of local or 3rd party JS-files that should loaded with the <code>async</code> flag. JS-files from your own site will be automatically excluded if added here. ', 'autoptimize');
880 880
                             // translators: %s will be replaced by a link to the "async javascript" plugin.
881
-                            echo sprintf( __( 'Configuration of async javascript is easier and more flexible using the %s plugin.', 'autoptimize' ), '"<a href="https://wordpress.org/plugins/async-javascript" target="_blank">Async Javascript</a>"' );
882
-                            $asj_install_url = network_admin_url() . 'plugin-install.php?s=async+javascript&tab=search&type=term';
883
-                            echo sprintf( ' <a href="' . $asj_install_url . '">%s</a>', __( 'Click here to install and activate it.', 'autoptimize' ) );
881
+                            echo sprintf(__('Configuration of async javascript is easier and more flexible using the %s plugin.', 'autoptimize'), '"<a href="https://wordpress.org/plugins/async-javascript" target="_blank">Async Javascript</a>"');
882
+                            $asj_install_url = network_admin_url().'plugin-install.php?s=async+javascript&tab=search&type=term';
883
+                            echo sprintf(' <a href="'.$asj_install_url.'">%s</a>', __('Click here to install and activate it.', 'autoptimize'));
884 884
                     }
885 885
                     ?>
886 886
                 </td>
887 887
             </tr>
888 888
             <tr>
889
-                <th scope="row"><?php _e( 'Optimize YouTube videos', 'autoptimize' ); ?></th>
889
+                <th scope="row"><?php _e('Optimize YouTube videos', 'autoptimize'); ?></th>
890 890
                 <td>
891 891
                     <?php
892
-                    if ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'wp-youtube-lyte/wp-youtube-lyte.php' ) ) {
893
-                        _e( 'Great, you have WP YouTube Lyte installed.', 'autoptimize' );
892
+                    if (function_exists('is_plugin_active') && is_plugin_active('wp-youtube-lyte/wp-youtube-lyte.php')) {
893
+                        _e('Great, you have WP YouTube Lyte installed.', 'autoptimize');
894 894
                         $lyte_config_url = 'options-general.php?page=lyte_settings_page';
895
-                        echo sprintf( ' <a href="' . $lyte_config_url . '">%s</a>', __( 'Click here to configure it.', 'autoptimize' ) );
895
+                        echo sprintf(' <a href="'.$lyte_config_url.'">%s</a>', __('Click here to configure it.', 'autoptimize'));
896 896
                     } else {
897 897
                         // translators: %s will be replaced by a link to "wp youtube lyte" plugin.
898
-                        echo sprintf( __( '%s allows you to “lazy load” your videos, by inserting responsive “Lite YouTube Embeds". ', 'autoptimize' ), '<a href="https://wordpress.org/plugins/wp-youtube-lyte" target="_blank">WP YouTube Lyte</a>' );
899
-                        $lyte_install_url = network_admin_url() . 'plugin-install.php?s=lyte&tab=search&type=term';
900
-                        echo sprintf( ' <a href="' . $lyte_install_url . '">%s</a>', __( 'Click here to install and activate it.', 'autoptimize' ) );
898
+                        echo sprintf(__('%s allows you to “lazy load” your videos, by inserting responsive “Lite YouTube Embeds". ', 'autoptimize'), '<a href="https://wordpress.org/plugins/wp-youtube-lyte" target="_blank">WP YouTube Lyte</a>');
899
+                        $lyte_install_url = network_admin_url().'plugin-install.php?s=lyte&tab=search&type=term';
900
+                        echo sprintf(' <a href="'.$lyte_install_url.'">%s</a>', __('Click here to install and activate it.', 'autoptimize'));
901 901
                     }
902 902
                     ?>
903 903
                 </td>
904 904
             </tr>
905 905
         </table>
906
-        <p class="submit"><input type="submit" name="submit" id="submit" class="button button-primary" value="<?php _e( 'Save Changes', 'autoptimize' ); ?>" /></p>
906
+        <p class="submit"><input type="submit" name="submit" id="submit" class="button button-primary" value="<?php _e('Save Changes', 'autoptimize'); ?>" /></p>
907 907
     </form>
908 908
     <script>
909 909
         jQuery(document).ready(function() {
Please login to merge, or discard this patch.