PluginProbe
Autoptimize / 2.2.2
Autoptimize v2.2.2
2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 All 107 releases
autoptimize / classlesses / autoptimizeUpdateCode.php

autoptimizeUpdateCode.php in Autoptimize 2.2.2, at classlesses/autoptimizeUpdateCode.php

77 lines 3.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /*
3 * below code handles updates and is only included by autoptimize.php if/ when needed
4 */
5
6 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
7
8 $majorUp = false;
9 $autoptimize_major_version=substr($autoptimize_db_version,0,3);
10
11 switch($autoptimize_major_version) {
12 case "1.6":
13 // from back in the days when I did not yet consider multisite
14 // if user was on version 1.6.x, force advanced options to be shown by default
15 update_option('autoptimize_show_adv','1');
16
17 // and remove old options
18 $to_delete_options=array("autoptimize_cdn_css","autoptimize_cdn_css_url","autoptimize_cdn_js","autoptimize_cdn_js_url","autoptimize_cdn_img","autoptimize_cdn_img_url","autoptimize_css_yui","autoptimize_js_yui");
19 foreach ($to_delete_options as $del_opt) {
20 delete_option( $del_opt );
21 }
22 $majorUp = true;
23 case "1.7":
24 // force 3.8 dashicons in CSS exclude options when upgrading from 1.7 to 1.8
25 if ( !is_multisite() ) {
26 $css_exclude = get_option('autoptimize_css_exclude');
27 if (empty($css_exclude)) {
28 $css_exclude = "admin-bar.min.css, dashicons.min.css";
29 } else if (strpos($css_exclude,"dashicons.min.css")===false) {
30 $css_exclude .= ", dashicons.min.css";
31 }
32 update_option('autoptimize_css_exclude',$css_exclude);
33 } else {
34 global $wpdb;
35 $blog_ids = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" );
36 $original_blog_id = get_current_blog_id();
37 foreach ( $blog_ids as $blog_id ) {
38 switch_to_blog( $blog_id );
39 $css_exclude = get_option('autoptimize_css_exclude');
40 if (empty($css_exclude)) {
41 $css_exclude = "admin-bar.min.css, dashicons.min.css";
42 } else if (strpos($css_exclude,"dashicons.min.css")===false) {
43 $css_exclude .= ", dashicons.min.css";
44 }
45 update_option('autoptimize_css_exclude',$css_exclude);
46 }
47 switch_to_blog( $original_blog_id );
48 }
49 $majorUp = true;
50 case "1.9":
51 /*
52 * 2.0 will not aggregate inline CSS/JS by default, but we want users
53 * upgrading from 1.9 to keep their inline code aggregated by default.
54 */
55 if ( !is_multisite() ) {
56 update_option('autoptimize_css_include_inline','on');
57 update_option('autoptimize_js_include_inline','on');
58 } else {
59 global $wpdb;
60 $blog_ids = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" );
61 $original_blog_id = get_current_blog_id();
62 foreach ( $blog_ids as $blog_id ) {
63 switch_to_blog( $blog_id );
64 update_option('autoptimize_css_include_inline','on');
65 update_option('autoptimize_js_include_inline','on');
66 }
67 switch_to_blog( $original_blog_id );
68 }
69 $majorUp = true;
70 }
71
72 if ( $majorUp === true ) {
73 // clear cache and notify user to check result if major upgrade
74 autoptimizeCache::clearall();
75 add_action('admin_notices', 'autoptimize_update_config_notice');
76 }
77