Version Description
- Improvement: Added "Overview" page which has the list of all the changes made to a specific CSS/JS file (handle), offering a much easier way to understand the changes made and do any debugging
- UI Improvement: The height of the CSS/JS asset row (when managing the list) is smaller, depending on the settings, making it easier to do scrolling
- UI Improvement: Adjust the total height of the "Note" textarea based on the content added, thus reducing the spacing between assets for easier scrolling/management
- Code Improvement: Split a few large files into multiple ones for easier management
- Backend Performance Improvement: Prevent Asset CleanUp's (own) CSS/JS from loading in edit post/page when the files aren't needed (e.g. no meta boxes are showing up because they were hidden)
- Extra compatibility with AMP pages: Do not move from HEAD to BODY any SCRIPT tags containing //cdn.ampproject.org/
- Bug Fix: Do not alter any Google Fonts links if there is no "family=" within it ("Smart Slider 3" fix)
Download this release
Release Info
Developer | gabelivan |
Plugin | Asset CleanUp: Page Speed Booster |
Version | 1.3.5.2 |
Comparing to | |
See all releases |
Code changes from version 1.3.5.1 to 1.3.5.2
- assets/script.min.js +1 -1
- assets/style.min.css +1 -1
- assets/tooltipster/tooltipster.bundle.min.css +1 -0
- assets/tooltipster/tooltipster.bundle.min.js +2 -0
- classes/AdminBar.php +10 -5
- classes/Menu.php +15 -5
- classes/Misc.php +27 -0
- classes/OptimiseAssets/FontsGoogle.php +36 -12
- classes/OptimiseAssets/OptimizeCommon.php +47 -5
- classes/OptimiseAssets/OptimizeCss.php +6 -1
- classes/Overview.php +742 -0
- classes/OwnAssets.php +63 -29
- readme.txt +10 -1
- templates/_top-area.php +9 -0
- templates/admin-page-overview.php +123 -0
- templates/meta-box-loaded-assets/_asset-script-single-row.php +37 -405
- templates/meta-box-loaded-assets/_asset-script-single-row/_attrs.php +28 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_extra_inline.php +25 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_handle.php +41 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_handle_deps.php +36 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_load-exceptions.php +53 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_notes.php +31 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_position.php +12 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_source.php +52 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_unload-per-page.php +53 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_unload-post-type.php +83 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_unload-site-wide.php +68 -0
- templates/meta-box-loaded-assets/_asset-script-single-row/_unload-via-regex.php +41 -0
- templates/meta-box-loaded-assets/_asset-style-single-row.php +31 -406
- templates/meta-box-loaded-assets/_asset-style-single-row/_extra_inline.php +28 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_handle.php +41 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_handle_deps.php +31 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_load-exceptions.php +54 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_notes.php +31 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_position.php +20 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_source.php +76 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_unload-per-page.php +53 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_unload-post-type.php +83 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_unload-site-wide.php +62 -0
- templates/meta-box-loaded-assets/_asset-style-single-row/_unload-via-regex.php +39 -0
- templates/meta-box-loaded-assets/_inline_js.php +43 -0
- wpacu.php +2 -2
assets/script.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function wpacuTabOpenSettingsArea(a,b){a.preventDefault();var c,d,e;for(d=document.getElementsByClassName("wpacu-settings-tab-content"),c=0;c<d.length;c++)d[c].style.display="none";for(e=document.getElementsByClassName("wpacu-settings-tab-link"),c=0;c<e.length;c++)e[c].className=e[c].className.replace(" active","");document.getElementById(b).style.display="table-cell",jQuery('a[href="#'+b+'"]').addClass("active"),jQuery("#wpacu-selected-tab-area").val(b)}function wpacuBytesToSize(a){return 0===a?"N/A":(a/1024).toFixed(4)+" KB"}jQuery(document).ready(function(a){function b(){if(!a("#wpacu_ajax_fetch_assets_list_dashboard_view").length)return!1;var b={};"direct"===wpacu_object.dom_get_type?(b[wpacu_object.plugin_name+"_load"]=1,b[wpacu_object.plugin_name+"_time_r"]=(new Date).getTime(),a.ajax({method:"GET",url:wpacu_object.page_url,data:b,cache:!1,complete:function(b,c){if("error"===b.statusText){var d=wpacu_object.ajax_direct_fetch_error;d=d.replace(/\{wpacu_output\}/,b.responseText),d=d.replace(/\{wpacu_status_code_error\}/,b.status),a("#wpacu_meta_box_content").html(d)}}}).done(function(b){var c=b.substring(b.lastIndexOf(wpacu_object.start_del)+wpacu_object.start_del.length,b.lastIndexOf(wpacu_object.end_del)),d={action:wpacu_object.plugin_name+"_get_loaded_assets",wpacu_list:c,post_id:wpacu_object.post_id,page_url:wpacu_object.page_url,tag_id:wpacu_object.tag_id,time_r:(new Date).getTime()};a.post(wpacu_object.ajax_url,d,function(b){if(!b)return!1;a("#wpacu_meta_box_content").html(b),a("#wpacu_home_page_form").length>0&&a("#submit").show(),setTimeout(function(){e.load(),a(".wpacu_asset_row").removeClass("wpacu-loading"),a("#wpacu-assets-reloading").remove(),e.checkSourcesFor404Errors()},200)})})):"wp_remote_post"===wpacu_object.dom_get_type&&(b={action:wpacu_object.plugin_name+"_get_loaded_assets",post_id:wpacu_object.post_id,page_url:wpacu_object.page_url,tag_id:wpacu_object.tag_id,time_r:(new Date).getTime()},a.post(wpacu_object.ajax_url,b,function(b){if(!b)return!1;a("#wpacu_meta_box_content").html(b),a("#wpacu_home_page_form").length>0&&a("#submit").show(),setTimeout(function(){e.load(),setTimeout(function(){e.checkSourcesFor404Errors()},100)},200)}))}a('input[name="wpacu_sub_tab_area"]').click(function(){a(this).prop("checked")&&a("#wpacu-selected-sub-tab-area").val(a(this).val())}),a("#wpacu_minify_css_enable, #wpacu_combine_loaded_css_enable, #wpacu_minify_js_enable, #wpacu_combine_loaded_js_enable, #wpacu_cdn_rewrite_enable, #wpacu_enable_test_mode").click(function(){a(this).prop("checked")?a('[data-linked-to="'+a(this).attr("id")+'"]').find(".wpacu-circle-status").addClass("wpacu-on").removeClass("wpacu-off"):a('[data-linked-to="'+a(this).attr("id")+'"]').find(".wpacu-circle-status").addClass("wpacu-off").removeClass("wpacu-on")}),a("#wpacu-mark-license-valid-button").click(function(){return confirm(wpacu_object.mark_license_valid_confirm)}),a("#wpacu-license-form").submit(function(){a("#edd_license_activate_btn").attr("disabled","disabled"),a("#edd_license_deactivate_btn").attr("disabled","disabled"),a(".wpacu-license-spinner").show()});var c,d;a("#wpacu-reset-drop-down").on("change keyup keydown mouseup mousedown click",function(){""===a(this).val()?(a("#wpacu-warning-read").removeClass("wpacu-visible"),a("#wpacu-reset-submit-btn").attr("disabled","disabled").removeClass("button-primary").addClass("button-secondary")):("reset_everything"===a(this).val()?a("#wpacu-license-data-remove-area").addClass("wpacu-visible"):a("#wpacu-license-data-remove-area").removeClass("wpacu-visible"),a("#wpacu-warning-read").addClass("wpacu-visible"),a("#wpacu-reset-submit-btn").removeAttr("disabled").removeClass("button-secondary").addClass("button-primary")),a(".wpacu-tools-area .wpacu-warning").hide(),c=a(this).find("option:selected"),a("#"+c.attr("data-id")).show()}),a("#wpacu-reset-submit-btn").on("click",function(){if("reset_settings"===a("#wpacu-reset-drop-down").val()?d=wpacu_object.reset_settings_confirm_msg:"reset_everything_except_settings"===a("#wpacu-reset-drop-down").val()?d=wpacu_object.reset_everything_except_settings_confirm_msg:"reset_everything"===a("#wpacu-reset-drop-down").val()&&(d=wpacu_object.reset_everything_confirm_msg),!confirm(d))return!1;a("#wpacu-action-confirmed").val("yes"),setTimeout(function(){"yes"===a("#wpacu-action-confirmed").val()&&a("#wpacu-tools-form").submit()},1e3)}),a("#wpacu-import-form").submit(function(){if(!confirm(wpacu_object.import_confirm_msg))return!1;a(this).find("button").addClass("wpacu-importing").prop("disabled",!0)});var e={load:function(){var b,c,d,f=".input-unload-on-this-page.wpacu-not-locked";a(".input-unload-on-this-page").on("click change",function(){a(this).prop("checked")?(e.uncheckAllOtherUnloadRules(a(this)),d=a(this).parents(".wpacu_asset_row"),b=a(this).attr("data-handle"),c=a(this).hasClass("wpacu_unload_rule_for_style")?"style":"script",e.hideLoadExceptionArea(d,b,c),a(this).closest("tr").addClass("wpacu_not_load")):a(this).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu-plugin-check-all").on("click",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin");a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]').find(f).prop("checked",!0).closest("tr").addClass("wpacu_not_load")}),a(".wpacu-plugin-uncheck-all").on("click",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin");a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]').find(f).prop("checked",!1).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu-plugin-check-load-all").on("click change",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin"),d=a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]');d.find(".wpacu_load_it_option_one.wpacu_load_exception").prop("checked",!0).closest("tr.wpacu_is_bulk_unloaded").removeClass("wpacu_not_load"),d.find(f).prop("checked",!1).trigger("change")}),a(".wpacu-plugin-uncheck-load-all").on("click change",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin"),d=a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]');d.find(".wpacu_load_it_option_one.wpacu_load_exception").prop("checked",!1).closest("tr.wpacu_is_bulk_unloaded").addClass("wpacu_not_load"),d.find(f).prop("checked",!1).trigger("change")}),a(".wpacu_global_unload").click(function(){b=a(this).attr("data-handle"),a(this).prop("checked")?(a(this).parent("label").addClass("wpacu_input_load_checked"),a(this).closest("tr").addClass("wpacu_not_load"),e.uncheckAllOtherUnloadRules(a(this))):(a(this).parent("label").removeClass("wpacu_input_load_checked"),a(this).closest("tr").removeClass("wpacu_not_load"))}),a(".wpacu_keep_bulk_rule").click(function(){a(this).prop("checked")&&a(this).parents("li").next().removeClass("remove_rule")}),a(".wpacu_remove_bulk_rule").click(function(){a(this).prop("checked")&&a(this).parents("li").addClass("remove_rule")}),a(".wpacu_bulk_unload").on("click change",function(){b=a(this).attr("data-handle"),c=a(this).attr("data-handle-for"),d=a("[data-"+c+'-handle-row="'+b+'"]'),a(this).prop("checked")?(a(this).hasClass("wpacu_unload_it_regex_checkbox")||(a(this).parent("label").addClass("wpacu_input_load_checked"),a(this).closest("tr").addClass("wpacu_not_load")),a("div.wpacu_exception_options_area_wrap[data-"+c+'-handle="'+b+'"]').removeClass("wpacu_hide"),e.uncheckAllOtherUnloadRules(a(this))):(a(this).hasClass("wpacu_unload_it_regex_checkbox")||(a(this).parent("label").removeClass("wpacu_input_load_checked"),a(this).closest("tr").removeClass("wpacu_not_load")),e.hideLoadExceptionArea(d,b,c)),d.hasClass("wpacu_is_bulk_unloaded")||a(".wpacu_bulk_unload:not(.wpacu_unload_it_regex_checkbox)").is(":checked")||a(this).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu_load_it_option_one.wpacu_load_exception").on("click change",function(){var b=a(this).attr("data-handle");if(a(this).prop("checked")){a(this).parent("label").addClass("wpacu_global_unload_exception");var c="";a(this).hasClass("wpacu_style")?c="style":a(this).hasClass("wpacu_script")&&(c="script"),a("#"+c+"_"+b).prop("checked",!1).trigger("change")}else a(this).parent("label").removeClass("wpacu_global_unload_exception")}),a(".wpacu_unload_it_regex_checkbox").on("click change",function(){var b=a(this).parents("li");a(this).prop("checked")?(b.find("label").addClass("wpacu_bold"),b.find('input[type="text"]').prop("disabled",!1).focus().removeClass("wpacu_disabled"),b.find(".wpacu_handle_unload_regex_input_wrap").removeClass("wpacu_hide")):(b.find("label").removeClass("wpacu_bold"),b.find('input[type="text"]').blur().addClass("wpacu_disabled"),""===b.find('input[type="text"]').val().trim()&&(b.find('input[type="text"]').prop("disabled",!0).val(""),b.find(".wpacu_handle_unload_regex_input_wrap").addClass("wpacu_hide")))}),a(".wpacu_load_it_option_two").on("click change",function(){var b=a(this).parents("li");a(this).prop("checked")?(b.find("label").addClass("wpacu_bold"),b.find('input[type="text"]').prop("disabled",!1).focus().removeClass("wpacu_disabled"),b.find(".wpacu_load_regex_input_wrap").removeClass("wpacu_hide")):(b.find("label").removeClass("wpacu_bold"),b.find('input[type="text"]').blur().addClass("wpacu_disabled"),""===b.find('input[type="text"]').val().trim()&&(b.find('input[type="text"]').prop("disabled",!0).val(""),b.find(".wpacu_load_regex_input_wrap").addClass("wpacu_hide")))}),a(".wpacu_script_attr_rule_input").on("click change",function(){a(this).is(":checked")&&(a(this).parents("ul").find(".wpacu_script_attr_rule_input").not(a(this)).prop("checked",!1),a(this).hasClass("wpacu_script_attr_rule_global")&&a(this).parents("ul").find(".wpacu-script-attr-make-exception").removeClass("wpacu_hide")),a(this).parents("ul").find(".wpacu_script_attr_rule_global").is(":checked")||a(this).parents("ul").find(".wpacu-script-attr-make-exception").addClass("wpacu_hide")}),a(".wpacu-add-handle-note").on("click",function(b){b.preventDefault();var c,d,e=a(this).attr("data-handle");a(this).hasClass("wpacu-for-script")?c=a('.wpacu-handle-notes-field[data-script-handle="'+e+'"]'):a(this).hasClass("wpacu-for-style")&&(c=a('.wpacu-handle-notes-field[data-style-handle="'+e+'"]')),c.length<1||(d=c.find(":input"),c.is(":hidden")?(c.show(),d.prop("disabled",!1)):(c.hide(),""===d.val().trim()&&"true"===d.attr("data-wpacu-is-empty-on-page-load")&&d.prop("disabled",!0).val("")))}),a(".wpacu-external-file-size").on("click",function(b){b.preventDefault();var c,d=a(this),e=d.attr("data-src");d.hide(),c=d.next(),c.show(),e.includes("/?")?a.get(e,{},function(a,b,d){if("success"!==b)return"N/A";c.html(wpacuBytesToSize(a.length))}):a.post(wpacu_object.ajax_url,{action:wpacu_object.plugin_id+"_get_external_file_size",wpacu_remote_file:e},function(a){c.html(a)})})},hideLoadExceptionArea:function(b,c,d){b.hasClass("wpacu_is_bulk_unloaded")||b.find(".wpacu_bulk_unload").is(":checked")||a("div.wpacu_exception_options_area_wrap[data-"+d+'-handle="'+c+'"]').addClass("wpacu_hide")},uncheckAllOtherUnloadRules:function(a){a.closest("tr").find(".wpacu_unload_rule_input").not(a).prop("checked",!1).parent("label").removeClass("wpacu_input_load_checked")},httpLoadSource:function(a,b){window.XMLHttpRequest?xmlhttp=new XMLHttpRequest:xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");try{xmlhttp.onreadystatechange=function(){if(4===xmlhttp.readyState&&200===xmlhttp.status)return xmlhttp.responseText;200!==xmlhttp.status&&(console.log(a+" "+xmlhttp.status),b.css({color:"#cc0000"}).parent("div").find("[data-wpacu-source-status]").html('<small>* <em style="font-weight: 600;">'+wpacu_object.source_load_error_msg+"</em></small>"))},xmlhttp.open("GET",a,!1),xmlhttp.send()}catch(a){console.log(a)}},checkSourcesFor404Errors:function(){var b=a("[data-wpacu-external-source]");if(!(b.length<1)){var c=b.length,d="";b.each(function(b){var e=a(this),f=e.attr("data-wpacu-external-source");d+=f+"-at-wpacu-at-",b===c-1&&jQuery.post(wpacu_object.ajax_url,{action:wpacu_object.plugin_id+"_check_external_urls_for_status_code",wpacu_check_urls:d},function(b){var c=jQuery.parseJSON(b);a.each(c,function(b,c){a('[data-wpacu-external-source="'+c+'"]').css({color:"#cc0000"}).parent("div").find("[data-wpacu-external-source-status]").html('<small>* <em style="font-weight: 600;">'+wpacu_object.source_load_error_msg+"</em></small>")})})})}}};a(window).load(function(){e.checkSourcesFor404Errors()}),a("#wpacu_post_type_select").change(function(){a("#wpacu_post_type_form").submit()}),a("#wpacu_taxonomy_select").change(function(){a("#wpacu_taxonomy_form").submit()}),a("#wpacu_dashboard").click(function(){a(this).prop("checked")?a("#wpacu-settings-assets-retrieval-mode").show():a("#wpacu-settings-assets-retrieval-mode").hide()}),a(".wpacu-dom-get-type-selection").change(function(){a(this).is(":checked")&&(a(".wpacu-dom-get-type-info").hide(),a("#"+a(this).attr("data-target")).fadeIn("fast"))}),a("#wpacu_frontend").click(function(){a(this).prop("checked")?a("#wpacu-settings-frontend-exceptions").show():a("#wpacu-settings-frontend-exceptions").hide()}),a(".google_fonts_combine_type").change(function(){a(".wpacu_google_fonts_combine_type_area").hide(),"async"===a(this).val()?a("#wpacu_google_fonts_combine_type_async_info_area").fadeIn():"async_preload"===a(this).val()?a("#wpacu_google_fonts_combine_type_async_preload_info_area").fadeIn():a("#wpacu_google_fonts_combine_type_rb_info_area").fadeIn()}),a("#wpacu_assets_list_layout").on("click change",function(){"by-location"===a(this).val()?a("#wpacu-assets-list-by-location-selected").fadeIn("fast"):a("#wpacu-assets-list-by-location-selected").fadeOut("fast")}),a("#wpacu_disable_jquery_migrate").on("click",function(){return!a(this).is(":checked")||(!(!a(this).is(":checked")||!confirm(wpacu_object.jquery_migration_disable_confirm_msg))||(a(this).prop("checked",!1),!1))}),a("#wpacu_disable_comment_reply").on("click",function(){return!a(this).is(":checked")||(!(!a(this).is(":checked")||!confirm(wpacu_object.comment_reply_disable_confirm_msg))||(a(this).prop("checked",!1),!1))}),a("[data-target-opacity]").click(function(){a(this).prop("checked")?a("#"+a(this).attr("data-target-opacity")).css({opacity:1}):a("#"+a(this).attr("data-target-opacity")).css({opacity:.4})}),a(".wpacu-combine-loaded-js-level").change(function(){a(this).is(":checked")&&(a(".wpacu_combine_loaded_js_level_area").removeClass("wpacu_active"),a("#"+a(this).attr("data-target")).addClass("wpacu_active"))});var f=a('#wpacu-update-button-area input[type="submit"]');f.parents("form").submit(function(){f.attr("disabled",!0),a("#wpacu-updating-settings").show()});var g=a("#wpacu-update-front-settings-area .wpacu_update_btn");if(g.parents("form").submit(function(){return g.attr("disabled",!0).addClass("wpacu_submitting"),a("#wpacu-updating-front-settings").show(),!0}),a("form#wpacu-settings-form, form#wpacu_home_page_form").submit(function(){return f.attr("disabled",!0),!0}),a(".wpacu_bulk_rule_checkbox, .wpacu_remove_preload").click(function(){var b=a(this).parents(".wpacu_bulk_change_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a(".wpacu_remove_regex").click(function(){var b=a(this).parents(".wpacu_regex_rule_row");a(this).prop("checked")?b.addClass("wpacu_enabled"):b.removeClass("wpacu_enabled")}),a(".wpacu_restore_position").click(function(){var b=a(this).parents(".wpacu_restore_position_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a(".wpacu_remove_global_attr").click(function(){var b=a(this).parents(".wpacu_remove_global_attr_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a("#wpacu_wrap_assets").length>0&&setTimeout(function(){e.load()},200),"undefined"==typeof wpacu_object||a("#wpacu_meta_box_content").length<1)return!1;("default"===wpacu_object.list_show_status||""===wpacu_object.list_show_status||wpacu_object.override_assets_list_load)&&b(),"fetch_on_click"===wpacu_object.list_show_status&&a("#wpacu_ajax_fetch_on_click_btn").click(function(c){c.preventDefault(),a(this).hide(),a("#wpacu_fetching_assets_list_wrap").show(),b()}),a(document).on("click",".wp-admin.post-php .edit-post-header__settings button.is-primary",function(){var c=function(){if(0===a(".edit-post-header__settings .is-saving").length){if(a("#wpacu_unload_assets_area_loaded").length>0&&a("#wpacu_unload_assets_area_loaded").val()){a("#wpacu-assets-reloading").remove();var c='<span id="wpacu-assets-reloading" class="editor-post-saved-state is-wpacu-reloading">'+wpacu_object.reload_icon+wpacu_object.reload_msg+"</span>";a(".wp-admin.post-php .edit-post-header__settings").prepend(c)}a(".wpacu_asset_row").addClass("wpacu-loading"),b(),clearInterval(d)}},d=setInterval(c,900)})});
|
1 |
+
function wpacuTabOpenSettingsArea(a,b){a.preventDefault();var c,d,e;for(d=document.getElementsByClassName("wpacu-settings-tab-content"),c=0;c<d.length;c++)d[c].style.display="none";for(e=document.getElementsByClassName("wpacu-settings-tab-link"),c=0;c<e.length;c++)e[c].className=e[c].className.replace(" active","");document.getElementById(b).style.display="table-cell",jQuery('a[href="#'+b+'"]').addClass("active"),jQuery("#wpacu-selected-tab-area").val(b)}function wpacuBytesToSize(a){return 0===a?"N/A":(a/1024).toFixed(4)+" KB"}jQuery(document).ready(function(a){function b(){if(!a("#wpacu_ajax_fetch_assets_list_dashboard_view").length)return!1;var b={};"direct"===wpacu_object.dom_get_type?(b[wpacu_object.plugin_name+"_load"]=1,b[wpacu_object.plugin_name+"_time_r"]=(new Date).getTime(),a.ajax({method:"GET",url:wpacu_object.page_url,data:b,cache:!1,complete:function(b,c){if("error"===b.statusText){var d=wpacu_object.ajax_direct_fetch_error;d=d.replace(/\{wpacu_output\}/,b.responseText),d=d.replace(/\{wpacu_status_code_error\}/,b.status),a("#wpacu_meta_box_content").html(d)}}}).done(function(b){var c=b.substring(b.lastIndexOf(wpacu_object.start_del)+wpacu_object.start_del.length,b.lastIndexOf(wpacu_object.end_del)),d={action:wpacu_object.plugin_name+"_get_loaded_assets",wpacu_list:c,post_id:wpacu_object.post_id,page_url:wpacu_object.page_url,tag_id:wpacu_object.tag_id,time_r:(new Date).getTime()};a.post(wpacu_object.ajax_url,d,function(b){if(!b)return!1;a("#wpacu_meta_box_content").html(b),a("#wpacu_home_page_form").length>0&&a("#submit").show(),setTimeout(function(){e.load(),a(".wpacu_asset_row").removeClass("wpacu-loading"),a("#wpacu-assets-reloading").remove(),e.checkSourcesFor404Errors()},200)})})):"wp_remote_post"===wpacu_object.dom_get_type&&(b={action:wpacu_object.plugin_name+"_get_loaded_assets",post_id:wpacu_object.post_id,page_url:wpacu_object.page_url,tag_id:wpacu_object.tag_id,time_r:(new Date).getTime()},a.post(wpacu_object.ajax_url,b,function(b){if(!b)return!1;a("#wpacu_meta_box_content").html(b),a("#wpacu_home_page_form").length>0&&a("#submit").show(),setTimeout(function(){e.load(),setTimeout(function(){e.checkSourcesFor404Errors()},100)},200)}))}a('input[name="wpacu_sub_tab_area"]').click(function(){a(this).prop("checked")&&a("#wpacu-selected-sub-tab-area").val(a(this).val())}),a("#wpacu_minify_css_enable, #wpacu_combine_loaded_css_enable, #wpacu_minify_js_enable, #wpacu_combine_loaded_js_enable, #wpacu_cdn_rewrite_enable, #wpacu_enable_test_mode").click(function(){a(this).prop("checked")?a('[data-linked-to="'+a(this).attr("id")+'"]').find(".wpacu-circle-status").addClass("wpacu-on").removeClass("wpacu-off"):a('[data-linked-to="'+a(this).attr("id")+'"]').find(".wpacu-circle-status").addClass("wpacu-off").removeClass("wpacu-on")}),a("#wpacu-mark-license-valid-button").click(function(){return confirm(wpacu_object.mark_license_valid_confirm)}),a("#wpacu-license-form").submit(function(){a("#edd_license_activate_btn").attr("disabled","disabled"),a("#edd_license_deactivate_btn").attr("disabled","disabled"),a(".wpacu-license-spinner").show()});var c,d;a("#wpacu-reset-drop-down").on("change keyup keydown mouseup mousedown click",function(){""===a(this).val()?(a("#wpacu-warning-read").removeClass("wpacu-visible"),a("#wpacu-reset-submit-btn").attr("disabled","disabled").removeClass("button-primary").addClass("button-secondary")):("reset_everything"===a(this).val()?a("#wpacu-license-data-remove-area").addClass("wpacu-visible"):a("#wpacu-license-data-remove-area").removeClass("wpacu-visible"),a("#wpacu-warning-read").addClass("wpacu-visible"),a("#wpacu-reset-submit-btn").removeAttr("disabled").removeClass("button-secondary").addClass("button-primary")),a(".wpacu-tools-area .wpacu-warning").hide(),c=a(this).find("option:selected"),a("#"+c.attr("data-id")).show()}),a("#wpacu-reset-submit-btn").on("click",function(){if("reset_settings"===a("#wpacu-reset-drop-down").val()?d=wpacu_object.reset_settings_confirm_msg:"reset_everything_except_settings"===a("#wpacu-reset-drop-down").val()?d=wpacu_object.reset_everything_except_settings_confirm_msg:"reset_everything"===a("#wpacu-reset-drop-down").val()&&(d=wpacu_object.reset_everything_confirm_msg),!confirm(d))return!1;a("#wpacu-action-confirmed").val("yes"),setTimeout(function(){"yes"===a("#wpacu-action-confirmed").val()&&a("#wpacu-tools-form").submit()},1e3)}),a("#wpacu-import-form").submit(function(){if(!confirm(wpacu_object.import_confirm_msg))return!1;a(this).find("button").addClass("wpacu-importing").prop("disabled",!0)});var e={load:function(){var b,c,d,f=".input-unload-on-this-page.wpacu-not-locked";a(".input-unload-on-this-page").on("click change",function(){a(this).prop("checked")?(e.uncheckAllOtherUnloadRules(a(this)),d=a(this).parents(".wpacu_asset_row"),b=a(this).attr("data-handle"),c=a(this).hasClass("wpacu_unload_rule_for_style")?"style":"script",e.hideLoadExceptionArea(d,b,c),a(this).closest("tr").addClass("wpacu_not_load")):a(this).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu-plugin-check-all").on("click",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin");a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]').find(f).prop("checked",!0).closest("tr").addClass("wpacu_not_load")}),a(".wpacu-plugin-uncheck-all").on("click",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin");a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]').find(f).prop("checked",!1).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu-plugin-check-load-all").on("click change",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin"),d=a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]');d.find(".wpacu_load_it_option_one.wpacu_load_exception").prop("checked",!0).closest("tr.wpacu_is_bulk_unloaded").removeClass("wpacu_not_load"),d.find(f).prop("checked",!1).trigger("change")}),a(".wpacu-plugin-uncheck-load-all").on("click change",function(b){b.preventDefault();var c=a(this).attr("data-wpacu-plugin"),d=a('table.wpacu_list_by_location[data-wpacu-plugin="'+c+'"]');d.find(".wpacu_load_it_option_one.wpacu_load_exception").prop("checked",!1).closest("tr.wpacu_is_bulk_unloaded").addClass("wpacu_not_load"),d.find(f).prop("checked",!1).trigger("change")}),a(".wpacu_global_unload").click(function(){b=a(this).attr("data-handle"),a(this).prop("checked")?(a(this).parent("label").addClass("wpacu_input_load_checked"),a(this).closest("tr").addClass("wpacu_not_load"),e.uncheckAllOtherUnloadRules(a(this))):(a(this).parent("label").removeClass("wpacu_input_load_checked"),a(this).closest("tr").removeClass("wpacu_not_load"))}),a(".wpacu_keep_bulk_rule").click(function(){a(this).prop("checked")&&a(this).parents("li").next().removeClass("remove_rule")}),a(".wpacu_remove_bulk_rule").click(function(){a(this).prop("checked")&&a(this).parents("li").addClass("remove_rule")}),a(".wpacu_bulk_unload").on("click change",function(){b=a(this).attr("data-handle"),c=a(this).attr("data-handle-for"),d=a("[data-"+c+'-handle-row="'+b+'"]'),a(this).prop("checked")?(a(this).hasClass("wpacu_unload_it_regex_checkbox")||(a(this).parent("label").addClass("wpacu_input_load_checked"),a(this).closest("tr").addClass("wpacu_not_load")),a("div.wpacu_exception_options_area_wrap[data-"+c+'-handle="'+b+'"]').parent("div").removeClass("wpacu_hide"),e.uncheckAllOtherUnloadRules(a(this))):(a(this).hasClass("wpacu_unload_it_regex_checkbox")||(a(this).parent("label").removeClass("wpacu_input_load_checked"),a(this).closest("tr").removeClass("wpacu_not_load")),e.hideLoadExceptionArea(d,b,c)),d.hasClass("wpacu_is_bulk_unloaded")||a(".wpacu_bulk_unload:not(.wpacu_unload_it_regex_checkbox)").is(":checked")||a(this).closest("tr").removeClass("wpacu_not_load")}),a(".wpacu_load_it_option_one.wpacu_load_exception").on("click change",function(){var b=a(this).attr("data-handle");if(a(this).prop("checked")){a(this).parent("label").addClass("wpacu_global_unload_exception");var c="";a(this).hasClass("wpacu_style")?c="style":a(this).hasClass("wpacu_script")&&(c="script"),a("#"+c+"_"+b).prop("checked",!1).trigger("change")}else a(this).parent("label").removeClass("wpacu_global_unload_exception")}),a(".wpacu_unload_it_regex_checkbox").on("click change",function(){var b=a(this).parents("li");a(this).prop("checked")?(b.find("label").addClass("wpacu_bold"),b.find('input[type="text"]').prop("disabled",!1).focus().removeClass("wpacu_disabled"),b.find(".wpacu_handle_unload_regex_input_wrap").removeClass("wpacu_hide")):(b.find("label").removeClass("wpacu_bold"),b.find('input[type="text"]').blur().addClass("wpacu_disabled"),""===b.find('input[type="text"]').val().trim()&&(b.find('input[type="text"]').prop("disabled",!0).val(""),b.find(".wpacu_handle_unload_regex_input_wrap").addClass("wpacu_hide")))}),a(".wpacu_load_it_option_two").on("click change",function(){var b=a(this).parents("li");a(this).prop("checked")?(b.find("label").addClass("wpacu_bold"),b.find('input[type="text"]').prop("disabled",!1).focus().removeClass("wpacu_disabled"),b.find(".wpacu_load_regex_input_wrap").removeClass("wpacu_hide")):(b.find("label").removeClass("wpacu_bold"),b.find('input[type="text"]').blur().addClass("wpacu_disabled"),""===b.find('input[type="text"]').val().trim()&&(b.find('input[type="text"]').prop("disabled",!0).val(""),b.find(".wpacu_load_regex_input_wrap").addClass("wpacu_hide")))}),a(".wpacu_script_attr_rule_input").on("click change",function(){a(this).is(":checked")&&(a(this).parents("ul").find(".wpacu_script_attr_rule_input").not(a(this)).prop("checked",!1),a(this).hasClass("wpacu_script_attr_rule_global")&&a(this).parents("ul").find(".wpacu-script-attr-make-exception").removeClass("wpacu_hide")),a(this).parents("ul").find(".wpacu_script_attr_rule_global").is(":checked")||a(this).parents("ul").find(".wpacu-script-attr-make-exception").addClass("wpacu_hide")}),a(".wpacu-add-handle-note").on("click",function(b){b.preventDefault();var c,d,e=a(this).attr("data-handle");a(this).hasClass("wpacu-for-script")?c=a('.wpacu-handle-notes-field[data-script-handle="'+e+'"]'):a(this).hasClass("wpacu-for-style")&&(c=a('.wpacu-handle-notes-field[data-style-handle="'+e+'"]')),c.length<1||(d=c.find(":input"),c.is(":hidden")?(c.show(),d.prop("disabled",!1)):(c.hide(),""===d.val().trim()&&"true"===d.attr("data-wpacu-is-empty-on-page-load")&&d.prop("disabled",!0).val("")))}),a(".wpacu-external-file-size").on("click",function(b){b.preventDefault();var c,d=a(this),e=d.attr("data-src");d.hide(),c=d.next(),c.show(),e.includes("/?")?a.get(e,{},function(a,b,d){if("success"!==b)return"N/A";c.html(wpacuBytesToSize(a.length))}):a.post(wpacu_object.ajax_url,{action:wpacu_object.plugin_id+"_get_external_file_size",wpacu_remote_file:e},function(a){c.html(a)})})},pluginLoadManager:function(){a(".wpacu_plugin_unload_site_wide").on("click",function(){var b=a(this).attr("data-wpacu-plugin-path");a(this).prop("checked")?(a(this).parent("label").addClass("wpacu_plugin_unload_rule_input_checked"),a('.wpacu_plugin_unload_regex_checkbox[data-wpacu-plugin-path="'+b+'"]').prop("checked",!1).parent("label").removeClass("wpacu_plugin_unload_rule_input_checked"),a('.wrap_plugin_load_exception_options[data-wpacu-plugin-path="'+b+'"]').removeClass("wpacu_hide")):(a(this).parent("label").removeClass("wpacu_plugin_unload_rule_input_checked"),a('.wrap_plugin_load_exception_options[data-wpacu-plugin-path="'+b+'"]').addClass("wpacu_hide"))}),a(".wpacu_plugin_unload_regex_checkbox").on("click",function(){var b=a(this).attr("data-wpacu-plugin-path");a(this).prop("checked")?(a(this).parent("label").addClass("wpacu_plugin_unload_rule_input_checked"),a('.wpacu_plugin_unload_regex_input_wrap[data-wpacu-plugin-path="'+b+'"]').removeClass("wpacu_hide"),a('.wrap_plugin_load_exception_options[data-wpacu-plugin-path="'+b+'"]').removeClass("wpacu_hide"),a('.wpacu_plugin_unload_site_wide[data-wpacu-plugin-path="'+b+'"]').prop("checked",!1).parent("label").removeClass("wpacu_plugin_unload_rule_input_checked")):(a('.wpacu_plugin_unload_regex_input_wrap[data-wpacu-plugin-path="'+b+'"]').addClass("wpacu_hide"),a(this).parent("label").removeClass("wpacu_plugin_unload_rule_input_checked"),a('.wrap_plugin_load_exception_options[data-wpacu-plugin-path="'+b+'"]').addClass("wpacu_hide"))}),a(".wpacu_plugin_load_exception").on("click",function(){var b=a(this).attr("data-wpacu-plugin-path");a(this).prop("checked")?a('.wpacu_load_regex_input_wrap[data-wpacu-plugin-path="'+b+'"]').removeClass("wpacu_hide"):a('.wpacu_load_regex_input_wrap[data-wpacu-plugin-path="'+b+'"]').addClass("wpacu_hide")})},hideLoadExceptionArea:function(b,c,d){b.hasClass("wpacu_is_bulk_unloaded")||b.find(".wpacu_bulk_unload").is(":checked")||a("div.wpacu_exception_options_area_wrap[data-"+d+'-handle="'+c+'"]').parent("div").addClass("wpacu_hide")},uncheckAllOtherUnloadRules:function(a){a.closest("tr").find(".wpacu_unload_rule_input").not(a).prop("checked",!1).parent("label").removeClass("wpacu_input_load_checked")},httpLoadSource:function(a,b){window.XMLHttpRequest?xmlhttp=new XMLHttpRequest:xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");try{xmlhttp.onreadystatechange=function(){if(4===xmlhttp.readyState&&200===xmlhttp.status)return xmlhttp.responseText;200!==xmlhttp.status&&(console.log(a+" "+xmlhttp.status),b.css({color:"#cc0000"}).parent("div").find("[data-wpacu-source-status]").html('<small>* <em style="font-weight: 600;">'+wpacu_object.source_load_error_msg+"</em></small>"))},xmlhttp.open("GET",a,!1),xmlhttp.send()}catch(a){console.log(a)}},checkSourcesFor404Errors:function(){var b=a("[data-wpacu-external-source]");if(!(b.length<1)){var c=b.length,d="";b.each(function(b){var e=a(this),f=e.attr("data-wpacu-external-source");d+=f+"-at-wpacu-at-",b===c-1&&jQuery.post(wpacu_object.ajax_url,{action:wpacu_object.plugin_id+"_check_external_urls_for_status_code",wpacu_check_urls:d},function(b){var c=jQuery.parseJSON(b);a.each(c,function(b,c){a('[data-wpacu-external-source="'+c+'"]').css({color:"#cc0000"}).parent("div").find("[data-wpacu-external-source-status]").html('<small>* <em style="font-weight: 600;">'+wpacu_object.source_load_error_msg+"</em></small>")})})})}}};a(window).load(function(){e.checkSourcesFor404Errors()}),a("#wpacu_post_type_select").change(function(){a("#wpacu_post_type_form").submit()}),a("#wpacu_taxonomy_select").change(function(){a("#wpacu_taxonomy_form").submit()}),a("#wpacu_dashboard").click(function(){a(this).prop("checked")?a("#wpacu-settings-assets-retrieval-mode").show():a("#wpacu-settings-assets-retrieval-mode").hide()}),a(".wpacu-dom-get-type-selection").change(function(){a(this).is(":checked")&&(a(".wpacu-dom-get-type-info").hide(),a("#"+a(this).attr("data-target")).fadeIn("fast"))}),a("#wpacu_frontend").click(function(){a(this).prop("checked")?a("#wpacu-settings-frontend-exceptions").show():a("#wpacu-settings-frontend-exceptions").hide()}),a(".google_fonts_combine_type").change(function(){a(".wpacu_google_fonts_combine_type_area").hide(),"async"===a(this).val()?a("#wpacu_google_fonts_combine_type_async_info_area").fadeIn():"async_preload"===a(this).val()?a("#wpacu_google_fonts_combine_type_async_preload_info_area").fadeIn():a("#wpacu_google_fonts_combine_type_rb_info_area").fadeIn()}),a("#wpacu_assets_list_layout").on("click change",function(){"by-location"===a(this).val()?a("#wpacu-assets-list-by-location-selected").fadeIn("fast"):a("#wpacu-assets-list-by-location-selected").fadeOut("fast")}),a("#wpacu_disable_jquery_migrate").on("click",function(){return!a(this).is(":checked")||(!(!a(this).is(":checked")||!confirm(wpacu_object.jquery_migration_disable_confirm_msg))||(a(this).prop("checked",!1),!1))}),a("#wpacu_disable_comment_reply").on("click",function(){return!a(this).is(":checked")||(!(!a(this).is(":checked")||!confirm(wpacu_object.comment_reply_disable_confirm_msg))||(a(this).prop("checked",!1),!1))}),a("[data-target-opacity]").click(function(){a(this).prop("checked")?a("#"+a(this).attr("data-target-opacity")).css({opacity:1}):a("#"+a(this).attr("data-target-opacity")).css({opacity:.4})}),a(".wpacu-combine-loaded-js-level").change(function(){a(this).is(":checked")&&(a(".wpacu_combine_loaded_js_level_area").removeClass("wpacu_active"),a("#"+a(this).attr("data-target")).addClass("wpacu_active"))});var f=a('#wpacu-update-button-area input[type="submit"]');f.parents("form").submit(function(){f.attr("disabled",!0),a("#wpacu-updating-settings").show()});var g=a("#wpacu-update-front-settings-area .wpacu_update_btn");if(g.parents("form").submit(function(){return g.attr("disabled",!0).addClass("wpacu_submitting"),a("#wpacu-updating-front-settings").show(),!0}),a("form#wpacu-settings-form, form#wpacu_home_page_form").submit(function(){return f.attr("disabled",!0),!0}),a(".wpacu_bulk_rule_checkbox, .wpacu_remove_preload").click(function(){var b=a(this).parents(".wpacu_bulk_change_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a(".wpacu_remove_regex").click(function(){var b=a(this).parents(".wpacu_regex_rule_row");a(this).prop("checked")?b.addClass("wpacu_enabled"):b.removeClass("wpacu_enabled")}),a(".wpacu_restore_position").click(function(){var b=a(this).parents(".wpacu_restore_position_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a(".wpacu_remove_global_attr").click(function(){var b=a(this).parents(".wpacu_remove_global_attr_row");a(this).prop("checked")?b.addClass("wpacu_selected"):b.removeClass("wpacu_selected")}),a("#wpacu_wrap_assets").length>0&&setTimeout(function(){e.load()},200),a("#wpacu-plugins-load-manager-wrap").length>0&&setTimeout(function(){e.pluginLoadManager()},200),"undefined"==typeof wpacu_object||a("#wpacu_meta_box_content").length<1)return!1;("default"===wpacu_object.list_show_status||""===wpacu_object.list_show_status||wpacu_object.override_assets_list_load)&&b(),"fetch_on_click"===wpacu_object.list_show_status&&a("#wpacu_ajax_fetch_on_click_btn").click(function(c){c.preventDefault(),a(this).hide(),a("#wpacu_fetching_assets_list_wrap").show(),b()}),a(document).on("click",".wp-admin.post-php .edit-post-header__settings button.is-primary",function(){var c=function(){if(0===a(".edit-post-header__settings .is-saving").length){if(a("#wpacu_unload_assets_area_loaded").length>0&&a("#wpacu_unload_assets_area_loaded").val()){a("#wpacu-assets-reloading").remove();var c='<span id="wpacu-assets-reloading" class="editor-post-saved-state is-wpacu-reloading">'+wpacu_object.reload_icon+wpacu_object.reload_msg+"</span>";a(".wp-admin.post-php .edit-post-header__settings").prepend(c)}a(".wpacu_asset_row").addClass("wpacu-loading"),b(),clearInterval(d)}},d=setInterval(c,900)})});
|
assets/style.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@charset "UTF-8";#wpacu-pages-info-area{width:98%}#wpacu-top-area{margin:15px 0;padding:0 10px}#wpacu-quick-actions{color:#74777b;float:right;width:auto;margin-right:30px;background:rgba(40,44,42,.05);border-radius:10px;padding:6px 12px}#wpacu-quick-actions .wpacu-actions-title{font-weight:200;letter-spacing:.5px}#wpacu-quick-actions a{color:#004567;text-decoration:none}#wpacu-quick-actions a:hover{color:#0073aa}#wpacu-logo-wrap{width:auto;display:inline-block;position:relative}#wpacu-logo-wrap a{display:block}#wpacu-logo-wrap img{width:352px;height:79px}#wpacu-logo-wrap .wpacu-pro-sign{position:absolute;height:auto;font-family:FiraSans-Medium,proxima-nova-1,Montserrat,Helvetica,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;padding:5px 11px;border-radius:15px;right:-60px;top:30px;width:auto;display:inline-block;text-align:center}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-lite{color:#74777b;background:rgba(40,44,42,.05)}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-pro{color:#004567;background-color:rgba(40,44,42,.05)}.wpacu-tabs{position:relative;overflow:hidden;margin:0 auto 20px;width:100%;font-weight:300;font-size:20px}.wpacu-tabs nav{text-align:center}.wpacu-tabs nav ul{position:relative;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;margin:0 auto;padding:0;max-width:1200px;list-style:none;-ms-box-orient:horizontal;-ms-box-pack:center;-webkit-flex-flow:row wrap;-moz-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-justify-content:center;-moz-justify-content:center;-ms-justify-content:center;justify-content:center}.wpacu-tabs nav ul li{position:relative;z-index:1;display:block;margin:0;text-align:center;-webkit-flex:1;-moz-flex:1;-ms-flex:1;flex:1}.wpacu-tabs nav ul li span.extra-info{position:absolute;font-size:12px;left:0;right:50%;bottom:12px;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.wpacu-tabs nav ul li span.extra-info.has-bulk-unloads{right:48%}.wpacu-tabs nav ul li span.extra-info.no-bulk-unloads{left:0;right:2px;bottom:2px;-webkit-transform:inherit;transform:inherit}.wpacu-tabs nav ul li span.extra-info .dashicons{font-size:16px;margin-right:-3px;margin-top:1px}.wpacu-tabs nav ul li span.extra-info.license-status.inactive{color:#c00}.wpacu-tabs nav ul li span.extra-info.license-status.active{color:green}.wpacu-tabs nav ul li span.extra-info.assets-unloaded-false{color:#004567}.wpacu-tabs nav ul li span.extra-info.assets-unloaded-true,.wpacu-tabs nav ul li span.extra-info.bulk-unloads-true{color:green}.wpacu-tabs nav a{position:relative;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:2.5}.wpacu-tabs nav a span{vertical-align:middle;font-size:14px}.wpacu-tabs nav li.wpacu-tab-current a{color:#74777b}.wpacu-tabs nav a:focus{outline:0}.wpacu-tabs .dashicons{font-size:20px}.no-js .wpacu-content-wrap section{display:block;padding-bottom:2em;border-bottom:1px solid rgba(255,255,255,.6)}.no-flexbox nav ul{display:block}.no-flexbox nav ul li{min-width:15%;display:inline-block}@media screen and (max-width:58em){.wpacu-tabs nav a.icon span{display:none}.wpacu-tabs nav a:before{margin-right:0}}.wpacu-tabs-style-underline nav{background:#fff}.wpacu-tabs-style-underline nav a{color:#74777b;font-size:18px;text-transform:uppercase;text-decoration:none;padding:.25em 0 .5em;border-left:1px solid #e7ecea;-webkit-transition:color .2s;transition:color .2s}.wpacu-tabs-style-underline nav li:last-child a{border-right:1px solid #e7ecea}.wpacu-tabs-style-underline nav li a::after{position:absolute;bottom:0;left:0;width:100%;height:6px;background:#2CC185;content:"";-webkit-transition:-webkit-transform .3s;transition:transform .3s;-webkit-transform:translate3d(0,150%,0);transform:translate3d(0,150%,0)}.wpacu-tabs-style-underline nav li.wpacu-tab-current a::after{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.wpacu-tabs-style-underline nav a span{font-weight:700}.wpacu-tabs-style-topline{max-width:1200px;margin:20px auto 30px 0;width:100%;font-weight:300;text-decoration:none}.wpacu-tabs-style-topline nav li{border:1px solid rgba(40,44,42,.1)}.wpacu-tabs-style-topline nav li:not(:last-child){border-right:none}.wpacu-tabs-style-topline nav li.wpacu-tab-current{border-top-color:#008f9c;border-bottom:none}.wpacu-tabs-style-topline nav a{padding:20px 18px;background:rgba(40,44,42,.05);color:#74777b;line-height:1;-webkit-transition:color .2s;transition:color .2s;text-decoration:none}.wpacu-tabs-style-topline nav a:focus,.wpacu-tabs-style-topline nav a:hover{background:0 0;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a{background:0 0;box-shadow:inset 0 3px 0 #008f9c;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a span:not(.dashicons){font-weight:600}.wpacu-tabs-style-topline nav a span{text-transform:uppercase;font-weight:400}.wpacu-tab-nav-wrapper{border-bottom:none!important}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active{background:#fff;position:relative}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active:after{content:"";width:100%;bottom:-2px;left:0;position:absolute;border-bottom:2px solid #fff}.wpacu_hide{display:none!important}.wpacu-script-attributes-area{display:block;margin-bottom:12px}.wpacu-script-attributes-area>div:first-of-type{display:inline-block;float:left;margin-right:15px;line-height:30px;vertical-align:middle}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings{display:inline-block;float:left;padding:5px 7px!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings.wpacu-first{margin:0 15px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings label{margin:0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li{display:inline-block;margin:0 16px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li:last-child{margin:0 2px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings{background:#fff!important;border:1px solid #eee!important;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:5px 10px!important;list-style:none;display:inline-block;margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings input[type=radio]{width:auto;padding:0;margin:0 5px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings:hover{background:#f2faf2}tr.wpacu_location_changed>td{border-left:#004567 4px solid}tr.wpacu_not_load td,tr.wpacu_not_load th{background:#FFE1E1!important}tr.wpacu_not_load td .wpacu-assets-inline-code-wrap,tr.wpacu_not_load td .wpacu-script-attributes-area,tr.wpacu_not_load th .wpacu-assets-inline-code-wrap,tr.wpacu_not_load th .wpacu-script-attributes-area{filter:alpha(opacity=45);opacity:.45}.dashicons-wpacu{width:17px;height:17px;margin:2px 0 0;font-size:16px;text-decoration:none;color:inherit!important}#wpacu_meta_box_content,.wpacu_widefat{width:99%}.wpacu_widefat .check-column.wpacu_check{padding:10px}body[class*=wpassetcleanup] #footer-left{border-left:2px solid green;padding-left:10px}#wpassetcleanup_asset_list small{width:auto;float:none;display:inline}#wpacu_meta_box_content div.select select{max-width:inherit}#wpacu_meta_box_content .emoji{font-size:18px}#wpacu_meta_box_content h3{margin-left:0;padding-left:0}#wpacu_meta_box_content div.wpacu_note{padding:10px;background-color:#f5f5f5}#wpacu_meta_box_content .dashicons.dashicons-warning{color:#c00}#wpacu_meta_box_content .wpacu_verified{padding:10px;background-color:#f5f5f5;border-left:1px solid #ddd}#wpacu_meta_box_content .wpacu_verified span{color:#0073aa;font-weight:700}#wpacu_meta_box_content div.wpacu_warning{border:1px solid #c00}#wpacu_meta_box_content ul.wpacu_asset_options{margin:0;padding:0;vertical-align:middle}#wpacu_meta_box_content ul.wpacu_asset_options li{list-style:none;display:inline-block}#wpacu_meta_box_content ul.wpacu_asset_options label{font-weight:400;margin-right:5px;margin-top:5px;margin-bottom:5px}.wpacu-updated-frontend{font-weight:400;background-color:#fff;border-left:4px solid #46b450;border-top:1px solid #46b450;border-right:1px solid #46b450;border-bottom:1px solid #46b450;padding:9px 14px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_exception_options_area_wrap label.wpacu_bold span,.wpacu_load_regex_area_wrap label.wpacu_bold span,.wpacu_unload_regex_area_wrap label.wpacu_bold span{font-weight:600!important}.wpacu-updated-frontend span.dashicons-yes{color:#46b450;font-size:26px}#wpacu-update-front-settings-area{margin:10px 0;display:inline-block;position:relative}@media only screen and (min-width:768px){#wpacu-update-front-settings-area{position:-webkit-sticky;position:sticky;bottom:0;display:block;padding:15px 0;z-index:1000000;border-top:1px solid #cdcdcd;background:#fff}}#wpacu-updating-front-settings{display:none;position:absolute;top:20px;left:142px}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap,.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap{margin:4px 0 0}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text],.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text]{line-height:normal;min-height:20px;min-width:300px;max-width:400px;display:inline-block;padding:4px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text].wpacu_disabled,.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text].wpacu_disabled{background:#fbfafa!important;color:inherit}.wpacu_handle_unload_regex_input_wrap{display:block}@media only screen and (min-width:1200px){.wpacu_load_regex_input_wrap{display:inline-block}}.wpacu_exception_options_area_wrap{display:table;padding:4px 10px 5px;background:#fff!important;border:1px solid #eee!important}.wpacu_exception_options_area_wrap input[type=text]{line-height:normal;min-height:20px;min-width:300px;max-width:400px;display:inline-block;padding:4px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.wpacu_exception_options_area_wrap input[type=text].wpacu_disabled{background:#fbfafa!important;color:inherit}.wpacu_exception_options_area_wrap p:first-of-type{margin-top:0}.wpacu_exception_options_area_wrap .wpacu_area_one{display:table-cell;vertical-align:middle;padding-right:10px}.wpacu_exception_options_area_wrap .wpacu_area_two{display:table-cell}@media only screen and (max-width:1199px){.wpacu_exception_options_area_wrap,.wpacu_exception_options_area_wrap .wpacu_area_one,.wpacu_exception_options_area_wrap .wpacu_area_two{display:block}}#wpacu_meta_box_content .wpacu_widefat{width:100%}#wpacu_meta_box_content .wpacu-assets-collapsible-content{padding:0 10px!important}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li{display:inline-block;float:left;margin:1px 25px 1px 0;line-height:20px}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li:last-of-type{margin:1px 0}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li input[type=text]{margin-left:5px;border:1px solid #e7e7e7;background:#fff}#wpacu_wrap_assets,.wpacu_striped>tbody>:nth-child(even),ul.wpacu_striped>:nth-child(even){background-color:#fff!important}#wpacu_wrap_assets{color:#000!important;text-align:left!important;clear:both!important;width:90%!important;padding:20px!important;margin:30px 0 0 15px!important;border:1px solid #cdcdcd;z-index:10000!important;position:relative!important}#wpacu_wrap_assets div.wpacu_warning{border:1px solid #c00;padding:5px 10px}#wpacu_wrap_assets small{display:inline!important;margin:0!important;letter-spacing:normal!important}#wpacu_wrap_assets input[type=checkbox]{width:auto!important;margin-right:4px!important}#wpacu_wrap_assets img:not(.wpacu-ajax-loader){display:inline-block!important}#wpacu_wrap_assets p{line-height:22px!important;margin:10px 0!important;text-align:left!important;font-weight:400!important}#wpacu_wrap_assets p:first-child{margin:0 0 10px!important}#wpacu_wrap_assets h1{margin:0 0 20px!important;font-size:160%!important;text-align:left!important}#wpacu_wrap_assets h3{margin:20px 0;font-size:130%}#wpacu_wrap_assets ul.wpacu_asset_options.wpacu_exception_options_area li{display:inline-block;float:left;margin:1px 25px 1px 0;line-height:30px}#wpacu_wrap_assets ul.wpacu_asset_options.wpacu_exception_options_area li:last-of-type{margin:1px 0}.wpacu_verified{margin:0 0 10px!important}.wpacu_asset_row div.select{display:inline-block;width:auto}.wpacu_asset_row:first-child td{border-top:1px solid #cdcdcd}.wpacu_asset_row td{border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:1px solid #cdcdcd}.wpacu_asset_row.wpacu_notice_row td{position:relative;padding:5px;border-bottom:1px solid transparent}.wpacu_asset_row.wpacu_notice_row td div.wpacu-warning{width:auto;margin:5px;font-style:italic}.wpacu_asset_row:not(.wpacu_notice_row) td{padding:18px!important;position:relative}.wpacu_asset_row:not(.wpacu_notice_row) td.wpacu_selected,.wpacu_asset_row:not(.wpacu_notice_row) td:hover{-moz-box-shadow:inset 0 0 12px #cdcdcd;-webkit-box-shadow:inset 0 0 12px #cdcdcd;box-shadow:inset 0 0 12px #cdcdcd}.wpacu_asset_row:not(.wpacu_notice_row) td p{padding:0!important;margin-bottom:8px!important;word-wrap:break-word!important;-ms-word-break:break-all;word-break:break-word}.wpacu_asset_row:not(.wpacu_notice_row) td label{width:auto!important;margin:0!important;cursor:pointer!important;display:inline-block!important;font-size:100%!important;font-weight:400!important}.wpacu_asset_row:not(.wpacu_notice_row) td label span:not(.dashicons){font-size:100%!important}.wpacu_asset_row:not(.wpacu_notice_row) td.wpacu_check{width:50px!important}.asset-table-extra-info td{padding:5px!important}body.wp-admin .wpacu_asset_row td.wpacu_check{width:25px!important}.wpacu_asset_row .dashicons-warning{color:red!important}label.wpacu_add_global{cursor:pointer!important}label.wpacu_input_load_checked{font-weight:700;color:#d54e21}label.wpacu_global_unload_exception{font-weight:700!important}tr.wpacu_bulk_change_row.wpacu_selected,tr.wpacu_global_rule_row.wpacu_selected,tr.wpacu_remove_preload_row.wpacu_selected{background:#e7e7e7}.nav-tab-wrapper{border-bottom:1px solid #ccc;width:95%}.nav-tab-wrapper.nav-assets-manager .nav-tab{font-size:13px;font-weight:500;padding:6px 10px}.nav-tab-wrapper.nav-assets-manager .nav-tab.for-pro{padding:6px 8px 6px 3px}ul.wpacu_asset_options{margin:0 10px 0 0;padding:0}ul.wpacu_asset_options li{margin:0 10px 0 0;list-style:none;display:inline-block;line-height:normal}ul.wpacu_asset_options li.remove_rule label{font-weight:700}ul.wpacu_asset_options label{margin-right:20px;font-weight:400}ul.wpacu_asset_options label input{margin-right:4px}.wpacu_list_table,.wpacu_list_table div,.wpacu_list_table li,.wpacu_list_table p{font-weight:400}.wpacu_striped>tbody>:nth-child(odd),ul.wpacu_striped>:nth-child(odd){background-color:#f9f9f9!important}.wpacu_update_btn{-moz-box-shadow:inset 0 1px 0 0 #54a3f7!important;-webkit-box-shadow:inset 0 1px 0 0 #54a3f7!important;box-shadow:inset 0 1px 0 0 #54a3f7!important;background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#007dc1),color-stop(1,#0061a7))!important;background:-moz-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-webkit-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-o-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-ms-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:linear-gradient(to bottom,#007dc1 5%,#0061a7 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#007dc1", endColorstr="#0061a7", GradientType=0)!important;background-color:#007dc1!important;-moz-border-radius:3px!important;-webkit-border-radius:3px!important;border-radius:3px!important;border:1px solid #124d77!important;display:inline-block!important;cursor:pointer!important;color:#fff!important;font-size:15px!important;padding:10px 24px!important;text-decoration:none!important;text-shadow:0 1px 0 #154682!important;height:auto!important;line-height:normal!important}.wpacu-btns .btn:focus,.wpacu-btns .btn:hover,.wpacu-btns a{text-decoration:none}.wpacu_update_btn.wpacu_submitting,.wpacu_update_btn:hover{background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#0061a7),color-stop(1,#007dc1))!important;background:-moz-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-webkit-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-o-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-ms-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:linear-gradient(to bottom,#0061a7 5%,#007dc1 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#0061a7", endColorstr="#007dc1", GradientType=0)!important;background-color:#0061a7!important}.wpacu_update_btn.wpacu_submitting{cursor:default!important}.wpacu_update_btn:active{position:relative!important;top:1px!important}.wpacu-btns .btn{display:inline-block;font-weight:400;line-height:1.25;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wpacu-btns .btn.focus,.wpacu-btns .btn:focus{outline:0;-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.25);box-shadow:0 0 0 2px rgba(2,117,216,.25)}.wpacu-btns .btn.disabled,.wpacu-btns .btn:disabled{cursor:not-allowed;opacity:.65}.wpacu-btns .btn.active,.wpacu-btns .btn:active{background-image:none}.wpacu-btns a.btn.disabled,.wpacu-btns fieldset[disabled] a.btn{pointer-events:none}.wpacu-btns .btn-primary{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary:hover{color:#fff;background-color:#025aa5;border-color:#01549b}.wpacu-btns .btn-primary.focus,.wpacu-btns .btn-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-primary.disabled,.wpacu-btns .btn-primary:disabled{background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary.active,.wpacu-btns .btn-primary:active,.wpacu-btns .show>.btn-primary.dropdown-toggle{color:#fff;background-color:#025aa5;background-image:none;border-color:#01549b}.wpacu-btns .btn-secondary{color:#292b2c;background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary:hover{color:#292b2c;background-color:#e6e6e6;border-color:#adadad}.wpacu-btns .btn-secondary.focus,.wpacu-btns .btn-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-secondary.disabled,.wpacu-btns .btn-secondary:disabled{background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary.active,.wpacu-btns .btn-secondary:active,.wpacu-btns .show>.btn-secondary.dropdown-toggle{color:#292b2c;background-color:#e6e6e6;background-image:none;border-color:#adadad}.wpacu-btns .btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.wpacu-btns .btn-info.focus,.wpacu-btns .btn-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-info.disabled,.wpacu-btns .btn-info:disabled{background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info.active,.wpacu-btns .btn-info:active,.wpacu-btns .show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;background-image:none;border-color:#2aabd2}.wpacu-btns .btn-success{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success:hover{color:#fff;background-color:#449d44;border-color:#419641}.wpacu-btns .btn-success.focus,.wpacu-btns .btn-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-success.disabled,.wpacu-btns .btn-success:disabled{background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success.active,.wpacu-btns .btn-success:active,.wpacu-btns .show>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;background-image:none;border-color:#419641}.wpacu-btns .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#eb9316}.wpacu-btns .btn-warning.focus,.wpacu-btns .btn-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-warning.disabled,.wpacu-btns .btn-warning:disabled{background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning.active,.wpacu-btns .btn-warning:active,.wpacu-btns .show>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;background-image:none;border-color:#eb9316}.wpacu-btns .btn-danger{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#c12e2a}.wpacu-btns .btn-danger.focus,.wpacu-btns .btn-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-danger.disabled,.wpacu-btns .btn-danger:disabled{background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger.active,.wpacu-btns .btn-danger:active,.wpacu-btns .show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;background-image:none;border-color:#c12e2a}.wpacu-btns .btn-outline-primary{color:#0275d8;background-image:none;background-color:transparent;border-color:#0275d8}.wpacu-btns .btn-outline-primary:hover{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-primary.focus,.wpacu-btns .btn-outline-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-outline-primary.disabled,.wpacu-btns .btn-outline-primary:disabled{color:#0275d8;background-color:transparent}.wpacu-btns .btn-outline-primary.active,.wpacu-btns .btn-outline-primary:active,.wpacu-btns .show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-secondary{color:#ccc;background-image:none;background-color:transparent;border-color:#ccc}.wpacu-btns .btn-outline-secondary:hover{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-secondary.focus,.wpacu-btns .btn-outline-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-outline-secondary.disabled,.wpacu-btns .btn-outline-secondary:disabled{color:#ccc;background-color:transparent}.wpacu-btns .btn-outline-secondary.active,.wpacu-btns .btn-outline-secondary:active,.wpacu-btns .show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-info{color:#5bc0de;background-image:none;background-color:transparent;border-color:#5bc0de}.wpacu-btns .btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-info.focus,.wpacu-btns .btn-outline-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-outline-info.disabled,.wpacu-btns .btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.wpacu-btns .btn-outline-info.active,.wpacu-btns .btn-outline-info:active,.wpacu-btns .show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-success{color:#5cb85c;background-image:none;background-color:transparent;border-color:#5cb85c}.wpacu-btns .btn-outline-success:hover{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-success.focus,.wpacu-btns .btn-outline-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-outline-success.disabled,.wpacu-btns .btn-outline-success:disabled{color:#5cb85c;background-color:transparent}.wpacu-btns .btn-outline-success.active,.wpacu-btns .btn-outline-success:active,.wpacu-btns .show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-warning{color:#f0ad4e;background-image:none;background-color:transparent;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning:hover{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning.focus,.wpacu-btns .btn-outline-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-outline-warning.disabled,.wpacu-btns .btn-outline-warning:disabled{color:#f0ad4e;background-color:transparent}.wpacu-btns .btn-outline-warning.active,.wpacu-btns .btn-outline-warning:active,.wpacu-btns .show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-danger{color:#d9534f;background-image:none;background-color:transparent;border-color:#d9534f}.wpacu-btns .btn-outline-danger:hover{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-outline-danger.focus,.wpacu-btns .btn-outline-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-outline-danger.disabled,.wpacu-btns .btn-outline-danger:disabled{color:#d9534f;background-color:transparent}.wpacu-btns .btn-outline-danger.active,.wpacu-btns .btn-outline-danger:active,.wpacu-btns .show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-link{font-weight:400;color:#0275d8;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.wpacu-btns .btn-link,.wpacu-btns .btn-link.active,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:disabled{background-color:transparent}.wpacu-btns .btn-link,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{border-color:transparent}.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{color:#014c8c;text-decoration:underline;background-color:transparent}.wpacu-btns .btn-link:disabled{color:#636c72}.wpacu-btns .btn-link:disabled:focus,.wpacu-btns .btn-link:disabled:hover{text-decoration:none}.wpacu-btns .btn-group-lg>.btn,.wpacu-btns .btn-lg{padding:.75rem 1.5rem;font-size:1.25rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;border-radius:.3rem}.wpacu-btns .btn-group-sm>.btn,.wpacu-btns .btn-sm{padding:.25rem .5rem;font-size:.875rem;-webkit-border-radius:.2rem;-moz-border-radius:.2rem;border-radius:.2rem}.wpacu-btns .btn-block{display:block;width:100%}.go-pro-button,.go-pro-link-no-style,.wordpress-core-file{display:inline-block;text-decoration:none}.wpacu-btns .btn-block+.btn-block{margin-top:.5rem}.wpacu-btns input[type=button].btn-block,.wpacu-btns input[type=reset].btn-block,.wpacu-btns input[type=submit].btn-block{width:100%}.wpacu-btns .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.go-pro-button{background-color:#4CAF50;border:2px solid #4CAF50;color:#fff;padding:12px 18px;text-align:center;font-size:16px;margin:4px 2px;cursor:pointer;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-transition-duration:.4s;transition-duration:.4s}.go-pro-button:hover{background-color:#fff;color:#000;border:2px solid #4CAF50;text-decoration:none}.wpacu-restore-pos-btn{font-size:14px!important;line-height:normal!important;height:42px!important;padding:0 18px!important;margin-top:10px!important}body.wp-admin .wpacu_asset_row .go-pro-link-no-style .wpacu-tooltip{padding:8px 2px}body.wp-admin .go-pro-link-no-style .wpacu-tooltip{text-shadow:none;font-weight:400;font-size:12px;line-height:16px;padding:8px 11px}.go-pro-link-no-style .wpacu-tooltip,.wordpress-core-file .wpacu-tooltip{line-height:18px;visibility:hidden;width:160px;text-align:center;font-size:14px;z-index:1}.go-pro-link-no-style{position:relative;color:inherit}.go-pro-link-no-style:not(.nav-tab){font-style:italic}.go-pro-link-no-style.no-transition .wpacu-tooltip{-webkit-transition:0s all ease;transition:0s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style>img{max-width:20px;max-height:20px}.go-pro-link-no-style .wpacu-tooltip{position:absolute;background-color:#00a7a7;color:#fff;padding:8px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-65px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#00a7a7 transparent transparent}.go-pro-link-no-style .wpacu-tooltip.wpacu-on-pages-btn{cursor:pointer;margin-left:-77px;width:130px}.go-pro-link-no-style .wpacu-tooltip.wpacu-larger{width:240px}.go-pro-link-no-style:hover .wpacu-tooltip{visibility:visible}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip{bottom:-40px;left:120px;margin-left:-86px}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip:after{top:41px;left:-20px;border-color:transparent #c00 transparent transparent}.wordpress-core-file{position:relative;font-style:normal;color:inherit}.wordpress-core-file .wpacu-tooltip{position:absolute;background-color:#c00;color:#fff;padding:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-86px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.wordpress-core-file .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#c00 transparent transparent}.wordpress-core-file:hover .wpacu-tooltip{visibility:visible}.ajax-direct-call-error-area{background:#fff;padding:10px;border:1px solid #c00;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.ajax-direct-call-error-area td{padding:6px}.ajax-direct-call-error-area .note{margin-top:0;padding-top:0}.ajax-direct-call-error-area .error-code{color:#c00;font-weight:700}.ajax-wp-remote-post-call-error-area{background:#fff;padding:20px}.ajax-wp-remote-post-call-error-area .table-data{background:0 0;border:1px solid #c66;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.ajax-wp-remote-post-call-error-area .table-data td{padding:10px}.wrap-upgrade-info{background:#fff;padding:0 15px;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-notice{margin:20px 20px 0 0!important}.wpacu-notice p{font-weight:600!important;font-style:italic}.wpacu-notice .dashicons{font-weight:inherit!important;color:#46b450!important;margin-right:4px;vertical-align:text-bottom;font-size:27px}.wpacu-notice-info{padding:12px 12px 12px 16px;background:#fff;border-left:4px solid #008f9c}.wpacu-notice-info p{margin-top:8px}.wpacu-notice-info p:first-child{margin-top:0}.wpacu-notice-info p:last-child{margin-bottom:0}.wpacu-warning{font-size:15px;padding:10px;background:#fffcec;border:1px solid #fdd5c9;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin:0 0 5px;width:100%}.pro-page-unlock-notice{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;padding:10px;background:#f2faf2;border:1px solid #c0e8c0;width:auto;display:block}.wpacu-license-area .notice,.wpacu-settings-area .notice{margin-left:0;padding:10px!important;width:97%;box-sizing:border-box;font-weight:600;font-style:italic}.wpacu-license-area .notice .dashicons,.wpacu-settings-area .notice .dashicons{color:green}#wpacu-dom-get-type-selections,.wpacu-radio-selections{float:none;clear:both;width:auto;display:inline-block;margin-bottom:0;margin-top:0}#wpacu-dom-get-type-selections.wpacu-vertical,.wpacu-radio-selections.wpacu-vertical{display:block;margin-top:15px;margin-bottom:18px}#wpacu-dom-get-type-selections.wpacu-vertical li,.wpacu-radio-selections.wpacu-vertical li{float:none;margin-bottom:12px}#wpacu-dom-get-type-selections.wpacu-vertical li:last-child,.wpacu-radio-selections.wpacu-vertical li:last-child{margin-bottom:0}#wpacu-dom-get-type-selections li,.wpacu-radio-selections li{margin-right:30px;float:left;margin-bottom:0}#wpacu-dom-get-type-selections li:first-child,.wpacu-radio-selections li:first-child{margin-right:15px}#wpacu-dom-get-type-selections li:last-child,.wpacu-radio-selections li:last-child{margin-right:0}.wpacu_combine_loaded_js_level_area{display:none;background:0 0;border-left:2px solid #008f9c;padding-top:8px;padding-bottom:8px;padding-right:10px;padding-left:10px;margin:20px 0 15px}.wpacu_combine_loaded_js_level_area.wpacu_active{display:block}#wpacu-dom-get-type-infos{margin-bottom:0}#wpacu-dom-get-type-infos li{margin-bottom:0;line-height:20px}.wpacu-wrap li,.wpacu-wrap p,.wpacu-wrap td{font-weight:400}.wpacu-wrap small{width:auto;float:none;display:inline}.wpacu-wrap small code{font-size:inherit!important}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-tab-content{display:block;width:100%}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-area-title{color:#004567;padding:16px 15px;background:#f8f8f8;border-left:5px solid #004567b0;border-top:1px solid #e7e7e7;border-right:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:1.45em;font-weight:500}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round,.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round{border-radius:29px}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area,.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .submit{margin:0}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .button{padding:11px 28px;height:38px;font-size:18px}.wpacu-wrap.wpacu-settings-show-all #wpacu-updating-settings{margin-left:224px;top:35px;left:3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch{width:auto;height:auto}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input{display:block}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox],.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox]{margin:0 0 3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch{position:relative;display:inline-block;width:52px;height:29px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_disabled,.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_locked_for_pro{opacity:.3}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_disabled:before{content:"";font-family:Dashicons,Arial,"Times New Roman","Bitstream Charter",Times,serif;position:absolute;font-size:23px;top:5px;right:2px;z-index:1000}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle{margin-top:4px;line-height:1.4}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em{font-weight:200}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_read_more,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_read_more{margin-top:-10px;font-style:italic;font-size:12px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices{list-style:none;margin:0}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li{float:left;margin-right:30px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li:last-child{margin-right:0}#wpacu-assets-list-by-location-selected{background:0 0;border:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:8px;clear:both}.notice.notice-success+.wpacu-wrap.wpacu-settings-area{margin-top:20px}.wpacu-license-action-btn-area{margin-top:0;position:relative;display:inline-block}.wpacu-license-spinner{display:none;position:absolute;right:-30px;top:4px}.wpacu-license-spinner img{width:20px;height:20px}#wpacu-activation-issues-info{border-radius:10px;width:90%;margin-top:20px;font-size:14px;padding:6px 20px;background:#fff;border:1px solid #e7e7e7}#wpacu-activation-issues-info ol li{font-size:13px;margin-bottom:10px}#wpacu-mark-license-area-wrap{margin:15px 0}.wpacu-form-table.wpacu-license th{width:150px}.wpacu-form-table th{vertical-align:top;text-align:left;padding:5px 20px 20px 0;width:200px;line-height:1.3;font-weight:600}.wpacu-form-table th label{color:#23282d;font-weight:600;font-size:14px;text-shadow:none;vertical-align:middle;cursor:pointer}.wpacu-form-table td{padding-bottom:25px}.wpacu-form-table td:last-child p:last-child{margin:0}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox],.wpacu-form-table label input[type=checkbox]{height:20px;width:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:checked,.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:hover,.wpacu-form-table label input[type=checkbox]:checked,.wpacu-form-table label input[type=checkbox]:hover{border:1px solid green}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:checked:before,.wpacu-form-table label input[type=checkbox]:checked:before{color:#52af00;font:400 24px/1 dashicons}.wpacu-form-table .wpacu-fancy-radio input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;position:relative;height:20px;width:20px;margin:2px 0 0}.wpacu-form-table .wpacu-fancy-radio input[type=radio]:checked,.wpacu-form-table .wpacu-fancy-radio input[type=radio]:hover{border:1px solid green}.wpacu-form-table .wpacu-fancy-radio input[type=radio]:checked:before{margin:0;line-height:inherit;text-indent:inherit;content:"";position:absolute;top:4px;left:4px;width:10px;height:10px;border-radius:50%;background:#52af00;color:#52af00;font:400 24px/1 dashicons}#wpacu-settings-vertical-tab-wrap{display:table;width:100%}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text{margin:4px 0 0}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small{font-weight:lighter}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap{position:relative;padding-left:14px}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status{position:absolute;left:0;top:2px;height:10px;width:10px;border-radius:50%;display:inline-block;opacity:.75}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status.wpacu-on{background:#52af00}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status.wpacu-off{background:#ccc}#wpacu-settings-vertical-tab-wrap *{box-sizing:border-box}.wpacu-settings-tab{display:table-cell;width:20%;height:100%;vertical-align:top}.wpacu-settings-tab a{text-decoration:none;border-left:3px solid transparent;display:block;background-color:#f1f1f1;color:#004567;padding:17px 16px;width:100%;outline:0;text-align:left;cursor:pointer;font-size:14px;font-weight:600;border-bottom:1px solid #ccc}.wpacu-settings-tab a:first-child{border-top:1px solid transparent!important}.wpacu-settings-tab a:last-child{border-bottom:1px solid transparent!important}.wpacu-settings-tab a:hover{background-color:#fff;border-left:3px solid #004567;position:relative}.wpacu-settings-tab a.active{color:#004567;background-color:#fff;border-left:3px solid #004567;position:relative;border-bottom:1px solid #ccc}.wpacu-settings-tab a.active:after{content:"";position:absolute;height:100%;width:1px;top:0;right:-1px;background-color:#fff}.wpacu-settings-tab-content{background-color:#fff;display:none;padding:12px 18px;width:79%;border-left:none;height:100%;border-top-right-radius:10px;border-bottom-right-radius:10px}.wpacu-settings-tab-content h2{padding:0 0 15px;border-bottom:1px solid #e7e7e7}.wpacu-settings-tab-content.active{display:table-cell}#wpacu_minify_css_exceptions_area,#wpacu_minify_js_exceptions_area{margin:16px 0 0}@media only screen and (min-width:768px){body.asset-cleanup-pro_page_wpassetcleanup_assets_manager #wpacu-update-button-area,body.asset-cleanup_page_wpassetcleanup_assets_manager #wpacu-update-button-area{position:-webkit-sticky;position:sticky;bottom:0;padding:0;z-index:1000000;border-top:1px solid #cdcdcd;background:#f1f1f1}}body[class*=version-5-3] #wpacu-update-button-area .button{height:auto;padding:4px 18px 6px;font-size:15px}body[class*=version-5-3] #wpacu-updating-settings{margin-left:178px}#wpacu-update-button-area{position:relative;margin-left:20%}#wpacu-update-button-area.no-left-margin{margin-left:0}#wpacu-update-button-area .submit{margin:0;padding:19px 0}#wpacu-update-button-area .button{padding:5px 18px;height:38px;font-size:15px}#wpacu-updating-settings{position:absolute;margin-left:183px;top:28px;display:none}#combine_loaded_js_info_area{position:relative}#combine_loaded_js_info_area.locked-for-pro:before{position:absolute;content:"";height:100%;width:100%;background:#fff;opacity:.5;z-index:10000}.google_fonts_load_types{clear:both;margin:20px 0 15px;display:flex}.google_fonts_load_types>div{text-align:left}.google_fonts_load_types>div input{float:left;margin:0 7px 20px 0!important}.wpacu-sub-tabs-wrap{min-width:320px;margin:0 auto}.wpacu-sub-tabs-wrap input.wpacu-nav-input{display:none}.wpacu-sub-tabs-wrap label.wpacu-nav-label{display:inline-block;margin:0 0 -1px;padding:15px 25px;font-weight:600;text-align:center;color:#74777b;border-left:1px solid transparent;border-right:1px solid transparent;border-top:3px solid transparent;border-bottom:0}.wpacu-sub-tabs-wrap label.wpacu-nav-label:hover{cursor:pointer}.wpacu-sub-tabs-wrap input.wpacu-nav-input:checked+label.wpacu-nav-label{color:#004567;border-left:1px solid #ccc;border-right:1px solid #ccc;border-top:3px solid #004567;border-bottom:1px solid #fff}.wpacu-sub-tabs-wrap section{display:none;padding:20px 0 0;border-top:1px solid #ccc}#wpacu-google-fonts-optimize-tab-item:checked~#wpacu-google-fonts-optimize-tab-item-area,#wpacu-google-fonts-remove-tab-item:checked~#wpacu-google-fonts-remove-tab-item-area{display:block}body.wp-admin .wpacu-handle-notes p{margin-top:0!important}body.wp-admin .wpacu-handle-notes p a{font-size:inherit}body.wp-admin .wpacu-handle-notes p a span.dashicons{font-size:19px;width:19px;height:19px;vertical-align:bottom;text-decoration:none}.wpacu-handle-notes{padding-top:5px;margin-bottom:-10px;border-top:1px solid #e7e7e7}.wpacu-handle-notes .wpacu-handle-notes-field{display:none}.wpacu-handle-notes .wpacu-handle-notes-field>textarea{font-size:85%;padding:6px;width:320px;max-width:100%}.wpacu-handle-notes p{margin:10px 0 0!important}.wpacu-handle-notes p a.wpacu-add-handle-note{text-decoration:none;font-size:80%;display:inline-block;color:inherit}.wpacu-handle-notes p a.wpacu-add-handle-note span.dashicons{font-size:18px;width:18px;height:18px}.wrap_bulk_unload_options{width:auto;display:inline-flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.wrap_bulk_unload_options .wpacu_asset_options_wrap{flex-grow:1;margin:5px 10px 14px 0!important;padding:8px 10px 12px!important}.wrap_bulk_unload_options .wpacu_asset_options_wrap .wpacu_slider_text{position:relative!important;vertical-align:top;left:inherit!important;top:inherit!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch{position:relative;display:inline-block;min-width:52px;width:52px;height:29px;margin-right:5px!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input{display:none}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider{background-color:#C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_slider_text{position:absolute;left:62px;top:3px}.wpacu-wrap tr.wpacu_regex_rule_row{opacity:.45}.wpacu-wrap tr.wpacu_regex_rule_row.wpacu_enabled{opacity:1}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small{position:relative;display:inline-block;min-width:30px;width:30px;height:17px;margin-right:5px!important}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:checked+.wpacu_slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translateX(13px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider.wpacu_round{border-radius:17px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider.wpacu_round:before{border-radius:50%}.editor-post-saved-state.is-wpacu-reloading{animation:edit-post__loading-fade-animation .5s infinite}body.wp-admin .wpacu_asset_row.wpacu-loading{position:relative}body.wp-admin .wpacu_asset_row.wpacu-loading .wpacu-ajax-loader{display:block!important}body.wp-admin .wpacu_asset_row .wpacu-ajax-loader{display:none;width:58px;height:58px;position:absolute;bottom:0;right:0;opacity:.75}.wpacu_asset_row input{width:auto;height:auto;min-height:16px}.wpacu_asset_row .tip{background:inherit;border-left:4px solid #e7e7e7;margin:0 0 5px;padding:7px;font-style:italic;font-size:small;line-height:1.4}.wpacu_asset_row td{width:100%;text-align:left}.wpacu_asset_row td p:last-child{margin-bottom:0!important}.wpacu_asset_row td .wpacu_asset_options_wrap{padding:8px 10px;margin:15px 0;background:#fff;border:1px solid #eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_asset_row td .wpacu_asset_options_wrap p:first-child{margin-top:0;margin-bottom:8px!important}.wpacu_asset_row p.wpacu_handle{margin-top:0}.wpacu_asset_row li.wpacu_unload_this_page{display:block!important;position:relative}.wpacu-clearfix:after,.wpacu-clearfix:before{display:table;content:""}.wpacu-contract-expand-area{width:100%;margin:20px 0 0}.wpacu-contract-expand-area .col-left{float:left}.wpacu-contract-expand-area .col-left h4{margin-bottom:0}.wpacu-contract-expand-area .col-right{float:right}.wpacu-clearfix{clear:both;height:0}.wpacu-clearfix:after{clear:both}.wpacu-wp-button{color:#555;border-color:#ccc;background:#f7f7f7;box-shadow:0 1px 0 #ccc;vertical-align:top}body.wp-admin .wpacu-wp-button{font-size:13px;line-height:26px;height:28px}.wpacu-wp-button.wpacu-wp-button-secondary{display:inline-block;text-decoration:none;height:auto;margin:0 5px 0 0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wpacu-wp-button:hover{background:#fafafa;border-color:#999;color:#23282d}.distinguish-asset-list{list-style:none;margin-left:0;margin-bottom:5px;display:inline-block}.distinguish-asset-list li{float:left;margin-right:20px}.distinguish-asset-list li:last-child{margin-right:0}body[class*=asset-cleanup-pro] a.wpacu-plugin-contracted-wrap-link{padding:16px 6px 16px 41px!important}body[class*=asset-cleanup-pro] .wpacu-area-open .wpacu-plugin-toggle-all{font-size:12px!important;width:calc(100% - 26px)!important}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all{top:5px}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all ul li{font-size:12px!important}.wpacu-assets-collapsible-wrap{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location{margin-bottom:15px}.wpacu-assets-collapsible-wrap.wpacu-wrap-all{margin-top:20px}.wpacu-assets-collapsible-wrap.wpacu-wrap-area{margin-top:10px}.wpacu-assets-collapsible-wrap.wpacu-by-location>a.wpacu-assets-collapsible{padding:15px 15px 15px 43px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu_list_table{border-width:0;margin:0;border-spacing:inherit;width:100%;box-shadow:3px 3px 2px #ddd;border-bottom-right-radius:5px;border-top-right-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-name{font-weight:600}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-version{font-weight:200}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area[data-wpacu-plugin=oxygen] .icon-area{border-radius:50%}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all{display:inline-block;padding:0;font-size:13px;width:100%;width:calc(100% + 46px);min-width:250px;position:absolute;left:100%;left:calc(100% + 6px);margin:0;top:4px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul{display:inline-block;margin:0;list-style:none;padding-left:13px;padding-top:0}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul li{padding:0;margin:0;line-height:normal;font-size:14px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul li:first-child{font-style:italic;margin-bottom:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;position:relative;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title:after{content:"";position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap{padding:0 0 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open.wpacu-plugin-assets-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all{display:inline-block;padding:7px 12px 8px;font-size:14px;width:100%;text-align:left;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all+.wpacu-plugin-toggle-all{padding:2px 12px 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link{color:inherit;text-decoration:none;font-weight:inherit;font-style:inherit;font-size:105%;line-height:initial;height:auto;margin:14px 0 0;padding:13px 6px 14px 39px;position:relative;display:block}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:after{position:absolute;font-size:18px;font-family:Dashicons;right:12px;top:14px;content:""}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open:after{content:""}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed{border:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover{border:1px solid #878787;background:#f9f9f9}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover.wpacu-link-closed{box-shadow:3px 3px 2px #ddd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open{border-top:1px solid #cdcdcd;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:none}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed.wpacu-last-wrap-link{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default{top:10px;left:10px;width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area{width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area:before{font-size:22px;line-height:22px;top:4px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title{position:relative;padding:17px 10px 16px 46px;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title:after{content:"";position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-area-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-open{padding:0;max-height:100%}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-closed{padding:0;overflow:hidden;max-height:0}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{margin-top:0;margin-bottom:-1px;padding:14px 10px 16px 12px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title.wpacu-theme-has-icon{padding:18px 10px 16px 58px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area{margin-top:22px;margin-bottom:-1px;font-size:110%;line-height:initial}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-location-child-area-first{margin-top:2px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-area-expanded .wpacu-area-title{display:inline-block;z-index:1;padding:17px 10px 16px 46px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;border-top-right-radius:8px;border-top-left-radius:8px;background-color:#f9f9f9;border-left:1px solid #cdcdcd;border-top:1px solid #cdcdcd;border-bottom:1px solid transparent;border-right:1px solid #cdcdcd;position:relative}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon){color:#b4b9be;background-color:#eee;box-shadow:inset 0 0 10px rgba(160,165,170,.15);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon) .icon-area:before{content:"";font-family:Dashicons;position:absolute;font-size:28px;line-height:28px;top:5px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-wp_core{border:1px solid #c00}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content{padding:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table{width:100%;margin:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td{border-left:hidden;border-right:hidden;border-bottom:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child{margin-bottom:0!important}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child{border-bottom:hidden}a.wpacu-assets-collapsible{color:#000;font-size:20px;text-decoration:none;display:block;position:relative;background-color:#f1f3f8;cursor:pointer;padding:15px 15px 15px 36px;width:auto;border:none;text-align:left;outline:0}a.wpacu-assets-collapsible>span.dashicons{font-size:25px;line-height:normal;position:absolute;top:15px;top:calc(50% - 21px);left:22px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-collapsible:hover{background-color:#f1f3f8;text-decoration:none}a.wpacu-assets-collapsible:after{position:absolute;font-size:22px;font-family:Dashicons;right:14px;top:16px}a.wpacu-assets-collapsible:not(.wpacu-assets-collapsible-active):after{content:""}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active{background-color:#f1f3f8}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active:after{content:""}.wpacu-assets-collapsible-content{padding:0 16px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-collapsible-content .wpacu-assets-note{margin:0;padding:15px 15px 10px}.wpacu-assets-collapsible-content>div:not(.wpacu-assets-table-list-wrap){padding:16px 0 0}.wpacu-assets-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-collapsible-content.wpacu-open{max-height:100%}a.wpacu-assets-inline-code-collapsible{color:inherit;font-size:14px;text-decoration:none;display:inline-block;position:relative;cursor:pointer;width:auto;outline:0;background:#f1f3f8;border:1px solid #cdcdcd;padding:4px 21px 4px 8px;margin:0 0 0 6px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}a.wpacu-assets-inline-code-collapsible:hover{border:1px solid #5c5c5c}a.wpacu-assets-inline-code-collapsible:after{position:absolute;font-size:15px;font-family:Dashicons;right:-3px;top:-1px;width:14px;height:14px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-inline-code-collapsible:not(.wpacu-assets-inline-code-collapsible-active):after{content:""}a.wpacu-assets-inline-code-collapsible.wpacu-assets-inline-code-collapsible-active:after{content:""}.wpacu-assets-inline-code-collapsible-content{font-size:80%;padding:0 8px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-inline-code-collapsible-content>div{padding:7px 8px 0}.wpacu-assets-inline-code-collapsible-content>div>p{line-height:normal!important}.wpacu-assets-inline-code-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-inline-code-collapsible-content.wpacu-open{max-height:100%}.wpacu_asset_row p div.select{display:inline-block}.wpacu-wrap-choose-position{display:inline}.wpacu-wrap-choose-position>div{display:inline-block}.wpacu-wrap-choose-position select{width:auto;font-size:inherit;display:inline;margin-left:6px;margin-right:4px}.wpacu-wrap-choose-position>.select>.select{display:inline}.wpacu-wrap-choose-position>.select>.select select{padding-right:30px}.wpacu-wrap-choose-position>.select>.select:after{right:15px;top:-4px}.wpacu_table_wrap{margin:20px 0 0}.wpacu_table_wrap>table{border:1px solid #cdcdcd}.wpacu_table_wrap .table{width:100%;max-width:100%;margin-bottom:1rem;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu_table_wrap .table td,.wpacu_table_wrap .table th{padding:.75rem;vertical-align:top;border-top:1px solid #eceeef}.wpacu_table_wrap .table thead th{vertical-align:bottom;border-bottom:2px solid #eceeef}.wpacu_table_wrap .table tbody+tbody{border-top:2px solid #eceeef}.wpacu_table_wrap .table .table{background-color:#fff}.wpacu_table_wrap .table-sm td,.wpacu_table_wrap .table-sm th{padding:.3rem}.wpacu_table_wrap .table-bordered,.wpacu_table_wrap .table-bordered td,.wpacu_table_wrap .table-bordered th{border:1px solid #eceeef}.wpacu_table_wrap .table-bordered thead td,.wpacu_table_wrap .table-bordered thead th{border-bottom-width:2px}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(even){background-color:#f9f9f9}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(odd){background-color:#fff}.wpacu_table_wrap .table-active,.wpacu_table_wrap .table-active>td,.wpacu_table_wrap .table-active>th,.wpacu_table_wrap .table-hover .table-active:hover,.wpacu_table_wrap .table-hover .table-active:hover>td,.wpacu_table_wrap .table-hover .table-active:hover>th,.wpacu_table_wrap .table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.wpacu_table_wrap .table-success,.wpacu_table_wrap .table-success>td,.wpacu_table_wrap .table-success>th{background-color:#dff0d8}.wpacu_table_wrap .table-hover .table-success:hover,.wpacu_table_wrap .table-hover .table-success:hover>td,.wpacu_table_wrap .table-hover .table-success:hover>th{background-color:#d0e9c6}.wpacu_table_wrap .table-info,.wpacu_table_wrap .table-info>td,.wpacu_table_wrap .table-info>th{background-color:#d9edf7}.wpacu_table_wrap .table-hover .table-info:hover,.wpacu_table_wrap .table-hover .table-info:hover>td,.wpacu_table_wrap .table-hover .table-info:hover>th{background-color:#c4e3f3}.wpacu_table_wrap .table-warning,.wpacu_table_wrap .table-warning>td,.wpacu_table_wrap .table-warning>th{background-color:#fcf8e3}.wpacu_table_wrap .table-hover .table-warning:hover,.wpacu_table_wrap .table-hover .table-warning:hover>td,.wpacu_table_wrap .table-hover .table-warning:hover>th{background-color:#faf2cc}.wpacu_table_wrap .table-danger,.wpacu_table_wrap .table-danger>td,.wpacu_table_wrap .table-danger>th{background-color:#f2dede}.wpacu_table_wrap .table-hover .table-danger:hover,.wpacu_table_wrap .table-hover .table-danger:hover>td,.wpacu_table_wrap .table-hover .table-danger:hover>th{background-color:#ebcccc}.wpacu_table_wrap .thead-inverse th{color:#fff;background-color:#292b2c}.wpacu_table_wrap .thead-default th{color:#464a4c;background-color:#eceeef}.wpacu_table_wrap .table-inverse{color:#fff;background-color:#292b2c}.wpacu_table_wrap .table-inverse td,.wpacu_table_wrap .table-inverse th,.wpacu_table_wrap .table-inverse thead th{border-color:#fff}.wpacu_table_wrap .table-inverse.table-bordered,.wpacu_table_wrap .table-responsive.table-bordered{border:0}.wpacu_table_wrap .table-responsive{display:block;width:100%;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar}body.wp-admin[class*=asset-cleanup] table.wp-list-table tr:not(:first-of-type):not(.wpacu_selected):hover,body.wp-admin[class*=asset-cleanup] table.wp-list-table.wpacu-list-table tr:not(.wpacu_selected):hover{-moz-box-shadow:inset 0 0 2px 1px #b3b3b3;-webkit-box-shadow:inset 0 0 2px 1px #B3B3B3;box-shadow:inset 0 0 2px 1px #B3B3B3}.wp-list-table .wpacu_remove_global_attr_row.wpacu_selected,.wp-list-table .wpacu_restore_position_row.wpacu_selected{background:#e7e7e7!important}ul.hire-reasons{margin-bottom:20px}ul.hire-reasons li{font-size:14px;line-height:22px;margin-bottom:12px}ul.hire-reasons li .dashicons{font-size:23px;line-height:23px}ul.hire-reasons li .dashicons.dashicons-yes{color:green}ol.getting-started li{font-size:14px;line-height:22px;margin-bottom:8px}.wpacu-get-help-wrap p{font-size:14px}.wpacu-get-help-wrap .help-content-wrap{margin:20px 0 25px;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;width:100%}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-align:start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.wpacu-get-help-wrap .help-content-wrap .help-content{padding:15px;background:#fff;border:1px solid #E0E0E0;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;box-shadow:2px 3px 8px 0 #231f2038;flex:1 1 50%;margin-bottom:10px}.wpacu-get-help-wrap .help-content-wrap .help-content .content-title{margin:5px 0 15px}.wpacu-get-help-wrap .help-content-wrap .help-content .cols-wrap{width:100%;margin:0 auto;display:table}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area{margin:5px 0 0;position:relative}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-left{float:left;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-right{float:right;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.activate-plugin img{max-width:280px}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area img{width:99%;margin:8px 0;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{order:2}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap .help-content{margin-right:24px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{margin-right:0}}.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{order:1}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{margin-bottom:30px}}.wpacu-get-help-wrap .help-content-wrap .help-content ul{list-style:none;padding-left:0}.wpacu-get-help-wrap .help-content-wrap .help-content ul li{font-size:14px;line-height:22px;margin-bottom:15px}.wpacu-get-help-wrap .help-content-wrap .help-content p:last-child,.wpacu-get-help-wrap .help-content-wrap .help-content ul li:last-child{margin-bottom:0}#wpacu-license-data-remove-area{display:none;margin:10px 0 25px}#wpacu-license-data-remove-area.wpacu-visible{display:block}span#wpacu-license-data-removed-msg{display:block;padding-left:26px}#wpacu-warning-read{display:none;margin:10px 0}#wpacu-warning-read span.dashicons-warning{color:#c00}#wpacu-warning-read.wpacu-visible{display:block}#wpacu-reset-submit-area{margin:10px 0;clear:both}#wpacu-reset-submit-btn{margin:10px 0 0}.wpacu-tools-area{margin:10px 20px 0 2px}.wpacu-tools-area .wpacu-tools-container{background:#fff;padding:15px;border:1px solid #cdcdcd;width:96%}.wpacu-tools-area .wpacu-tools-container form>div:first-child{margin:0 0 10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning{display:none;box-sizing:border-box;margin-top:10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p{margin:0 0 10px;line-height:22px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p:only-child{margin:0}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning ul{font-size:13px;list-style-type:disc;padding-left:30px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning.wpacu-visible{display:block}.wpacu-tools-area .wpacu-export-import-area{padding:10px}.wpacu-tools-area .wpacu-export-import-area form>p:first-of-type{margin-top:0}.wpacu-tools-area .wpacu-export-import-area form>p:last-of-type{margin-bottom:0}.wpacu-tools-area .wpacu-export-import-area:hover{background:rgba(40,44,42,.05);box-shadow:inset 0 0 10px rgba(160,165,170,.15)}.wpacu-tools-area .wpacu-export-import-area+hr{display:block;height:1px;border:0;border-top:1px solid #cdcdcd;margin:10px 0;padding:0}#wpacu-import-form button.wpacu-importing img.wpacu-spinner{display:inline-block}#wpacu-import-form button img.wpacu-spinner{display:none;margin:0 0 0 5px;height:16px;width:16px;vertical-align:middle}.wpacu-about-wrap .wpacu-about-text img{width:auto;height:150px;position:absolute;top:20px;right:-20px}@media only screen and (max-width:767px){.wpacu-about-wrap h1{margin:20px}.wpacu-about-wrap .wpacu-about-text img{display:none}.wpacu-about-wrap .wpacu-about-text{margin:20px}}.wpacu-about-wrap .about-wrap-content .area-title{font-size:19px;line-height:19px;margin-bottom:0}.wpacu-about-wrap hr{margin:10px 0}.wpacu-lite-vs-pro-wrap ul{display:flex;top:0;z-index:10;padding-bottom:14px}.wpacu-lite-vs-pro-wrap li{list-style:none;flex:1}.wpacu-lite-vs-pro-wrap li:last-child{border-right:1px solid #DDD}.wpacu-lite-vs-pro-wrap button{width:100%;border:1px solid #DDD;border-right:0;border-top:0;padding:10px;background:#FFF;font-size:14px;font-weight:700;height:60px;color:#999}.wpacu-lite-vs-pro-wrap li.active button{background:#F5F5F5;color:#000}.wpacu-lite-vs-pro-wrap table{border-collapse:collapse;table-layout:fixed;width:100%}.wpacu-lite-vs-pro-wrap th{background:inherit}.wpacu-lite-vs-pro-wrap tr.first{background:inherit;font-size:18px}.wpacu-lite-vs-pro-wrap tr.first .bg-lite{border-top:4px solid #6d6e70;background:#fff;color:#6d6e70}.wpacu-lite-vs-pro-wrap tr.first .bg-pro{border-top:4px solid green;background:#fff;color:green}.wpacu-lite-vs-pro-wrap tr:not(.first){background:#fff}.wpacu-lite-vs-pro-wrap tr:not(:last-child):hover{background:#f8f8f8}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{height:53px;border:1px solid #DDD;padding:10px 16px;empty-cells:show;text-align:left}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{font-size:14px}}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{text-align:center;display:none}.wpacu-lite-vs-pro-wrap td.default{display:table-cell}.wpacu-lite-vs-pro-wrap .txt-l{font-size:28px;font-weight:700}.wpacu-lite-vs-pro-wrap .txt-top{position:relative;top:-9px;left:-2px}.wpacu-lite-vs-pro-wrap svg{width:18px;height:18px}.wpacu-lite-vs-pro-wrap svg path{fill:green}.wpacu-lite-vs-pro-wrap .tick{color:#2CA01C}.wpacu-lite-vs-pro-wrap .tick img{fill:#2CA01C}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .txt-l{font-size:20px}.wpacu-lite-vs-pro-wrap .tick{font-size:15px}}.wpacu-lite-vs-pro-wrap .na{font-size:18px;opacity:.3;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"}.wpacu-lite-vs-pro-wrap .hide{border:0;background:0 0}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{display:table-cell!important;width:auto}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:130px}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .na{font-size:15px}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:42px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap td .button{font-size:16px!important}}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td .button{font-size:14px!important;padding:0 20px!important}.wpacu-lite-vs-pro-wrap td .button.button-primary{margin-top:6px;margin-bottom:14px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap{margin-bottom:40px;clear:both}}.wpacu-video-areas>div{padding:20px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-video-areas>div:nth-child(odd){background:#fff}.wpacu-video-areas>div:nth-child(even){background:inherit}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 15px;display:flex}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right{padding:0 20px 0 25px}}@media only screen and (min-width:992px) and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 40px}}.wpacu-video-areas .wpacu-video-area-wrapper ol{font-size:14px}.wpacu-video-areas .wpacu-video-area-wrapper ul{font-size:14px;list-style:disc;margin-left:22px}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:first-child{margin-top:0}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:last-child{margin-bottom:0}}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{width:560px;height:315px}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}}#wpassetcleanup_asset_list.postbox h2{padding-left:52px!important;position:relative}#wpassetcleanup_asset_list.postbox h2:before{content:"";position:absolute;background-image:url(images/wpacu-logo-transparent-bg-v1.png);background-size:cover;top:6px;left:13px;width:33px;height:26px;opacity:.8;-webkit-filter:grayscale(100%);filter:grayscale(100%)}body.wp-admin .wpacu-modal{display:none;position:fixed;z-index:1000000;padding-top:15%;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}body.wp-admin .wpacu-modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:80%;max-width:600px;border-radius:10px}body.wp-admin .wpacu-close{color:#aaa;float:right;font-size:28px;font-weight:700}body.wp-admin .wpacu-close:focus,body.wp-admin .wpacu-close:hover{color:#000;text-decoration:none;cursor:pointer}.wpacu-bulk-changes-tabs{display:table;position:relative;overflow:hidden;margin:0;width:100%}.wpacu-bulk-changes-tabs li{border-top:1px solid rgba(40,44,42,.1);border-left:1px solid rgba(40,44,42,.1);border-bottom:1px solid rgba(40,44,42,.1);float:left;line-height:38px;padding:0;position:relative;margin-bottom:12px}.wpacu-bulk-changes-tabs li:last-child{border-right:1px solid rgba(40,44,42,.1)}.wpacu-bulk-changes-tabs a{position:relative;background:rgba(40,44,42,.05);color:#004567;font-size:14px;font-weight:500;display:block;letter-spacing:0;outline:0;padding:6px 20px;text-decoration:none;border-top:3px solid transparent}.wpacu-bulk-changes-tabs a:hover{background:#f1f1f1;border-top:3px solid transparent}.wpacu-bulk-changes-tabs .current a{background:#fff;border-top:3px solid #004567}.wpacu-bulk-changes-tabs .current a:hover{background:#fff}.wpacu-bulk-changes-tabs .current a:after,.wpacu-bulk-changes-tabs .current a:before{top:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.wpacu-bulk-changes-tabs .current a:after{border-color:rgba(136,183,213,0);border-top-color:#fff;border-width:12px;margin-left:-12px}.wpacu-bulk-changes-tabs .current a:before{border-color:rgba(194,225,245,0);border-top-color:rgba(40,44,42,.1);border-width:13px;margin-left:-13px}img.wpacu-emoji{display:inline!important;border:none!important;height:1em!important;width:1em!important;margin:0 .07em!important;vertical-align:-.1em!important;background:0 0!important;padding:0!important;box-shadow:none!important}
|
1 |
+
@charset "UTF-8";#wpacu-pages-info-area{width:98%}#wpacu-top-area{margin:15px 0;padding:0 10px}#wpacu-quick-actions{color:#74777b;float:right;width:auto;margin-right:30px;background:rgba(40,44,42,.05);border-radius:10px;padding:6px 12px}#wpacu-quick-actions .wpacu-actions-title{font-weight:200;letter-spacing:.5px}#wpacu-quick-actions a{color:#004567;text-decoration:none}#wpacu-quick-actions a:hover{color:#0073aa}#wpacu-logo-wrap{width:auto;display:inline-block;position:relative}#wpacu-logo-wrap a{display:block}#wpacu-logo-wrap img{width:352px;height:79px}#wpacu-logo-wrap .wpacu-pro-sign{position:absolute;height:auto;font-family:FiraSans-Medium,proxima-nova-1,Montserrat,Helvetica,sans-serif;font-size:13px;font-weight:600;letter-spacing:1px;padding:5px 11px;border-radius:15px;right:-60px;top:30px;width:auto;display:inline-block;text-align:center}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-lite{color:#74777b;background:rgba(40,44,42,.05)}#wpacu-logo-wrap .wpacu-pro-sign.wpacu-pro{color:#004567;background-color:rgba(40,44,42,.05)}.wpacu-tabs{position:relative;overflow:hidden;margin:0 auto 20px;width:100%;font-weight:300;font-size:20px}.wpacu-tabs nav{text-align:center}.wpacu-tabs nav ul{position:relative;display:-ms-flexbox;display:-webkit-flex;display:-moz-flex;display:-ms-flex;display:flex;margin:0 auto;padding:0;max-width:1200px;list-style:none;-ms-box-orient:horizontal;-ms-box-pack:center;-webkit-flex-flow:row wrap;-moz-flex-flow:row wrap;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-justify-content:center;-moz-justify-content:center;-ms-justify-content:center;justify-content:center}.wpacu-tabs nav ul li{position:relative;z-index:1;display:block;margin:0;text-align:center;-webkit-flex:1;-moz-flex:1;-ms-flex:1;flex:1}.wpacu-tabs nav ul li span.extra-info{position:absolute;font-size:12px;left:0;right:50%;bottom:12px;-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.wpacu-tabs nav ul li span.extra-info.has-bulk-unloads{right:48%}.wpacu-tabs nav ul li span.extra-info.no-bulk-unloads{left:0;right:2px;bottom:2px;-webkit-transform:inherit;transform:inherit}.wpacu-tabs nav ul li span.extra-info .dashicons{font-size:16px;margin-right:-3px;margin-top:1px}.wpacu-tabs nav ul li span.extra-info.license-status.inactive{color:#c00}.wpacu-tabs nav ul li span.extra-info.license-status.active{color:green}.wpacu-tabs nav ul li span.extra-info.assets-unloaded-false{color:#004567}.wpacu-license-area .notice .dashicons,.wpacu-settings-area .notice .dashicons,.wpacu-tabs nav ul li span.extra-info.assets-unloaded-true,.wpacu-tabs nav ul li span.extra-info.bulk-unloads-true{color:green}.wpacu-tabs nav a{position:relative;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:2.5}.wpacu-tabs nav a span{vertical-align:middle;font-size:14px}.wpacu-tabs nav li.wpacu-tab-current a{color:#74777b}.wpacu-tabs nav a:focus{outline:0}.wpacu-tabs .dashicons{font-size:20px}.no-js .wpacu-content-wrap section{display:block;padding-bottom:2em;border-bottom:1px solid rgba(255,255,255,.6)}.no-flexbox nav ul{display:block}.no-flexbox nav ul li{min-width:15%;display:inline-block}@media screen and (max-width:58em){.wpacu-tabs nav a.icon span{display:none}.wpacu-tabs nav a:before{margin-right:0}}.wpacu-tabs-style-underline nav{background:#fff}.wpacu-tabs-style-underline nav a{color:#74777b;font-size:18px;text-transform:uppercase;text-decoration:none;padding:.25em 0 .5em;border-left:1px solid #e7ecea;-webkit-transition:color .2s;transition:color .2s}.wpacu-tabs-style-underline nav li:last-child a{border-right:1px solid #e7ecea}.wpacu-tabs-style-underline nav li a::after{position:absolute;bottom:0;left:0;width:100%;height:6px;background:#2CC185;content:"";-webkit-transition:-webkit-transform .3s;transition:transform .3s;-webkit-transform:translate3d(0,150%,0);transform:translate3d(0,150%,0)}.wpacu-tabs-style-underline nav li.wpacu-tab-current a::after{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.wpacu-tabs-style-underline nav a span{font-weight:700}.wpacu-tabs-style-topline{max-width:1200px;margin:20px auto 30px 0;width:100%;font-weight:300;text-decoration:none}.wpacu-tabs-style-topline nav li{border:1px solid rgba(40,44,42,.1)}.wpacu-tabs-style-topline nav li:not(:last-child){border-right:none}.wpacu-tabs-style-topline nav li.wpacu-tab-current{border-top-color:#008f9c;border-bottom:none}.wpacu-tabs-style-topline nav a{padding:20px 18px;background:rgba(40,44,42,.05);color:#74777b;line-height:1;-webkit-transition:color .2s;transition:color .2s;text-decoration:none}.wpacu-tabs-style-topline nav a:focus,.wpacu-tabs-style-topline nav a:hover{background:0 0;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a{background:0 0;box-shadow:inset 0 3px 0 #008f9c;color:#008f9c}.wpacu-tabs-style-topline nav li.wpacu-tab-current a span:not(.dashicons){font-weight:600}.wpacu-tabs-style-topline nav a span{text-transform:uppercase;font-weight:400}.wpacu-tab-nav-wrapper{border-bottom:none!important}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active{background:#fff;position:relative}.wpacu-tab-nav-wrapper .nav-tab.nav-tab-active:after{content:"";width:100%;bottom:-2px;left:0;position:absolute;border-bottom:2px solid #fff}.wpacu_hide{display:none!important}.wpacu-script-attributes-area{display:block;margin-bottom:12px}.wpacu-script-attributes-area>div:first-of-type{display:inline-block;float:left;margin-right:15px;line-height:30px;vertical-align:middle}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings{display:inline-block;float:left;padding:5px 7px!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings.wpacu-first{margin:0 15px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings label{margin:0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li{display:inline-block;margin:0 16px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li:first-child{margin:0 10px 0 0!important}.wpacu-script-attributes-area ul.wpacu-script-attributes-settings li:last-child{margin:0 2px 0 0!important}.wpacu-script-attributes-area .wpacu-script-attributes-settings{background:#fff!important;border:1px solid #eee!important;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:5px 10px!important;list-style:none;display:inline-block;margin:0}.wpacu-script-attributes-area .wpacu-script-attributes-settings input[type=radio]{width:auto;padding:0;margin:0 5px 0 0}.wpacu-script-attributes-area .wpacu-script-attributes-settings:hover{background:#f2faf2}tr.wpacu_location_changed>td{border-left:#004567 4px solid}tr.wpacu_not_load td,tr.wpacu_not_load th{background:#FFE1E1!important}tr.wpacu_not_load td .wpacu-assets-inline-code-wrap,tr.wpacu_not_load td .wpacu-script-attributes-area,tr.wpacu_not_load th .wpacu-assets-inline-code-wrap,tr.wpacu_not_load th .wpacu-script-attributes-area{filter:alpha(opacity=45);opacity:.45}.dashicons-wpacu{width:17px;height:17px;margin:2px 0 0;font-size:16px;text-decoration:none;color:inherit!important}#wpacu_meta_box_content,.wpacu_widefat{width:99%}.wpacu_widefat .check-column.wpacu_check{padding:10px}body[class*=wpassetcleanup] #footer-left{border-left:2px solid green;padding-left:10px}#wpassetcleanup_asset_list small{width:auto;float:none;display:inline}#wpacu_meta_box_content div.select select{max-width:inherit}#wpacu_meta_box_content .emoji{font-size:18px}#wpacu_meta_box_content h3{margin-left:0;padding-left:0}#wpacu_meta_box_content div.wpacu_note{padding:10px;background-color:#f5f5f5}#wpacu_meta_box_content .dashicons.dashicons-warning,#wpacu_meta_box_content .dashicons.dashicons-wordpress-alt{color:#c00}#wpacu_meta_box_content .wpacu_verified{padding:10px;background-color:#f5f5f5;border-left:1px solid #ddd}#wpacu_meta_box_content .wpacu_verified span{color:#0073aa;font-weight:700}#wpacu_meta_box_content div.wpacu_warning{border:1px solid #c00}#wpacu_meta_box_content ul.wpacu_asset_options{margin:0;padding:0;vertical-align:middle}#wpacu_meta_box_content ul.wpacu_asset_options li{list-style:none;display:inline-block}#wpacu_meta_box_content ul.wpacu_asset_options label{font-weight:400;margin-right:5px;margin-top:5px;margin-bottom:5px}.wpacu-updated-frontend{font-weight:400;background-color:#fff;border-left:4px solid #46b450;border-top:1px solid #46b450;border-right:1px solid #46b450;border-bottom:1px solid #46b450;padding:9px 14px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_exception_options_area_wrap label.wpacu_bold span,.wpacu_load_regex_area_wrap label.wpacu_bold span,.wpacu_unload_regex_area_wrap label.wpacu_bold span{font-weight:600!important}.wpacu-updated-frontend span.dashicons-yes{color:#46b450;font-size:26px}#wpacu-update-front-settings-area{margin:10px 0;display:inline-block;position:relative}@media only screen and (min-width:768px){#wpacu-update-front-settings-area{position:-webkit-sticky;position:sticky;bottom:0;display:block;padding:15px 0;z-index:1000000;border-top:1px solid #cdcdcd;background:#fff}}#wpacu-updating-front-settings{display:none;position:absolute;top:20px;left:142px}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap,.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap{margin:4px 0 0}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text],.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text]{line-height:normal;min-height:20px;min-width:300px;max-width:400px;display:inline-block;padding:4px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.wpacu_load_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text].wpacu_disabled,.wpacu_unload_regex_area_wrap .wpacu_handle_unload_regex_input_wrap input[type=text].wpacu_disabled{background:#fbfafa!important;color:inherit}.wpacu_handle_unload_regex_input_wrap{display:block}@media only screen and (min-width:1200px){div:not(.wpacu_is_global_unloaded) .wpacu_load_regex_input_wrap{display:inline-block}}.wpacu_is_global_unloaded .wpacu_exception_options_area_wrap{display:inline-block}.wpacu_is_global_unloaded .wpacu_exception_options_area_wrap .wpacu_area_one,.wpacu_is_global_unloaded .wpacu_exception_options_area_wrap .wpacu_area_two,.wpacu_is_global_unloaded .wpacu_exception_options_area_wrap .wpacu_load_regex_input_wrap{display:block}.wpacu_exception_options_area_wrap{display:table;background:#fff!important}.wpacu_exception_options_area_wrap input[type=text]{line-height:normal;min-height:20px;min-width:300px;max-width:400px;display:inline-block;padding:4px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.wpacu_exception_options_area_wrap input[type=text].wpacu_disabled{background:#fbfafa!important;color:inherit}.wpacu_exception_options_area_wrap p:first-of-type{margin-top:0}.wpacu_exception_options_area_wrap .wpacu_area_one{display:table-cell;vertical-align:middle;padding-right:10px}.wpacu_exception_options_area_wrap .wpacu_area_two{display:table-cell}@media only screen and (max-width:1199px){.wpacu_exception_options_area_wrap,.wpacu_exception_options_area_wrap .wpacu_area_one,.wpacu_exception_options_area_wrap .wpacu_area_two{display:block}}#wpacu_meta_box_content .wpacu_widefat{width:100%}#wpacu_meta_box_content .wpacu-assets-collapsible-content{padding:0 10px!important}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li{display:inline-block;float:left;margin:1px 25px 1px 0;line-height:20px}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li:last-of-type{margin:1px 0}#wpacu_meta_box_content ul.wpacu_asset_options.wpacu_exception_options_area li input[type=text]{margin-left:5px;border:1px solid #e7e7e7;background:#fff}#wpacu_wrap_assets{color:#000!important;text-align:left!important;clear:both!important;width:90%!important;padding:20px!important;margin:30px 0 0 15px!important;border:1px solid #cdcdcd;z-index:10000!important;position:relative!important;background-color:#fff!important}#wpacu_wrap_assets div.wpacu_warning{border:1px solid #c00;padding:5px 10px}#wpacu_wrap_assets small{display:inline!important;margin:0!important;letter-spacing:normal!important}#wpacu_wrap_assets input[type=checkbox]{width:auto!important;margin-right:4px!important}#wpacu_wrap_assets img:not(.wpacu-ajax-loader){display:inline-block!important}#wpacu_wrap_assets p{line-height:22px!important;margin:10px 0!important;text-align:left!important;font-weight:400!important}#wpacu_wrap_assets p:first-child{margin:0 0 10px!important}#wpacu_wrap_assets h1{margin:0 0 20px!important;font-size:160%!important;text-align:left!important}#wpacu_wrap_assets h3{margin:20px 0;font-size:130%}#wpacu_wrap_assets ul.wpacu_asset_options.wpacu_exception_options_area li{display:inline-block;float:left;margin:1px 25px 1px 0;line-height:30px}#wpacu_wrap_assets ul.wpacu_asset_options.wpacu_exception_options_area li:last-of-type{margin:1px 0}.wpacu_verified{margin:0 0 10px!important}.wpacu_asset_row div.select{display:inline-block;width:auto}.wpacu_asset_row:first-child td{border-top:1px solid #cdcdcd}.wpacu_asset_row td{border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:1px solid #cdcdcd}.wpacu_asset_row.wpacu_notice_row td{position:relative;padding:5px;border-bottom:1px solid transparent}.wpacu_asset_row.wpacu_notice_row td div.wpacu-warning{width:auto;margin:5px;font-style:italic}.wpacu_asset_row:not(.wpacu_notice_row) td{padding:18px!important;position:relative}.wpacu_asset_row:not(.wpacu_notice_row) td.wpacu_selected,.wpacu_asset_row:not(.wpacu_notice_row) td:hover{-moz-box-shadow:inset 0 0 12px #cdcdcd;-webkit-box-shadow:inset 0 0 12px #cdcdcd;box-shadow:inset 0 0 12px #cdcdcd}.wpacu_asset_row:not(.wpacu_notice_row) td p{padding:0!important;margin-bottom:8px!important;word-wrap:break-word!important;-ms-word-break:break-all;word-break:break-word}.wpacu_asset_row:not(.wpacu_notice_row) td label{width:auto!important;margin:0!important;cursor:pointer!important;display:inline-block!important;font-size:100%!important;font-weight:400!important}.wpacu_asset_row:not(.wpacu_notice_row) td label span:not(.dashicons){font-size:100%!important}.wpacu_asset_row:not(.wpacu_notice_row) td.wpacu_check{width:50px!important}.asset-table-extra-info td{padding:5px!important}body.wp-admin .wpacu_asset_row td.wpacu_check{width:25px!important}.wpacu_asset_row .dashicons-warning,.wpacu_asset_row .dashicons-wordpress-alt{color:red!important}.wpacu_asset_row .dashicons-wordpress-alt{font-size:17px;vertical-align:middle}label.wpacu_add_global{cursor:pointer!important}label.wpacu_input_load_checked{font-weight:700;color:#d54e21}label.wpacu_global_unload_exception{font-weight:700!important}tr.wpacu_bulk_change_row.wpacu_selected,tr.wpacu_global_rule_row.wpacu_selected,tr.wpacu_remove_preload_row.wpacu_selected{background:#e7e7e7}.nav-tab-wrapper{border-bottom:1px solid #ccc;width:95%}.nav-tab-wrapper.nav-assets-manager .nav-tab{font-size:13px;font-weight:500;padding:6px 10px}.nav-tab-wrapper.nav-assets-manager .nav-tab.for-pro{padding:6px 8px 6px 3px}ul.wpacu_asset_options{margin:0 10px 0 0;padding:0}ul.wpacu_asset_options li{margin:0 10px 0 0;list-style:none;display:inline-block;line-height:normal}ul.wpacu_asset_options li.remove_rule label{font-weight:700}ul.wpacu_asset_options label{margin-right:20px;font-weight:400}ul.wpacu_asset_options label input{margin-right:4px}.wpacu_list_table,.wpacu_list_table div,.wpacu_list_table li,.wpacu_list_table p{font-weight:400}.wpacu_striped>tbody>:nth-child(even),ul.wpacu_striped>:nth-child(even){background-color:#fff!important}.wpacu_striped>tbody>:nth-child(odd),ul.wpacu_striped>:nth-child(odd){background-color:#f9f9f9!important}.wpacu_update_btn{-moz-box-shadow:inset 0 1px 0 0 #54a3f7!important;-webkit-box-shadow:inset 0 1px 0 0 #54a3f7!important;box-shadow:inset 0 1px 0 0 #54a3f7!important;background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#007dc1),color-stop(1,#0061a7))!important;background:-moz-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-webkit-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-o-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:-ms-linear-gradient(top,#007dc1 5%,#0061a7 100%)!important;background:linear-gradient(to bottom,#007dc1 5%,#0061a7 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#007dc1", endColorstr="#0061a7", GradientType=0)!important;background-color:#007dc1!important;-moz-border-radius:3px!important;-webkit-border-radius:3px!important;border-radius:3px!important;border:1px solid #124d77!important;display:inline-block!important;cursor:pointer!important;color:#fff!important;font-size:15px!important;padding:10px 24px!important;text-decoration:none!important;text-shadow:0 1px 0 #154682!important;height:auto!important;line-height:normal!important}.wpacu-btns .btn:focus,.wpacu-btns .btn:hover,.wpacu-btns a{text-decoration:none}.wpacu_update_btn.wpacu_submitting,.wpacu_update_btn:hover{background:-webkit-gradient(linear,left top,left bottom,color-stop(.05,#0061a7),color-stop(1,#007dc1))!important;background:-moz-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-webkit-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-o-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:-ms-linear-gradient(top,#0061a7 5%,#007dc1 100%)!important;background:linear-gradient(to bottom,#0061a7 5%,#007dc1 100%)!important;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#0061a7", endColorstr="#007dc1", GradientType=0)!important;background-color:#0061a7!important}.wpacu_update_btn.wpacu_submitting{cursor:default!important}.wpacu_update_btn:active{position:relative!important;top:1px!important}.wpacu-btns .btn{display:inline-block;font-weight:400;line-height:1.25;text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid transparent;padding:.5rem 1rem;font-size:1rem;-webkit-border-radius:.25rem;-moz-border-radius:.25rem;border-radius:.25rem;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.wpacu-btns .btn.focus,.wpacu-btns .btn:focus{outline:0;-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.25);box-shadow:0 0 0 2px rgba(2,117,216,.25)}.wpacu-btns .btn.disabled,.wpacu-btns .btn:disabled{cursor:not-allowed;opacity:.65}.wpacu-btns .btn.active,.wpacu-btns .btn:active{background-image:none}.wpacu-btns a.btn.disabled,.wpacu-btns fieldset[disabled] a.btn{pointer-events:none}.wpacu-btns .btn-primary{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary:hover{color:#fff;background-color:#025aa5;border-color:#01549b}.wpacu-btns .btn-primary.focus,.wpacu-btns .btn-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-primary.disabled,.wpacu-btns .btn-primary:disabled{background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-primary.active,.wpacu-btns .btn-primary:active,.wpacu-btns .show>.btn-primary.dropdown-toggle{color:#fff;background-color:#025aa5;background-image:none;border-color:#01549b}.wpacu-btns .btn-secondary{color:#292b2c;background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary:hover{color:#292b2c;background-color:#e6e6e6;border-color:#adadad}.wpacu-btns .btn-secondary.focus,.wpacu-btns .btn-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-secondary.disabled,.wpacu-btns .btn-secondary:disabled{background-color:#fff;border-color:#ccc}.wpacu-btns .btn-secondary.active,.wpacu-btns .btn-secondary:active,.wpacu-btns .show>.btn-secondary.dropdown-toggle{color:#292b2c;background-color:#e6e6e6;background-image:none;border-color:#adadad}.wpacu-btns .btn-info{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#2aabd2}.wpacu-btns .btn-info.focus,.wpacu-btns .btn-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-info.disabled,.wpacu-btns .btn-info:disabled{background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-info.active,.wpacu-btns .btn-info:active,.wpacu-btns .show>.btn-info.dropdown-toggle{color:#fff;background-color:#31b0d5;background-image:none;border-color:#2aabd2}.wpacu-btns .btn-success{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success:hover{color:#fff;background-color:#449d44;border-color:#419641}.wpacu-btns .btn-success.focus,.wpacu-btns .btn-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-success.disabled,.wpacu-btns .btn-success:disabled{background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-success.active,.wpacu-btns .btn-success:active,.wpacu-btns .show>.btn-success.dropdown-toggle{color:#fff;background-color:#449d44;background-image:none;border-color:#419641}.wpacu-btns .btn-warning{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#eb9316}.wpacu-btns .btn-warning.focus,.wpacu-btns .btn-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-warning.disabled,.wpacu-btns .btn-warning:disabled{background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-warning.active,.wpacu-btns .btn-warning:active,.wpacu-btns .show>.btn-warning.dropdown-toggle{color:#fff;background-color:#ec971f;background-image:none;border-color:#eb9316}.wpacu-btns .btn-danger{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#c12e2a}.wpacu-btns .btn-danger.focus,.wpacu-btns .btn-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-danger.disabled,.wpacu-btns .btn-danger:disabled{background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-danger.active,.wpacu-btns .btn-danger:active,.wpacu-btns .show>.btn-danger.dropdown-toggle{color:#fff;background-color:#c9302c;background-image:none;border-color:#c12e2a}.wpacu-btns .btn-outline-primary{color:#0275d8;background-image:none;background-color:transparent;border-color:#0275d8}.wpacu-btns .btn-outline-primary:hover{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-primary.focus,.wpacu-btns .btn-outline-primary:focus{-webkit-box-shadow:0 0 0 2px rgba(2,117,216,.5);box-shadow:0 0 0 2px rgba(2,117,216,.5)}.wpacu-btns .btn-outline-primary.disabled,.wpacu-btns .btn-outline-primary:disabled{color:#0275d8;background-color:transparent}.wpacu-btns .btn-outline-primary.active,.wpacu-btns .btn-outline-primary:active,.wpacu-btns .show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#0275d8;border-color:#0275d8}.wpacu-btns .btn-outline-secondary{color:#ccc;background-image:none;background-color:transparent;border-color:#ccc}.wpacu-btns .btn-outline-secondary:hover{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-secondary.focus,.wpacu-btns .btn-outline-secondary:focus{-webkit-box-shadow:0 0 0 2px rgba(204,204,204,.5);box-shadow:0 0 0 2px rgba(204,204,204,.5)}.wpacu-btns .btn-outline-secondary.disabled,.wpacu-btns .btn-outline-secondary:disabled{color:#ccc;background-color:transparent}.wpacu-btns .btn-outline-secondary.active,.wpacu-btns .btn-outline-secondary:active,.wpacu-btns .show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#ccc;border-color:#ccc}.wpacu-btns .btn-outline-info{color:#5bc0de;background-image:none;background-color:transparent;border-color:#5bc0de}.wpacu-btns .btn-outline-info:hover{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-info.focus,.wpacu-btns .btn-outline-info:focus{-webkit-box-shadow:0 0 0 2px rgba(91,192,222,.5);box-shadow:0 0 0 2px rgba(91,192,222,.5)}.wpacu-btns .btn-outline-info.disabled,.wpacu-btns .btn-outline-info:disabled{color:#5bc0de;background-color:transparent}.wpacu-btns .btn-outline-info.active,.wpacu-btns .btn-outline-info:active,.wpacu-btns .show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#5bc0de;border-color:#5bc0de}.wpacu-btns .btn-outline-success{color:#5cb85c;background-image:none;background-color:transparent;border-color:#5cb85c}.wpacu-btns .btn-outline-success:hover{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-success.focus,.wpacu-btns .btn-outline-success:focus{-webkit-box-shadow:0 0 0 2px rgba(92,184,92,.5);box-shadow:0 0 0 2px rgba(92,184,92,.5)}.wpacu-btns .btn-outline-success.disabled,.wpacu-btns .btn-outline-success:disabled{color:#5cb85c;background-color:transparent}.wpacu-btns .btn-outline-success.active,.wpacu-btns .btn-outline-success:active,.wpacu-btns .show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#5cb85c;border-color:#5cb85c}.wpacu-btns .btn-outline-warning{color:#f0ad4e;background-image:none;background-color:transparent;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning:hover{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-warning.focus,.wpacu-btns .btn-outline-warning:focus{-webkit-box-shadow:0 0 0 2px rgba(240,173,78,.5);box-shadow:0 0 0 2px rgba(240,173,78,.5)}.wpacu-btns .btn-outline-warning.disabled,.wpacu-btns .btn-outline-warning:disabled{color:#f0ad4e;background-color:transparent}.wpacu-btns .btn-outline-warning.active,.wpacu-btns .btn-outline-warning:active,.wpacu-btns .show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#f0ad4e;border-color:#f0ad4e}.wpacu-btns .btn-outline-danger{color:#d9534f;background-image:none;background-color:transparent;border-color:#d9534f}.wpacu-btns .btn-outline-danger:hover{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-outline-danger.focus,.wpacu-btns .btn-outline-danger:focus{-webkit-box-shadow:0 0 0 2px rgba(217,83,79,.5);box-shadow:0 0 0 2px rgba(217,83,79,.5)}.wpacu-btns .btn-outline-danger.disabled,.wpacu-btns .btn-outline-danger:disabled{color:#d9534f;background-color:transparent}.wpacu-btns .btn-outline-danger.active,.wpacu-btns .btn-outline-danger:active,.wpacu-btns .show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#d9534f;border-color:#d9534f}.wpacu-btns .btn-link{font-weight:400;color:#0275d8;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.wpacu-btns .btn-link,.wpacu-btns .btn-link.active,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:disabled{background-color:transparent}.wpacu-btns .btn-link,.wpacu-btns .btn-link:active,.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{border-color:transparent}.wpacu-btns .btn-link:focus,.wpacu-btns .btn-link:hover{color:#014c8c;text-decoration:underline;background-color:transparent}.go-pro-button,.wpacu-btns .btn-link:disabled:focus,.wpacu-btns .btn-link:disabled:hover{text-decoration:none}.wpacu-btns .btn-link:disabled{color:#636c72}.wpacu-btns .btn-group-lg>.btn,.wpacu-btns .btn-lg{padding:.75rem 1.5rem;font-size:1.25rem;-webkit-border-radius:.3rem;-moz-border-radius:.3rem;border-radius:.3rem}.wpacu-btns .btn-group-sm>.btn,.wpacu-btns .btn-sm{padding:.25rem .5rem;font-size:.875rem;-webkit-border-radius:.2rem;-moz-border-radius:.2rem;border-radius:.2rem}.wpacu-btns .btn-block{display:block;width:100%}.wpacu-btns .btn-block+.btn-block{margin-top:.5rem}.wpacu-btns input[type=button].btn-block,.wpacu-btns input[type=reset].btn-block,.wpacu-btns input[type=submit].btn-block{width:100%}.wpacu-btns .fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.go-pro-button{background-color:#4CAF50;border:2px solid #4CAF50;color:#fff;padding:12px 18px;text-align:center;display:inline-block;font-size:16px;margin:4px 2px;cursor:pointer;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;-webkit-transition-duration:.4s;transition-duration:.4s}.go-pro-button:hover{background-color:#fff;color:#000;border:2px solid #4CAF50;text-decoration:none}.go-pro-link-no-style,.wordpress-core-file{display:inline-block;color:inherit;text-decoration:none}.wpacu-restore-pos-btn{font-size:14px!important;line-height:normal!important;height:42px!important;padding:0 18px!important;margin-top:10px!important}body.wp-admin .wpacu_asset_row .go-pro-link-no-style .wpacu-tooltip{padding:8px 2px}body.wp-admin .go-pro-link-no-style .wpacu-tooltip{text-shadow:none;font-weight:400;font-size:12px;line-height:16px;padding:8px 11px}.go-pro-link-no-style .wpacu-tooltip,.wordpress-core-file .wpacu-tooltip{line-height:18px;visibility:hidden;text-align:center;font-size:14px;z-index:1}.go-pro-link-no-style{position:relative}.go-pro-link-no-style:not(.nav-tab){font-style:italic}.go-pro-link-no-style.no-transition .wpacu-tooltip{-webkit-transition:0s all ease;transition:0s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style>img{max-width:20px;max-height:20px}.go-pro-link-no-style .wpacu-tooltip{position:absolute;width:160px;background-color:#00a7a7;color:#fff;padding:8px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-65px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.go-pro-link-no-style .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#00a7a7 transparent transparent}.go-pro-link-no-style .wpacu-tooltip.wpacu-on-pages-btn{cursor:pointer;margin-left:-77px;width:130px}.go-pro-link-no-style .wpacu-tooltip.wpacu-larger{width:240px}.go-pro-link-no-style:hover .wpacu-tooltip{visibility:visible}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip{bottom:-40px;left:120px;margin-left:-86px}.wpacu_list_table tr:first-child .wordpress-core-file .wpacu-tooltip:after{top:41px;left:-20px;border-color:transparent #c00 transparent transparent}.wordpress-core-file{position:relative;font-style:normal}.wordpress-core-file .wpacu-tooltip{position:absolute;width:160px;background-color:#c00;color:#fff;padding:6px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;bottom:100%;bottom:calc(100% + 15px);left:50%;margin-left:-86px;-webkit-transition:.1s all ease;transition:.1s all ease;-webkit-transition-delay:0s;transition-delay:0s}.wordpress-core-file .wpacu-tooltip:after{content:"";position:absolute;border-width:10px;border-style:solid;top:100%;left:50%;left:calc(50% - 10px);border-color:#c00 transparent transparent}.wordpress-core-file:hover .wpacu-tooltip{visibility:visible}.ajax-direct-call-error-area{background:#fff;padding:10px;border:1px solid #c00;-webkit-border-radius:8px;-moz-border-radius:8px;border-radius:8px}.ajax-direct-call-error-area td{padding:6px}.ajax-direct-call-error-area .note{margin-top:0;padding-top:0}.ajax-direct-call-error-area .error-code{color:#c00;font-weight:700}.ajax-wp-remote-post-call-error-area{background:#fff;padding:20px}.ajax-wp-remote-post-call-error-area .table-data{background:0 0;border:1px solid #c66;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.ajax-wp-remote-post-call-error-area .table-data td{padding:10px}.wrap-upgrade-info{background:#fff;padding:0 15px;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-notice{margin:20px 20px 0 0!important}.wpacu-notice p{font-weight:600!important;font-style:italic}.wpacu-notice .dashicons{font-weight:inherit!important;color:#46b450!important;margin-right:4px;vertical-align:text-bottom;font-size:27px}.wpacu-notice-info{padding:12px 12px 12px 16px;background:#fff;border-left:4px solid #008f9c}.wpacu-notice-info p{margin-top:8px}.wpacu-notice-info p:first-child{margin-top:0}.wpacu-notice-info p:last-child{margin-bottom:0}.wpacu-warning{font-size:15px;padding:10px;background:#fffcec;border:1px solid #fdd5c9;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;margin:0 0 5px;width:100%}.pro-page-unlock-notice{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;padding:10px;background:#f2faf2;border:1px solid #c0e8c0;width:auto;display:block}.wpacu-license-area .notice,.wpacu-settings-area .notice{margin-left:0;padding:10px!important;width:97%;box-sizing:border-box;font-weight:600;font-style:italic}#wpacu-dom-get-type-selections,.wpacu-radio-selections{float:none;clear:both;width:auto;display:inline-block;margin-bottom:0;margin-top:0}#wpacu-dom-get-type-selections.wpacu-vertical,.wpacu-radio-selections.wpacu-vertical{display:block;margin-top:15px;margin-bottom:18px}#wpacu-dom-get-type-selections.wpacu-vertical li,.wpacu-radio-selections.wpacu-vertical li{float:none;margin-bottom:12px}#wpacu-dom-get-type-selections.wpacu-vertical li:last-child,.wpacu-radio-selections.wpacu-vertical li:last-child{margin-bottom:0}#wpacu-dom-get-type-selections li,.wpacu-radio-selections li{margin-right:30px;float:left;margin-bottom:0}#wpacu-dom-get-type-selections li:first-child,.wpacu-radio-selections li:first-child{margin-right:15px}#wpacu-dom-get-type-selections li:last-child,.wpacu-radio-selections li:last-child{margin-right:0}.wpacu_combine_loaded_js_level_area{display:none;background:0 0;border-left:2px solid #008f9c;padding-top:8px;padding-bottom:8px;padding-right:10px;padding-left:10px;margin:20px 0 15px}.wpacu_combine_loaded_js_level_area.wpacu_active{display:block}#wpacu-dom-get-type-infos{margin-bottom:0}#wpacu-dom-get-type-infos li{margin-bottom:0;line-height:20px}.wpacu-wrap li,.wpacu-wrap p,.wpacu-wrap td{font-weight:400}.wpacu-wrap small{width:auto;float:none;display:inline}.wpacu-wrap small code{font-size:inherit!important}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-tab-content{display:block;width:100%}.wpacu-wrap.wpacu-settings-show-all .wpacu-settings-area-title{color:#004567;padding:16px 15px;background:#f8f8f8;border-left:5px solid #004567b0;border-top:1px solid #e7e7e7;border-right:1px solid #e7e7e7;border-bottom:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;font-size:1.45em;font-weight:500}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area,.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .submit{margin:0}.wpacu-wrap.wpacu-settings-show-all #wpacu-update-button-area .button{padding:11px 28px;height:38px;font-size:18px}.wpacu-wrap.wpacu-settings-show-all #wpacu-updating-settings{margin-left:224px;top:35px;left:3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch{width:auto;height:auto}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input{display:block}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox],.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch input[type=checkbox]{margin:0 0 3px}.wpacu-wrap.wpacu-switch-standard .asset-cleanup-pro_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider,.wpacu-wrap.wpacu-switch-standard .asset-cleanup_page_wpassetcleanup_settings .wpacu_switch .wpacu_slider{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch{position:relative;display:inline-block;width:52px;height:29px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch:not(.wpacu_switch_standard) .wpacu_slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.2s;transition:.2s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round{border-radius:29px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_disabled,.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_locked_for_pro{opacity:.3}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch.wpacu_disabled:before{content:"";font-family:Dashicons,Arial,"Times New Roman","Bitstream Charter",Times,serif;position:absolute;font-size:23px;top:5px;right:2px;z-index:1000}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle{margin-top:4px;line-height:1.4}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_subtitle em{font-weight:200}.asset-cleanup-pro_page_wpassetcleanup_settings .setting_title p.wpacu_read_more,.asset-cleanup_page_wpassetcleanup_settings .setting_title p.wpacu_read_more{margin-top:-10px;font-style:italic;font-size:12px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices{list-style:none;margin:0}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li{float:left;margin-right:30px}.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup-pro_page_wpassetcleanup_settings .input_style_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_inline_code_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .assets_list_layout_areas_status_choices li:last-child,.asset-cleanup_page_wpassetcleanup_settings .input_style_choices li:last-child{margin-right:0}#wpacu-assets-list-by-location-selected{background:0 0;border:1px solid #e7e7e7;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;padding:8px;clear:both}.notice.notice-success+.wpacu-wrap.wpacu-settings-area{margin-top:20px}.wpacu-license-action-btn-area{margin-top:0;position:relative;display:inline-block}.wpacu-license-spinner{display:none;position:absolute;right:-30px;top:4px}.wpacu-license-spinner img{width:20px;height:20px}#wpacu-activation-issues-info{border-radius:10px;width:90%;margin-top:20px;font-size:14px;padding:6px 20px;background:#fff;border:1px solid #e7e7e7}#wpacu-activation-issues-info ol li{font-size:13px;margin-bottom:10px}#wpacu-mark-license-area-wrap{margin:15px 0}.wpacu-form-table.wpacu-license th{width:150px}.wpacu-form-table th{vertical-align:top;text-align:left;padding:5px 20px 20px 0;width:200px;line-height:1.3;font-weight:600}.wpacu-form-table th label{color:#23282d;font-weight:600;font-size:14px;text-shadow:none;vertical-align:middle;cursor:pointer}.wpacu-form-table td{padding-bottom:25px}.wpacu-form-table td:last-child p:last-child{margin:0}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox],.wpacu-form-table label input[type=checkbox]{height:20px;width:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:checked,.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:hover,.wpacu-form-table label input[type=checkbox]:checked,.wpacu-form-table label input[type=checkbox]:hover{border:1px solid green}.wpacu-form-table .wpacu-fancy-checkbox input[type=checkbox]:checked:before,.wpacu-form-table label input[type=checkbox]:checked:before{color:#52af00;font:400 24px/1 dashicons}.wpacu-form-table .wpacu-fancy-radio input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;position:relative;height:20px;width:20px;margin:2px 0 0}.wpacu-form-table .wpacu-fancy-radio input[type=radio]:checked,.wpacu-form-table .wpacu-fancy-radio input[type=radio]:hover{border:1px solid green}.wpacu-form-table .wpacu-fancy-radio input[type=radio]:checked:before{margin:0;line-height:inherit;text-indent:inherit;content:"";position:absolute;top:4px;left:4px;width:10px;height:10px;border-radius:50%;background:#52af00;color:#52af00;font:400 24px/1 dashicons}#wpacu-settings-vertical-tab-wrap{display:table;width:100%}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text{margin:4px 0 0}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small{font-weight:lighter}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap{position:relative;padding-left:14px}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status{position:absolute;left:0;top:2px;height:10px;width:10px;border-radius:50%;display:inline-block;opacity:.75}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status.wpacu-on{background:#52af00}#wpacu-settings-vertical-tab-wrap .wpacu-tab-extra-text small span.wpacu-status-wrap span.wpacu-circle-status.wpacu-off{background:#ccc}#wpacu-settings-vertical-tab-wrap *{box-sizing:border-box}.wpacu-settings-tab{display:table-cell;width:20%;height:100%;vertical-align:top}.wpacu-settings-tab a{text-decoration:none;border-left:3px solid transparent;display:block;background-color:#f1f1f1;color:#004567;padding:17px 16px;width:100%;outline:0;text-align:left;cursor:pointer;font-size:14px;font-weight:600;border-bottom:1px solid #ccc}.wpacu-settings-tab a:first-child{border-top:1px solid transparent!important}.wpacu-settings-tab a:last-child{border-bottom:1px solid transparent!important}.wpacu-settings-tab a:hover{background-color:#fff;border-left:3px solid #004567;position:relative}.wpacu-settings-tab a.active{color:#004567;background-color:#fff;border-left:3px solid #004567;position:relative;border-bottom:1px solid #ccc}.wpacu-settings-tab a.active:after{content:"";position:absolute;height:100%;width:1px;top:0;right:-1px;background-color:#fff}.wpacu-settings-tab-content{background-color:#fff;display:none;padding:12px 18px;width:79%;border-left:none;height:100%;border-top-right-radius:10px;border-bottom-right-radius:10px}.wpacu-settings-tab-content h2{padding:0 0 15px;border-bottom:1px solid #e7e7e7}.wpacu-settings-tab-content.active{display:table-cell}#wpacu_minify_css_exceptions_area,#wpacu_minify_js_exceptions_area{margin:16px 0 0}@media only screen and (min-width:768px){body.asset-cleanup-pro_page_wpassetcleanup_assets_manager #wpacu-update-button-area,body.asset-cleanup_page_wpassetcleanup_assets_manager #wpacu-update-button-area{position:-webkit-sticky;position:sticky;bottom:0;padding:0;z-index:1000000;border-top:1px solid #cdcdcd;background:#f1f1f1}.wpacu-get-help-wrap .help-content-wrap{-webkit-box-align:start;-ms-flex-align:start;-ms-grid-row-align:flex-start;align-items:flex-start}}body[class*=version-5-3] #wpacu-update-button-area .button{height:auto;padding:4px 18px 6px;font-size:15px}body[class*=version-5-3] #wpacu-updating-settings{margin-left:178px}#wpacu-update-button-area{position:relative;margin-left:20%}#wpacu-update-button-area.no-left-margin{margin-left:0}#wpacu-update-button-area .submit{margin:0;padding:19px 0}#wpacu-update-button-area .button{padding:5px 18px;height:38px;font-size:15px}#wpacu-updating-settings{position:absolute;margin-left:183px;top:28px;display:none}#combine_loaded_js_info_area{position:relative}#combine_loaded_js_info_area.locked-for-pro:before{position:absolute;content:"";height:100%;width:100%;background:#fff;opacity:.5;z-index:10000}.google_fonts_load_types{clear:both;margin:20px 0 15px;display:flex}.google_fonts_load_types>div{text-align:left}.google_fonts_load_types>div input{float:left;margin:0 7px 20px 0!important}.wpacu-sub-tabs-wrap{min-width:320px;margin:0 auto}.wpacu-sub-tabs-wrap input.wpacu-nav-input{display:none}.wpacu-sub-tabs-wrap label.wpacu-nav-label{display:inline-block;margin:0 0 -1px;padding:15px 25px;font-weight:600;text-align:center;color:#74777b;border-left:1px solid transparent;border-right:1px solid transparent;border-top:3px solid transparent;border-bottom:0}.wpacu-sub-tabs-wrap label.wpacu-nav-label:hover{cursor:pointer}.wpacu-sub-tabs-wrap input.wpacu-nav-input:checked+label.wpacu-nav-label{color:#004567;border-left:1px solid #ccc;border-right:1px solid #ccc;border-top:3px solid #004567;border-bottom:1px solid #fff}.wpacu-sub-tabs-wrap section{display:none;padding:20px 0 0;border-top:1px solid #ccc}#wpacu-google-fonts-optimize-tab-item:checked~#wpacu-google-fonts-optimize-tab-item-area,#wpacu-google-fonts-remove-tab-item:checked~#wpacu-google-fonts-remove-tab-item-area{display:block}body.wp-admin .wpacu-handle-notes p{margin-top:0!important}body.wp-admin .wpacu-handle-notes p a{font-size:inherit}body.wp-admin .wpacu-handle-notes p a span.dashicons{font-size:19px;width:19px;height:19px;vertical-align:bottom;text-decoration:none}.wpacu-handle-notes{padding-top:5px;margin-bottom:-10px;border-top:1px solid #e7e7e7}.wpacu-handle-notes .wpacu-handle-notes-field{display:none}.wpacu-handle-notes .wpacu-handle-notes-field>textarea{font-size:85%;padding:6px;width:320px;max-width:100%}.wpacu-handle-notes p{margin:10px 0 0!important}.wpacu-handle-notes p a.wpacu-add-handle-note{text-decoration:none;font-size:80%;display:inline-block;color:inherit}.wpacu-handle-notes p a.wpacu-add-handle-note span.dashicons{font-size:18px;width:18px;height:18px}.wrap_bulk_unload_options{width:auto;display:block;clear:both}.wrap_bulk_unload_options .wpacu_asset_options_wrap{display:inline-block;float:left;margin:5px 10px 14px 0!important;padding:8px 10px 12px!important}.wrap_bulk_unload_options .wpacu_asset_options_wrap .wpacu_slider_text{position:relative!important;vertical-align:top;left:inherit!important;top:inherit!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch{position:relative;display:inline-block;min-width:52px;width:52px;height:29px;margin-right:5px!important}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input{display:none}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider:before{position:absolute;content:"";height:22px;width:22px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider{background-color:#C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:focus+.wpacu_slider{box-shadow:0 0 1px #C00}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch input:checked+.wpacu_slider:before{-webkit-transform:translateX(22px);-ms-transform:translateX(22px);transform:translateX(22px)}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round{border-radius:29px}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_switch .wpacu_slider.wpacu_round:before{border-radius:50%}.wpacu-switch-enhanced .wpacu_asset_row .wpacu_slider_text{position:absolute;left:62px;top:3px}.wpacu-wrap tr.wpacu_regex_rule_row{opacity:.45}.wpacu-wrap tr.wpacu_regex_rule_row.wpacu_enabled{opacity:1}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small{position:relative;display:inline-block;min-width:30px;width:30px;height:17px;margin-right:5px!important}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input{display:none}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.15s;transition:.15s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider:before{position:absolute;content:"";height:13px;width:13px;left:2px;bottom:2px;background-color:#fff;-webkit-transition:.15s;transition:.15s}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:checked+.wpacu_slider{background-color:#52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:focus+.wpacu_slider{box-shadow:0 0 1px #52af00}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small input:checked+.wpacu_slider:before{-webkit-transform:translateX(13px);-ms-transform:translateX(13px);transform:translateX(13px)}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider.wpacu_round{border-radius:17px}.wpacu-wrap.wpacu-switch-enhanced .wpacu_switch_small .wpacu_slider.wpacu_round:before{border-radius:50%}.editor-post-saved-state.is-wpacu-reloading{animation:edit-post__loading-fade-animation .5s infinite}body.wp-admin .wpacu_asset_row.wpacu-loading{position:relative}body.wp-admin .wpacu_asset_row.wpacu-loading .wpacu-ajax-loader{display:block!important}body.wp-admin .wpacu_asset_row .wpacu-ajax-loader{display:none;width:58px;height:58px;position:absolute;bottom:0;right:0;opacity:.75}.wpacu_asset_row>td{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-all}.wpacu_asset_row input{width:auto;height:auto;min-height:16px}.wpacu_asset_row .tip{background:inherit;border-left:4px solid #e7e7e7;margin:0 0 5px;padding:7px;font-style:italic;font-size:small;line-height:1.4}.wpacu_asset_row td{width:100%;text-align:left}.wpacu_asset_row td p:last-child{margin-bottom:0!important}.wpacu_asset_row td .wpacu_asset_options_wrap{padding:8px 10px;margin:15px 0;background:#fff;border:1px solid #eee;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu_asset_row td .wpacu_asset_options_wrap p:first-child{margin-top:0;margin-bottom:8px!important}.wpacu_asset_row p.wpacu_handle{margin-top:0}.wpacu_asset_row li.wpacu_unload_this_page{display:block!important;position:relative}.wpacu-clearfix:after,.wpacu-clearfix:before{display:table;content:""}.wpacu-contract-expand-area{width:100%;margin:20px 0 0}.wpacu-contract-expand-area .col-left{float:left}.wpacu-contract-expand-area .col-left h4{margin-bottom:0}.wpacu-contract-expand-area .col-right{float:right}.wpacu-clearfix{clear:both;height:0}.wpacu-clearfix:after{clear:both}.wpacu-wp-button{color:#555;border-color:#ccc;background:#f7f7f7;box-shadow:0 1px 0 #ccc;vertical-align:top}body.wp-admin .wpacu-wp-button{font-size:13px;line-height:26px;height:28px}.wpacu-wp-button.wpacu-wp-button-secondary{display:inline-block;text-decoration:none;height:auto;margin:0 5px 0 0;padding:0 10px 1px;cursor:pointer;border-width:1px;border-style:solid;-webkit-appearance:none;border-radius:3px;white-space:nowrap;box-sizing:border-box}.wpacu-wp-button:hover{background:#fafafa;border-color:#999;color:#23282d}.wpacu-assets-collapsible-wrap,.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed{border:1px solid #cdcdcd}.distinguish-asset-list{list-style:none;margin-left:0;margin-bottom:5px;display:inline-block}.distinguish-asset-list li{float:left;margin-right:20px}.distinguish-asset-list li:last-child{margin-right:0}body[class*=asset-cleanup-pro] a.wpacu-plugin-contracted-wrap-link{padding:16px 6px 16px 41px!important}body[class*=asset-cleanup-pro] .wpacu-area-open .wpacu-plugin-toggle-all{font-size:12px!important;width:calc(100% - 26px)!important}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all{top:5px}body.wp-admin .wpacu-area-expanded .wpacu-plugin-toggle-all ul li{font-size:12px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location{margin-bottom:15px}.wpacu-assets-collapsible-wrap.wpacu-wrap-all{margin-top:20px}.wpacu-assets-collapsible-wrap.wpacu-wrap-area{margin-top:10px}.wpacu-assets-collapsible-wrap.wpacu-by-location>a.wpacu-assets-collapsible{padding:15px 15px 15px 43px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu_list_table{border-width:0;margin:0;border-spacing:inherit;width:100%;box-shadow:3px 3px 2px #ddd;border-bottom-right-radius:5px;border-top-right-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-name{font-weight:600}.wpacu-assets-collapsible-wrap.wpacu-by-location span.wpacu-child-location-version{font-weight:200}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area[data-wpacu-plugin=oxygen] .icon-area{border-radius:50%}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all{display:inline-block;padding:0;font-size:13px;width:100%;width:calc(100% + 46px);min-width:250px;position:absolute;left:100%;left:calc(100% + 6px);margin:0;top:4px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul{display:inline-block;margin:0;list-style:none;padding-left:13px;padding-top:0}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul li{padding:0;margin:0;line-height:normal;font-size:14px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-location-child-area .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all ul li:first-child{font-style:italic;margin-bottom:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;position:relative;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title:after{content:"";position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap{padding:0 0 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open.wpacu-plugin-assets-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all{display:inline-block;padding:7px 12px 8px;font-size:14px;width:100%;text-align:left;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-plugin-assets-wrap.wpacu-area-open .wpacu-plugin-toggle-all-wrap .wpacu-plugin-toggle-all+.wpacu-plugin-toggle-all{padding:2px 12px 10px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link{color:inherit;text-decoration:none;font-weight:inherit;font-style:inherit;font-size:105%;line-height:initial;height:auto;margin:14px 0 0;padding:13px 6px 14px 39px;position:relative;display:block}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:after{position:absolute;font-size:18px;font-family:Dashicons;right:12px;top:14px;content:""}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open:after{content:""}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover{border:1px solid #878787;background:#f9f9f9}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link:hover.wpacu-link-closed{box-shadow:3px 3px 2px #ddd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-open{border-top:1px solid #cdcdcd;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;border-bottom:none}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-link-closed.wpacu-last-wrap-link{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default{top:10px;left:10px;width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area{width:30px;height:30px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .icon-plugin-default .icon-area:before{font-size:22px;line-height:22px;top:4px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title{position:relative;padding:17px 10px 16px 46px;z-index:1}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link .wpacu-area-title:after{content:"";position:absolute;width:100%;left:0;bottom:0;height:1px;background-color:#fdfdfd}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content a.wpacu-plugin-contracted-wrap-link.wpacu-area-last{margin-bottom:18px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-open{padding:0;max-height:100%}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content .wpacu-area-closed{padding:0;overflow:hidden;max-height:0}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-plugins .wpacu-assets-collapsible-content>table:last-child{margin-bottom:20px}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{margin-top:0;margin-bottom:-1px;padding:14px 10px 16px 12px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location.wpacu-themes .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title.wpacu-theme-has-icon{padding:18px 10px 16px 58px!important}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area{margin-top:22px;margin-bottom:-1px;font-size:110%;line-height:initial}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-location-child-area-first{margin-top:2px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area.wpacu-area-expanded .wpacu-area-title{display:inline-block;z-index:1;padding:17px 10px 16px 46px}.wpacu-assets-collapsible-wrap.wpacu-by-location .wpacu-assets-collapsible-content .wpacu-location-child-area .wpacu-area-title{display:inline;border-top-right-radius:8px;border-top-left-radius:8px;background-color:#f9f9f9;border-left:1px solid #cdcdcd;border-top:1px solid #cdcdcd;border-bottom:1px solid transparent;border-right:1px solid #cdcdcd;position:relative}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon){color:#b4b9be;background-color:#eee;box-shadow:inset 0 0 10px rgba(160,165,170,.15);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default:not(.has-icon) .icon-area:before{content:"";font-family:Dashicons;position:absolute;font-size:28px;line-height:28px;top:5px;left:5px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-plugin-default .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme{position:absolute;padding:0;top:10px;left:10px;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-by-location .icon-theme .icon-area{position:relative;width:37px;height:37px}.wpacu-assets-collapsible-wrap.wpacu-wp_core{border:1px solid #c00}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content{padding:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table{width:100%;margin:0}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row td{border-left:hidden;border-right:hidden;border-bottom:1px solid #cdcdcd}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child{margin-bottom:0!important}.wpacu-assets-collapsible-wrap.wpacu-external .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child,.wpacu-assets-collapsible-wrap.wpacu-wp_core .wpacu-assets-collapsible-content .wpacu_list_table .wpacu_asset_row:last-child td:last-child{border-bottom:hidden}a.wpacu-assets-collapsible{color:#000;font-size:20px;text-decoration:none;display:block;position:relative;background-color:#f1f3f8;cursor:pointer;padding:15px 15px 15px 36px;width:auto;border:none;text-align:left;outline:0}a.wpacu-assets-collapsible>span.dashicons{font-size:25px;line-height:normal;position:absolute;top:15px;top:calc(50% - 21px);left:22px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-collapsible:hover{background-color:#f1f3f8;text-decoration:none}a.wpacu-assets-collapsible:after{position:absolute;font-size:22px;font-family:Dashicons;right:14px;top:16px}a.wpacu-assets-collapsible:not(.wpacu-assets-collapsible-active):after{content:""}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active{background-color:#f1f3f8}a.wpacu-assets-collapsible.wpacu-assets-collapsible-active:after{content:""}.wpacu-assets-collapsible-content{padding:0 16px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-collapsible-content .wpacu-assets-note{margin:0;padding:15px 15px 10px}.wpacu-assets-collapsible-content>div:not(.wpacu-assets-table-list-wrap){padding:16px 0 0}.wpacu-assets-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-collapsible-content.wpacu-open{max-height:100%}a.wpacu-assets-inline-code-collapsible{color:inherit;font-size:14px;text-decoration:none;display:inline-block;position:relative;cursor:pointer;width:auto;outline:0;background:#f1f3f8;border:1px solid #cdcdcd;padding:4px 21px 4px 8px;margin:0 0 0 6px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}a.wpacu-assets-inline-code-collapsible:hover{border:1px solid #5c5c5c}a.wpacu-assets-inline-code-collapsible:after{position:absolute;font-size:15px;font-family:Dashicons;right:-3px;top:-1px;width:14px;height:14px;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}a.wpacu-assets-inline-code-collapsible:not(.wpacu-assets-inline-code-collapsible-active):after{content:""}a.wpacu-assets-inline-code-collapsible.wpacu-assets-inline-code-collapsible-active:after{content:""}.wpacu-assets-inline-code-collapsible-content{font-size:80%;padding:0 8px;max-height:0;overflow:hidden;background-color:#fbfbfb8c}.wpacu-assets-inline-code-collapsible-content>div{padding:7px 8px 0}.wpacu-assets-inline-code-collapsible-content>div>p{line-height:normal!important}.wpacu-assets-inline-code-collapsible-content>div>p:first-child{margin-top:0}.wpacu-assets-inline-code-collapsible-content.wpacu-open{max-height:100%}.wpacu_asset_row p div.select{display:inline-block}.wpacu-wrap-choose-position{display:inline}.wpacu-wrap-choose-position>div{display:inline-block}.wpacu-wrap-choose-position select{width:auto;font-size:inherit;display:inline;margin-left:6px;margin-right:4px}.wpacu-wrap-choose-position>.select>.select{display:inline}.wpacu-wrap-choose-position>.select>.select select{padding-right:30px}.wpacu-wrap-choose-position>.select>.select:after{right:15px;top:-4px}.wpacu_table_wrap{margin:20px 0 0}.wpacu_table_wrap>table{border:1px solid #cdcdcd}.wpacu_table_wrap .table{width:100%;max-width:100%;margin-bottom:1rem;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu_table_wrap .table td,.wpacu_table_wrap .table th{padding:.75rem;vertical-align:top;border-top:1px solid #eceeef}.wpacu_table_wrap .table thead th{vertical-align:bottom;border-bottom:2px solid #eceeef}.wpacu_table_wrap .table tbody+tbody{border-top:2px solid #eceeef}.wpacu_table_wrap .table .table{background-color:#fff}.wpacu_table_wrap .table-sm td,.wpacu_table_wrap .table-sm th{padding:.3rem}.wpacu_table_wrap .table-bordered,.wpacu_table_wrap .table-bordered td,.wpacu_table_wrap .table-bordered th{border:1px solid #eceeef}.wpacu_table_wrap .table-bordered thead td,.wpacu_table_wrap .table-bordered thead th{border-bottom-width:2px}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(even){background-color:#f9f9f9}.wpacu_table_wrap .table-striped tbody tr:nth-of-type(odd){background-color:#fff}.wpacu_table_wrap .table-active,.wpacu_table_wrap .table-active>td,.wpacu_table_wrap .table-active>th,.wpacu_table_wrap .table-hover .table-active:hover,.wpacu_table_wrap .table-hover .table-active:hover>td,.wpacu_table_wrap .table-hover .table-active:hover>th,.wpacu_table_wrap .table-hover tbody tr:hover{background-color:rgba(0,0,0,.075)}.wpacu_table_wrap .table-success,.wpacu_table_wrap .table-success>td,.wpacu_table_wrap .table-success>th{background-color:#dff0d8}.wpacu_table_wrap .table-hover .table-success:hover,.wpacu_table_wrap .table-hover .table-success:hover>td,.wpacu_table_wrap .table-hover .table-success:hover>th{background-color:#d0e9c6}.wpacu_table_wrap .table-info,.wpacu_table_wrap .table-info>td,.wpacu_table_wrap .table-info>th{background-color:#d9edf7}.wpacu_table_wrap .table-hover .table-info:hover,.wpacu_table_wrap .table-hover .table-info:hover>td,.wpacu_table_wrap .table-hover .table-info:hover>th{background-color:#c4e3f3}.wpacu_table_wrap .table-warning,.wpacu_table_wrap .table-warning>td,.wpacu_table_wrap .table-warning>th{background-color:#fcf8e3}.wpacu_table_wrap .table-hover .table-warning:hover,.wpacu_table_wrap .table-hover .table-warning:hover>td,.wpacu_table_wrap .table-hover .table-warning:hover>th{background-color:#faf2cc}.wpacu_table_wrap .table-danger,.wpacu_table_wrap .table-danger>td,.wpacu_table_wrap .table-danger>th{background-color:#f2dede}.wpacu_table_wrap .table-hover .table-danger:hover,.wpacu_table_wrap .table-hover .table-danger:hover>td,.wpacu_table_wrap .table-hover .table-danger:hover>th{background-color:#ebcccc}.wpacu_table_wrap .thead-inverse th{color:#fff;background-color:#292b2c}.wpacu_table_wrap .thead-default th{color:#464a4c;background-color:#eceeef}.wpacu_table_wrap .table-inverse{color:#fff;background-color:#292b2c}.wpacu_table_wrap .table-inverse td,.wpacu_table_wrap .table-inverse th,.wpacu_table_wrap .table-inverse thead th{border-color:#fff}.wpacu_table_wrap .table-inverse.table-bordered,.wpacu_table_wrap .table-responsive.table-bordered{border:0}.wpacu_table_wrap .table-responsive{display:block;width:100%;overflow-x:auto;-ms-overflow-style:-ms-autohiding-scrollbar}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr:not(.wpacu-top):hover td{border-top:1px solid #ccd0d4;border-bottom:1px solid #ccd0d4}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr:not(.wpacu-top):hover td:first-of-type{border-left:1px solid #ccd0d4}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr:not(.wpacu-top):hover td:last-of-type{border-right:1px solid #ccd0d4}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr td{font-size:14px;border-top:1px solid transparent;border-bottom:1px solid transparent}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr td:first-of-type{border-left:1px solid transparent}body.wp-admin[class*=asset-cleanup] .wpacu-overview-wrap .wpacu-overview-list-table tr td:last-of-type{border-right:1px solid transparent}body.wp-admin[class*=asset-cleanup] table.wp-list-table:not(.wpacu-overview-list-table) tr:not(:first-of-type):not(.wpacu_selected):hover,body.wp-admin[class*=asset-cleanup] table.wp-list-table:not(.wpacu-overview-list-table).wpacu-list-table tr:not(.wpacu_selected):hover{-moz-box-shadow:inset 0 0 2px 1px #b3b3b3;-webkit-box-shadow:inset 0 0 2px 1px #B3B3B3;box-shadow:inset 0 0 2px 1px #B3B3B3}.wp-list-table .wpacu_remove_global_attr_row.wpacu_selected,.wp-list-table .wpacu_restore_position_row.wpacu_selected{background:#e7e7e7!important}ul.hire-reasons{margin-bottom:20px}ul.hire-reasons li{font-size:14px;line-height:22px;margin-bottom:12px}ul.hire-reasons li .dashicons{font-size:23px;line-height:23px}ul.hire-reasons li .dashicons.dashicons-yes{color:green}#wpacu-plugins-load-manager-wrap .wrap_plugin_unload_rules_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules label.wpacu_plugin_unload_rule_input_checked,#wpacu-warning-read span.dashicons-warning,#wpacu-warning-read span.dashicons-wordpress-alt{color:#c00}ol.getting-started li{font-size:14px;line-height:22px;margin-bottom:8px}.wpacu-get-help-wrap p{font-size:14px}.wpacu-get-help-wrap .help-content-wrap{margin:20px 0 25px;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;width:100%}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.wpacu-get-help-wrap .help-content-wrap .help-content{padding:15px;background:#fff;border:1px solid #E0E0E0;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;box-shadow:2px 3px 8px 0 #231f2038;flex:1 1 50%;margin-bottom:10px}.wpacu-get-help-wrap .help-content-wrap .help-content .content-title{margin:5px 0 15px}.wpacu-get-help-wrap .help-content-wrap .help-content .cols-wrap{width:100%;margin:0 auto;display:table}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area{margin:5px 0 0;position:relative}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-left{float:left;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.col-right{float:right;width:48%}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area.activate-plugin img{max-width:280px}.wpacu-get-help-wrap .help-content-wrap .help-content .wpacu-image-area img{width:99%;margin:8px 0;border:1px solid #cdcdcd;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{order:2}@media only screen and (min-width:768px){.wpacu-get-help-wrap .help-content-wrap .help-content{margin-right:24px}.wpacu-get-help-wrap .help-content-wrap .help-content.upgrade-help{margin-right:0}}.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{order:1}@media only screen and (max-width:767px){.wpacu-get-help-wrap .help-content-wrap .help-content.tech-help{margin-bottom:30px}}.wpacu-get-help-wrap .help-content-wrap .help-content ul{list-style:none;padding-left:0}.wpacu-get-help-wrap .help-content-wrap .help-content ul li{font-size:14px;line-height:22px;margin-bottom:15px}.wpacu-get-help-wrap .help-content-wrap .help-content p:last-child,.wpacu-get-help-wrap .help-content-wrap .help-content ul li:last-child{margin-bottom:0}#wpacu-license-data-remove-area{display:none;margin:10px 0 25px}#wpacu-license-data-remove-area.wpacu-visible{display:block}span#wpacu-license-data-removed-msg{display:block;padding-left:26px}#wpacu-warning-read{display:none;margin:10px 0}#wpacu-warning-read.wpacu-visible{display:block}#wpacu-reset-submit-area{margin:10px 0;clear:both}#wpacu-reset-submit-btn{margin:10px 0 0}.wpacu-tools-area{margin:10px 20px 0 2px}.wpacu-tools-area .wpacu-tools-container{background:#fff;padding:15px;border:1px solid #cdcdcd;width:96%}.wpacu-tools-area .wpacu-tools-container form>div:first-child{margin:0 0 10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning{display:none;box-sizing:border-box;margin-top:10px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p{margin:0 0 10px;line-height:22px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning p:only-child{margin:0}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning ul{font-size:13px;list-style-type:disc;padding-left:30px}.wpacu-tools-area .wpacu-tools-container form .wpacu-warning.wpacu-visible{display:block}.wpacu-tools-area .wpacu-export-import-area{padding:10px}.wpacu-tools-area .wpacu-export-import-area form>p:first-of-type{margin-top:0}.wpacu-tools-area .wpacu-export-import-area form>p:last-of-type{margin-bottom:0}.wpacu-tools-area .wpacu-export-import-area:hover{background:rgba(40,44,42,.05);box-shadow:inset 0 0 10px rgba(160,165,170,.15)}.wpacu-tools-area .wpacu-export-import-area+hr{display:block;height:1px;border:0;border-top:1px solid #cdcdcd;margin:10px 0;padding:0}#wpacu-import-form button.wpacu-importing img.wpacu-spinner{display:inline-block}#wpacu-import-form button img.wpacu-spinner{display:none;margin:0 0 0 5px;height:16px;width:16px;vertical-align:middle}.wpacu-about-wrap .wpacu-about-text img{width:auto;height:150px;position:absolute;top:20px;right:-20px}@media only screen and (max-width:767px){.wpacu-about-wrap h1{margin:20px}.wpacu-about-wrap .wpacu-about-text img{display:none}.wpacu-about-wrap .wpacu-about-text{margin:20px}}.wpacu-about-wrap .about-wrap-content .area-title{font-size:19px;line-height:19px;margin-bottom:0}.wpacu-about-wrap hr{margin:10px 0}.wpacu-lite-vs-pro-wrap ul{display:flex;top:0;z-index:10;padding-bottom:14px}.wpacu-lite-vs-pro-wrap li{list-style:none;flex:1}.wpacu-lite-vs-pro-wrap li:last-child{border-right:1px solid #DDD}.wpacu-lite-vs-pro-wrap button{width:100%;border:1px solid #DDD;border-right:0;border-top:0;padding:10px;background:#FFF;font-size:14px;font-weight:700;height:60px;color:#999}.wpacu-lite-vs-pro-wrap li.active button{background:#F5F5F5;color:#000}.wpacu-lite-vs-pro-wrap table{border-collapse:collapse;table-layout:fixed;width:100%}.wpacu-lite-vs-pro-wrap th{background:inherit}.wpacu-lite-vs-pro-wrap tr.first{background:inherit;font-size:18px}.wpacu-lite-vs-pro-wrap tr.first .bg-lite{border-top:4px solid #6d6e70;background:#fff;color:#6d6e70}.wpacu-lite-vs-pro-wrap tr.first .bg-pro{border-top:4px solid green;background:#fff;color:green}.wpacu-lite-vs-pro-wrap tr:not(.first){background:#fff}.wpacu-lite-vs-pro-wrap tr:not(:last-child):hover{background:#f8f8f8}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{height:53px;border:1px solid #DDD;padding:10px 16px;empty-cells:show;text-align:left}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{font-size:14px}}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{text-align:center;display:none}.wpacu-lite-vs-pro-wrap td.default{display:table-cell}.wpacu-lite-vs-pro-wrap .txt-l{font-size:28px;font-weight:700}.wpacu-lite-vs-pro-wrap .txt-top{position:relative;top:-9px;left:-2px}.wpacu-lite-vs-pro-wrap svg{width:18px;height:18px}.wpacu-lite-vs-pro-wrap svg path{fill:green}.wpacu-lite-vs-pro-wrap .tick{color:#2CA01C}.wpacu-lite-vs-pro-wrap .tick img{fill:#2CA01C}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .txt-l{font-size:20px}.wpacu-lite-vs-pro-wrap .tick{font-size:15px}}.wpacu-lite-vs-pro-wrap .na{font-size:18px;opacity:.3;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"}.wpacu-lite-vs-pro-wrap .hide{border:0;background:0 0}.wpacu-lite-vs-pro-wrap td,.wpacu-lite-vs-pro-wrap th{display:table-cell!important;width:auto}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:130px}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap .na{font-size:15px}.wpacu-lite-vs-pro-wrap td+td,.wpacu-lite-vs-pro-wrap th+th{width:42px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap td .button{font-size:16px!important}}@media only screen and (max-width:767px){.wpacu-lite-vs-pro-wrap td .button{font-size:14px!important;padding:0 20px!important}.wpacu-lite-vs-pro-wrap td .button.button-primary{margin-top:6px;margin-bottom:14px}}@media only screen and (min-width:768px){.wpacu-lite-vs-pro-wrap{margin-bottom:40px;clear:both}}.wpacu-video-areas>div{padding:20px;-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}.wpacu-video-areas>div:nth-child(odd){background:#fff}.wpacu-video-areas>div:nth-child(even){background:inherit}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 15px;display:flex}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right{padding:0 20px 0 25px}}@media only screen and (min-width:992px) and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper{margin:0 0 40px}}.wpacu-video-areas .wpacu-video-area-wrapper ol{font-size:14px}.wpacu-video-areas .wpacu-video-area-wrapper ul{font-size:14px;list-style:disc;margin-left:22px}@media only screen and (min-width:1200px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:first-child{margin-top:0}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-col-right p:last-child{margin-bottom:0}}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}}.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{width:560px;height:315px}@media only screen and (max-width:1199px){.wpacu-video-areas .wpacu-video-area-wrapper .wpacu-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}}#wpassetcleanup_asset_list.postbox h2{padding-left:52px!important;position:relative}#wpassetcleanup_asset_list.postbox h2:before{content:"";position:absolute;background-image:url(images/wpacu-logo-transparent-bg-v1.png);background-size:cover;top:6px;left:13px;width:33px;height:26px;opacity:.8;-webkit-filter:grayscale(100%);filter:grayscale(100%)}body.wp-admin .wpacu-modal{display:none;position:fixed;z-index:1000000;padding-top:15%;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}body.wp-admin .wpacu-modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:80%;max-width:600px;border-radius:10px}body.wp-admin .wpacu-close{color:#aaa;float:right;font-size:28px;font-weight:700}body.wp-admin .wpacu-close:focus,body.wp-admin .wpacu-close:hover{color:#000;text-decoration:none;cursor:pointer}.wpacu-bulk-changes-tabs{display:table;position:relative;overflow:hidden;margin:0;width:100%}.wpacu-bulk-changes-tabs li{border-top:1px solid rgba(40,44,42,.1);border-left:1px solid rgba(40,44,42,.1);border-bottom:1px solid rgba(40,44,42,.1);float:left;line-height:38px;padding:0;position:relative;margin-bottom:12px}.wpacu-bulk-changes-tabs li:last-child{border-right:1px solid rgba(40,44,42,.1)}.wpacu-bulk-changes-tabs a{position:relative;background:rgba(40,44,42,.05);color:#004567;font-size:14px;font-weight:500;display:block;letter-spacing:0;outline:0;padding:6px 20px;text-decoration:none;border-top:3px solid transparent}.wpacu-bulk-changes-tabs a:hover{background:#f1f1f1;border-top:3px solid transparent}.wpacu-bulk-changes-tabs .current a{background:#fff;border-top:3px solid #004567}.wpacu-bulk-changes-tabs .current a:hover{background:#fff}.wpacu-bulk-changes-tabs .current a:after,.wpacu-bulk-changes-tabs .current a:before{top:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none}.wpacu-bulk-changes-tabs .current a:after{border-color:rgba(136,183,213,0);border-top-color:#fff;border-width:12px;margin-left:-12px}.wpacu-bulk-changes-tabs .current a:before{border-color:rgba(194,225,245,0);border-top-color:rgba(40,44,42,.1);border-width:13px;margin-left:-13px}img.wpacu-emoji{display:inline!important;border:none!important;height:1em!important;width:1em!important;margin:0 .07em!important;vertical-align:-.1em!important;background:0 0!important;padding:0!important;box-shadow:none!important}#wpacu-plugins-load-manager-wrap table td{border-bottom:1px solid #e7e7e7}#wpacu-plugins-load-manager-wrap table td.wpacu_plugin_icon{padding:14px 10px}#wpacu-plugins-load-manager-wrap table td.wpacu_plugin_details{vertical-align:middle;padding:10px 0 10px 8px}#wpacu-plugins-load-manager-wrap table td.wpacu_plugin_details .wpacu_plugin_title{font-weight:600}#wpacu-plugins-load-manager-wrap .wrap_plugin_unload_rules_options{width:auto;display:inline-flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}#wpacu-plugins-load-manager-wrap .wrap_plugin_unload_rules_options .wpacu_plugin_rules_wrap{flex-grow:1;margin:0 16px 0 0!important;padding:12px 10px 6px 0!important}#wpacu-plugins-load-manager-wrap .wrap_plugin_unload_rules_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules{margin:0;vertical-align:middle}#wpacu-plugins-load-manager-wrap .wrap_plugin_unload_rules_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules label{vertical-align:top}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options{padding-top:5px;border-top:1px solid #e7e7e7;width:auto;display:inline-flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options .wpacu_plugin_rules_wrap{flex-grow:1;margin:0 16px 0 0!important;padding:12px 10px 6px 0!important}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules{margin:0;vertical-align:middle}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules label{vertical-align:top}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules.wpacu_exception_options_area li{display:inline-block;float:left;margin:1px 25px 1px 0;line-height:20px}#wpacu-plugins-load-manager-wrap .wrap_plugin_load_exception_options .wpacu_plugin_rules_wrap ul.wpacu_plugin_rules.wpacu_exception_options_area li:last-of-type{margin:1px 0}
|
assets/tooltipster/tooltipster.bundle.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.tooltipster-fall,.tooltipster-grow.tooltipster-show{-webkit-transition-timing-function:cubic-bezier(.175,.885,.32,1);-moz-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);-ms-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);-o-transition-timing-function:cubic-bezier(.175,.885,.32,1.15)}.tooltipster-base{display:flex;pointer-events:none;position:absolute}.tooltipster-box{flex:1 1 auto}.tooltipster-content{box-sizing:border-box;max-height:100%;max-width:100%;overflow:auto}.tooltipster-ruler{bottom:0;left:0;overflow:hidden;position:fixed;right:0;top:0;visibility:hidden}.tooltipster-fade{opacity:0;-webkit-transition-property:opacity;-moz-transition-property:opacity;-o-transition-property:opacity;-ms-transition-property:opacity;transition-property:opacity}.tooltipster-fade.tooltipster-show{opacity:1}.tooltipster-grow{-webkit-transform:scale(0,0);-moz-transform:scale(0,0);-o-transform:scale(0,0);-ms-transform:scale(0,0);transform:scale(0,0);-webkit-transition-property:-webkit-transform;-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-ms-transition-property:-ms-transform;transition-property:transform;-webkit-backface-visibility:hidden}.tooltipster-grow.tooltipster-show{-webkit-transform:scale(1,1);-moz-transform:scale(1,1);-o-transform:scale(1,1);-ms-transform:scale(1,1);transform:scale(1,1);-webkit-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);transition-timing-function:cubic-bezier(.175,.885,.32,1.15)}.tooltipster-swing{opacity:0;-webkit-transform:rotateZ(4deg);-moz-transform:rotateZ(4deg);-o-transform:rotateZ(4deg);-ms-transform:rotateZ(4deg);transform:rotateZ(4deg);-webkit-transition-property:-webkit-transform,opacity;-moz-transition-property:-moz-transform;-o-transition-property:-o-transform;-ms-transition-property:-ms-transform;transition-property:transform}.tooltipster-swing.tooltipster-show{opacity:1;-webkit-transform:rotateZ(0);-moz-transform:rotateZ(0);-o-transform:rotateZ(0);-ms-transform:rotateZ(0);transform:rotateZ(0);-webkit-transition-timing-function:cubic-bezier(.23,.635,.495,1);-webkit-transition-timing-function:cubic-bezier(.23,.635,.495,2.4);-moz-transition-timing-function:cubic-bezier(.23,.635,.495,2.4);-ms-transition-timing-function:cubic-bezier(.23,.635,.495,2.4);-o-transition-timing-function:cubic-bezier(.23,.635,.495,2.4);transition-timing-function:cubic-bezier(.23,.635,.495,2.4)}.tooltipster-fall{-webkit-transition-property:top;-moz-transition-property:top;-o-transition-property:top;-ms-transition-property:top;transition-property:top;-webkit-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);transition-timing-function:cubic-bezier(.175,.885,.32,1.15)}.tooltipster-fall.tooltipster-initial{top:0!important}.tooltipster-fall.tooltipster-dying{-webkit-transition-property:all;-moz-transition-property:all;-o-transition-property:all;-ms-transition-property:all;transition-property:all;top:0!important;opacity:0}.tooltipster-slide{-webkit-transition-property:left;-moz-transition-property:left;-o-transition-property:left;-ms-transition-property:left;transition-property:left;-webkit-transition-timing-function:cubic-bezier(.175,.885,.32,1);-webkit-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);-moz-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);-ms-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);-o-transition-timing-function:cubic-bezier(.175,.885,.32,1.15);transition-timing-function:cubic-bezier(.175,.885,.32,1.15)}.tooltipster-slide.tooltipster-initial{left:-40px!important}.tooltipster-slide.tooltipster-dying{-webkit-transition-property:all;-moz-transition-property:all;-o-transition-property:all;-ms-transition-property:all;transition-property:all;left:0!important;opacity:0}@keyframes tooltipster-fading{0%{opacity:0}100%{opacity:1}}.tooltipster-update-fade{animation:tooltipster-fading .4s}@keyframes tooltipster-rotating{25%{transform:rotate(-2deg)}75%{transform:rotate(2deg)}100%{transform:rotate(0)}}.tooltipster-update-rotate{animation:tooltipster-rotating .6s}@keyframes tooltipster-scaling{50%{transform:scale(1.1)}100%{transform:scale(1)}}.tooltipster-update-scale{animation:tooltipster-scaling .6s}.tooltipster-sidetip .tooltipster-box{background:#565656;border:2px solid #000;border-radius:4px}.tooltipster-sidetip.tooltipster-bottom .tooltipster-box{margin-top:8px}.tooltipster-sidetip.tooltipster-left .tooltipster-box{margin-right:8px}.tooltipster-sidetip.tooltipster-right .tooltipster-box{margin-left:8px}.tooltipster-sidetip.tooltipster-top .tooltipster-box{margin-bottom:8px}.tooltipster-sidetip .tooltipster-content{color:#fff;line-height:18px;padding:6px 14px}.tooltipster-sidetip .tooltipster-arrow{overflow:hidden;position:absolute}.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow{height:10px;margin-left:-10px;top:0;width:20px}.tooltipster-sidetip.tooltipster-left .tooltipster-arrow{height:20px;margin-top:-10px;right:0;top:0;width:10px}.tooltipster-sidetip.tooltipster-right .tooltipster-arrow{height:20px;margin-top:-10px;left:0;top:0;width:10px}.tooltipster-sidetip.tooltipster-top .tooltipster-arrow{bottom:0;height:10px;margin-left:-10px;width:20px}.tooltipster-sidetip .tooltipster-arrow-background,.tooltipster-sidetip .tooltipster-arrow-border{height:0;position:absolute;width:0}.tooltipster-sidetip .tooltipster-arrow-background{border:10px solid transparent}.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-background{border-bottom-color:#565656;left:0;top:3px}.tooltipster-sidetip.tooltipster-left .tooltipster-arrow-background{border-left-color:#565656;left:-3px;top:0}.tooltipster-sidetip.tooltipster-right .tooltipster-arrow-background{border-right-color:#565656;left:3px;top:0}.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-background{border-top-color:#565656;left:0;top:-3px}.tooltipster-sidetip .tooltipster-arrow-border{border:10px solid transparent;left:0;top:0}.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-border{border-bottom-color:#000}.tooltipster-sidetip.tooltipster-left .tooltipster-arrow-border{border-left-color:#000}.tooltipster-sidetip.tooltipster-right .tooltipster-arrow-border{border-right-color:#000}.tooltipster-sidetip.tooltipster-top .tooltipster-arrow-border{border-top-color:#000}.tooltipster-sidetip .tooltipster-arrow-uncropped{position:relative}.tooltipster-sidetip.tooltipster-bottom .tooltipster-arrow-uncropped{top:-10px}.tooltipster-sidetip.tooltipster-right .tooltipster-arrow-uncropped{left:-10px}
|
assets/tooltipster/tooltipster.bundle.min.js
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
/*! tooltipster v4.2.6 */!function(a,b){void 0===a&&void 0!==window&&(a=window),"function"==typeof define&&define.amd?define(["jquery"],function(a){return b(a)}):"object"==typeof module&&module.exports?module.exports=b(require("jquery")):b(a.jQuery)}(this,function(a){function b(a){this.$container,this.constraints=null,this.__$tooltip,this.__init(a)}function c(b,c){var d=!0;return a.each(b,function(a,e){if(void 0===c[a]||b[a]!==c[a])return d=!1,!1}),d}function d(b){var c=b.attr("id"),d=c?h.window.document.getElementById(c):null;return d?d===b[0]:a.contains(h.window.document.body,b[0])}function e(){if(!g)return!1;var a=g.document.body||g.document.documentElement,b=a.style,c="transition",d=["Moz","Webkit","Khtml","O","ms"];if("string"==typeof b[c])return!0;c=c.charAt(0).toUpperCase()+c.substr(1);for(var e=0;e<d.length;e++)if("string"==typeof b[d[e]+c])return!0;return!1}var f={animation:"fade",animationDuration:350,content:null,contentAsHTML:!1,contentCloning:!1,debug:!0,delay:300,delayTouch:[300,500],functionInit:null,functionBefore:null,functionReady:null,functionAfter:null,functionFormat:null,IEmin:6,interactive:!1,multiple:!1,parent:null,plugins:["sideTip"],repositionOnScroll:!1,restoration:"none",selfDestruction:!0,theme:[],timer:0,trackerInterval:500,trackOrigin:!1,trackTooltip:!1,trigger:"hover",triggerClose:{click:!1,mouseleave:!1,originClick:!1,scroll:!1,tap:!1,touchleave:!1},triggerOpen:{click:!1,mouseenter:!1,tap:!1,touchstart:!1},updateAnimation:"rotate",zIndex:9999999},g="undefined"!=typeof window?window:null,h={hasTouchCapability:!(!g||!("ontouchstart"in g||g.DocumentTouch&&g.document instanceof g.DocumentTouch||g.navigator.maxTouchPoints)),hasTransitions:e(),IE:!1,semVer:"4.2.6",window:g},i=function(){this.__$emitterPrivate=a({}),this.__$emitterPublic=a({}),this.__instancesLatestArr=[],this.__plugins={},this._env=h};i.prototype={__bridge:function(b,c,d){if(!c[d]){var e=function(){};e.prototype=b;var g=new e;g.__init&&g.__init(c),a.each(b,function(a,b){0!=a.indexOf("__")&&(c[a]?f.debug&&console.log("The "+a+" method of the "+d+" plugin conflicts with another plugin or native methods"):(c[a]=function(){return g[a].apply(g,Array.prototype.slice.apply(arguments))},c[a].bridged=g))}),c[d]=g}return this},__setWindow:function(a){return h.window=a,this},_getRuler:function(a){return new b(a)},_off:function(){return this.__$emitterPrivate.off.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_on:function(){return this.__$emitterPrivate.on.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_one:function(){return this.__$emitterPrivate.one.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_plugin:function(b){var c=this;if("string"==typeof b){var d=b,e=null;return d.indexOf(".")>0?e=c.__plugins[d]:a.each(c.__plugins,function(a,b){if(b.name.substring(b.name.length-d.length-1)=="."+d)return e=b,!1}),e}if(b.name.indexOf(".")<0)throw new Error("Plugins must be namespaced");return c.__plugins[b.name]=b,b.core&&c.__bridge(b.core,c,b.name),this},_trigger:function(){var a=Array.prototype.slice.apply(arguments);return"string"==typeof a[0]&&(a[0]={type:a[0]}),this.__$emitterPrivate.trigger.apply(this.__$emitterPrivate,a),this.__$emitterPublic.trigger.apply(this.__$emitterPublic,a),this},instances:function(b){var c=[],d=b||".tooltipstered";return a(d).each(function(){var b=a(this),d=b.data("tooltipster-ns");d&&a.each(d,function(a,d){c.push(b.data(d))})}),c},instancesLatest:function(){return this.__instancesLatestArr},off:function(){return this.__$emitterPublic.off.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},on:function(){return this.__$emitterPublic.on.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},one:function(){return this.__$emitterPublic.one.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},origins:function(b){var c=b?b+" ":"";return a(c+".tooltipstered").toArray()},setDefaults:function(b){return a.extend(f,b),this},triggerHandler:function(){return this.__$emitterPublic.triggerHandler.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this}},a.tooltipster=new i,a.Tooltipster=function(b,c){this.__callbacks={close:[],open:[]},this.__closingTime,this.__Content,this.__contentBcr,this.__destroyed=!1,this.__$emitterPrivate=a({}),this.__$emitterPublic=a({}),this.__enabled=!0,this.__garbageCollector,this.__Geometry,this.__lastPosition,this.__namespace="tooltipster-"+Math.round(1e6*Math.random()),this.__options,this.__$originParents,this.__pointerIsOverOrigin=!1,this.__previousThemes=[],this.__state="closed",this.__timeouts={close:[],open:null},this.__touchEvents=[],this.__tracker=null,this._$origin,this._$tooltip,this.__init(b,c)},a.Tooltipster.prototype={__init:function(b,c){var d=this;if(d._$origin=a(b),d.__options=a.extend(!0,{},f,c),d.__optionsFormat(),!h.IE||h.IE>=d.__options.IEmin){var e=null;if(void 0===d._$origin.data("tooltipster-initialTitle")&&(e=d._$origin.attr("title"),void 0===e&&(e=null),d._$origin.data("tooltipster-initialTitle",e)),null!==d.__options.content)d.__contentSet(d.__options.content);else{var g,i=d._$origin.attr("data-tooltip-content");i&&(g=a(i)),g&&g[0]?d.__contentSet(g.first()):d.__contentSet(e)}d._$origin.removeAttr("title").addClass("tooltipstered"),d.__prepareOrigin(),d.__prepareGC(),a.each(d.__options.plugins,function(a,b){d._plug(b)}),h.hasTouchCapability&&a(h.window.document.body).on("touchmove."+d.__namespace+"-triggerOpen",function(a){d._touchRecordEvent(a)}),d._on("created",function(){d.__prepareTooltip()})._on("repositioned",function(a){d.__lastPosition=a.position})}else d.__options.disabled=!0},__contentInsert:function(){var a=this,b=a._$tooltip.find(".tooltipster-content"),c=a.__Content,d=function(a){c=a};return a._trigger({type:"format",content:a.__Content,format:d}),a.__options.functionFormat&&(c=a.__options.functionFormat.call(a,a,{origin:a._$origin[0]},a.__Content)),"string"!=typeof c||a.__options.contentAsHTML?b.empty().append(c):b.text(c),a},__contentSet:function(b){return b instanceof a&&this.__options.contentCloning&&(b=b.clone(!0)),this.__Content=b,this._trigger({type:"updated",content:b}),this},__destroyError:function(){throw new Error("This tooltip has been destroyed and cannot execute your method call.")},__geometry:function(){var b=this,c=b._$origin,d=b._$origin.is("area");if(d){var e=b._$origin.parent().attr("name");c=a('img[usemap="#'+e+'"]')}var f=c[0].getBoundingClientRect(),g=a(h.window.document),i=a(h.window),j=c,k={available:{document:null,window:null},document:{size:{height:g.height(),width:g.width()}},window:{scroll:{left:h.window.scrollX||h.window.document.documentElement.scrollLeft,top:h.window.scrollY||h.window.document.documentElement.scrollTop},size:{height:i.height(),width:i.width()}},origin:{fixedLineage:!1,offset:{},size:{height:f.bottom-f.top,width:f.right-f.left},usemapImage:d?c[0]:null,windowOffset:{bottom:f.bottom,left:f.left,right:f.right,top:f.top}}};if(d){var l=b._$origin.attr("shape"),m=b._$origin.attr("coords");if(m&&(m=m.split(","),a.map(m,function(a,b){m[b]=parseInt(a)})),"default"!=l)switch(l){case"circle":var n=m[0],o=m[1],p=m[2],q=o-p,r=n-p;k.origin.size.height=2*p,k.origin.size.width=k.origin.size.height,k.origin.windowOffset.left+=r,k.origin.windowOffset.top+=q;break;case"rect":var s=m[0],t=m[1],u=m[2],v=m[3];k.origin.size.height=v-t,k.origin.size.width=u-s,k.origin.windowOffset.left+=s,k.origin.windowOffset.top+=t;break;case"poly":for(var w=0,x=0,y=0,z=0,A="even",B=0;B<m.length;B++){var C=m[B];"even"==A?(C>y&&(y=C,0===B&&(w=y)),C<w&&(w=C),A="odd"):(C>z&&(z=C,1==B&&(x=z)),C<x&&(x=C),A="even")}k.origin.size.height=z-x,k.origin.size.width=y-w,k.origin.windowOffset.left+=w,k.origin.windowOffset.top+=x}}var D=function(a){k.origin.size.height=a.height,k.origin.windowOffset.left=a.left,k.origin.windowOffset.top=a.top,k.origin.size.width=a.width};for(b._trigger({type:"geometry",edit:D,geometry:{height:k.origin.size.height,left:k.origin.windowOffset.left,top:k.origin.windowOffset.top,width:k.origin.size.width}}),k.origin.windowOffset.right=k.origin.windowOffset.left+k.origin.size.width,k.origin.windowOffset.bottom=k.origin.windowOffset.top+k.origin.size.height,k.origin.offset.left=k.origin.windowOffset.left+k.window.scroll.left,k.origin.offset.top=k.origin.windowOffset.top+k.window.scroll.top,k.origin.offset.bottom=k.origin.offset.top+k.origin.size.height,k.origin.offset.right=k.origin.offset.left+k.origin.size.width,k.available.document={bottom:{height:k.document.size.height-k.origin.offset.bottom,width:k.document.size.width},left:{height:k.document.size.height,width:k.origin.offset.left},right:{height:k.document.size.height,width:k.document.size.width-k.origin.offset.right},top:{height:k.origin.offset.top,width:k.document.size.width}},k.available.window={bottom:{height:Math.max(k.window.size.height-Math.max(k.origin.windowOffset.bottom,0),0),width:k.window.size.width},left:{height:k.window.size.height,width:Math.max(k.origin.windowOffset.left,0)},right:{height:k.window.size.height,width:Math.max(k.window.size.width-Math.max(k.origin.windowOffset.right,0),0)},top:{height:Math.max(k.origin.windowOffset.top,0),width:k.window.size.width}};"html"!=j[0].tagName.toLowerCase();){if("fixed"==j.css("position")){k.origin.fixedLineage=!0;break}j=j.parent()}return k},__optionsFormat:function(){return"number"==typeof this.__options.animationDuration&&(this.__options.animationDuration=[this.__options.animationDuration,this.__options.animationDuration]),"number"==typeof this.__options.delay&&(this.__options.delay=[this.__options.delay,this.__options.delay]),"number"==typeof this.__options.delayTouch&&(this.__options.delayTouch=[this.__options.delayTouch,this.__options.delayTouch]),"string"==typeof this.__options.theme&&(this.__options.theme=[this.__options.theme]),null===this.__options.parent?this.__options.parent=a(h.window.document.body):"string"==typeof this.__options.parent&&(this.__options.parent=a(this.__options.parent)),"hover"==this.__options.trigger?(this.__options.triggerOpen={mouseenter:!0,touchstart:!0},this.__options.triggerClose={mouseleave:!0,originClick:!0,touchleave:!0}):"click"==this.__options.trigger&&(this.__options.triggerOpen={click:!0,tap:!0},this.__options.triggerClose={click:!0,tap:!0}),this._trigger("options"),this},__prepareGC:function(){var b=this;return b.__options.selfDestruction?b.__garbageCollector=setInterval(function(){var c=(new Date).getTime();b.__touchEvents=a.grep(b.__touchEvents,function(a,b){return c-a.time>6e4}),d(b._$origin)||b.close(function(){b.destroy()})},2e4):clearInterval(b.__garbageCollector),b},__prepareOrigin:function(){var a=this;if(a._$origin.off("."+a.__namespace+"-triggerOpen"),h.hasTouchCapability&&a._$origin.on("touchstart."+a.__namespace+"-triggerOpen touchend."+a.__namespace+"-triggerOpen touchcancel."+a.__namespace+"-triggerOpen",function(b){a._touchRecordEvent(b)}),a.__options.triggerOpen.click||a.__options.triggerOpen.tap&&h.hasTouchCapability){var b="";a.__options.triggerOpen.click&&(b+="click."+a.__namespace+"-triggerOpen "),a.__options.triggerOpen.tap&&h.hasTouchCapability&&(b+="touchend."+a.__namespace+"-triggerOpen"),a._$origin.on(b,function(b){a._touchIsMeaningfulEvent(b)&&a._open(b)})}if(a.__options.triggerOpen.mouseenter||a.__options.triggerOpen.touchstart&&h.hasTouchCapability){var b="";a.__options.triggerOpen.mouseenter&&(b+="mouseenter."+a.__namespace+"-triggerOpen "),a.__options.triggerOpen.touchstart&&h.hasTouchCapability&&(b+="touchstart."+a.__namespace+"-triggerOpen"),a._$origin.on(b,function(b){!a._touchIsTouchEvent(b)&&a._touchIsEmulatedEvent(b)||(a.__pointerIsOverOrigin=!0,a._openShortly(b))})}if(a.__options.triggerClose.mouseleave||a.__options.triggerClose.touchleave&&h.hasTouchCapability){var b="";a.__options.triggerClose.mouseleave&&(b+="mouseleave."+a.__namespace+"-triggerOpen "),a.__options.triggerClose.touchleave&&h.hasTouchCapability&&(b+="touchend."+a.__namespace+"-triggerOpen touchcancel."+a.__namespace+"-triggerOpen"),a._$origin.on(b,function(b){a._touchIsMeaningfulEvent(b)&&(a.__pointerIsOverOrigin=!1)})}return a},__prepareTooltip:function(){var b=this,c=b.__options.interactive?"auto":"";return b._$tooltip.attr("id",b.__namespace).css({"pointer-events":c,zIndex:b.__options.zIndex}),a.each(b.__previousThemes,function(a,c){b._$tooltip.removeClass(c)}),a.each(b.__options.theme,function(a,c){b._$tooltip.addClass(c)}),b.__previousThemes=a.merge([],b.__options.theme),b},__scrollHandler:function(b){var c=this;if(c.__options.triggerClose.scroll)c._close(b);else if(d(c._$origin)&&d(c._$tooltip)){var e=null;if(b.target===h.window.document)c.__Geometry.origin.fixedLineage||c.__options.repositionOnScroll&&c.reposition(b);else{e=c.__geometry();var f=!1;if("fixed"!=c._$origin.css("position")&&c.__$originParents.each(function(b,c){var d=a(c),g=d.css("overflow-x"),h=d.css("overflow-y");if("visible"!=g||"visible"!=h){var i=c.getBoundingClientRect();if("visible"!=g&&(e.origin.windowOffset.left<i.left||e.origin.windowOffset.right>i.right))return f=!0,!1;if("visible"!=h&&(e.origin.windowOffset.top<i.top||e.origin.windowOffset.bottom>i.bottom))return f=!0,!1}if("fixed"==d.css("position"))return!1}),f)c._$tooltip.css("visibility","hidden");else if(c._$tooltip.css("visibility","visible"),c.__options.repositionOnScroll)c.reposition(b);else{var g=e.origin.offset.left-c.__Geometry.origin.offset.left,i=e.origin.offset.top-c.__Geometry.origin.offset.top;c._$tooltip.css({left:c.__lastPosition.coord.left+g,top:c.__lastPosition.coord.top+i})}}c._trigger({type:"scroll",event:b,geo:e})}return c},__stateSet:function(a){return this.__state=a,this._trigger({type:"state",state:a}),this},__timeoutsClear:function(){return clearTimeout(this.__timeouts.open),this.__timeouts.open=null,a.each(this.__timeouts.close,function(a,b){clearTimeout(b)}),this.__timeouts.close=[],this},__trackerStart:function(){var a=this,b=a._$tooltip.find(".tooltipster-content");return a.__options.trackTooltip&&(a.__contentBcr=b[0].getBoundingClientRect()),a.__tracker=setInterval(function(){if(d(a._$origin)&&d(a._$tooltip)){if(a.__options.trackOrigin){var e=a.__geometry(),f=!1;c(e.origin.size,a.__Geometry.origin.size)&&(a.__Geometry.origin.fixedLineage?c(e.origin.windowOffset,a.__Geometry.origin.windowOffset)&&(f=!0):c(e.origin.offset,a.__Geometry.origin.offset)&&(f=!0)),f||(a.__options.triggerClose.mouseleave?a._close():a.reposition())}if(a.__options.trackTooltip){var g=b[0].getBoundingClientRect();g.height===a.__contentBcr.height&&g.width===a.__contentBcr.width||(a.reposition(),a.__contentBcr=g)}}else a._close()},a.__options.trackerInterval),a},_close:function(b,c,d){var e=this,f=!0;if(e._trigger({type:"close",event:b,stop:function(){f=!1}}),f||d){c&&e.__callbacks.close.push(c),e.__callbacks.open=[],e.__timeoutsClear();var g=function(){a.each(e.__callbacks.close,function(a,c){c.call(e,e,{event:b,origin:e._$origin[0]})}),e.__callbacks.close=[]};if("closed"!=e.__state){var i=!0,j=new Date,k=j.getTime(),l=k+e.__options.animationDuration[1];if("disappearing"==e.__state&&l>e.__closingTime&&e.__options.animationDuration[1]>0&&(i=!1),i){e.__closingTime=l,"disappearing"!=e.__state&&e.__stateSet("disappearing");var m=function(){clearInterval(e.__tracker),e._trigger({type:"closing",event:b}),e._$tooltip.off("."+e.__namespace+"-triggerClose").removeClass("tooltipster-dying"),a(h.window).off("."+e.__namespace+"-triggerClose"),e.__$originParents.each(function(b,c){a(c).off("scroll."+e.__namespace+"-triggerClose")}),e.__$originParents=null,a(h.window.document.body).off("."+e.__namespace+"-triggerClose"),e._$origin.off("."+e.__namespace+"-triggerClose"),e._off("dismissable"),e.__stateSet("closed"),e._trigger({type:"after",event:b}),e.__options.functionAfter&&e.__options.functionAfter.call(e,e,{event:b,origin:e._$origin[0]}),g()};h.hasTransitions?(e._$tooltip.css({"-moz-animation-duration":e.__options.animationDuration[1]+"ms","-ms-animation-duration":e.__options.animationDuration[1]+"ms","-o-animation-duration":e.__options.animationDuration[1]+"ms","-webkit-animation-duration":e.__options.animationDuration[1]+"ms","animation-duration":e.__options.animationDuration[1]+"ms","transition-duration":e.__options.animationDuration[1]+"ms"}),e._$tooltip.clearQueue().removeClass("tooltipster-show").addClass("tooltipster-dying"),e.__options.animationDuration[1]>0&&e._$tooltip.delay(e.__options.animationDuration[1]),e._$tooltip.queue(m)):e._$tooltip.stop().fadeOut(e.__options.animationDuration[1],m)}}else g()}return e},_off:function(){return this.__$emitterPrivate.off.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_on:function(){return this.__$emitterPrivate.on.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_one:function(){return this.__$emitterPrivate.one.apply(this.__$emitterPrivate,Array.prototype.slice.apply(arguments)),this},_open:function(b,c){var e=this;if(!e.__destroying&&d(e._$origin)&&e.__enabled){var f=!0;if("closed"==e.__state&&(e._trigger({type:"before",event:b,stop:function(){f=!1}}),f&&e.__options.functionBefore&&(f=e.__options.functionBefore.call(e,e,{event:b,origin:e._$origin[0]}))),f!==!1&&null!==e.__Content){c&&e.__callbacks.open.push(c),e.__callbacks.close=[],e.__timeoutsClear();var g,i=function(){"stable"!=e.__state&&e.__stateSet("stable"),a.each(e.__callbacks.open,function(a,b){b.call(e,e,{origin:e._$origin[0],tooltip:e._$tooltip[0]})}),e.__callbacks.open=[]};if("closed"!==e.__state)g=0,"disappearing"===e.__state?(e.__stateSet("appearing"),h.hasTransitions?(e._$tooltip.clearQueue().removeClass("tooltipster-dying").addClass("tooltipster-show"),e.__options.animationDuration[0]>0&&e._$tooltip.delay(e.__options.animationDuration[0]),e._$tooltip.queue(i)):e._$tooltip.stop().fadeIn(i)):"stable"==e.__state&&i();else{if(e.__stateSet("appearing"),g=e.__options.animationDuration[0],e.__contentInsert(),e.reposition(b,!0),h.hasTransitions?(e._$tooltip.addClass("tooltipster-"+e.__options.animation).addClass("tooltipster-initial").css({"-moz-animation-duration":e.__options.animationDuration[0]+"ms","-ms-animation-duration":e.__options.animationDuration[0]+"ms","-o-animation-duration":e.__options.animationDuration[0]+"ms","-webkit-animation-duration":e.__options.animationDuration[0]+"ms","animation-duration":e.__options.animationDuration[0]+"ms","transition-duration":e.__options.animationDuration[0]+"ms"}),setTimeout(function(){"closed"!=e.__state&&(e._$tooltip.addClass("tooltipster-show").removeClass("tooltipster-initial"),e.__options.animationDuration[0]>0&&e._$tooltip.delay(e.__options.animationDuration[0]),e._$tooltip.queue(i))},0)):e._$tooltip.css("display","none").fadeIn(e.__options.animationDuration[0],i),e.__trackerStart(),a(h.window).on("resize."+e.__namespace+"-triggerClose",function(b){var c=a(document.activeElement);(c.is("input")||c.is("textarea"))&&a.contains(e._$tooltip[0],c[0])||e.reposition(b)}).on("scroll."+e.__namespace+"-triggerClose",function(a){e.__scrollHandler(a)}),e.__$originParents=e._$origin.parents(),e.__$originParents.each(function(b,c){a(c).on("scroll."+e.__namespace+"-triggerClose",function(a){e.__scrollHandler(a)})}),e.__options.triggerClose.mouseleave||e.__options.triggerClose.touchleave&&h.hasTouchCapability){e._on("dismissable",function(a){a.dismissable?a.delay?(m=setTimeout(function(){e._close(a.event)},a.delay),e.__timeouts.close.push(m)):e._close(a):clearTimeout(m)});var j=e._$origin,k="",l="",m=null;e.__options.interactive&&(j=j.add(e._$tooltip)),e.__options.triggerClose.mouseleave&&(k+="mouseenter."+e.__namespace+"-triggerClose ",l+="mouseleave."+e.__namespace+"-triggerClose "),e.__options.triggerClose.touchleave&&h.hasTouchCapability&&(k+="touchstart."+e.__namespace+"-triggerClose",l+="touchend."+e.__namespace+"-triggerClose touchcancel."+e.__namespace+"-triggerClose"),j.on(l,function(a){if(e._touchIsTouchEvent(a)||!e._touchIsEmulatedEvent(a)){var b="mouseleave"==a.type?e.__options.delay:e.__options.delayTouch;e._trigger({delay:b[1],dismissable:!0,event:a,type:"dismissable"})}}).on(k,function(a){!e._touchIsTouchEvent(a)&&e._touchIsEmulatedEvent(a)||e._trigger({dismissable:!1,event:a,type:"dismissable"})})}e.__options.triggerClose.originClick&&e._$origin.on("click."+e.__namespace+"-triggerClose",function(a){e._touchIsTouchEvent(a)||e._touchIsEmulatedEvent(a)||e._close(a)}),(e.__options.triggerClose.click||e.__options.triggerClose.tap&&h.hasTouchCapability)&&setTimeout(function(){if("closed"!=e.__state){var b="",c=a(h.window.document.body);e.__options.triggerClose.click&&(b+="click."+e.__namespace+"-triggerClose "),e.__options.triggerClose.tap&&h.hasTouchCapability&&(b+="touchend."+e.__namespace+"-triggerClose"),c.on(b,function(b){e._touchIsMeaningfulEvent(b)&&(e._touchRecordEvent(b),e.__options.interactive&&a.contains(e._$tooltip[0],b.target)||e._close(b))}),e.__options.triggerClose.tap&&h.hasTouchCapability&&c.on("touchstart."+e.__namespace+"-triggerClose",function(a){e._touchRecordEvent(a)})}},0),e._trigger("ready"),e.__options.functionReady&&e.__options.functionReady.call(e,e,{origin:e._$origin[0],tooltip:e._$tooltip[0]})}if(e.__options.timer>0){var m=setTimeout(function(){e._close()},e.__options.timer+g);e.__timeouts.close.push(m)}}}return e},_openShortly:function(a){var b=this,c=!0;if("stable"!=b.__state&&"appearing"!=b.__state&&!b.__timeouts.open&&(b._trigger({type:"start",event:a,stop:function(){c=!1}}),c)){var d=0==a.type.indexOf("touch")?b.__options.delayTouch:b.__options.delay;d[0]?b.__timeouts.open=setTimeout(function(){b.__timeouts.open=null,b.__pointerIsOverOrigin&&b._touchIsMeaningfulEvent(a)?(b._trigger("startend"),b._open(a)):b._trigger("startcancel")},d[0]):(b._trigger("startend"),b._open(a))}return b},_optionsExtract:function(b,c){var d=this,e=a.extend(!0,{},c),f=d.__options[b];return f||(f={},a.each(c,function(a,b){var c=d.__options[a];void 0!==c&&(f[a]=c)})),a.each(e,function(b,c){void 0!==f[b]&&("object"!=typeof c||c instanceof Array||null==c||"object"!=typeof f[b]||f[b]instanceof Array||null==f[b]?e[b]=f[b]:a.extend(e[b],f[b]))}),e},_plug:function(b){var c=a.tooltipster._plugin(b);if(!c)throw new Error('The "'+b+'" plugin is not defined');return c.instance&&a.tooltipster.__bridge(c.instance,this,c.name),this},_touchIsEmulatedEvent:function(a){for(var b=!1,c=(new Date).getTime(),d=this.__touchEvents.length-1;d>=0;d--){var e=this.__touchEvents[d];if(!(c-e.time<500))break;e.target===a.target&&(b=!0)}return b},_touchIsMeaningfulEvent:function(a){return this._touchIsTouchEvent(a)&&!this._touchSwiped(a.target)||!this._touchIsTouchEvent(a)&&!this._touchIsEmulatedEvent(a)},_touchIsTouchEvent:function(a){return 0==a.type.indexOf("touch")},_touchRecordEvent:function(a){return this._touchIsTouchEvent(a)&&(a.time=(new Date).getTime(),this.__touchEvents.push(a)),this},_touchSwiped:function(a){for(var b=!1,c=this.__touchEvents.length-1;c>=0;c--){var d=this.__touchEvents[c];if("touchmove"==d.type){b=!0;break}if("touchstart"==d.type&&a===d.target)break}return b},_trigger:function(){var b=Array.prototype.slice.apply(arguments);return"string"==typeof b[0]&&(b[0]={type:b[0]}),b[0].instance=this,b[0].origin=this._$origin?this._$origin[0]:null,b[0].tooltip=this._$tooltip?this._$tooltip[0]:null,this.__$emitterPrivate.trigger.apply(this.__$emitterPrivate,b),a.tooltipster._trigger.apply(a.tooltipster,b),this.__$emitterPublic.trigger.apply(this.__$emitterPublic,b),this},_unplug:function(b){var c=this;if(c[b]){var d=a.tooltipster._plugin(b);d.instance&&a.each(d.instance,function(a,d){c[a]&&c[a].bridged===c[b]&&delete c[a]}),c[b].__destroy&&c[b].__destroy(),delete c[b]}return c},close:function(a){return this.__destroyed?this.__destroyError():this._close(null,a),this},content:function(a){var b=this;if(void 0===a)return b.__Content;if(b.__destroyed)b.__destroyError();else if(b.__contentSet(a),null!==b.__Content){if("closed"!==b.__state&&(b.__contentInsert(),b.reposition(),b.__options.updateAnimation))if(h.hasTransitions){var c=b.__options.updateAnimation;b._$tooltip.addClass("tooltipster-update-"+c),setTimeout(function(){"closed"!=b.__state&&b._$tooltip.removeClass("tooltipster-update-"+c)},1e3)}else b._$tooltip.fadeTo(200,.5,function(){"closed"!=b.__state&&b._$tooltip.fadeTo(200,1)})}else b._close();return b},destroy:function(){var b=this;if(b.__destroyed)b.__destroyError();else{"closed"!=b.__state?b.option("animationDuration",0)._close(null,null,!0):b.__timeoutsClear(),b._trigger("destroy"),b.__destroyed=!0,b._$origin.removeData(b.__namespace).off("."+b.__namespace+"-triggerOpen"),a(h.window.document.body).off("."+b.__namespace+"-triggerOpen");var c=b._$origin.data("tooltipster-ns");if(c)if(1===c.length){var d=null;"previous"==b.__options.restoration?d=b._$origin.data("tooltipster-initialTitle"):"current"==b.__options.restoration&&(d="string"==typeof b.__Content?b.__Content:a("<div></div>").append(b.__Content).html()),d&&b._$origin.attr("title",d),b._$origin.removeClass("tooltipstered"),b._$origin.removeData("tooltipster-ns").removeData("tooltipster-initialTitle")}else c=a.grep(c,function(a,c){return a!==b.__namespace}),b._$origin.data("tooltipster-ns",c);b._trigger("destroyed"),b._off(),b.off(),b.__Content=null,b.__$emitterPrivate=null,b.__$emitterPublic=null,b.__options.parent=null,b._$origin=null,b._$tooltip=null,a.tooltipster.__instancesLatestArr=a.grep(a.tooltipster.__instancesLatestArr,function(a,c){return b!==a}),clearInterval(b.__garbageCollector)}return b},disable:function(){return this.__destroyed?(this.__destroyError(),this):(this._close(),this.__enabled=!1,this)},elementOrigin:function(){return this.__destroyed?void this.__destroyError():this._$origin[0]},elementTooltip:function(){return this._$tooltip?this._$tooltip[0]:null},enable:function(){return this.__enabled=!0,this},hide:function(a){return this.close(a)},instance:function(){return this},off:function(){return this.__destroyed||this.__$emitterPublic.off.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},on:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.on.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},one:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.one.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this},open:function(a){return this.__destroyed?this.__destroyError():this._open(null,a),this},option:function(b,c){return void 0===c?this.__options[b]:(this.__destroyed?this.__destroyError():(this.__options[b]=c,this.__optionsFormat(),a.inArray(b,["trigger","triggerClose","triggerOpen"])>=0&&this.__prepareOrigin(),"selfDestruction"===b&&this.__prepareGC()),this)},reposition:function(a,b){var c=this;return c.__destroyed?c.__destroyError():"closed"!=c.__state&&d(c._$origin)&&(b||d(c._$tooltip))&&(b||c._$tooltip.detach(),c.__Geometry=c.__geometry(),c._trigger({type:"reposition",event:a,helper:{geo:c.__Geometry}})),c},show:function(a){return this.open(a)},status:function(){return{destroyed:this.__destroyed,enabled:this.__enabled,open:"closed"!==this.__state,state:this.__state}},triggerHandler:function(){return this.__destroyed?this.__destroyError():this.__$emitterPublic.triggerHandler.apply(this.__$emitterPublic,Array.prototype.slice.apply(arguments)),this}},a.fn.tooltipster=function(){var b=Array.prototype.slice.apply(arguments),c="You are using a single HTML element as content for several tooltips. You probably want to set the contentCloning option to TRUE.";if(0===this.length)return this;if("string"==typeof b[0]){var d="#*$~&";return this.each(function(){var e=a(this).data("tooltipster-ns"),f=e?a(this).data(e[0]):null;if(!f)throw new Error("You called Tooltipster's \""+b[0]+'" method on an uninitialized element');if("function"!=typeof f[b[0]])throw new Error('Unknown method "'+b[0]+'"');this.length>1&&"content"==b[0]&&(b[1]instanceof a||"object"==typeof b[1]&&null!=b[1]&&b[1].tagName)&&!f.__options.contentCloning&&f.__options.debug&&console.log(c);var g=f[b[0]](b[1],b[2]);if(g!==f||"instance"===b[0])return d=g,!1}),"#*$~&"!==d?d:this}a.tooltipster.__instancesLatestArr=[];var e=b[0]&&void 0!==b[0].multiple,g=e&&b[0].multiple||!e&&f.multiple,h=b[0]&&void 0!==b[0].content,i=h&&b[0].content||!h&&f.content,j=b[0]&&void 0!==b[0].contentCloning,k=j&&b[0].contentCloning||!j&&f.contentCloning,l=b[0]&&void 0!==b[0].debug,m=l&&b[0].debug||!l&&f.debug;return this.length>1&&(i instanceof a||"object"==typeof i&&null!=i&&i.tagName)&&!k&&m&&console.log(c),this.each(function(){var c=!1,d=a(this),e=d.data("tooltipster-ns"),f=null;e?g?c=!0:m&&(console.log("Tooltipster: one or more tooltips are already attached to the element below. Ignoring."),console.log(this)):c=!0,c&&(f=new a.Tooltipster(this,b[0]),e||(e=[]),e.push(f.__namespace),d.data("tooltipster-ns",e),d.data(f.__namespace,f),f.__options.functionInit&&f.__options.functionInit.call(f,f,{origin:this}),f._trigger("init")),a.tooltipster.__instancesLatestArr.push(f)}),this},b.prototype={__init:function(b){this.__$tooltip=b,this.__$tooltip.css({left:0,overflow:"hidden",position:"absolute",top:0}).find(".tooltipster-content").css("overflow","auto"),this.$container=a('<div class="tooltipster-ruler"></div>').append(this.__$tooltip).appendTo(h.window.document.body)},__forceRedraw:function(){var a=this.__$tooltip.parent();this.__$tooltip.detach(),this.__$tooltip.appendTo(a)},constrain:function(a,b){return this.constraints={width:a,height:b},this.__$tooltip.css({display:"block",height:"",overflow:"auto",width:a}),this},destroy:function(){this.__$tooltip.detach().find(".tooltipster-content").css({display:"",overflow:""}),this.$container.remove()},free:function(){return this.constraints=null,this.__$tooltip.css({display:"",height:"",overflow:"visible",width:""}),this},measure:function(){this.__forceRedraw();var a=this.__$tooltip[0].getBoundingClientRect(),b={size:{height:a.height||a.bottom-a.top,width:a.width||a.right-a.left}};if(this.constraints){var c=this.__$tooltip.find(".tooltipster-content"),d=this.__$tooltip.outerHeight(),e=c[0].getBoundingClientRect(),f={height:d<=this.constraints.height,width:a.width<=this.constraints.width&&e.width>=c[0].scrollWidth-1};b.fits=f.height&&f.width}return h.IE&&h.IE<=11&&b.size.width!==h.window.document.documentElement.clientWidth&&(b.size.width=Math.ceil(b.size.width)+1),b}};var j=navigator.userAgent.toLowerCase();j.indexOf("msie")!=-1?h.IE=parseInt(j.split("msie")[1]):j.toLowerCase().indexOf("trident")!==-1&&j.indexOf(" rv:11")!==-1?h.IE=11:j.toLowerCase().indexOf("edge/")!=-1&&(h.IE=parseInt(j.toLowerCase().split("edge/")[1]));var k="tooltipster.sideTip";return a.tooltipster._plugin({name:k,instance:{__defaults:function(){return{arrow:!0,distance:6,functionPosition:null,maxWidth:null,minIntersection:16,minWidth:0,position:null,side:"top",viewportAware:!0}},__init:function(a){var b=this;b.__instance=a,b.__namespace="tooltipster-sideTip-"+Math.round(1e6*Math.random()),b.__previousState="closed",b.__options,b.__optionsFormat(),b.__instance._on("state."+b.__namespace,function(a){"closed"==a.state?b.__close():"appearing"==a.state&&"closed"==b.__previousState&&b.__create(),b.__previousState=a.state}),b.__instance._on("options."+b.__namespace,function(){b.__optionsFormat()}),b.__instance._on("reposition."+b.__namespace,function(a){b.__reposition(a.event,a.helper)})},__close:function(){this.__instance.content()instanceof a&&this.__instance.content().detach(),this.__instance._$tooltip.remove(),this.__instance._$tooltip=null},__create:function(){var b=a('<div class="tooltipster-base tooltipster-sidetip"><div class="tooltipster-box"><div class="tooltipster-content"></div></div><div class="tooltipster-arrow"><div class="tooltipster-arrow-uncropped"><div class="tooltipster-arrow-border"></div><div class="tooltipster-arrow-background"></div></div></div></div>');this.__options.arrow||b.find(".tooltipster-box").css("margin",0).end().find(".tooltipster-arrow").hide(),this.__options.minWidth&&b.css("min-width",this.__options.minWidth+"px"),this.__options.maxWidth&&b.css("max-width",this.__options.maxWidth+"px"),
|
2 |
+
this.__instance._$tooltip=b,this.__instance._trigger("created")},__destroy:function(){this.__instance._off("."+self.__namespace)},__optionsFormat:function(){var b=this;if(b.__options=b.__instance._optionsExtract(k,b.__defaults()),b.__options.position&&(b.__options.side=b.__options.position),"object"!=typeof b.__options.distance&&(b.__options.distance=[b.__options.distance]),b.__options.distance.length<4&&(void 0===b.__options.distance[1]&&(b.__options.distance[1]=b.__options.distance[0]),void 0===b.__options.distance[2]&&(b.__options.distance[2]=b.__options.distance[0]),void 0===b.__options.distance[3]&&(b.__options.distance[3]=b.__options.distance[1]),b.__options.distance={top:b.__options.distance[0],right:b.__options.distance[1],bottom:b.__options.distance[2],left:b.__options.distance[3]}),"string"==typeof b.__options.side){var c={top:"bottom",right:"left",bottom:"top",left:"right"};b.__options.side=[b.__options.side,c[b.__options.side]],"left"==b.__options.side[0]||"right"==b.__options.side[0]?b.__options.side.push("top","bottom"):b.__options.side.push("right","left")}6===a.tooltipster._env.IE&&b.__options.arrow!==!0&&(b.__options.arrow=!1)},__reposition:function(b,c){var d,e=this,f=e.__targetFind(c),g=[];e.__instance._$tooltip.detach();var h=e.__instance._$tooltip.clone(),i=a.tooltipster._getRuler(h),j=!1,k=e.__instance.option("animation");switch(k&&h.removeClass("tooltipster-"+k),a.each(["window","document"],function(d,k){var l=null;if(e.__instance._trigger({container:k,helper:c,satisfied:j,takeTest:function(a){l=a},results:g,type:"positionTest"}),1==l||0!=l&&0==j&&("window"!=k||e.__options.viewportAware))for(var d=0;d<e.__options.side.length;d++){var m={horizontal:0,vertical:0},n=e.__options.side[d];"top"==n||"bottom"==n?m.vertical=e.__options.distance[n]:m.horizontal=e.__options.distance[n],e.__sideChange(h,n),a.each(["natural","constrained"],function(a,d){if(l=null,e.__instance._trigger({container:k,event:b,helper:c,mode:d,results:g,satisfied:j,side:n,takeTest:function(a){l=a},type:"positionTest"}),1==l||0!=l&&0==j){var h={container:k,distance:m,fits:null,mode:d,outerSize:null,side:n,size:null,target:f[n],whole:null},o="natural"==d?i.free():i.constrain(c.geo.available[k][n].width-m.horizontal,c.geo.available[k][n].height-m.vertical),p=o.measure();if(h.size=p.size,h.outerSize={height:p.size.height+m.vertical,width:p.size.width+m.horizontal},"natural"==d?c.geo.available[k][n].width>=h.outerSize.width&&c.geo.available[k][n].height>=h.outerSize.height?h.fits=!0:h.fits=!1:h.fits=p.fits,"window"==k&&(h.fits?"top"==n||"bottom"==n?h.whole=c.geo.origin.windowOffset.right>=e.__options.minIntersection&&c.geo.window.size.width-c.geo.origin.windowOffset.left>=e.__options.minIntersection:h.whole=c.geo.origin.windowOffset.bottom>=e.__options.minIntersection&&c.geo.window.size.height-c.geo.origin.windowOffset.top>=e.__options.minIntersection:h.whole=!1),g.push(h),h.whole)j=!0;else if("natural"==h.mode&&(h.fits||h.size.width<=c.geo.available[k][n].width))return!1}})}}),e.__instance._trigger({edit:function(a){g=a},event:b,helper:c,results:g,type:"positionTested"}),g.sort(function(a,b){if(a.whole&&!b.whole)return-1;if(!a.whole&&b.whole)return 1;if(a.whole&&b.whole){var c=e.__options.side.indexOf(a.side),d=e.__options.side.indexOf(b.side);return c<d?-1:c>d?1:"natural"==a.mode?-1:1}if(a.fits&&!b.fits)return-1;if(!a.fits&&b.fits)return 1;if(a.fits&&b.fits){var c=e.__options.side.indexOf(a.side),d=e.__options.side.indexOf(b.side);return c<d?-1:c>d?1:"natural"==a.mode?-1:1}return"document"==a.container&&"bottom"==a.side&&"natural"==a.mode?-1:1}),d=g[0],d.coord={},d.side){case"left":case"right":d.coord.top=Math.floor(d.target-d.size.height/2);break;case"bottom":case"top":d.coord.left=Math.floor(d.target-d.size.width/2)}switch(d.side){case"left":d.coord.left=c.geo.origin.windowOffset.left-d.outerSize.width;break;case"right":d.coord.left=c.geo.origin.windowOffset.right+d.distance.horizontal;break;case"top":d.coord.top=c.geo.origin.windowOffset.top-d.outerSize.height;break;case"bottom":d.coord.top=c.geo.origin.windowOffset.bottom+d.distance.vertical}"window"==d.container?"top"==d.side||"bottom"==d.side?d.coord.left<0?c.geo.origin.windowOffset.right-this.__options.minIntersection>=0?d.coord.left=0:d.coord.left=c.geo.origin.windowOffset.right-this.__options.minIntersection-1:d.coord.left>c.geo.window.size.width-d.size.width&&(c.geo.origin.windowOffset.left+this.__options.minIntersection<=c.geo.window.size.width?d.coord.left=c.geo.window.size.width-d.size.width:d.coord.left=c.geo.origin.windowOffset.left+this.__options.minIntersection+1-d.size.width):d.coord.top<0?c.geo.origin.windowOffset.bottom-this.__options.minIntersection>=0?d.coord.top=0:d.coord.top=c.geo.origin.windowOffset.bottom-this.__options.minIntersection-1:d.coord.top>c.geo.window.size.height-d.size.height&&(c.geo.origin.windowOffset.top+this.__options.minIntersection<=c.geo.window.size.height?d.coord.top=c.geo.window.size.height-d.size.height:d.coord.top=c.geo.origin.windowOffset.top+this.__options.minIntersection+1-d.size.height):(d.coord.left>c.geo.window.size.width-d.size.width&&(d.coord.left=c.geo.window.size.width-d.size.width),d.coord.left<0&&(d.coord.left=0)),e.__sideChange(h,d.side),c.tooltipClone=h[0],c.tooltipParent=e.__instance.option("parent").parent[0],c.mode=d.mode,c.whole=d.whole,c.origin=e.__instance._$origin[0],c.tooltip=e.__instance._$tooltip[0],delete d.container,delete d.fits,delete d.mode,delete d.outerSize,delete d.whole,d.distance=d.distance.horizontal||d.distance.vertical;var l=a.extend(!0,{},d);if(e.__instance._trigger({edit:function(a){d=a},event:b,helper:c,position:l,type:"position"}),e.__options.functionPosition){var m=e.__options.functionPosition.call(e,e.__instance,c,l);m&&(d=m)}i.destroy();var n,o;"top"==d.side||"bottom"==d.side?(n={prop:"left",val:d.target-d.coord.left},o=d.size.width-this.__options.minIntersection):(n={prop:"top",val:d.target-d.coord.top},o=d.size.height-this.__options.minIntersection),n.val<this.__options.minIntersection?n.val=this.__options.minIntersection:n.val>o&&(n.val=o);var p;p=c.geo.origin.fixedLineage?c.geo.origin.windowOffset:{left:c.geo.origin.windowOffset.left+c.geo.window.scroll.left,top:c.geo.origin.windowOffset.top+c.geo.window.scroll.top},d.coord={left:p.left+(d.coord.left-c.geo.origin.windowOffset.left),top:p.top+(d.coord.top-c.geo.origin.windowOffset.top)},e.__sideChange(e.__instance._$tooltip,d.side),c.geo.origin.fixedLineage?e.__instance._$tooltip.css("position","fixed"):e.__instance._$tooltip.css("position",""),e.__instance._$tooltip.css({left:d.coord.left,top:d.coord.top,height:d.size.height,width:d.size.width}).find(".tooltipster-arrow").css({left:"",top:""}).css(n.prop,n.val),e.__instance._$tooltip.appendTo(e.__instance.option("parent")),e.__instance._trigger({type:"repositioned",event:b,position:d})},__sideChange:function(a,b){a.removeClass("tooltipster-bottom").removeClass("tooltipster-left").removeClass("tooltipster-right").removeClass("tooltipster-top").addClass("tooltipster-"+b)},__targetFind:function(a){var b={},c=this.__instance._$origin[0].getClientRects();if(c.length>1){var d=this.__instance._$origin.css("opacity");1==d&&(this.__instance._$origin.css("opacity",.99),c=this.__instance._$origin[0].getClientRects(),this.__instance._$origin.css("opacity",1))}if(c.length<2)b.top=Math.floor(a.geo.origin.windowOffset.left+a.geo.origin.size.width/2),b.bottom=b.top,b.left=Math.floor(a.geo.origin.windowOffset.top+a.geo.origin.size.height/2),b.right=b.left;else{var e=c[0];b.top=Math.floor(e.left+(e.right-e.left)/2),e=c.length>2?c[Math.ceil(c.length/2)-1]:c[0],b.right=Math.floor(e.top+(e.bottom-e.top)/2),e=c[c.length-1],b.bottom=Math.floor(e.left+(e.right-e.left)/2),e=c.length>2?c[Math.ceil((c.length+1)/2)-1]:c[c.length-1],b.left=Math.floor(e.top+(e.bottom-e.top)/2)}return b}}}),a});
|
classes/AdminBar.php
CHANGED
@@ -15,9 +15,7 @@ class AdminBar
|
|
15 |
add_action( 'init', array( $this, 'topBar' ) );
|
16 |
|
17 |
// Hide top WordPress admin bar on request for debugging purposes and a cleared view of the tested page
|
18 |
-
|
19 |
-
add_filter('show_admin_bar', '__return_false', PHP_INT_MAX);
|
20 |
-
}
|
21 |
}
|
22 |
|
23 |
/**
|
@@ -60,8 +58,8 @@ class AdminBar
|
|
60 |
'parent' => 'assetcleanup-parent',
|
61 |
'id' => 'assetcleanup-clear-css-js-files-cache',
|
62 |
'title' => __('Clear CSS/JS Files Cache', 'wp-asset-clean-up'),
|
63 |
-
'href' => wp_nonce_url(admin_url('admin-post.php?action=assetcleanup_clear_assets_cache' . $goBackToCurrentUrl),
|
64 |
-
'assetcleanup_clear_assets_cache')
|
65 |
) );
|
66 |
|
67 |
// Only trigger in the front-end view
|
@@ -108,6 +106,13 @@ class AdminBar
|
|
108 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_bulk_unloads')
|
109 |
));
|
110 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
$wp_admin_bar->add_menu(array(
|
112 |
'parent' => 'assetcleanup-parent',
|
113 |
'id' => 'assetcleanup-support-forum',
|
15 |
add_action( 'init', array( $this, 'topBar' ) );
|
16 |
|
17 |
// Hide top WordPress admin bar on request for debugging purposes and a cleared view of the tested page
|
18 |
+
// This is done in /early-triggers.php within assetCleanUpNoLoad() function
|
|
|
|
|
19 |
}
|
20 |
|
21 |
/**
|
58 |
'parent' => 'assetcleanup-parent',
|
59 |
'id' => 'assetcleanup-clear-css-js-files-cache',
|
60 |
'title' => __('Clear CSS/JS Files Cache', 'wp-asset-clean-up'),
|
61 |
+
'href' => wp_nonce_url( admin_url( 'admin-post.php?action=assetcleanup_clear_assets_cache' . $goBackToCurrentUrl ),
|
62 |
+
'assetcleanup_clear_assets_cache' )
|
63 |
) );
|
64 |
|
65 |
// Only trigger in the front-end view
|
106 |
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_bulk_unloads')
|
107 |
));
|
108 |
|
109 |
+
$wp_admin_bar->add_menu( array(
|
110 |
+
'parent' => 'assetcleanup-parent',
|
111 |
+
'id' => 'assetcleanup-overview',
|
112 |
+
'title' => __('Overview', 'wp-asset-clean-up'),
|
113 |
+
'href' => admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_overview')
|
114 |
+
) );
|
115 |
+
|
116 |
$wp_admin_bar->add_menu(array(
|
117 |
'parent' => 'assetcleanup-parent',
|
118 |
'id' => 'assetcleanup-support-forum',
|
classes/Menu.php
CHANGED
@@ -32,6 +32,7 @@ class Menu
|
|
32 |
WPACU_PLUGIN_ID . '_settings',
|
33 |
WPACU_PLUGIN_ID . '_assets_manager',
|
34 |
WPACU_PLUGIN_ID . '_bulk_unloads',
|
|
|
35 |
WPACU_PLUGIN_ID . '_tools',
|
36 |
WPACU_PLUGIN_ID . '_license',
|
37 |
WPACU_PLUGIN_ID . '_get_help',
|
@@ -61,8 +62,8 @@ class Menu
|
|
61 |
}
|
62 |
|
63 |
add_menu_page(
|
64 |
-
|
65 |
-
|
66 |
self::getAccessCapability(),
|
67 |
self::$_slug,
|
68 |
array(new Info, 'gettingStarted'),
|
@@ -97,7 +98,16 @@ class Menu
|
|
97 |
);
|
98 |
|
99 |
add_submenu_page(
|
100 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
101 |
__('Tools', 'wp-asset-clean-up'),
|
102 |
__('Tools', 'wp-asset-clean-up'),
|
103 |
self::getAccessCapability(),
|
@@ -138,10 +148,10 @@ class Menu
|
|
138 |
// Add "Asset CleanUp Pro" Settings Link to the main "Settings" menu within the Dashboard
|
139 |
// For easier navigation
|
140 |
$GLOBALS['submenu']['options-general.php'][] = array(
|
141 |
-
|
142 |
self::getAccessCapability(),
|
143 |
admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_settings'),
|
144 |
-
|
145 |
);
|
146 |
|
147 |
// Rename first item from the menu which has the same title as the menu page
|
32 |
WPACU_PLUGIN_ID . '_settings',
|
33 |
WPACU_PLUGIN_ID . '_assets_manager',
|
34 |
WPACU_PLUGIN_ID . '_bulk_unloads',
|
35 |
+
WPACU_PLUGIN_ID . '_overview',
|
36 |
WPACU_PLUGIN_ID . '_tools',
|
37 |
WPACU_PLUGIN_ID . '_license',
|
38 |
WPACU_PLUGIN_ID . '_get_help',
|
62 |
}
|
63 |
|
64 |
add_menu_page(
|
65 |
+
WPACU_PLUGIN_TITLE,
|
66 |
+
WPACU_PLUGIN_TITLE,
|
67 |
self::getAccessCapability(),
|
68 |
self::$_slug,
|
69 |
array(new Info, 'gettingStarted'),
|
98 |
);
|
99 |
|
100 |
add_submenu_page(
|
101 |
+
self::$_slug,
|
102 |
+
__('Overview', 'wp-asset-clean-up'),
|
103 |
+
__('Overview', 'wp-asset-clean-up'),
|
104 |
+
self::getAccessCapability(),
|
105 |
+
WPACU_PLUGIN_ID . '_overview',
|
106 |
+
array(new Overview, 'pageOverview')
|
107 |
+
);
|
108 |
+
|
109 |
+
add_submenu_page(
|
110 |
+
self::$_slug,
|
111 |
__('Tools', 'wp-asset-clean-up'),
|
112 |
__('Tools', 'wp-asset-clean-up'),
|
113 |
self::getAccessCapability(),
|
148 |
// Add "Asset CleanUp Pro" Settings Link to the main "Settings" menu within the Dashboard
|
149 |
// For easier navigation
|
150 |
$GLOBALS['submenu']['options-general.php'][] = array(
|
151 |
+
WPACU_PLUGIN_TITLE,
|
152 |
self::getAccessCapability(),
|
153 |
admin_url( 'admin.php?page=' . WPACU_PLUGIN_ID . '_settings'),
|
154 |
+
WPACU_PLUGIN_TITLE,
|
155 |
);
|
156 |
|
157 |
// Rename first item from the menu which has the same title as the menu page
|
classes/Misc.php
CHANGED
@@ -272,6 +272,33 @@ class Misc
|
|
272 |
return ($urlPathNoForwardSlash === $requestURINoForwardSlash);
|
273 |
}
|
274 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
275 |
/**
|
276 |
* @param $src
|
277 |
*
|
272 |
return ($urlPathNoForwardSlash === $requestURINoForwardSlash);
|
273 |
}
|
274 |
|
275 |
+
/**
|
276 |
+
* @param $handleData
|
277 |
+
*
|
278 |
+
* @return bool
|
279 |
+
*/
|
280 |
+
public static function isCoreFile($handleData)
|
281 |
+
{
|
282 |
+
$handleData = (object)$handleData;
|
283 |
+
|
284 |
+
$part = str_replace(
|
285 |
+
array(
|
286 |
+
'http://',
|
287 |
+
'https://',
|
288 |
+
'//'
|
289 |
+
),
|
290 |
+
'',
|
291 |
+
$handleData->src
|
292 |
+
);
|
293 |
+
|
294 |
+
$parts = explode('/', $part);
|
295 |
+
$parentDir = isset($parts[1]) ? $parts[1] : '';
|
296 |
+
|
297 |
+
// Loaded from WordPress directories (Core)
|
298 |
+
return in_array( $parentDir, array( 'wp-includes', 'wp-admin' ) ) || strpos( $handleData->src,
|
299 |
+
'/plugins/jquery-updater/js/jquery-' ) !== false;
|
300 |
+
}
|
301 |
+
|
302 |
/**
|
303 |
* @param $src
|
304 |
*
|
classes/OptimiseAssets/FontsGoogle.php
CHANGED
@@ -3,6 +3,7 @@ namespace WpAssetCleanUp\OptimiseAssets;
|
|
3 |
|
4 |
use WpAssetCleanUp\Main;
|
5 |
use WpAssetCleanUp\Misc;
|
|
|
6 |
|
7 |
/**
|
8 |
* Class FontsGoogle
|
@@ -20,6 +21,11 @@ class FontsGoogle
|
|
20 |
*/
|
21 |
public static $matchesStr = '//fonts.googleapis.com/(css|icon)\?';
|
22 |
|
|
|
|
|
|
|
|
|
|
|
23 |
/**
|
24 |
*
|
25 |
*/
|
@@ -31,12 +37,20 @@ class FontsGoogle
|
|
31 |
public function init()
|
32 |
{
|
33 |
add_filter('wp_resource_hints', array($this, 'resourceHints'), PHP_INT_MAX, 2);
|
34 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
add_action('init', function() {
|
37 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
38 |
// or test mode is enabled and a guest user is accessing the page
|
39 |
-
if (
|
40 |
return;
|
41 |
}
|
42 |
|
@@ -54,7 +68,7 @@ class FontsGoogle
|
|
54 |
{
|
55 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
56 |
// or test mode is enabled and a guest user is accessing the page
|
57 |
-
if (is_admin() || Main::
|
58 |
return $urls;
|
59 |
}
|
60 |
|
@@ -87,7 +101,7 @@ class FontsGoogle
|
|
87 |
{
|
88 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
89 |
// or test mode is enabled and a guest user is accessing the page
|
90 |
-
if (
|
91 |
return;
|
92 |
}
|
93 |
|
@@ -132,7 +146,8 @@ class FontsGoogle
|
|
132 |
{
|
133 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
134 |
// or test mode is enabled and a guest user is accessing the page
|
135 |
-
|
|
|
136 |
return $htmlSource;
|
137 |
}
|
138 |
|
@@ -220,6 +235,7 @@ class FontsGoogle
|
|
220 |
}
|
221 |
|
222 |
$htmlSource = self::alterGoogleFontUrlFromInlineStyleTags($htmlSource);
|
|
|
223 |
|
224 |
return $htmlSource;
|
225 |
}
|
@@ -240,8 +256,11 @@ class FontsGoogle
|
|
240 |
$conditionOne = stripos($linkHrefOriginal, self::$containsStr) === false;
|
241 |
}
|
242 |
|
243 |
-
// Do not continue if it doesn't contain the right string or it contains 'display=' or there is no value set for "font-display"
|
244 |
-
if ($conditionOne ||
|
|
|
|
|
|
|
245 |
// Return original source
|
246 |
return $linkHrefOriginal;
|
247 |
}
|
@@ -526,9 +545,9 @@ HTML;
|
|
526 |
*/
|
527 |
if (Main::instance()->settings['google_fonts_combine_type'] === 'async_preload') {
|
528 |
$finalPreloadCombinedLink = <<<HTML
|
529 |
-
<link rel='preload' as="style" onload="this.rel='stylesheet'" id='wpacu-combined-google-fonts-css-async-preload' href='https://fonts.googleapis.com/css?family={$finalCombinedParameters}' type='text/css' media='all' />
|
530 |
HTML;
|
531 |
-
$finalPreloadCombinedLink .= "\n".
|
532 |
|
533 |
$htmlSource = str_replace(self::COMBINED_LINK_DEL, apply_filters('wpacu_combined_google_fonts_async_preload_link_tag', $finalPreloadCombinedLink), $htmlSource);
|
534 |
}
|
@@ -589,11 +608,16 @@ HTML;
|
|
589 |
$wfConfigGoogleFamiliesStr = '['.implode(',', $wfConfigGoogleFamilies).']';
|
590 |
|
591 |
$finalInlineTagWebFontConfig = '<script id=\'wpacu-google-fonts-async-load\' type=\'text/javascript\'>'."\n".'WebFontConfig={google:{families:'.$wfConfigGoogleFamiliesStr.'}};(function(wpacuD){var wpacuWf=wpacuD.createElement(\'script\'),wpacuS=wpacuD.scripts[0];wpacuWf.src=(\'https:\'===document.location.protocol?\'https\':\'http\')+\'://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js\';wpacuWf.async=!0;wpacuS.parentNode.insertBefore(wpacuWf,wpacuS)})(document);'."\n".'</script>';
|
592 |
-
$noScriptFallback = '<noscript>'.apply_filters('wpacu_combined_google_fonts_link_tag', $finalCombinedLink).'</noscript>'. "\n";
|
593 |
|
594 |
$htmlSource = str_replace(
|
595 |
-
|
596 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
597 |
$htmlSource
|
598 |
);
|
599 |
}
|
3 |
|
4 |
use WpAssetCleanUp\Main;
|
5 |
use WpAssetCleanUp\Misc;
|
6 |
+
use WpAssetCleanUp\Plugin;
|
7 |
|
8 |
/**
|
9 |
* Class FontsGoogle
|
21 |
*/
|
22 |
public static $matchesStr = '//fonts.googleapis.com/(css|icon)\?';
|
23 |
|
24 |
+
/**
|
25 |
+
*
|
26 |
+
*/
|
27 |
+
const NOSCRIPT_WEB_FONT_LOADER = '<meta name="wpacu-generator" content="ASSET CLEANUP NOSCRIPT WEB FONT LOADER">';
|
28 |
+
|
29 |
/**
|
30 |
*
|
31 |
*/
|
37 |
public function init()
|
38 |
{
|
39 |
add_filter('wp_resource_hints', array($this, 'resourceHints'), PHP_INT_MAX, 2);
|
40 |
+
|
41 |
+
add_action('wp_head', array($this, 'preloadFontFiles'), 1);
|
42 |
+
add_action('wp_footer', static function() {
|
43 |
+
if ( Plugin::preventAnyChanges() || Main::isTestModeActive() ) {
|
44 |
+
return;
|
45 |
+
}
|
46 |
+
|
47 |
+
echo self::NOSCRIPT_WEB_FONT_LOADER;
|
48 |
+
}, PHP_INT_MAX);
|
49 |
|
50 |
add_action('init', function() {
|
51 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
52 |
// or test mode is enabled and a guest user is accessing the page
|
53 |
+
if ( Plugin::preventAnyChanges() || Main::isTestModeActive() ) {
|
54 |
return;
|
55 |
}
|
56 |
|
68 |
{
|
69 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
70 |
// or test mode is enabled and a guest user is accessing the page
|
71 |
+
if (is_admin() || Main::isTestModeActive() || Plugin::preventAnyChanges()) {
|
72 |
return $urls;
|
73 |
}
|
74 |
|
101 |
{
|
102 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
103 |
// or test mode is enabled and a guest user is accessing the page
|
104 |
+
if ( Plugin::preventAnyChanges() || Main::isTestModeActive() ) {
|
105 |
return;
|
106 |
}
|
107 |
|
146 |
{
|
147 |
// don't apply any changes if not in the front-end view (e.g. Dashboard view)
|
148 |
// or test mode is enabled and a guest user is accessing the page
|
149 |
+
// or an AMP page is accessed
|
150 |
+
if (Plugin::preventAnyChanges() || Main::isTestModeActive()) {
|
151 |
return $htmlSource;
|
152 |
}
|
153 |
|
235 |
}
|
236 |
|
237 |
$htmlSource = self::alterGoogleFontUrlFromInlineStyleTags($htmlSource);
|
238 |
+
$htmlSource = str_replace(self::NOSCRIPT_WEB_FONT_LOADER, '', $htmlSource);
|
239 |
|
240 |
return $htmlSource;
|
241 |
}
|
256 |
$conditionOne = stripos($linkHrefOriginal, self::$containsStr) === false;
|
257 |
}
|
258 |
|
259 |
+
// Do not continue if it doesn't contain the right string or it contains 'display=' or it does not contain 'family=' or there is no value set for "font-display"
|
260 |
+
if ($conditionOne ||
|
261 |
+
stripos($linkHrefOriginal, 'display=') !== false ||
|
262 |
+
stripos($linkHrefOriginal, 'family=') === false ||
|
263 |
+
! Main::instance()->settings['google_fonts_display']) {
|
264 |
// Return original source
|
265 |
return $linkHrefOriginal;
|
266 |
}
|
545 |
*/
|
546 |
if (Main::instance()->settings['google_fonts_combine_type'] === 'async_preload') {
|
547 |
$finalPreloadCombinedLink = <<<HTML
|
548 |
+
<link rel='preload' as="style" onload="this.rel='stylesheet'" data-wpacu-preload-it-async='1' id='wpacu-combined-google-fonts-css-async-preload' href='https://fonts.googleapis.com/css?family={$finalCombinedParameters}' type='text/css' media='all' />
|
549 |
HTML;
|
550 |
+
$finalPreloadCombinedLink .= "\n".Misc::preloadAsyncCssFallbackOutput();
|
551 |
|
552 |
$htmlSource = str_replace(self::COMBINED_LINK_DEL, apply_filters('wpacu_combined_google_fonts_async_preload_link_tag', $finalPreloadCombinedLink), $htmlSource);
|
553 |
}
|
608 |
$wfConfigGoogleFamiliesStr = '['.implode(',', $wfConfigGoogleFamilies).']';
|
609 |
|
610 |
$finalInlineTagWebFontConfig = '<script id=\'wpacu-google-fonts-async-load\' type=\'text/javascript\'>'."\n".'WebFontConfig={google:{families:'.$wfConfigGoogleFamiliesStr.'}};(function(wpacuD){var wpacuWf=wpacuD.createElement(\'script\'),wpacuS=wpacuD.scripts[0];wpacuWf.src=(\'https:\'===document.location.protocol?\'https\':\'http\')+\'://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js\';wpacuWf.async=!0;wpacuS.parentNode.insertBefore(wpacuWf,wpacuS)})(document);'."\n".'</script>';
|
|
|
611 |
|
612 |
$htmlSource = str_replace(
|
613 |
+
array(
|
614 |
+
self::COMBINED_LINK_DEL,
|
615 |
+
self::NOSCRIPT_WEB_FONT_LOADER
|
616 |
+
),
|
617 |
+
array(
|
618 |
+
apply_filters( 'wpacu_combined_google_fonts_inline_script_tag', $finalInlineTagWebFontConfig ),
|
619 |
+
'<noscript>' . apply_filters( 'wpacu_combined_google_fonts_link_tag', $finalCombinedLink ) . '</noscript>' . "\n"
|
620 |
+
),
|
621 |
$htmlSource
|
622 |
);
|
623 |
}
|
classes/OptimiseAssets/OptimizeCommon.php
CHANGED
@@ -482,10 +482,17 @@ class OptimizeCommon
|
|
482 |
|
483 |
$requestUriPart = $requestUri;
|
484 |
|
485 |
-
|
|
|
486 |
$requestUriPart = '';
|
487 |
}
|
488 |
|
|
|
|
|
|
|
|
|
|
|
|
|
489 |
$dirToFilename = WP_CONTENT_DIR . dirname($relPathAssetCacheDir) . '/_storage/'
|
490 |
. parse_url(site_url(), PHP_URL_HOST) .
|
491 |
$requestUriPart . '/';
|
@@ -522,7 +529,20 @@ class OptimizeCommon
|
|
522 |
$optionValueArray = @json_decode($optionValue, ARRAY_A);
|
523 |
|
524 |
if ($forType === 'combine') {
|
525 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
526 |
return $optionValueArray;
|
527 |
}
|
528 |
|
@@ -559,10 +579,17 @@ class OptimizeCommon
|
|
559 |
|
560 |
$requestUriPart = $requestUri;
|
561 |
|
562 |
-
|
|
|
563 |
$requestUriPart = '';
|
564 |
}
|
565 |
|
|
|
|
|
|
|
|
|
|
|
|
|
566 |
$dirToFilename = WP_CONTENT_DIR . dirname($relPathAssetCacheDir) . '/_storage/'
|
567 |
. parse_url(site_url(), PHP_URL_HOST) .
|
568 |
$requestUriPart . '/';
|
@@ -622,10 +649,17 @@ class OptimizeCommon
|
|
622 |
|
623 |
$requestUriPart = $requestUri;
|
624 |
|
625 |
-
|
|
|
626 |
$requestUriPart = '';
|
627 |
}
|
628 |
|
|
|
|
|
|
|
|
|
|
|
|
|
629 |
$dirToFilename = WP_CONTENT_DIR . self::getRelPathPluginCacheDir() . '_storage/'
|
630 |
. parse_url(site_url(), PHP_URL_HOST) .
|
631 |
$requestUriPart;
|
@@ -850,7 +884,15 @@ SQL;
|
|
850 |
*/
|
851 |
public static function filterStorageFileName($fileName)
|
852 |
{
|
853 |
-
$filterString =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
854 |
|
855 |
$current_user = wp_get_current_user();
|
856 |
|
482 |
|
483 |
$requestUriPart = $requestUri;
|
484 |
|
485 |
+
// Same results for Homepage (any pagination), 404 Not Found & Date archive pages
|
486 |
+
if ($requestUri === '/' || is_404() || is_date() || Misc::isHomePage()) {
|
487 |
$requestUriPart = '';
|
488 |
}
|
489 |
|
490 |
+
// Treat the pagination pages the same as the main page (same it's done for the unloading rules)
|
491 |
+
if (($currentPage = get_query_var('paged')) && (is_archive() || is_singular())) {
|
492 |
+
$paginationBase = isset($GLOBALS['wp_rewrite']->pagination_base) ? $GLOBALS['wp_rewrite']->pagination_base : 'page';
|
493 |
+
$requestUriPart = str_replace('/'.$paginationBase.'/'.$currentPage.'/', '', $requestUriPart);
|
494 |
+
}
|
495 |
+
|
496 |
$dirToFilename = WP_CONTENT_DIR . dirname($relPathAssetCacheDir) . '/_storage/'
|
497 |
. parse_url(site_url(), PHP_URL_HOST) .
|
498 |
$requestUriPart . '/';
|
529 |
$optionValueArray = @json_decode($optionValue, ARRAY_A);
|
530 |
|
531 |
if ($forType === 'combine') {
|
532 |
+
$isValidJsonCombinedData = false;
|
533 |
+
|
534 |
+
if (! empty($optionValueArray)) {
|
535 |
+
foreach ($optionValueArray as $assetsPosition => $assetsValues) {
|
536 |
+
foreach ($assetsValues as $finalValues) {
|
537 |
+
if ( isset( $finalValues['link_hrefs'] ) ) {
|
538 |
+
$isValidJsonCombinedData = true;
|
539 |
+
break 2;
|
540 |
+
}
|
541 |
+
}
|
542 |
+
}
|
543 |
+
}
|
544 |
+
|
545 |
+
if ($assetType === 'css' && $isValidJsonCombinedData) {
|
546 |
return $optionValueArray;
|
547 |
}
|
548 |
|
579 |
|
580 |
$requestUriPart = $requestUri;
|
581 |
|
582 |
+
// Same results for Homepage (any pagination), 404 Not Found & Date archive pages
|
583 |
+
if ($requestUri === '/' || is_404() || is_date() || Misc::isHomePage()) {
|
584 |
$requestUriPart = '';
|
585 |
}
|
586 |
|
587 |
+
// Treat the pagination pages the same as the main page (same it's done for the unloading rules)
|
588 |
+
if (($currentPage = get_query_var('paged')) && (is_archive() || is_singular())) {
|
589 |
+
$paginationBase = isset($GLOBALS['wp_rewrite']->pagination_base) ? $GLOBALS['wp_rewrite']->pagination_base : 'page';
|
590 |
+
$requestUriPart = str_replace('/'.$paginationBase.'/'.$currentPage.'/', '', $requestUriPart);
|
591 |
+
}
|
592 |
+
|
593 |
$dirToFilename = WP_CONTENT_DIR . dirname($relPathAssetCacheDir) . '/_storage/'
|
594 |
. parse_url(site_url(), PHP_URL_HOST) .
|
595 |
$requestUriPart . '/';
|
649 |
|
650 |
$requestUriPart = $requestUri;
|
651 |
|
652 |
+
// Same results for Homepage (any pagination), 404 Not Found & Date archive pages
|
653 |
+
if ($requestUri === '/' || is_404() || is_date() || Misc::isHomePage()) {
|
654 |
$requestUriPart = '';
|
655 |
}
|
656 |
|
657 |
+
// Treat the pagination pages the same as the main page (same it's done for the unloading rules)
|
658 |
+
if (($currentPage = get_query_var('paged')) && (is_archive() || is_singular())) {
|
659 |
+
$paginationBase = isset($GLOBALS['wp_rewrite']->pagination_base) ? $GLOBALS['wp_rewrite']->pagination_base : 'page';
|
660 |
+
$requestUriPart = str_replace('/'.$paginationBase.'/'.$currentPage.'/', '', $requestUriPart);
|
661 |
+
}
|
662 |
+
|
663 |
$dirToFilename = WP_CONTENT_DIR . self::getRelPathPluginCacheDir() . '_storage/'
|
664 |
. parse_url(site_url(), PHP_URL_HOST) .
|
665 |
$requestUriPart;
|
884 |
*/
|
885 |
public static function filterStorageFileName($fileName)
|
886 |
{
|
887 |
+
$filterString = '';
|
888 |
+
|
889 |
+
if (is_404()) {
|
890 |
+
$filterString = '-404-not-found';
|
891 |
+
} elseif (is_date()) {
|
892 |
+
$filterString = '-date';
|
893 |
+
} elseif (Misc::isHomePage()) {
|
894 |
+
$filterString = '-homepage';
|
895 |
+
}
|
896 |
|
897 |
$current_user = wp_get_current_user();
|
898 |
|
classes/OptimiseAssets/OptimizeCss.php
CHANGED
@@ -327,7 +327,12 @@ class OptimizeCss
|
|
327 |
// Relative path to the new file
|
328 |
// Save it to /wp-content/cache/css/{OptimizeCommon::$optimizedSingleFilesDir}/
|
329 |
if ($fileVer !== $wp_version) {
|
330 |
-
|
|
|
|
|
|
|
|
|
|
|
331 |
$fileVer = (strlen($fileVer) > 50) ? substr(md5($fileVer), 0, 20) : $fileVer; // don't end up with too long filenames
|
332 |
}
|
333 |
|
327 |
// Relative path to the new file
|
328 |
// Save it to /wp-content/cache/css/{OptimizeCommon::$optimizedSingleFilesDir}/
|
329 |
if ($fileVer !== $wp_version) {
|
330 |
+
if (! is_array($fileVer)) {
|
331 |
+
$fileVer = trim( str_replace( ' ', '_', preg_replace( '/\s+/', ' ', $fileVer ) ) );
|
332 |
+
} else {
|
333 |
+
$fileVer = implode('-', $fileVer);
|
334 |
+
}
|
335 |
+
|
336 |
$fileVer = (strlen($fileVer) > 50) ? substr(md5($fileVer), 0, 20) : $fileVer; // don't end up with too long filenames
|
337 |
}
|
338 |
|
classes/Overview.php
ADDED
@@ -0,0 +1,742 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace WpAssetCleanUp;
|
3 |
+
|
4 |
+
/**
|
5 |
+
*
|
6 |
+
* Class Overview
|
7 |
+
* @package WpAssetCleanUp
|
8 |
+
*/
|
9 |
+
class Overview
|
10 |
+
{
|
11 |
+
/**
|
12 |
+
* @var array
|
13 |
+
*/
|
14 |
+
public $data = array();
|
15 |
+
|
16 |
+
/**
|
17 |
+
*
|
18 |
+
*/
|
19 |
+
public function pageOverview()
|
20 |
+
{
|
21 |
+
global $wpdb;
|
22 |
+
|
23 |
+
$wpacuPluginId = WPACU_PLUGIN_ID;
|
24 |
+
|
25 |
+
$allHandles = array();
|
26 |
+
|
27 |
+
/*
|
28 |
+
* Per page rules (unload, load exceptions if a bulk rule is enabled, async & defer for SCRIPT tags)
|
29 |
+
*/
|
30 |
+
// Homepage (Unloads)
|
31 |
+
$wpacuFrontPageUnloads = get_option(WPACU_PLUGIN_ID . '_front_page_no_load');
|
32 |
+
|
33 |
+
if ($wpacuFrontPageUnloads) {
|
34 |
+
$wpacuFrontPageUnloadsArray = @json_decode( $wpacuFrontPageUnloads, ARRAY_A );
|
35 |
+
|
36 |
+
foreach (array('styles', 'scripts') as $assetType) {
|
37 |
+
if ( isset( $wpacuFrontPageUnloadsArray[$assetType] ) && ! empty( $wpacuFrontPageUnloadsArray[$assetType] ) ) {
|
38 |
+
foreach ( $wpacuFrontPageUnloadsArray[$assetType] as $assetHandle ) {
|
39 |
+
$allHandles[$assetType][ $assetHandle ]['unload_on_home_page'] = 1;
|
40 |
+
}
|
41 |
+
}
|
42 |
+
}
|
43 |
+
}
|
44 |
+
|
45 |
+
// Homepage (Load Exceptions)
|
46 |
+
$wpacuFrontPageLoadExceptions = get_option(WPACU_PLUGIN_ID . '_front_page_load_exceptions');
|
47 |
+
|
48 |
+
if ($wpacuFrontPageLoadExceptions) {
|
49 |
+
$wpacuFrontPageLoadExceptionsArray = @json_decode( $wpacuFrontPageLoadExceptions, ARRAY_A );
|
50 |
+
|
51 |
+
foreach ( array('styles', 'scripts') as $assetType ) {
|
52 |
+
if ( isset( $wpacuFrontPageLoadExceptionsArray[$assetType] ) && ! empty( $wpacuFrontPageLoadExceptionsArray[$assetType] ) ) {
|
53 |
+
foreach ( $wpacuFrontPageLoadExceptionsArray[$assetType] as $assetHandle ) {
|
54 |
+
$allHandles[$assetType][ $assetHandle ]['load_exception_on_home_page'] = 1;
|
55 |
+
}
|
56 |
+
}
|
57 |
+
}
|
58 |
+
}
|
59 |
+
|
60 |
+
// Homepage (async, defer)
|
61 |
+
$wpacuFrontPageData = get_option(WPACU_PLUGIN_ID . '_front_page_data');
|
62 |
+
|
63 |
+
if ($wpacuFrontPageData) {
|
64 |
+
$wpacuFrontPageDataArray = @json_decode( $wpacuFrontPageData, ARRAY_A );
|
65 |
+
if ( isset($wpacuFrontPageDataArray['scripts']) && ! empty($wpacuFrontPageDataArray['scripts']) ) {
|
66 |
+
foreach ($wpacuFrontPageDataArray['scripts'] as $assetHandle => $assetData) {
|
67 |
+
if (isset($assetData['attributes']) && ! empty($assetData['attributes'])) {
|
68 |
+
// async, defer attributes
|
69 |
+
$allHandles['scripts'][ $assetHandle ]['script_attrs']['home_page'] = $assetData['attributes'];
|
70 |
+
}
|
71 |
+
}
|
72 |
+
}
|
73 |
+
|
74 |
+
// Do not apply "async", "defer" exceptions (e.g. "defer" is applied site-wide, except the home page)
|
75 |
+
if (isset($wpacuFrontPageDataArray['scripts_attributes_no_load']) && ! empty($wpacuFrontPageDataArray['scripts_attributes_no_load'])) {
|
76 |
+
foreach ($wpacuFrontPageDataArray['scripts_attributes_no_load'] as $assetHandle => $assetAttrsNoLoad) {
|
77 |
+
$allHandles['scripts'][$assetHandle]['attrs_no_load']['home_page'] = $assetAttrsNoLoad;
|
78 |
+
}
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
// Get all Asset CleanUp (Pro) meta keys from all WordPress meta tables where it can be possibly used
|
83 |
+
foreach (array($wpdb->postmeta, $wpdb->termmeta, $wpdb->usermeta) as $tableName) {
|
84 |
+
$wpacuGetValuesQuery = <<<SQL
|
85 |
+
SELECT * FROM `{$tableName}`
|
86 |
+
WHERE meta_key IN('_{$wpacuPluginId}_no_load', '_{$wpacuPluginId}_data', '_{$wpacuPluginId}_load_exceptions')
|
87 |
+
SQL;
|
88 |
+
$wpacuMetaData = $wpdb->get_results( $wpacuGetValuesQuery, ARRAY_A );
|
89 |
+
|
90 |
+
foreach ( $wpacuMetaData as $wpacuValues ) {
|
91 |
+
$decodedValues = @json_decode( $wpacuValues['meta_value'], ARRAY_A );
|
92 |
+
|
93 |
+
if ( empty( $decodedValues ) ) {
|
94 |
+
continue;
|
95 |
+
}
|
96 |
+
|
97 |
+
// $refId is the ID for the targeted element from the meta table which could be: post, taxonomy ID or user ID
|
98 |
+
if ($tableName === $wpdb->postmeta) {
|
99 |
+
$refId = $wpacuValues['post_id'];
|
100 |
+
$refKey = 'post';
|
101 |
+
} elseif ($tableName === $wpdb->termmeta) {
|
102 |
+
$refId = $wpacuValues['term_id'];
|
103 |
+
$refKey = 'term';
|
104 |
+
} else {
|
105 |
+
$refId = $wpacuValues['user_id'];
|
106 |
+
$refKey = 'user';
|
107 |
+
}
|
108 |
+
|
109 |
+
if ( $wpacuValues['meta_key'] === '_' . $wpacuPluginId . '_no_load' ) {
|
110 |
+
foreach ( $decodedValues as $assetType => $assetHandles ) {
|
111 |
+
foreach ( $assetHandles as $assetHandle ) {
|
112 |
+
// Unload it on this page
|
113 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_on_this_page'][$refKey][] = $refId;
|
114 |
+
}
|
115 |
+
}
|
116 |
+
} elseif ( $wpacuValues['meta_key'] === '_' . $wpacuPluginId . '_load_exceptions' ) {
|
117 |
+
foreach ( $decodedValues as $assetType => $assetHandles ) {
|
118 |
+
foreach ( $assetHandles as $assetHandle ) {
|
119 |
+
// If bulk unloaded, 'Load it on this page'
|
120 |
+
$allHandles[ $assetType ][ $assetHandle ]['load_exception_on_this_page'][$refKey][] = $refId;
|
121 |
+
}
|
122 |
+
}
|
123 |
+
} elseif ( $wpacuValues['meta_key'] === '_' . $wpacuPluginId . '_data' ) {
|
124 |
+
if ( isset( $decodedValues['scripts'] ) && ! empty( $decodedValues['scripts'] ) ) {
|
125 |
+
foreach ( $decodedValues['scripts'] as $scriptHandle => $scriptData ) {
|
126 |
+
if ( isset( $scriptData['attributes'] ) && ! empty( $scriptData['attributes'] ) ) {
|
127 |
+
// async, defer attributes
|
128 |
+
$allHandles['scripts'][ $scriptHandle ]['script_attrs'][$refKey][$refId] = $scriptData['attributes'];
|
129 |
+
}
|
130 |
+
}
|
131 |
+
}
|
132 |
+
|
133 |
+
if ( isset( $decodedValues['scripts_attributes_no_load'] ) && ! empty( $decodedValues['scripts_attributes_no_load'] ) ) {
|
134 |
+
foreach ( $decodedValues['scripts_attributes_no_load'] as $scriptHandle => $scriptNoLoadAttrs ) {
|
135 |
+
$allHandles['scripts'][$scriptHandle]['attrs_no_load'][$refKey][$refId] = $scriptNoLoadAttrs;
|
136 |
+
}
|
137 |
+
}
|
138 |
+
}
|
139 |
+
}
|
140 |
+
}
|
141 |
+
|
142 |
+
/*
|
143 |
+
* Global (Site-wide) Rules: Preloading, Position changing, Unload via RegEx, etc.
|
144 |
+
*/
|
145 |
+
$wpacuGlobalData = get_option(WPACU_PLUGIN_ID . '_global_data');
|
146 |
+
$wpacuGlobalDataArray = @json_decode($wpacuGlobalData, ARRAY_A);
|
147 |
+
|
148 |
+
foreach (array('styles', 'scripts') as $assetType) {
|
149 |
+
foreach (array('preloads', 'positions', 'notes', 'ignore_child', 'everywhere', 'date', '404', 'search') as $dataType) {
|
150 |
+
if ( isset( $wpacuGlobalDataArray[ $assetType ][$dataType] ) && ! empty( $wpacuGlobalDataArray[ $assetType ][$dataType] ) ) {
|
151 |
+
foreach ( $wpacuGlobalDataArray[ $assetType ][$dataType] as $assetHandle => $dataValue ) {
|
152 |
+
if ($dataType === 'everywhere' && $assetType === 'scripts' && isset($dataValue['attributes'])) {
|
153 |
+
if (count($dataValue['attributes']) === 0) {
|
154 |
+
continue;
|
155 |
+
}
|
156 |
+
// async/defer applied site-wide
|
157 |
+
$allHandles[ $assetType ][ $assetHandle ]['script_site_wide_attrs'] = $dataValue['attributes'];
|
158 |
+
} elseif ($dataType !== 'everywhere' && $assetType === 'scripts' && isset($dataValue['attributes'])) {
|
159 |
+
// For date, 404, search pages
|
160 |
+
$allHandles[ $assetType ][ $assetHandle ]['script_attrs'][$dataType] = $dataValue['attributes'];
|
161 |
+
} else {
|
162 |
+
$allHandles[ $assetType ][ $assetHandle ][ $dataType ] = $dataValue;
|
163 |
+
}
|
164 |
+
}
|
165 |
+
}
|
166 |
+
}
|
167 |
+
|
168 |
+
foreach (array('unload_regex', 'load_regex') as $unloadType) {
|
169 |
+
if (isset($wpacuGlobalDataArray[$assetType][$unloadType]) && ! empty($wpacuGlobalDataArray[$assetType][$unloadType])) {
|
170 |
+
foreach ($wpacuGlobalDataArray[$assetType][$unloadType] as $assetHandle => $unloadData) {
|
171 |
+
if (isset($unloadData['enable'], $unloadData['value']) && $unloadData['enable'] && $unloadData['value']) {
|
172 |
+
$allHandles[ $assetType ][ $assetHandle ][$unloadType] = $unloadData['value'];
|
173 |
+
}
|
174 |
+
}
|
175 |
+
}
|
176 |
+
}
|
177 |
+
}
|
178 |
+
|
179 |
+
// Do not apply "async", "defer" exceptions (e.g. "defer" is applied site-wide, except the 404, search, date)
|
180 |
+
if (isset($wpacuGlobalDataArray['scripts_attributes_no_load']) && ! empty($wpacuGlobalDataArray['scripts_attributes_no_load'])) {
|
181 |
+
foreach ($wpacuGlobalDataArray['scripts_attributes_no_load'] as $unloadedIn => $unloadedInValues) {
|
182 |
+
foreach ($unloadedInValues as $assetHandle => $assetAttrsNoLoad) {
|
183 |
+
$allHandles['scripts'][$assetHandle]['attrs_no_load'][$unloadedIn] = $assetAttrsNoLoad;
|
184 |
+
}
|
185 |
+
}
|
186 |
+
}
|
187 |
+
|
188 |
+
/*
|
189 |
+
* Unload Site-Wide (Everywhere) Rules: Preloading, Position changing, Unload via RegEx, etc.
|
190 |
+
*/
|
191 |
+
$wpacuGlobalUnloadData = get_option(WPACU_PLUGIN_ID . '_global_unload');
|
192 |
+
$wpacuGlobalUnloadDataArray = @json_decode($wpacuGlobalUnloadData, ARRAY_A);
|
193 |
+
|
194 |
+
foreach (array('styles', 'scripts') as $assetType) {
|
195 |
+
if (isset($wpacuGlobalUnloadDataArray[$assetType]) && ! empty($wpacuGlobalUnloadDataArray[$assetType])) {
|
196 |
+
foreach ($wpacuGlobalUnloadDataArray[$assetType] as $assetHandle) {
|
197 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_site_wide'] = 1;
|
198 |
+
}
|
199 |
+
}
|
200 |
+
}
|
201 |
+
|
202 |
+
/*
|
203 |
+
* Bulk Unload Rules - post, page, custom post type (e.g. product, download), taxonomy (e.g. category), 404, date, etc.
|
204 |
+
*/
|
205 |
+
$wpacuBulkUnloadData = get_option(WPACU_PLUGIN_ID . '_bulk_unload');
|
206 |
+
$wpacuBulkUnloadDataArray = @json_decode($wpacuBulkUnloadData, ARRAY_A);
|
207 |
+
|
208 |
+
foreach (array('styles', 'scripts') as $assetType) {
|
209 |
+
if (isset($wpacuBulkUnloadDataArray[$assetType]) && ! empty($wpacuBulkUnloadDataArray[$assetType])) {
|
210 |
+
foreach ($wpacuBulkUnloadDataArray[$assetType] as $unloadBulkType => $unloadBulkValues) {
|
211 |
+
if (empty($unloadBulkValues)) {
|
212 |
+
continue;
|
213 |
+
}
|
214 |
+
|
215 |
+
// $unloadBulkType could be 'post_type', 'date', '404', 'taxonomy', 'search'
|
216 |
+
if ($unloadBulkType === 'post_type') {
|
217 |
+
foreach ($unloadBulkValues as $postType => $assetHandles) {
|
218 |
+
foreach ($assetHandles as $assetHandle) {
|
219 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_bulk']['post_type'][] = $postType;
|
220 |
+
}
|
221 |
+
}
|
222 |
+
} elseif (in_array($unloadBulkType, array('date', '404', 'search'))) {
|
223 |
+
foreach ($unloadBulkValues as $assetHandle) {
|
224 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_bulk'][$unloadBulkType] = 1;
|
225 |
+
}
|
226 |
+
} elseif ($unloadBulkType === 'taxonomy') {
|
227 |
+
foreach ($unloadBulkValues as $taxonomyType => $assetHandles) {
|
228 |
+
foreach ($assetHandles as $assetHandle) {
|
229 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_bulk']['taxonomy'][] = $taxonomyType;
|
230 |
+
}
|
231 |
+
}
|
232 |
+
} elseif ($unloadBulkType === 'author' && isset($unloadBulkValues['all']) && ! empty($unloadBulkValues['all'])) {
|
233 |
+
foreach ($unloadBulkValues['all'] as $assetHandle) {
|
234 |
+
$allHandles[ $assetType ][ $assetHandle ]['unload_bulk']['author'] = 1;
|
235 |
+
}
|
236 |
+
}
|
237 |
+
}
|
238 |
+
}
|
239 |
+
}
|
240 |
+
|
241 |
+
if (isset($allHandles['styles'])) {
|
242 |
+
ksort($allHandles['styles']);
|
243 |
+
}
|
244 |
+
|
245 |
+
if (isset($allHandles['scripts'])) {
|
246 |
+
ksort($allHandles['scripts']);
|
247 |
+
}
|
248 |
+
|
249 |
+
$this->data['handles'] = $allHandles;
|
250 |
+
|
251 |
+
if (isset($this->data['handles']['styles']) || isset($this->data['handles']['scripts'])) {
|
252 |
+
// Only fetch the assets information if there is something to be shown
|
253 |
+
// to avoid useless queries to the database
|
254 |
+
if ($assetsInfo = get_transient(WPACU_PLUGIN_ID . '_assets_info')) {
|
255 |
+
$this->data['assets_info'] = json_decode($assetsInfo, ARRAY_A);
|
256 |
+
}
|
257 |
+
}
|
258 |
+
|
259 |
+
Main::instance()->parseTemplate('admin-page-overview', $this->data, true);
|
260 |
+
}
|
261 |
+
|
262 |
+
/**
|
263 |
+
* @param $handle
|
264 |
+
* @param $assetType
|
265 |
+
* @param $data
|
266 |
+
* @param string $for ('default': bulk unloads, regex unloads)
|
267 |
+
*/
|
268 |
+
public static function renderHandleTd($handle, $assetType, $data, $for = 'default')
|
269 |
+
{
|
270 |
+
global $wp_version;
|
271 |
+
|
272 |
+
$handleData = '';
|
273 |
+
$isCoreFile = false; // default
|
274 |
+
|
275 |
+
if (isset($data['handles'][$assetType][$handle]) && $data['handles'][$assetType][$handle]) {
|
276 |
+
$handleData = $data['handles'][$assetType][$handle];
|
277 |
+
}
|
278 |
+
|
279 |
+
if ( $for === 'default' ) {
|
280 |
+
$src = (isset( $data['assets_info'][ $assetType ][ $handle ]['src'] ) && $data['assets_info'][ $assetType ][ $handle ]['src']) ? $data['assets_info'][ $assetType ][ $handle ]['src'] : false;
|
281 |
+
|
282 |
+
$isExternalSrc = true;
|
283 |
+
|
284 |
+
if (\WpAssetCleanUp\Misc::getLocalSrc($src)
|
285 |
+
|| strpos($src, '/?') !== false // Dynamic Local URL
|
286 |
+
|| strpos(str_replace(site_url(), '', $src), '?') === 0 // Starts with ? right after the site url (it's a local URL)
|
287 |
+
) {
|
288 |
+
$isExternalSrc = false;
|
289 |
+
$isCoreFile = Misc::isCoreFile($data['assets_info'][$assetType][$handle]);
|
290 |
+
}
|
291 |
+
|
292 |
+
if (strpos($src, '/') === 0 && strpos($src, '//') !== 0) {
|
293 |
+
$src = site_url() . $src;
|
294 |
+
}
|
295 |
+
|
296 |
+
$ver = (isset( $data['assets_info'][ $assetType ][ $handle ]['ver'] ) && $data['assets_info'][ $assetType ][ $handle ]['ver']) ? $data['assets_info'][ $assetType ][ $handle ]['ver'] : $wp_version;
|
297 |
+
?>
|
298 |
+
<strong><span style="color: green;"><?php echo $handle; ?></span></strong>
|
299 |
+
<small><em>v<?php echo $ver; ?></em></small>
|
300 |
+
<?php
|
301 |
+
if ($isCoreFile) {
|
302 |
+
?>
|
303 |
+
<span title="WordPress Core File" style="font-size: 15px; vertical-align: middle;" class="dashicons dashicons-wordpress-alt wpacu-tooltip"></span>
|
304 |
+
<?php
|
305 |
+
}
|
306 |
+
?>
|
307 |
+
<?php
|
308 |
+
// [wpacu_pro]
|
309 |
+
// If called from "Bulk Changes" -> "Preloads"
|
310 |
+
$preloadedStatus = isset($data['assets_info'][ $assetType ][ $handle ]['preloaded_status']) ? $data['assets_info'][ $assetType ][ $handle ]['preloaded_status'] : false;
|
311 |
+
if ($preloadedStatus === 'async') { echo ' (<strong><em>'.$preloadedStatus.'</em></strong>)'; }
|
312 |
+
// [/wpacu_pro]
|
313 |
+
|
314 |
+
$handleExtras = array();
|
315 |
+
|
316 |
+
// If called from "Overview"
|
317 |
+
if (isset($handleData['preloads']) && $handleData['preloads']) {
|
318 |
+
$handleExtras[0] = '<span style="font-weight: 600;">Preloaded</span>';
|
319 |
+
|
320 |
+
if ($handleData['preloads'] === 'async') {
|
321 |
+
$handleExtras[0] .= ' (async)';
|
322 |
+
}
|
323 |
+
}
|
324 |
+
|
325 |
+
if (isset($handleData['positions']) && $handleData['positions']) {
|
326 |
+
$handleExtras[1] = '<span style="color: #004567; font-weight: 600;">Moved to <code><'.$handleData['positions'].'></code></span>';
|
327 |
+
}
|
328 |
+
?>
|
329 |
+
|
330 |
+
<?php
|
331 |
+
/*
|
332 |
+
* 1) Per page (homepage, a post, a category, etc.)
|
333 |
+
* Async, Defer attributes
|
334 |
+
*/
|
335 |
+
// Per home page
|
336 |
+
if (isset($handleData['script_attrs']['home_page']) && ! empty($handleData['script_attrs']['home_page'])) {
|
337 |
+
ksort($handleData['script_attrs']['home_page']);
|
338 |
+
$handleExtras[2] = 'Homepage attributes: <strong>'.implode(', ', $handleData['script_attrs']['home_page']).'</strong>';
|
339 |
+
}
|
340 |
+
|
341 |
+
// date archive pages
|
342 |
+
if (isset($handleData['script_attrs']['date']) && ! empty($handleData['script_attrs']['date'])) {
|
343 |
+
ksort($handleData['script_attrs']['date']);
|
344 |
+
$handleExtras[22] = 'Date archive attributes: <strong>'.implode(', ', $handleData['script_attrs']['date']).'</strong>';
|
345 |
+
}
|
346 |
+
|
347 |
+
// 404 page
|
348 |
+
if (isset($handleData['script_attrs']['404']) && ! empty($handleData['script_attrs']['404'])) {
|
349 |
+
ksort($handleData['script_attrs']['404']);
|
350 |
+
$handleExtras[23] = '404 Not Found attributes: <strong>'.implode(', ', $handleData['script_attrs']['404']).'</strong>';
|
351 |
+
}
|
352 |
+
|
353 |
+
// search results page
|
354 |
+
if (isset($handleData['script_attrs']['search']) && ! empty($handleData['script_attrs']['search'])) {
|
355 |
+
ksort($handleData['script_attrs']['search']);
|
356 |
+
$handleExtras[24] = '404 Not Found attributes: <strong>'.implode(', ', $handleData['script_attrs']['search']).'</strong>';
|
357 |
+
}
|
358 |
+
|
359 |
+
// Per post page
|
360 |
+
if (isset($handleData['script_attrs']['post']) && ! empty($handleData['script_attrs']['post'])) {
|
361 |
+
$handleExtras[3] = 'Per post attributes: ';
|
362 |
+
|
363 |
+
$postsList = '';
|
364 |
+
|
365 |
+
ksort($handleData['script_attrs']['post']);
|
366 |
+
|
367 |
+
foreach ($handleData['script_attrs']['post'] as $postId => $attrList) {
|
368 |
+
$postData = get_post($postId);
|
369 |
+
$postTitle = $postData->post_title;
|
370 |
+
$postType = $postData->post_type;
|
371 |
+
$postsList .= '<a title="Post Title: '.$postTitle.', Post Type: '.$postType.'" class="wpacu-tooltip" target="_blank" href="'.admin_url('post.php?post='.$postId.'&action=edit').'">'.$postId.'</a> - <strong>'.implode(', ', $attrList).'</strong> / ';
|
372 |
+
}
|
373 |
+
|
374 |
+
$handleExtras[3] .= rtrim($postsList, ' / ');
|
375 |
+
}
|
376 |
+
|
377 |
+
// user archive page (specific author)
|
378 |
+
if (isset($handleData['script_attrs']['user']) && ! empty($handleData['script_attrs']['user'])) {
|
379 |
+
$handleExtras[31] = 'Per author page attributes: ';
|
380 |
+
|
381 |
+
$authorPagesList = '';
|
382 |
+
|
383 |
+
ksort($handleData['script_attrs']['user']);
|
384 |
+
|
385 |
+
foreach ($handleData['script_attrs']['user'] as $userId => $attrList) {
|
386 |
+
$authorLink = get_author_posts_url(get_the_author_meta('ID', $userId));
|
387 |
+
$authorRelLink = str_replace(site_url(), '', $authorLink);
|
388 |
+
|
389 |
+
$authorPagesList .= '<a target="_blank" href="'.$authorLink.'">'.$authorRelLink.'</a> - <strong>'.implode(', ', $attrList).'</strong> | ';
|
390 |
+
}
|
391 |
+
|
392 |
+
$authorPagesList = trim($authorPagesList, ' | ');
|
393 |
+
|
394 |
+
$handleExtras[31] .= rtrim($authorPagesList, ' / ');
|
395 |
+
}
|
396 |
+
|
397 |
+
// Per category page
|
398 |
+
if (isset($handleData['script_attrs']['term']) && ! empty($handleData['script_attrs']['term'])) {
|
399 |
+
$handleExtras[33] = 'Per taxonomy attributes: ';
|
400 |
+
|
401 |
+
$taxPagesList = '';
|
402 |
+
|
403 |
+
foreach ($handleData['script_attrs']['term'] as $termId => $attrList) {
|
404 |
+
$taxData = get_term( $termId );
|
405 |
+
$taxonomy = $taxData->taxonomy;
|
406 |
+
$termLink = get_term_link( $taxData, $taxonomy );
|
407 |
+
$termRelLink = str_replace( site_url(), '', $termLink );
|
408 |
+
|
409 |
+
$taxPagesList .= '<a href="' . $termRelLink . '">' . $termRelLink . '</a> - <strong>'.implode(', ', $attrList).'</strong> | ';
|
410 |
+
}
|
411 |
+
|
412 |
+
$taxPagesList = trim($taxPagesList, ' | ');
|
413 |
+
|
414 |
+
$handleExtras[33] .= rtrim($taxPagesList, ' / ');
|
415 |
+
}
|
416 |
+
|
417 |
+
/*
|
418 |
+
* 2) Site-wide type
|
419 |
+
* Any async, defer site-wide attributes? Exceptions will be also shown
|
420 |
+
*/
|
421 |
+
if (isset($handleData['script_site_wide_attrs'])) {
|
422 |
+
$handleExtras[4] = 'Site-wide attributes: ';
|
423 |
+
foreach ( $handleData['script_site_wide_attrs'] as $attrValue ) {
|
424 |
+
$handleExtras[4] .= '<strong>' . $attrValue . '</strong>';
|
425 |
+
|
426 |
+
// Are there any exceptions? e.g. async, defer unloaded site-wide, but loaded on the homepage
|
427 |
+
if ( isset( $handleData['attrs_no_load'] ) && ! empty( $handleData['attrs_no_load'] ) ) {
|
428 |
+
// $attrSetIn could be 'home_page', 'term', 'user', 'date', '404', 'search'
|
429 |
+
$handleExtras[4] .= ' <em>(with exceptions from applying added for these pages: ';
|
430 |
+
|
431 |
+
$handleAttrsExceptionsList = '';
|
432 |
+
|
433 |
+
foreach ( $handleData['attrs_no_load'] as $attrSetIn => $attrSetValues ) {
|
434 |
+
if ( $attrSetIn === 'home_page' && in_array($attrValue, $attrSetValues) ) {
|
435 |
+
$handleAttrsExceptionsList .= ' Homepage, ';
|
436 |
+
}
|
437 |
+
|
438 |
+
if ( $attrSetIn === 'date' && in_array($attrValue, $attrSetValues) ) {
|
439 |
+
$handleAttrsExceptionsList .= ' Date Archive, ';
|
440 |
+
}
|
441 |
+
|
442 |
+
if ( $attrSetIn === '404' && in_array($attrValue, $attrSetValues) ) {
|
443 |
+
$handleAttrsExceptionsList .= ' 404 Not Found, ';
|
444 |
+
}
|
445 |
+
|
446 |
+
if ( $attrSetIn === 'search' && in_array($attrValue, $attrSetValues) ) {
|
447 |
+
$handleAttrsExceptionsList .= ' Search Results, ';
|
448 |
+
}
|
449 |
+
|
450 |
+
// Post pages such as posts, pages, product (WooCommerce), download (Easy Digital Downloads), etc.
|
451 |
+
if ( $attrSetIn === 'post' ) {
|
452 |
+
$postPagesList = '';
|
453 |
+
|
454 |
+
foreach ( $attrSetValues as $postId => $attrSetValuesTwo ) {
|
455 |
+
if (! in_array($attrValue, $attrSetValuesTwo)) {
|
456 |
+
continue;
|
457 |
+
}
|
458 |
+
|
459 |
+
$postData = get_post($postId);
|
460 |
+
$postTitle = $postData->post_title;
|
461 |
+
$postType = $postData->post_type;
|
462 |
+
|
463 |
+
$postPagesList .= '<a title="Post Title: '.$postTitle.', Post Type: '.$postType.'" class="wpacu-tooltip" target="_blank" href="'.admin_url('post.php?post='.$postId.'&action=edit').'">'.$postId.'</a> | ';
|
464 |
+
}
|
465 |
+
|
466 |
+
if ($postPagesList) {
|
467 |
+
$postPagesList = trim( $postPagesList, ' | ' ).', ';
|
468 |
+
$handleAttrsExceptionsList .= $postPagesList;
|
469 |
+
}
|
470 |
+
}
|
471 |
+
|
472 |
+
// Taxonomy pages such as category archive, product category in WooCommerce
|
473 |
+
if ( $attrSetIn === 'term' ) {
|
474 |
+
$taxPagesList = '';
|
475 |
+
|
476 |
+
foreach ( $attrSetValues as $termId => $attrSetValuesTwo ) {
|
477 |
+
if (! in_array($attrValue, $attrSetValuesTwo)) {
|
478 |
+
continue;
|
479 |
+
}
|
480 |
+
|
481 |
+
$taxData = get_term( $termId );
|
482 |
+
$taxonomy = $taxData->taxonomy;
|
483 |
+
$termLink = get_term_link( $taxData, $taxonomy );
|
484 |
+
$termRelLink = str_replace( site_url(), '', $termLink );
|
485 |
+
|
486 |
+
$taxPagesList .= '<a href="' . $termRelLink . '">' . $termRelLink . '</a> | ';
|
487 |
+
}
|
488 |
+
|
489 |
+
if ($taxPagesList) {
|
490 |
+
$taxPagesList = trim( $taxPagesList, ' | ' ) . ', ';
|
491 |
+
$handleAttrsExceptionsList .= $taxPagesList;
|
492 |
+
}
|
493 |
+
}
|
494 |
+
|
495 |
+
// Author archive pages (e.g. /author/john/page/2/)
|
496 |
+
if ($attrSetIn === 'user') {
|
497 |
+
$authorPagesList = '';
|
498 |
+
|
499 |
+
foreach ( $attrSetValues as $userId => $attrSetValuesTwo ) {
|
500 |
+
if (! in_array($attrValue, $attrSetValuesTwo)) {
|
501 |
+
continue;
|
502 |
+
}
|
503 |
+
|
504 |
+
$authorLink = get_author_posts_url(get_the_author_meta('ID', $userId));
|
505 |
+
$authorRelLink = str_replace(site_url(), '', $authorLink);
|
506 |
+
|
507 |
+
$authorPagesList .= '<a target="_blank" href="'.$authorLink.'">'.$authorRelLink.'</a> | ';
|
508 |
+
}
|
509 |
+
|
510 |
+
if ($authorPagesList) {
|
511 |
+
$authorPagesList = trim( $authorPagesList, ' | ' ).', ';
|
512 |
+
$handleAttrsExceptionsList .= $authorPagesList;
|
513 |
+
}
|
514 |
+
}
|
515 |
+
}
|
516 |
+
|
517 |
+
$handleAttrsExceptionsList = trim($handleAttrsExceptionsList, ', ');
|
518 |
+
|
519 |
+
$handleExtras[4] .= $handleAttrsExceptionsList;
|
520 |
+
$handleExtras[4] .= '</em>), ';
|
521 |
+
}
|
522 |
+
}
|
523 |
+
|
524 |
+
$handleExtras[4] = trim($handleExtras[4], ', ');
|
525 |
+
}
|
526 |
+
|
527 |
+
if (! empty($handleExtras)) {
|
528 |
+
echo '<small>' . implode( ' <span style="font-weight: 300; color: grey;">/</span> ', $handleExtras ) . '</small>';
|
529 |
+
}
|
530 |
+
?>
|
531 |
+
|
532 |
+
<?php if ( $src ) {
|
533 |
+
$appendAfterSrc = strpos($src, '?') === false ? '?ver='.$ver : '&wpacu_ver='.$ver;
|
534 |
+
?>
|
535 |
+
<div><a <?php if ($isExternalSrc) { ?> data-wpacu-external-source="<?php echo $src . $appendAfterSrc; ?>" <?php } ?> href="<?php echo $src . $appendAfterSrc; ?>" target="_blank"><small><?php echo str_replace( site_url(), '', $src ); ?></small></a> <?php if ($isExternalSrc) { ?><span data-wpacu-external-source-status></span><?php } ?></div>
|
536 |
+
<?php } ?>
|
537 |
+
<?php
|
538 |
+
// Any note?
|
539 |
+
if (isset($handleData['notes']) && $handleData['notes']) {
|
540 |
+
?>
|
541 |
+
<div><small><span class="dashicons dashicons-welcome-write-blog"></span> Note: <em><?php echo ucfirst(htmlspecialchars($data['handles'][$assetType][$handle]['notes'])); ?></em></small></div>
|
542 |
+
<?php
|
543 |
+
}
|
544 |
+
?>
|
545 |
+
<?php
|
546 |
+
}
|
547 |
+
}
|
548 |
+
|
549 |
+
/**
|
550 |
+
* @param $handleData
|
551 |
+
*
|
552 |
+
* @return mixed
|
553 |
+
*/
|
554 |
+
public static function renderHandleChangesOutput($handleData)
|
555 |
+
{
|
556 |
+
$handleChangesOutput = array();
|
557 |
+
$anyGroupPostUnloadRule = false; // default (turns to true if any unload rule that applies on multiple pages for posts is set)
|
558 |
+
$anyLoadExceptionRule = false; // default (turns to true if any load exception rule is set)
|
559 |
+
|
560 |
+
// Site-wide
|
561 |
+
if (isset($handleData['unload_site_wide'])) {
|
562 |
+
$handleChangesOutput['site_wide'] = '<span style="color: #cc0000;">Unloaded site-wide (everywhere)</span>';
|
563 |
+
$anyGroupPostUnloadRule = true;
|
564 |
+
}
|
565 |
+
|
566 |
+
// Bulk unload (on all posts, categories, etc.)
|
567 |
+
if (isset($handleData['unload_bulk'])) {
|
568 |
+
$handleChangesOutput['bulk'] = '';
|
569 |
+
|
570 |
+
if (isset($handleData['unload_bulk']['post_type'])) {
|
571 |
+
foreach ($handleData['unload_bulk']['post_type'] as $postType) {
|
572 |
+
$handleChangesOutput['bulk'] .= ' Unloaded on all pages of <strong>' . $postType . '</strong> post type, ';
|
573 |
+
$anyGroupPostUnloadRule = true;
|
574 |
+
}
|
575 |
+
}
|
576 |
+
|
577 |
+
if (isset($handleData['unload_bulk']['taxonomy']) && ! empty($handleData['unload_bulk']['taxonomy'])) {
|
578 |
+
$handleChangesOutput['bulk'] .= ' Unloaded for all pages belonging to the following taxonomies: <strong>'.implode(', ', $handleData['unload_bulk']['taxonomy']).'</strong>, ';
|
579 |
+
}
|
580 |
+
|
581 |
+
if (isset($handleData['unload_bulk']['date']) || isset($handleData['unload_bulk']['404']) || isset($handleData['unload_bulk']['search'])) {
|
582 |
+
foreach ($handleData['unload_bulk'] as $bulkType => $bulkValue) {
|
583 |
+
if ($bulkType === 'date' && $bulkValue === 1) {
|
584 |
+
$handleChangesOutput['bulk'] .= ' Unloaded on all archive `Date` pages (any date), ';
|
585 |
+
}
|
586 |
+
if ($bulkType === 'search' && $bulkValue === 1) {
|
587 |
+
$handleChangesOutput['bulk'] .= ' Unloaded on `Search` page (any keyword), ';
|
588 |
+
}
|
589 |
+
if ($bulkType === '404' && $bulkValue === 1) {
|
590 |
+
$handleChangesOutput['bulk'] .= ' Unloaded on `404 Not Found` page (any URL), ';
|
591 |
+
}
|
592 |
+
}
|
593 |
+
}
|
594 |
+
|
595 |
+
if (isset($handleData['unload_bulk']['author']) && $handleData['unload_bulk']['author']) {
|
596 |
+
$handleChangesOutput['bulk'] .= ' Unloaded on all author pages, ';
|
597 |
+
}
|
598 |
+
|
599 |
+
$handleChangesOutput['bulk'] = rtrim($handleChangesOutput['bulk'], ', ');
|
600 |
+
|
601 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
602 |
+
$handleChangesOutput['bulk'] .= ' * <em>overwritten by the site-wide rule</em>';
|
603 |
+
}
|
604 |
+
}
|
605 |
+
|
606 |
+
if (isset($handleData['unload_on_home_page']) && $handleData['unload_on_home_page']) {
|
607 |
+
$handleChangesOutput['on_home_page'] = '<span style="color: #cc0000;">Unloaded</span> on the <a target="_blank" href="'.Misc::getPageUrl(0).'">homepage</a>';
|
608 |
+
|
609 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
610 |
+
$handleChangesOutput['on_home_page'] .= ' * <em>overwritten by the site-wide rule</em>';
|
611 |
+
}
|
612 |
+
}
|
613 |
+
|
614 |
+
if (isset($handleData['load_exception_on_home_page']) && $handleData['load_exception_on_home_page']) {
|
615 |
+
$handleChangesOutput['load_exception_on_home_page'] = '<span style="color: green;">Loaded (as an exception)</span> on the <a target="_blank" href="'.Misc::getPageUrl(0).'">homepage</a>';
|
616 |
+
}
|
617 |
+
|
618 |
+
// On this page: post, page, custom post type
|
619 |
+
if (isset($handleData['unload_on_this_page']['post'])) {
|
620 |
+
$handleChangesOutput['on_this_post'] = 'Unloaded in the following posts: ';
|
621 |
+
|
622 |
+
$postsList = '';
|
623 |
+
|
624 |
+
sort($handleData['unload_on_this_page']['post']);
|
625 |
+
|
626 |
+
foreach ($handleData['unload_on_this_page']['post'] as $postId) {
|
627 |
+
$postData = get_post($postId);
|
628 |
+
$postTitle = $postData->post_title;
|
629 |
+
$postType = $postData->post_type;
|
630 |
+
$postsList .= '<a title="Post Title: '.$postTitle.', Post Type: '.$postType.'" class="wpacu-tooltip" target="_blank" href="'.admin_url('post.php?post='.$postId.'&action=edit').'">'.$postId.'</a>, ';
|
631 |
+
}
|
632 |
+
|
633 |
+
$handleChangesOutput['on_this_post'] .= rtrim($postsList, ', ');
|
634 |
+
|
635 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
636 |
+
$handleChangesOutput['on_this_post'] .= ' * <em>overwritten by the site-wide rule</em>';
|
637 |
+
}
|
638 |
+
}
|
639 |
+
|
640 |
+
// Unload on this page: taxonomy such as 'category', 'product_cat' (specific one, not all categories)
|
641 |
+
if (isset($handleData['unload_on_this_page']['term'])) {
|
642 |
+
$handleChangesOutput['on_this_tax'] = '<span style="color: #cc0000;">Unloaded</span> in the following pages: ';
|
643 |
+
|
644 |
+
$taxList = '';
|
645 |
+
|
646 |
+
sort($handleData['unload_on_this_page']['term']);
|
647 |
+
|
648 |
+
foreach ($handleData['unload_on_this_page']['term'] as $termId) {
|
649 |
+
$taxData = get_term($termId);
|
650 |
+
$taxonomy = $taxData->taxonomy;
|
651 |
+
$termLink = get_term_link($taxData, $taxonomy);
|
652 |
+
$termRelLink = str_replace(site_url(), '', $termLink);
|
653 |
+
|
654 |
+
$taxList .= '<a target="_blank" href="'.$termLink.'">'.$termRelLink.'</a>, ';
|
655 |
+
}
|
656 |
+
|
657 |
+
$handleChangesOutput['on_this_tax'] .= rtrim($taxList, ', ');
|
658 |
+
|
659 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
660 |
+
$handleChangesOutput['on_this_tax'] .= ' * <em>overwritten by the site-wide rule</em>';
|
661 |
+
}
|
662 |
+
}
|
663 |
+
|
664 |
+
if (isset($handleData['unload_on_this_page']['user'])) {
|
665 |
+
$handleChangesOutput['on_this_tax'] = '<span style="color: #cc0000;">Unloaded</span> in the following author pages: ';
|
666 |
+
|
667 |
+
$taxList = '';
|
668 |
+
|
669 |
+
sort($handleData['unload_on_this_page']['user']);
|
670 |
+
|
671 |
+
foreach ($handleData['unload_on_this_page']['user'] as $userId) {
|
672 |
+
$authorLink = get_author_posts_url(get_the_author_meta('ID', $userId));
|
673 |
+
$authorRelLink = str_replace(site_url(), '', $authorLink);
|
674 |
+
|
675 |
+
$taxList .= '<a target="_blank" href="'.$authorLink.'">'.$authorRelLink.'</a>, ';
|
676 |
+
}
|
677 |
+
|
678 |
+
$handleChangesOutput['on_this_tax'] .= rtrim($taxList, ', ');
|
679 |
+
|
680 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
681 |
+
$handleChangesOutput['on_this_tax'] .= ' * <em>overwritten by the site-wide rule</em>';
|
682 |
+
}
|
683 |
+
}
|
684 |
+
|
685 |
+
// Unload via RegEx
|
686 |
+
if (isset($handleData['unload_regex']) && $handleData['unload_regex']) {
|
687 |
+
$handleChangesOutput['unloaded_via_regex'] = '<span style="color: #cc0000;">Unloads if</span> the request URI (from the URL) matches this RegEx: <code>'.($handleData['unload_regex']).'</code>';
|
688 |
+
|
689 |
+
if (isset($handleChangesOutput['site_wide'])) {
|
690 |
+
$handleChangesOutput['unloaded_via_regex'] .= ' * <em>overwritten by the site-wide rule</em>';
|
691 |
+
}
|
692 |
+
|
693 |
+
$anyGroupPostUnloadRule = true;
|
694 |
+
}
|
695 |
+
|
696 |
+
if (isset($handleData['ignore_child']) && $handleData['ignore_child']) {
|
697 |
+
$handleChangesOutput['ignore_child'] = 'If unloaded by any rule, ignore dependencies and keep its "children" loaded';
|
698 |
+
}
|
699 |
+
|
700 |
+
// Load exceptions? Per page, via RegEx
|
701 |
+
if (isset($handleData['load_exception_on_this_page']['post'])) {
|
702 |
+
$handleChangesOutput['load_exception_on_this_post'] = '<span style="color: green;">Loaded (as an exception)</span> in the following posts: ';
|
703 |
+
|
704 |
+
$postsList = '';
|
705 |
+
|
706 |
+
sort($handleData['load_exception_on_this_page']['post']);
|
707 |
+
|
708 |
+
foreach ($handleData['load_exception_on_this_page']['post'] as $postId) {
|
709 |
+
$postData = get_post($postId);
|
710 |
+
$postTitle = $postData->post_title;
|
711 |
+
$postType = $postData->post_type;
|
712 |
+
$postsList .= '<a title="Post Title: '.$postTitle.', Post Type: '.$postType.'" class="wpacu-tooltip" target="_blank" href="'.admin_url('post.php?post='.$postId.'&action=edit').'">'.$postId.'</a>, ';
|
713 |
+
}
|
714 |
+
|
715 |
+
$handleChangesOutput['load_exception_on_this_post'] .= rtrim($postsList, ', ');
|
716 |
+
$anyLoadExceptionRule = true;
|
717 |
+
}
|
718 |
+
|
719 |
+
if (isset($handleData['load_regex']) && $handleData['load_regex']) {
|
720 |
+
if (isset($handleChangesOutput['load_exception_on_this_post'])) {
|
721 |
+
$textToShow = ' and also if the request URI (from the URL) matches this RegEx';
|
722 |
+
} else {
|
723 |
+
$textToShow = '<span style="color: green;">Loaded (as an exception)</span> if the request URI (from the URL) matches this RegEx';
|
724 |
+
}
|
725 |
+
|
726 |
+
$handleChangesOutput['load_exception_regex'] = $textToShow.': <code>'.$handleData['load_regex'].'</code>';
|
727 |
+
$anyLoadExceptionRule = true;
|
728 |
+
}
|
729 |
+
|
730 |
+
// Since more than one load exception rule is set, merge them on the same row to save space and avoid duplicated words
|
731 |
+
if (isset($handleChangesOutput['load_exception_on_this_post'], $handleChangesOutput['load_exception_regex'])) {
|
732 |
+
$handleChangesOutput['load_exception_all'] = $handleChangesOutput['load_exception_on_this_post'] . $handleChangesOutput['load_exception_regex'];
|
733 |
+
unset($handleChangesOutput['load_exception_on_this_post'], $handleChangesOutput['load_exception_regex']);
|
734 |
+
}
|
735 |
+
|
736 |
+
if (! $anyGroupPostUnloadRule && $anyLoadExceptionRule) {
|
737 |
+
$handleChangesOutput['load_exception_notice'] = '<p><em><small><strong>Note:</strong> Although a load exception rule is added, it is not relevant as there are no rules that would work together with it (e.g. unloaded site-wide, on all posts). This exception can be removed as the file is loaded anyway in all pages.</small></em></p>';
|
738 |
+
}
|
739 |
+
|
740 |
+
return $handleChangesOutput;
|
741 |
+
}
|
742 |
+
}
|
classes/OwnAssets.php
CHANGED
@@ -94,36 +94,43 @@ class OwnAssets
|
|
94 |
*
|
95 |
*/
|
96 |
public function inlineAdminCode()
|
97 |
-
|
98 |
?>
|
99 |
<style type="text/css">
|
100 |
-
.menu-top.toplevel_page_wpassetcleanup_getting_started .wp-menu-image > img {
|
101 |
-
|
102 |
-
position: absolute;
|
103 |
-
left: 8px;
|
104 |
-
top: -4px;
|
105 |
-
}
|
106 |
-
|
107 |
-
.plugin-title .opt-in-or-opt-out.wp-asset-clean-up {
|
108 |
-
display: none;
|
109 |
-
}
|
110 |
</style>
|
111 |
-
|
112 |
-
|
113 |
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
{
|
119 |
-
global $post;
|
120 |
|
121 |
if (! Menu::userCanManageAssets()) {
|
122 |
return;
|
123 |
}
|
124 |
|
125 |
-
|
126 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
127 |
|
128 |
// Only load the plugin's assets when they are needed
|
129 |
// This an example of assets that are correctly loaded in WordPress
|
@@ -168,15 +175,14 @@ class OwnAssets
|
|
168 |
return;
|
169 |
}
|
170 |
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
}
|
176 |
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
|
181 |
/**
|
182 |
*
|
@@ -197,6 +203,7 @@ class OwnAssets
|
|
197 |
$page = Misc::getVar('get', 'page');
|
198 |
$pageRequestFor = Misc::getVar('get', 'wpacu_for') ?: 'homepage';
|
199 |
|
|
|
200 |
$getPostId = (isset($_GET['post'], $_GET['action']) && $_GET['action'] === 'edit' && $pagenow === 'post.php') ? (int)$_GET['post'] : '';
|
201 |
|
202 |
$postId = isset($post->ID) ? $post->ID : 0;
|
@@ -227,6 +234,7 @@ HTML;
|
|
227 |
|
228 |
$wpacuObjectData = array(
|
229 |
'plugin_name' => WPACU_PLUGIN_ID,
|
|
|
230 |
'reload_icon' => $svgReloadIcon,
|
231 |
'reload_msg' => sprintf(__('Reloading %s CSS & JS list', 'wp-asset-clean-up'), '<strong style="margin: 0 4px;">' . WPACU_PLUGIN_TITLE . '</strong>'),
|
232 |
'dom_get_type' => Main::$domGetType,
|
@@ -352,6 +360,31 @@ JS;
|
|
352 |
wp_add_inline_script(WPACU_PLUGIN_ID . '-chosen-script', $chosenScriptInline);
|
353 |
// [End] Chosen Script
|
354 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
355 |
}
|
356 |
|
357 |
/**
|
@@ -377,7 +410,8 @@ JS;
|
|
377 |
WPACU_PLUGIN_ID . '-script',
|
378 |
'wpacu_object',
|
379 |
apply_filters('wpacu_object_data', array(
|
380 |
-
'ajax_url' => admin_url('admin-ajax.php')
|
|
|
381 |
))
|
382 |
);
|
383 |
// [/wpacu_pro]
|
94 |
*
|
95 |
*/
|
96 |
public function inlineAdminCode()
|
97 |
+
{
|
98 |
?>
|
99 |
<style type="text/css">
|
100 |
+
.menu-top.toplevel_page_wpassetcleanup_getting_started .wp-menu-image > img { width: 26px; position: absolute; left: 8px; top: -4px; }
|
101 |
+
.plugin-title .opt-in-or-opt-out.wp-asset-clean-up { display: none; }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
</style>
|
103 |
+
<?php
|
104 |
+
}
|
105 |
|
106 |
+
/**
|
107 |
+
*
|
108 |
+
*/
|
109 |
+
public function stylesAndScriptsForAdmin()
|
110 |
{
|
111 |
+
global $post, $pagenow;
|
112 |
|
113 |
if (! Menu::userCanManageAssets()) {
|
114 |
return;
|
115 |
}
|
116 |
|
117 |
+
// Is the user inside the Dashboard (edit post/page mode)?
|
118 |
+
// Could be post, page, custom post type (e.g. product, download)
|
119 |
+
$getPostId = (isset($_GET['post'], $_GET['action']) && $_GET['action'] === 'edit' && $pagenow === 'post.php') ? (int)Misc::getVar('get', 'post') : '';
|
120 |
+
|
121 |
+
if ($getPostId && Main::instance()->settings['hide_assets_meta_box']) {
|
122 |
+
// No point in loading the plugin JS if the management meta box is not shown
|
123 |
+
return;
|
124 |
+
}
|
125 |
+
|
126 |
+
// Were the meta boxes hidden for particular post types?
|
127 |
+
// There's no point in showing any plugin's CSS/JS there
|
128 |
+
if (isset($post->post_type) && in_array($post->post_type, MetaBoxes::hideMetaBoxesForPostTypes())) {
|
129 |
+
return;
|
130 |
+
}
|
131 |
+
|
132 |
+
// This refers only to the Dashboard pages generated by the plugin
|
133 |
+
$page = Misc::getVar('get', 'page');
|
134 |
|
135 |
// Only load the plugin's assets when they are needed
|
136 |
// This an example of assets that are correctly loaded in WordPress
|
175 |
return;
|
176 |
}
|
177 |
|
178 |
+
// Do not load any CSS & JS belonging to Asset CleanUp if in "Elementor" preview
|
179 |
+
if (Main::instance()->isFrontendEditView && array_key_exists('elementor-preview', $_GET) && $_GET['elementor-preview']) {
|
180 |
+
return;
|
181 |
+
}
|
|
|
182 |
|
183 |
+
$this->enqueuePublicStyles();
|
184 |
+
$this->enqueuePublicScripts();
|
185 |
+
}
|
186 |
|
187 |
/**
|
188 |
*
|
203 |
$page = Misc::getVar('get', 'page');
|
204 |
$pageRequestFor = Misc::getVar('get', 'wpacu_for') ?: 'homepage';
|
205 |
|
206 |
+
// Is within the Dashboard (edit post/page mode)?
|
207 |
$getPostId = (isset($_GET['post'], $_GET['action']) && $_GET['action'] === 'edit' && $pagenow === 'post.php') ? (int)$_GET['post'] : '';
|
208 |
|
209 |
$postId = isset($post->ID) ? $post->ID : 0;
|
234 |
|
235 |
$wpacuObjectData = array(
|
236 |
'plugin_name' => WPACU_PLUGIN_ID,
|
237 |
+
'plugin_id' => WPACU_PLUGIN_ID,
|
238 |
'reload_icon' => $svgReloadIcon,
|
239 |
'reload_msg' => sprintf(__('Reloading %s CSS & JS list', 'wp-asset-clean-up'), '<strong style="margin: 0 4px;">' . WPACU_PLUGIN_TITLE . '</strong>'),
|
240 |
'dom_get_type' => Main::$domGetType,
|
360 |
wp_add_inline_script(WPACU_PLUGIN_ID . '-chosen-script', $chosenScriptInline);
|
361 |
// [End] Chosen Script
|
362 |
}
|
363 |
+
|
364 |
+
if (in_array($page, array(WPACU_PLUGIN_ID . '_overview', WPACU_PLUGIN_ID . '_bulk_unloads'))) {
|
365 |
+
// [Start] Tooltipster Style
|
366 |
+
wp_enqueue_style(
|
367 |
+
WPACU_PLUGIN_ID . '-tooltipster-style',
|
368 |
+
plugins_url('/assets/tooltipster/tooltipster.bundle.min.css', WPACU_PLUGIN_FILE),
|
369 |
+
array(),
|
370 |
+
1
|
371 |
+
);
|
372 |
+
// [End] Tooltipster Style
|
373 |
+
|
374 |
+
// [Start] Tooltipster Script
|
375 |
+
wp_enqueue_script(
|
376 |
+
WPACU_PLUGIN_ID . '-tooltipster-script',
|
377 |
+
plugins_url('/assets/tooltipster/tooltipster.bundle.min.js', WPACU_PLUGIN_FILE),
|
378 |
+
array('jquery'),
|
379 |
+
1
|
380 |
+
);
|
381 |
+
|
382 |
+
$tooltipsterScriptInline = <<<JS
|
383 |
+
jQuery(document).ready(function($) { $('.wpacu-tooltip').tooltipster({ contentCloning: true, delay: 0 }); });
|
384 |
+
JS;
|
385 |
+
wp_add_inline_script(WPACU_PLUGIN_ID . '-tooltipster-script', $tooltipsterScriptInline);
|
386 |
+
// [End] Tooltipster Script
|
387 |
+
}
|
388 |
}
|
389 |
|
390 |
/**
|
410 |
WPACU_PLUGIN_ID . '-script',
|
411 |
'wpacu_object',
|
412 |
apply_filters('wpacu_object_data', array(
|
413 |
+
'ajax_url' => admin_url('admin-ajax.php'),
|
414 |
+
'plugin_id' => WPACU_PLUGIN_ID
|
415 |
))
|
416 |
);
|
417 |
// [/wpacu_pro]
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Tags: minify css, minify javascript, defer css javascript, page speed, dequeue,
|
|
4 |
Donate link: https://gabelivan.com/items/wp-asset-cleanup-pro/?utm_source=wp_org_lite&utm_medium=donate
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 5.3
|
7 |
-
Stable tag: 1.3.5.
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl.html
|
10 |
|
@@ -178,6 +178,15 @@ With the recently released "Test Mode" feature, you can safely unload assets on
|
|
178 |
4. Homepage CSS & JS Management (List sorted by location)
|
179 |
|
180 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
181 |
= 1.3.5.1 =
|
182 |
* Bug Fix: Prevent PHP notice errors from showing up in error log reports (not affecting the plugin's functionality)
|
183 |
* Improvement for debugging purposes: Change the "Settings" values on page-request (via query string)
|
4 |
Donate link: https://gabelivan.com/items/wp-asset-cleanup-pro/?utm_source=wp_org_lite&utm_medium=donate
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 5.3
|
7 |
+
Stable tag: 1.3.5.2
|
8 |
License: GPLv3
|
9 |
License URI: http://www.gnu.org/licenses/gpl.html
|
10 |
|
178 |
4. Homepage CSS & JS Management (List sorted by location)
|
179 |
|
180 |
== Changelog ==
|
181 |
+
= 1.3.5.2 =
|
182 |
+
* Improvement: Added "Overview" page which has the list of all the changes made to a specific CSS/JS file (handle), offering a much easier way to understand the changes made and do any debugging
|
183 |
+
* UI Improvement: The height of the CSS/JS asset row (when managing the list) is smaller, depending on the settings, making it easier to do scrolling
|
184 |
+
* UI Improvement: Adjust the total height of the "Note" textarea based on the content added, thus reducing the spacing between assets for easier scrolling/management
|
185 |
+
* Code Improvement: Split a few large files into multiple ones for easier management
|
186 |
+
* Backend Performance Improvement: Prevent Asset CleanUp's (own) CSS/JS from loading in edit post/page when the files aren't needed (e.g. no meta boxes are showing up because they were hidden)
|
187 |
+
* Extra compatibility with AMP pages: Do not move from HEAD to BODY any SCRIPT tags containing //cdn.ampproject.org/
|
188 |
+
* Bug Fix: Do not alter any Google Fonts links if there is no "family=" within it ("Smart Slider 3" fix)
|
189 |
+
|
190 |
= 1.3.5.1 =
|
191 |
* Bug Fix: Prevent PHP notice errors from showing up in error log reports (not affecting the plugin's functionality)
|
192 |
* Improvement for debugging purposes: Change the "Settings" values on page-request (via query string)
|
templates/_top-area.php
CHANGED
@@ -19,11 +19,20 @@ $wpacuTopAreaLinks = array(
|
|
19 |
'title' => __('CSS & JavaScript Load Manager', 'wp-asset-clean-up'),
|
20 |
'page' => 'wpassetcleanup_assets_manager',
|
21 |
),
|
|
|
22 |
'admin.php?page=wpassetcleanup_bulk_unloads' => array(
|
23 |
'icon' => '<span class="dashicons dashicons-networking"></span>',
|
24 |
'title' => __('Bulk Changes', 'wp-asset-clean-up'),
|
25 |
'page' => 'wpassetcleanup_bulk_unloads'
|
26 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
'admin.php?page=wpassetcleanup_tools' => array(
|
28 |
'icon' => '<span class="dashicons dashicons-admin-tools"></span>',
|
29 |
'title' => __('Tools', 'wp-asset-clean-up'),
|
19 |
'title' => __('CSS & JavaScript Load Manager', 'wp-asset-clean-up'),
|
20 |
'page' => 'wpassetcleanup_assets_manager',
|
21 |
),
|
22 |
+
|
23 |
'admin.php?page=wpassetcleanup_bulk_unloads' => array(
|
24 |
'icon' => '<span class="dashicons dashicons-networking"></span>',
|
25 |
'title' => __('Bulk Changes', 'wp-asset-clean-up'),
|
26 |
'page' => 'wpassetcleanup_bulk_unloads'
|
27 |
),
|
28 |
+
|
29 |
+
'admin.php?page=wpassetcleanup_overview' => array(
|
30 |
+
'icon' => '<span class="dashicons dashicons-media-text"></span>',
|
31 |
+
'title' => __('Overview', 'wp-asset-clean-up'),
|
32 |
+
'page' => 'wpassetcleanup_overview'
|
33 |
+
),
|
34 |
+
|
35 |
+
|
36 |
'admin.php?page=wpassetcleanup_tools' => array(
|
37 |
'icon' => '<span class="dashicons dashicons-admin-tools"></span>',
|
38 |
'title' => __('Tools', 'wp-asset-clean-up'),
|
templates/admin-page-overview.php
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* No direct access to this file
|
4 |
+
*/
|
5 |
+
if (! isset($data)) {
|
6 |
+
exit;
|
7 |
+
}
|
8 |
+
|
9 |
+
include_once '_top-area.php';
|
10 |
+
?>
|
11 |
+
<div style="padding: 0 0 10px; line-height: 22px;"><strong>Note:</strong> This overview contains all the changes of any kind (unload rules, load exceptions, preloads, notes, async/defer SCRIPT attributes, changed positions, etc.) made via Asset CleanUp to any of the loaded (enqueued) CSS/JS files. To make any changes to the values below, please use the "CSS & JavaScript Load Manager" or "Bulk Changes" tabs.</div>
|
12 |
+
<hr />
|
13 |
+
<div class="wrap wpacu-overview-wrap">
|
14 |
+
<div style="padding: 0 10px 0 0;">
|
15 |
+
<h3><?php _e('Stylesheets (.css)', 'wp-asset-clean-up'); ?>
|
16 |
+
<?php
|
17 |
+
if (isset($data['handles']['styles']) && count($data['handles']['styles']) > 0) {
|
18 |
+
echo ' ⟶ Total: '.count($data['handles']['styles']);
|
19 |
+
}
|
20 |
+
?></h3>
|
21 |
+
<?php
|
22 |
+
if (isset($data['handles']['styles']) && ! empty($data['handles']['styles'])) {
|
23 |
+
?>
|
24 |
+
<table class="wp-list-table wpacu-overview-list-table widefat fixed striped">
|
25 |
+
<thead>
|
26 |
+
<tr class="wpacu-top">
|
27 |
+
<td><strong>Handle</strong></td>
|
28 |
+
<td><strong>Unload & Load Exception Rules</strong></td>
|
29 |
+
</tr>
|
30 |
+
</thead>
|
31 |
+
<?php
|
32 |
+
foreach ($data['handles']['styles'] as $handle => $handleData) {
|
33 |
+
?>
|
34 |
+
<tr class="wpacu_global_rule_row wpacu_bulk_change_row">
|
35 |
+
<td>
|
36 |
+
<?php \WpAssetCleanUp\Overview::renderHandleTd($handle, 'styles', $data); ?>
|
37 |
+
</td>
|
38 |
+
<td>
|
39 |
+
<?php
|
40 |
+
$handleChangesOutput = \WpAssetCleanUp\Overview::renderHandleChangesOutput($handleData);
|
41 |
+
|
42 |
+
if (! empty($handleChangesOutput)) {
|
43 |
+
echo '<ul style="margin: 0;">' . "\n";
|
44 |
+
|
45 |
+
foreach ( $handleChangesOutput as $handleChangesOutputPart ) {
|
46 |
+
echo '<li>' . $handleChangesOutputPart . '</li>' . "\n";
|
47 |
+
}
|
48 |
+
|
49 |
+
echo '</ul>';
|
50 |
+
} else {
|
51 |
+
echo '<em style="color: #6d6d6d;">'.__('No unload/load exception rules of any kind are set for this stylesheet file', 'wp-asset-clean-up').'</em>.';
|
52 |
+
}
|
53 |
+
?>
|
54 |
+
</td>
|
55 |
+
</tr>
|
56 |
+
<?php
|
57 |
+
}
|
58 |
+
?>
|
59 |
+
</table>
|
60 |
+
<?php
|
61 |
+
} else {
|
62 |
+
?>
|
63 |
+
<p><?php _e('There is no data added to (e.g. unload, load exceptions, notes, changing of location, preloading, etc.) to any stylesheet.', 'wp-asset-clean-up'); ?></p>
|
64 |
+
<?php
|
65 |
+
}
|
66 |
+
?>
|
67 |
+
|
68 |
+
<hr style="margin: 15px 0;"/>
|
69 |
+
|
70 |
+
<h3><?php _e('Scripts (.js)', 'wp-asset-clean-up'); ?>
|
71 |
+
<?php
|
72 |
+
if (isset($data['handles']['scripts']) && count($data['handles']['scripts']) > 0) {
|
73 |
+
echo ' ⟶ Total: '.count($data['handles']['scripts']);
|
74 |
+
}
|
75 |
+
?></h3>
|
76 |
+
<?php
|
77 |
+
if (isset($data['handles']['scripts']) && ! empty($data['handles']['scripts'])) {
|
78 |
+
?>
|
79 |
+
<table class="wp-list-table wpacu-overview-list-table widefat fixed striped">
|
80 |
+
<thead>
|
81 |
+
<tr class="wpacu-top">
|
82 |
+
<td><strong>Handle</strong></td>
|
83 |
+
<td><strong>Unload & Load Exception Rules</strong></td>
|
84 |
+
</tr>
|
85 |
+
</thead>
|
86 |
+
<?php
|
87 |
+
foreach ($data['handles']['scripts'] as $handle => $handleData) {
|
88 |
+
?>
|
89 |
+
<tr class="wpacu_global_rule_row wpacu_bulk_change_row">
|
90 |
+
<td>
|
91 |
+
<?php \WpAssetCleanUp\Overview::renderHandleTd($handle, 'scripts', $data); ?>
|
92 |
+
</td>
|
93 |
+
<td>
|
94 |
+
<?php
|
95 |
+
$handleChangesOutput = \WpAssetCleanUp\Overview::renderHandleChangesOutput($handleData);
|
96 |
+
|
97 |
+
if (! empty($handleChangesOutput)) {
|
98 |
+
echo '<ul style="margin: 0;">' . "\n";
|
99 |
+
|
100 |
+
foreach ( $handleChangesOutput as $handleChangesOutputPart ) {
|
101 |
+
echo '<li>' . $handleChangesOutputPart . '</li>' . "\n";
|
102 |
+
}
|
103 |
+
|
104 |
+
echo '</ul>';
|
105 |
+
} else {
|
106 |
+
echo '<em style="color: #6d6d6d;">'.__('No unload/load exception rules of any kind are set for this JavaScript file', 'wp-asset-clean-up').'</em>.';
|
107 |
+
}
|
108 |
+
?>
|
109 |
+
</td>
|
110 |
+
</tr>
|
111 |
+
<?php
|
112 |
+
}
|
113 |
+
?>
|
114 |
+
</table>
|
115 |
+
<?php
|
116 |
+
} else {
|
117 |
+
?>
|
118 |
+
<p><?php _e('There is no data added to (e.g. unload, load exceptions, notes, async/defer attributes, changing of location, preloading, etc.) to any SCRIPT tag.', 'wp-asset-clean-up'); ?></p>
|
119 |
+
<?php
|
120 |
+
}
|
121 |
+
?>
|
122 |
+
</div>
|
123 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-script-single-row.php
CHANGED
@@ -18,6 +18,12 @@ sort($childHandles);
|
|
18 |
$jqueryIconHtmlHandle = '<img src="'.WPACU_PLUGIN_URL.'/assets/icons/handles/icon-jquery.png" style="max-width: 22px; max-height: 22px; margin-bottom: 0;" width="18" height="18" title="" alt="" />';
|
19 |
$jqueryIconHtmlDepends = '<img src="'.WPACU_PLUGIN_URL.'/assets/icons/handles/icon-jquery.png" style="max-width: 22px; max-height: 22px; vertical-align: text-top; margin-bottom: 0;" width="16" height="16" alt="" />';
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
if ($isBulkUnloaded) {
|
22 |
$data['row']['class'] .= ' wpacu_is_bulk_unloaded';
|
23 |
}
|
@@ -26,124 +32,33 @@ if ($isBulkUnloaded) {
|
|
26 |
class="wpacu_asset_row <?php echo $data['row']['class']; ?>"
|
27 |
style="<?php if ($isCoreFile && $hideCoreFiles) { echo 'display: none;'; } ?>">
|
28 |
<td valign="top">
|
29 |
-
<div class="wpacu_handle" style="margin: 0 0 -8px;">
|
30 |
-
<label for="script_<?php echo $data['row']['obj']->handle; ?>"> <?php _e('Handle:', 'wp-asset-clean-up'); ?> <strong><span style="color: green;"><?php echo $data['row']['obj']->handle; ?></span></strong> <?php if (in_array($data['row']['obj']->handle, array('jquery', 'jquery-core', 'jquery-migrate'))) { echo ' '.$jqueryIconHtmlHandle; } ?></label>
|
31 |
-
<em>* JavaScript (.js)</em>
|
32 |
-
<?php if ($isCoreFile && ! $hideCoreFiles) { ?>
|
33 |
-
<span class="dashicons dashicons-warning wordpress-core-file"><span class="wpacu-tooltip">WordPress Core File<br />Not sure if needed or not? In this case, it's better to leave it loaded to avoid breaking the website.</span></span>
|
34 |
-
<?php
|
35 |
-
}
|
36 |
-
?>
|
37 |
-
</div>
|
38 |
-
<?php
|
39 |
-
if (! empty($childHandles)) {
|
40 |
-
$ignoreChild = (isset($data['ignore_child']['scripts'][$data['row']['obj']->handle]) && $data['ignore_child']['scripts'][$data['row']['obj']->handle]);
|
41 |
-
?>
|
42 |
-
<p>
|
43 |
-
<em style="font-size: 85%;">
|
44 |
-
<span style="color: #0073aa; width: 19px; height: 19px; vertical-align: middle;" class="dashicons dashicons-info"></span>
|
45 |
-
This file has other JavaScript "children" files depending on it, thus, by unloading it, the following will also be unloaded:
|
46 |
-
<span style="color: green; font-weight: 600;">
|
47 |
-
<?php echo implode('<span style="color: black;">,</span> ', $childHandles); ?>
|
48 |
-
</span>
|
49 |
-
</em>
|
50 |
-
<label for="script_<?php echo $data['row']['obj']->handle; ?>_ignore_children">
|
51 |
-
<input type="hidden" name="wpacu_ignore_child[scripts][<?php echo $data['row']['obj']->handle; ?>]" value="" />
|
52 |
-
⟶ <input id="script_<?php echo $data['row']['obj']->handle; ?>_ignore_children"
|
53 |
-
type="checkbox"
|
54 |
-
<?php if ($ignoreChild) { ?>checked="checked"<?php } ?>
|
55 |
-
name="wpacu_ignore_child[scripts][<?php echo $data['row']['obj']->handle; ?>]"
|
56 |
-
value="1" /> <small><?php _e('Ignore dependency rule and keep the "children" loaded', 'wp-asset-clean-up'); ?></small>
|
57 |
-
</label>
|
58 |
-
</p>
|
59 |
-
<?php
|
60 |
-
}
|
61 |
-
?>
|
62 |
-
|
63 |
<?php
|
64 |
-
|
65 |
-
$data['row']['obj']->preload_status = 'not_preloaded'; // default
|
66 |
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|| strpos($data['row']['obj']->src, '/?') !== false // Dynamic Local URL
|
72 |
-
|| strpos(str_replace(site_url(), '', $data['row']['obj']->src), '?') === 0 // Starts with ? right after the site url (it's a local URL)
|
73 |
-
) {
|
74 |
-
$isExternalSrc = false;
|
75 |
-
}
|
76 |
-
|
77 |
-
$relSrc = str_replace(site_url(), '', $data['row']['obj']->src);
|
78 |
-
|
79 |
-
if (isset($data['row']['obj']->baseUrl)) {
|
80 |
-
$relSrc = str_replace($data['row']['obj']->baseUrl, '/', $relSrc);
|
81 |
-
}
|
82 |
-
|
83 |
-
$appendAfterSrcHref = (strpos($data['row']['obj']->srcHref, '?') === false) ? '?' : '&';
|
84 |
|
85 |
-
|
86 |
-
? $data['preloads']['scripts'][$data['row']['obj']->handle]
|
87 |
-
: false;
|
88 |
|
89 |
-
|
90 |
-
|
91 |
-
}
|
92 |
-
?>
|
93 |
-
<div class="wpacu-source-row" style="margin-top: 12px;">
|
94 |
-
<?php _e('Source:', 'wp-asset-clean-up'); ?> <a target="_blank" style="color: green;" <?php if ($isExternalSrc) { ?> data-wpacu-external-source="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref . 'ver='. $ver; ?>" <?php } ?> href="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref . 'ver='. $ver; ?>"><?php echo $relSrc; ?></a> <?php if ($isExternalSrc) { ?><span data-wpacu-external-source-status></span><?php } ?>
|
95 |
-
⟶
|
96 |
-
Preload (if kept loaded)?
|
97 |
-
<select style="display: inline-block; width: auto;"
|
98 |
-
name="wpacu_preloads[scripts][<?php echo $data['row']['obj']->handle; ?>]">
|
99 |
-
<option value="">No (default)</option>
|
100 |
-
<option <?php if ($isJsPreload) { ?>selected="selected"<?php } ?> value="basic">Yes, basic</option>
|
101 |
-
</select>
|
102 |
-
<small>* applies site-wide</small> <small><a style="text-decoration: none; color: inherit;" target="_blank" href="https://assetcleanup.com/docs/?p=202"><span class="dashicons dashicons-editor-help"></span></a></small>
|
103 |
-
</div>
|
104 |
-
<?php
|
105 |
-
}
|
106 |
|
107 |
// Any tips?
|
108 |
if (isset($data['tips']['js'][$data['row']['obj']->handle]) && ($assetTip = $data['tips']['js'][$data['row']['obj']->handle])) {
|
109 |
-
|
110 |
<div class="tip"><strong>Tip:</strong> <?php echo $assetTip; ?></div>
|
111 |
<?php
|
112 |
}
|
113 |
-
$extraInfo = array();
|
114 |
-
|
115 |
-
if (isset($data['row']['obj']->deps) && ! empty($data['row']['obj']->deps)) {
|
116 |
-
$depsOutput = '';
|
117 |
-
|
118 |
-
if (is_array($data['row']['obj']->deps)) {
|
119 |
-
$dependsOnText = (count($data['row']['obj']->deps) === 1)
|
120 |
-
? __('"Child" of one "parent" JS file:', 'wp-asset-clean-up')
|
121 |
-
: sprintf(__('"Child" of %s JS "parent" files:', 'wp-asset-clean-up'),
|
122 |
-
count($data['row']['obj']->deps));
|
123 |
-
} else {
|
124 |
-
$dependsOnText = __('"Child" of "parent" JS file(s):', 'wp-asset-clean-up');
|
125 |
-
}
|
126 |
-
|
127 |
-
$depsOutput .= $dependsOnText.' ';
|
128 |
|
129 |
-
|
130 |
-
if ($depHandle === 'jquery' || strpos($depHandle, 'jquery-ui-') === 0) {
|
131 |
-
$depHandle .= ' '.$jqueryIconHtmlDepends;
|
132 |
-
}
|
133 |
-
|
134 |
-
$depsOutput .= '<span style="color: green; font-weight: 300;">'.$depHandle.'</span>, ';
|
135 |
-
}
|
136 |
-
|
137 |
-
$depsOutput = rtrim($depsOutput, ', ');
|
138 |
|
139 |
-
|
140 |
-
}
|
141 |
|
142 |
$extraInfo[] = __('Version:', 'wp-asset-clean-up').' '.$ver;
|
143 |
|
144 |
-
|
145 |
-
$extraInfo[] = __('Position:', 'wp-asset-clean-up') . ' ' . (( $data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY') . '<a class="go-pro-link-no-style" href="' . WPACU_PLUGIN_GO_PRO_URL . '?utm_source=manage_asset&utm_medium=change_js_position"><span class="wpacu-tooltip" style="width: 300px; margin-left: -146px;">Upgrade to Pro and change the location<br />of the JS file (e.g. to BODY to reduce render-blocking or to HEAD for very early triggering)</span><img width="20" height="20" src="' . WPACU_PLUGIN_URL . '/assets/icons/icon-lock.svg" valign="top" alt="" /> Change it?</a>';
|
146 |
-
}
|
147 |
|
148 |
// [wpacu_lite]
|
149 |
if (isset($data['row']['obj']->src) && $data['row']['obj']->src) {
|
@@ -157,318 +72,35 @@ if ($isBulkUnloaded) {
|
|
157 |
?>
|
158 |
|
159 |
<div class="wrap_bulk_unload_options">
|
160 |
-
<div class="wpacu_asset_options_wrap" style="padding: 8px 10px 6px !important;">
|
161 |
-
<ul class="wpacu_asset_options" <?php if ($isBulkUnloaded) { echo 'style="display: none;"'; } ?>>
|
162 |
-
<li class="wpacu_unload_this_page">
|
163 |
-
<label class="wpacu_switch">
|
164 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
165 |
-
class="input-unload-on-this-page <?php if (! $isBulkUnloaded) { echo 'wpacu-not-locked'; } ?> wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
166 |
-
id="script_<?php echo $data['row']['obj']->handle; ?>"
|
167 |
-
<?php if ($isBulkUnloaded) { echo 'disabled="disabled"'; }
|
168 |
-
echo $data['row']['checked']; ?>
|
169 |
-
name="<?php echo WPACU_PLUGIN_ID; ?>[scripts][]"
|
170 |
-
type="checkbox"
|
171 |
-
value="<?php echo $data['row']['obj']->handle; ?>" />
|
172 |
-
<span class="wpacu_slider wpacu_round"></span>
|
173 |
-
</label>
|
174 |
-
<label class="wpacu_slider_text" for="script_<?php echo $data['row']['obj']->handle; ?>">
|
175 |
-
<?php echo $data['page_unload_text']; ?>
|
176 |
-
</label>
|
177 |
-
</li>
|
178 |
-
</ul>
|
179 |
-
|
180 |
-
<?php
|
181 |
-
if ($isBulkUnloaded) {
|
182 |
-
?>
|
183 |
-
<p style="margin: 0 !important;">
|
184 |
-
<em>
|
185 |
-
<?php echo sprintf(
|
186 |
-
__('"%s" rule is locked and irrelevant as there are global rules set below that overwrite it', 'wp-asset-clean-up'),
|
187 |
-
$data['page_unload_text']
|
188 |
-
); ?>.
|
189 |
-
<?php _e('Once all the rules below are removed, this option will become available again', 'wp-asset-clean-up'); ?>.
|
190 |
-
</em>
|
191 |
-
</p>
|
192 |
-
<div class="wpacu-clearfix" style="margin-top: -5px; height: 0;"></div>
|
193 |
-
<?php
|
194 |
-
}
|
195 |
-
?>
|
196 |
-
</div>
|
197 |
-
|
198 |
-
<div class="wpacu_asset_options_wrap">
|
199 |
-
<?php
|
200 |
-
// Unloaded Everywhere
|
201 |
-
if ($data['row']['global_unloaded']) {
|
202 |
-
?>
|
203 |
-
<div style="display: inline-block; margin-right: 15px;"><strong style="color: #d54e21;"><?php _e('This JavaScript file is unloaded site-wide (everywhere)', 'wp-asset-clean-up'); ?></strong></div>
|
204 |
-
<?php
|
205 |
-
}
|
206 |
-
?>
|
207 |
-
|
208 |
-
<ul class="wpacu_asset_options" <?php if ($data['row']['global_unloaded']) { echo 'style="display: inline-block; margin-right: 0;"'; } ?>>
|
209 |
-
<?php
|
210 |
-
// [START] UNLOAD EVERYWHERE
|
211 |
-
if ($data['row']['global_unloaded']) {
|
212 |
-
?>
|
213 |
-
<li>
|
214 |
-
<label>
|
215 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
216 |
-
class="wpacu_bulk_option wpacu_script wpacu_keep_site_wide_rule"
|
217 |
-
type="radio"
|
218 |
-
name="wpacu_options_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
219 |
-
checked="checked"
|
220 |
-
value="default" />
|
221 |
-
<?php _e('Keep site-wide rule', 'wp-asset-clean-up'); ?></label>
|
222 |
-
</li>
|
223 |
-
|
224 |
-
<li style="margin-right: 0;">
|
225 |
-
<label>
|
226 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
227 |
-
class="wpacu_bulk_option wpacu_script wpacu_remove_site_wide_rule"
|
228 |
-
type="radio"
|
229 |
-
name="wpacu_options_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
230 |
-
value="remove" />
|
231 |
-
<?php _e('Remove site-wide rule', 'wp-asset-clean-up'); ?></label>
|
232 |
-
</li>
|
233 |
-
<?php
|
234 |
-
} else {
|
235 |
-
?>
|
236 |
-
<li>
|
237 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
238 |
-
data-handle-for="script"
|
239 |
-
class="wpacu_global_unload wpacu_bulk_unload wpacu_global_script wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
240 |
-
id="wpacu_global_unload_script_<?php echo $data['row']['obj']->handle; ?>"
|
241 |
-
type="checkbox"
|
242 |
-
name="wpacu_global_unload_scripts[]"
|
243 |
-
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
244 |
-
<?php _e('Unload site-wide', 'wp-asset-clean-up'); ?> (<?php _e('everywhere', 'wp-asset-clean-up'); ?>) <small>* <?php _e('bulk unload', 'wp-asset-clean-up'); ?></small></label>
|
245 |
-
</li>
|
246 |
-
<?php
|
247 |
-
}
|
248 |
-
// [END] UNLOAD EVERYWHERE
|
249 |
-
?>
|
250 |
-
</ul>
|
251 |
-
</div>
|
252 |
-
|
253 |
<?php
|
254 |
-
|
255 |
-
|
256 |
-
<div class="wpacu_asset_options_wrap">
|
257 |
-
<?php
|
258 |
-
// Unloaded On All Pages Belonging to the page's Post Type
|
259 |
-
if ($data['row']['is_post_type_unloaded']) {
|
260 |
-
switch ($data['post_type']) {
|
261 |
-
case 'product':
|
262 |
-
$alreadyUnloadedBulkText = __('This JavaScript file is unloaded on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
263 |
-
break;
|
264 |
-
case 'download':
|
265 |
-
$alreadyUnloadedBulkText = __('This JavaScript file is unloaded on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
266 |
-
break;
|
267 |
-
default:
|
268 |
-
$alreadyUnloadedBulkText = sprintf(__('This JavaScript file is unloaded on all <u>%s</u> post types', 'wp-asset-clean-up'), $data['post_type']);
|
269 |
-
}
|
270 |
-
?>
|
271 |
-
<p><strong style="color: #d54e21;"><?php echo $alreadyUnloadedBulkText; ?>.</strong></p>
|
272 |
-
<?php
|
273 |
-
}
|
274 |
-
?>
|
275 |
-
<ul class="wpacu_asset_options">
|
276 |
-
<?php
|
277 |
-
// [START] ALL PAGES HAVING THE SAME POST TYPE
|
278 |
-
if ($data['row']['is_post_type_unloaded']) {
|
279 |
-
?>
|
280 |
-
<li>
|
281 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
282 |
-
class="wpacu_post_type_option wpacu_post_type_script wpacu_keep_bulk_rule"
|
283 |
-
type="radio"
|
284 |
-
name="wpacu_options_post_type_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
285 |
-
checked="checked"
|
286 |
-
value="default"/>
|
287 |
-
<?php _e('Keep bulk rule', 'wp-asset-clean-up'); ?></label>
|
288 |
-
</li>
|
289 |
|
290 |
-
|
291 |
-
|
292 |
-
class="wpacu_post_type_option wpacu_post_type_script wpacu_remove_bulk_rule"
|
293 |
-
type="radio"
|
294 |
-
name="wpacu_options_post_type_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
295 |
-
value="remove"/>
|
296 |
-
<?php _e('Remove bulk rule', 'wp-asset-clean-up'); ?></label>
|
297 |
-
</li>
|
298 |
-
<?php
|
299 |
-
} else {
|
300 |
-
switch ($data['post_type']) {
|
301 |
-
case 'product':
|
302 |
-
$unloadBulkText = __('Unload JS on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
303 |
-
break;
|
304 |
-
case 'download':
|
305 |
-
$unloadBulkText = __('Unload JS on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
306 |
-
break;
|
307 |
-
default:
|
308 |
-
$unloadBulkText = sprintf(__('Unload on All Pages of "<strong>%s</strong>" post type', 'wp-asset-clean-up'), $data['post_type']);
|
309 |
-
}
|
310 |
-
?>
|
311 |
-
<li>
|
312 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
313 |
-
data-handle-for="script"
|
314 |
-
class="wpacu_bulk_unload wpacu_post_type_unload wpacu_post_type_script wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
315 |
-
id="wpacu_global_unload_post_type_script_<?php echo $data['row']['obj']->handle; ?>"
|
316 |
-
type="checkbox"
|
317 |
-
name="wpacu_bulk_unload_scripts[post_type][<?php echo $data['post_type']; ?>][]"
|
318 |
-
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
319 |
-
<?php echo $unloadBulkText; ?> <small>* <?php _e('bulk unload', 'wp-asset-clean-up'); ?></small></label>
|
320 |
-
</li>
|
321 |
-
<?php
|
322 |
-
}
|
323 |
-
?>
|
324 |
-
</ul>
|
325 |
-
</div>
|
326 |
-
<?php
|
327 |
-
}
|
328 |
-
// [END] ALL PAGES HAVING THE SAME POST TYPE
|
329 |
-
?>
|
330 |
|
331 |
-
|
332 |
-
|
333 |
-
// Otherwise, there's no point to use an unload regex if the asset is unloaded site-wide
|
334 |
-
if (! $data['row']['global_unloaded']) {
|
335 |
-
?>
|
336 |
-
<div data-script-handle="<?php echo $data['row']['obj']->handle; ?>" class="wpacu_asset_options_wrap wpacu_unload_regex_area_wrap">
|
337 |
-
<ul class="wpacu_asset_options">
|
338 |
-
<li>
|
339 |
-
<label for="wpacu_unload_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>">
|
340 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
341 |
-
id="wpacu_unload_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
342 |
-
class="wpacu_unload_it_regex_checkbox"
|
343 |
-
type="checkbox"
|
344 |
-
disabled="disabled"
|
345 |
-
value="1"/> <span>Unload it for URLs with request URI matching this RegEx:</span>
|
346 |
|
347 |
-
|
348 |
-
|
349 |
-
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
350 |
-
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
351 |
-
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
352 |
-
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
353 |
-
valign="top" alt=""/></a>
|
354 |
-
</label>
|
355 |
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
</li>
|
360 |
-
</ul>
|
361 |
-
</div>
|
362 |
-
<?php
|
363 |
-
}
|
364 |
-
?>
|
365 |
<div class="wpacu-clearfix"></div>
|
366 |
</div>
|
367 |
-
<?php
|
368 |
-
// Hide make an exception area if no bulk unload rules are set or selected
|
369 |
-
?>
|
370 |
-
<div data-script-handle="<?php echo $data['row']['obj']->handle; ?>"
|
371 |
-
style="margin-bottom: 12px;"
|
372 |
-
class="wpacu_exception_options_area_wrap <?php if (! $isBulkUnloaded) { echo 'wpacu_hide'; } ?>">
|
373 |
-
<div class="wpacu_area_one">
|
374 |
-
<?php if ($isBulkUnloaded) { ?>
|
375 |
-
<strong>Make an exception</strong> and always load it:
|
376 |
-
<?php } else { ?>
|
377 |
-
If unloaded by any of the bulk rules (e.g. everywhere), <strong>make an exception</strong> and always:
|
378 |
-
<?php } ?>
|
379 |
-
</div>
|
380 |
-
<ul class="wpacu_area_two wpacu_asset_options wpacu_exception_options_area">
|
381 |
-
<li id="wpacu_load_it_option_script_<?php echo $data['row']['obj']->handle; ?>">
|
382 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
383 |
-
id="wpacu_load_it_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
384 |
-
class="wpacu_load_it_option_one wpacu_script wpacu_load_exception"
|
385 |
-
type="checkbox"
|
386 |
-
name="wpacu_scripts_load_it[]"
|
387 |
-
<?php if ($data['row']['is_load_exception_per_page']) { ?> checked="checked" <?php } ?>
|
388 |
-
value="<?php echo $data['row']['obj']->handle; ?>" />
|
389 |
-
Load it on this page</label>
|
390 |
-
</li>
|
391 |
-
<li>
|
392 |
-
<label for="wpacu_load_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"><input
|
393 |
-
data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
394 |
-
id="wpacu_load_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
395 |
-
class="wpacu_load_it_option_two wpacu_script wpacu_load_exception"
|
396 |
-
type="checkbox"
|
397 |
-
disabled="disabled"
|
398 |
-
value="1"/>
|
399 |
-
Load it for URLs with request URI matching this RegEx: <a class="go-pro-link-no-style"
|
400 |
-
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=load_via_regex_make_exception"><span
|
401 |
-
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
402 |
-
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
403 |
-
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
404 |
-
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
405 |
-
valign="top" alt=""/></a> <a
|
406 |
-
style="text-decoration: none; color: inherit;" target="_blank"
|
407 |
-
href="https://assetcleanup.com/docs/?p=21#wpacu-method-2"><span
|
408 |
-
class="dashicons dashicons-editor-help"></span></a></label>
|
409 |
-
</li>
|
410 |
-
</ul>
|
411 |
-
</div>
|
412 |
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
<?php _e('Inline JavaScript code associated with the handle:', 'wp-asset-clean-up'); ?>
|
417 |
-
<a class="wpacu-assets-inline-code-collapsible"
|
418 |
-
<?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-assets-inline-code-collapsible-active'; } ?>
|
419 |
-
href="#"><?php _e('Show', 'wp-asset-clean-up'); ?> / <?php _e('Hide', 'wp-asset-clean-up'); ?></a>
|
420 |
-
<div class="wpacu-assets-inline-code-collapsible-content <?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-open'; } ?>">
|
421 |
-
<div>
|
422 |
-
<p style="margin-top: -7px !important; line-height: normal !important;">
|
423 |
-
<em><?php echo strip_tags($data['row']['extra_data_js']); ?></em>
|
424 |
-
</p>
|
425 |
-
</div>
|
426 |
-
</div>
|
427 |
-
</div>
|
428 |
-
<?php
|
429 |
-
}
|
430 |
-
?>
|
431 |
|
432 |
-
|
433 |
-
|
434 |
-
<div class="wpacu-script-attributes-area wpacu-lite">
|
435 |
-
<div>If kept loaded, apply the following attributes: <em><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>">* <?php _e('Pro version', 'wp-asset-clean-up'); ?></a></em></div>
|
436 |
-
<ul class="wpacu-script-attributes-settings wpacu-first">
|
437 |
-
<li><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>"><span class="wpacu-tooltip wpacu-larger"><?php _e('This feature is available in the premium version of the plugin.', 'wp-asset-clean-up'); ?><br /> <?php _e('Click here to upgrade to Pro', 'wp-asset-clean-up'); ?>!</span><img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" /></a> <strong>async</strong> ⟶</li>
|
438 |
-
<li><label><input disabled="disabled" type="checkbox" value="on_this_page" /><?php _e('on this page', 'wp-asset-clean-up'); ?></label></li>
|
439 |
-
<li><label><input disabled="disabled" type="checkbox" value="everywhere" /><?php _e('everywhere', 'wp-asset-clean-up'); ?></label></li>
|
440 |
-
</ul>
|
441 |
-
<ul class="wpacu-script-attributes-settings">
|
442 |
-
<li><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>"><span class="wpacu-tooltip wpacu-larger"><?php _e('This feature is available in the premium version of the plugin.', 'wp-asset-clean-up'); ?><br /> <?php _e('Click here to upgrade to Pro', 'wp-asset-clean-up'); ?>!</span><img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" /></a> <strong>defer</strong> ⟶</li>
|
443 |
-
<li><label><input disabled="disabled" type="checkbox" value="on_this_page" /><?php _e('on this page', 'wp-asset-clean-up'); ?></label></li>
|
444 |
-
<li><label><input disabled="disabled" type="checkbox" value="everywhere" /><?php _e('everywhere', 'wp-asset-clean-up'); ?></label></li>
|
445 |
-
</ul>
|
446 |
-
<div class="wpacu-clearfix"></div>
|
447 |
-
</div>
|
448 |
-
<div class="wpacu-clearfix"></div>
|
449 |
-
<?php } ?>
|
450 |
-
<!-- [/wpacu_lite] -->
|
451 |
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
: false;
|
456 |
-
?>
|
457 |
-
<div class="wpacu-handle-notes">
|
458 |
-
<?php if (! $handleNote) { ?>
|
459 |
-
<p><small>No notes have been added about this JavaScript file (e.g. why you unloaded it or decided to keep it loaded) ⟶ <a data-handle="<?php echo $data['row']['obj']->handle; ?>" href="#" class="wpacu-add-handle-note wpacu-for-script"><span class="dashicons dashicons-welcome-write-blog"></span> <label for="wpacu_handle_note_<?php echo $data['row']['obj']->handle; ?>">Add Note</label></a></small></p>
|
460 |
-
<?php } else { ?>
|
461 |
-
<p><small>The following note has been added for this JavaScript file (<em>to have it removed on update, just leave the text area empty</em>):</small></p>
|
462 |
-
<?php } ?>
|
463 |
-
<div <?php if ($handleNote) { echo 'style="display: block;"'; } ?> data-script-handle="<?php echo $data['row']['obj']->handle; ?>" class="wpacu-handle-notes-field">
|
464 |
-
<textarea id="wpacu_handle_note_script_<?php echo $data['row']['obj']->handle; ?>"
|
465 |
-
rows="3"
|
466 |
-
data-wpacu-is-empty-on-page-load="<?php echo (! $handleNote) ? 'true' : 'false'; ?>"
|
467 |
-
<?php if (! $handleNote) { echo 'disabled="disabled"'; } ?>
|
468 |
-
placeholder="<?php echo esc_attr('Add your note here about this JavaScript file', 'wp-asset-clean-up'); ?>"
|
469 |
-
name="wpacu_handle_notes[scripts][<?php echo $data['row']['obj']->handle; ?>]"><?php echo esc_textarea($handleNote); ?></textarea>
|
470 |
-
</div>
|
471 |
-
</div>
|
472 |
<img style="display: none;" class="wpacu-ajax-loader" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-ajax-loading-spinner.svg" alt="" />
|
473 |
</td>
|
474 |
</tr>
|
18 |
$jqueryIconHtmlHandle = '<img src="'.WPACU_PLUGIN_URL.'/assets/icons/handles/icon-jquery.png" style="max-width: 22px; max-height: 22px; margin-bottom: 0;" width="18" height="18" title="" alt="" />';
|
19 |
$jqueryIconHtmlDepends = '<img src="'.WPACU_PLUGIN_URL.'/assets/icons/handles/icon-jquery.png" style="max-width: 22px; max-height: 22px; vertical-align: text-top; margin-bottom: 0;" width="16" height="16" alt="" />';
|
20 |
|
21 |
+
// Unloaded site-wide
|
22 |
+
if ($data['row']['global_unloaded']) {
|
23 |
+
$data['row']['class'] .= ' wpacu_is_global_unloaded';
|
24 |
+
}
|
25 |
+
|
26 |
+
// Unloaded site-wide OR on all posts, pages etc.
|
27 |
if ($isBulkUnloaded) {
|
28 |
$data['row']['class'] .= ' wpacu_is_bulk_unloaded';
|
29 |
}
|
32 |
class="wpacu_asset_row <?php echo $data['row']['class']; ?>"
|
33 |
style="<?php if ($isCoreFile && $hideCoreFiles) { echo 'display: none;'; } ?>">
|
34 |
<td valign="top">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
<?php
|
36 |
+
include '_asset-script-single-row/_handle.php';
|
|
|
37 |
|
38 |
+
$ver = $data['wp_version']; // default
|
39 |
+
if (isset($data['row']['obj']->ver) && $data['row']['obj']->ver) {
|
40 |
+
$ver = is_array($data['row']['obj']->ver) ? implode(', ', $data['row']['obj']->ver) : $data['row']['obj']->ver;
|
41 |
+
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
|
43 |
+
$data['row']['obj']->preload_status = 'not_preloaded'; // default
|
|
|
|
|
44 |
|
45 |
+
// Source, Preload area
|
46 |
+
include '_asset-script-single-row/_source.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
47 |
|
48 |
// Any tips?
|
49 |
if (isset($data['tips']['js'][$data['row']['obj']->handle]) && ($assetTip = $data['tips']['js'][$data['row']['obj']->handle])) {
|
50 |
+
?>
|
51 |
<div class="tip"><strong>Tip:</strong> <?php echo $assetTip; ?></div>
|
52 |
<?php
|
53 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
|
55 |
+
$extraInfo = array();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
|
57 |
+
include '_asset-script-single-row/_handle_deps.php';
|
|
|
58 |
|
59 |
$extraInfo[] = __('Version:', 'wp-asset-clean-up').' '.$ver;
|
60 |
|
61 |
+
include '_asset-script-single-row/_position.php';
|
|
|
|
|
62 |
|
63 |
// [wpacu_lite]
|
64 |
if (isset($data['row']['obj']->src) && $data['row']['obj']->src) {
|
72 |
?>
|
73 |
|
74 |
<div class="wrap_bulk_unload_options">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
75 |
<?php
|
76 |
+
// Unload on this page
|
77 |
+
include '_asset-script-single-row/_unload-per-page.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
78 |
|
79 |
+
// Unload site-wide (everywhere)
|
80 |
+
include '_asset-script-single-row/_unload-site-wide.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
|
82 |
+
// Unload on all pages of [post] post type (if applicable)
|
83 |
+
include '_asset-script-single-row/_unload-post-type.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
|
85 |
+
// Unload via RegEx (if site-wide is not already chosen)
|
86 |
+
include '_asset-script-single-row/_unload-via-regex.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
|
88 |
+
// If any bulk unload rule is set, show the load exceptions
|
89 |
+
include '_asset-script-single-row/_load-exceptions.php';
|
90 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
<div class="wpacu-clearfix"></div>
|
92 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
|
94 |
+
<?php
|
95 |
+
// Extra inline associated with the SCRIPT tag
|
96 |
+
include '_asset-script-single-row/_extra_inline.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
|
98 |
+
// Async, Defer (only in Pro)
|
99 |
+
include '_asset-script-single-row/_attrs.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
|
101 |
+
// Handle Note
|
102 |
+
include '_asset-script-single-row/_notes.php';
|
103 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
104 |
<img style="display: none;" class="wpacu-ajax-loader" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-ajax-loading-spinner.svg" alt="" />
|
105 |
</td>
|
106 |
</tr>
|
templates/meta-box-loaded-assets/_asset-script-single-row/_attrs.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<!-- [wpacu_lite] -->
|
11 |
+
<?php if (isset($data['row']['obj']->src) && $data['row']['obj']->src !== '') { ?>
|
12 |
+
<div class="wpacu-script-attributes-area wpacu-lite">
|
13 |
+
<div>If kept loaded, apply the following attributes: <em><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>">* <?php _e('Pro version', 'wp-asset-clean-up'); ?></a></em></div>
|
14 |
+
<ul class="wpacu-script-attributes-settings wpacu-first">
|
15 |
+
<li><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>"><span class="wpacu-tooltip wpacu-larger"><?php _e('This feature is available in the premium version of the plugin.', 'wp-asset-clean-up'); ?><br /> <?php _e('Click here to upgrade to Pro', 'wp-asset-clean-up'); ?>!</span><img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" /></a> <strong>async</strong> ⟶</li>
|
16 |
+
<li><label><input disabled="disabled" type="checkbox" value="on_this_page" /><?php _e('on this page', 'wp-asset-clean-up'); ?></label></li>
|
17 |
+
<li><label><input disabled="disabled" type="checkbox" value="everywhere" /><?php _e('everywhere', 'wp-asset-clean-up'); ?></label></li>
|
18 |
+
</ul>
|
19 |
+
<ul class="wpacu-script-attributes-settings">
|
20 |
+
<li><a class="go-pro-link-no-style" href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>"><span class="wpacu-tooltip wpacu-larger"><?php _e('This feature is available in the premium version of the plugin.', 'wp-asset-clean-up'); ?><br /> <?php _e('Click here to upgrade to Pro', 'wp-asset-clean-up'); ?>!</span><img width="20" height="20" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg" valign="top" alt="" /></a> <strong>defer</strong> ⟶</li>
|
21 |
+
<li><label><input disabled="disabled" type="checkbox" value="on_this_page" /><?php _e('on this page', 'wp-asset-clean-up'); ?></label></li>
|
22 |
+
<li><label><input disabled="disabled" type="checkbox" value="everywhere" /><?php _e('everywhere', 'wp-asset-clean-up'); ?></label></li>
|
23 |
+
</ul>
|
24 |
+
<div class="wpacu-clearfix"></div>
|
25 |
+
</div>
|
26 |
+
<div class="wpacu-clearfix"></div>
|
27 |
+
<?php } ?>
|
28 |
+
<!-- [/wpacu_lite] -->
|
templates/meta-box-loaded-assets/_asset-script-single-row/_extra_inline.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data, $inlineCodeStatus)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if ($data['row']['extra_data_js']) { ?>
|
11 |
+
<div class="wpacu-assets-inline-code-wrap">
|
12 |
+
<?php _e('Inline JavaScript code associated with the handle:', 'wp-asset-clean-up'); ?>
|
13 |
+
<a class="wpacu-assets-inline-code-collapsible"
|
14 |
+
<?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-assets-inline-code-collapsible-active'; } ?>
|
15 |
+
href="#"><?php _e('Show', 'wp-asset-clean-up'); ?> / <?php _e('Hide', 'wp-asset-clean-up'); ?></a>
|
16 |
+
<div class="wpacu-assets-inline-code-collapsible-content <?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-open'; } ?>">
|
17 |
+
<div>
|
18 |
+
<p style="margin-top: -7px !important; line-height: normal !important;">
|
19 |
+
<em><?php echo strip_tags($data['row']['extra_data_js']); ?></em>
|
20 |
+
</p>
|
21 |
+
</div>
|
22 |
+
</div>
|
23 |
+
</div>
|
24 |
+
<?php
|
25 |
+
}
|
templates/meta-box-loaded-assets/_asset-script-single-row/_handle.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data, $isCoreFile, $hideCoreFiles, $jqueryIconHtmlHandle, $childHandles) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_handle" style="margin: 0 0 -8px;">
|
11 |
+
<label for="script_<?php echo $data['row']['obj']->handle; ?>"> <?php _e('Handle:', 'wp-asset-clean-up'); ?> <strong><span style="color: green;"><?php echo $data['row']['obj']->handle; ?></span></strong> <?php if (in_array($data['row']['obj']->handle, array('jquery', 'jquery-core', 'jquery-migrate'))) { echo ' '.$jqueryIconHtmlHandle; } ?></label>
|
12 |
+
<em>* JavaScript (.js)</em>
|
13 |
+
<?php if ($isCoreFile && ! $hideCoreFiles) { ?>
|
14 |
+
<span class="dashicons dashicons-warning wordpress-core-file"><span class="wpacu-tooltip">WordPress Core File<br />Not sure if needed or not? In this case, it's better to leave it loaded to avoid breaking the website.</span></span>
|
15 |
+
<?php
|
16 |
+
}
|
17 |
+
?>
|
18 |
+
</div>
|
19 |
+
<?php
|
20 |
+
if (! empty($childHandles)) {
|
21 |
+
$ignoreChild = (isset($data['ignore_child']['scripts'][$data['row']['obj']->handle]) && $data['ignore_child']['scripts'][$data['row']['obj']->handle]);
|
22 |
+
?>
|
23 |
+
<p>
|
24 |
+
<em style="font-size: 85%;">
|
25 |
+
<span style="color: #0073aa; width: 19px; height: 19px; vertical-align: middle;" class="dashicons dashicons-info"></span>
|
26 |
+
This file has other JavaScript "children" files depending on it, thus, by unloading it, the following will also be unloaded:
|
27 |
+
<span style="color: green; font-weight: 600;">
|
28 |
+
<?php echo implode('<span style="color: black;">,</span> ', $childHandles); ?>
|
29 |
+
</span>
|
30 |
+
</em>
|
31 |
+
<label for="script_<?php echo $data['row']['obj']->handle; ?>_ignore_children">
|
32 |
+
<input type="hidden" name="wpacu_ignore_child[scripts][<?php echo $data['row']['obj']->handle; ?>]" value="" />
|
33 |
+
⟶ <input id="script_<?php echo $data['row']['obj']->handle; ?>_ignore_children"
|
34 |
+
type="checkbox"
|
35 |
+
<?php if ($ignoreChild) { ?>checked="checked"<?php } ?>
|
36 |
+
name="wpacu_ignore_child[scripts][<?php echo $data['row']['obj']->handle; ?>]"
|
37 |
+
value="1" /> <small><?php _e('Ignore dependency rule and keep the "children" loaded', 'wp-asset-clean-up'); ?></small>
|
38 |
+
</label>
|
39 |
+
</p>
|
40 |
+
<?php
|
41 |
+
}
|
templates/meta-box-loaded-assets/_asset-script-single-row/_handle_deps.php
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
if (! isset($data)) {
|
6 |
+
exit; // no direct access
|
7 |
+
}
|
8 |
+
|
9 |
+
// [Start] Any dependencies
|
10 |
+
if (isset($data['row']['obj']->deps) && ! empty($data['row']['obj']->deps)) {
|
11 |
+
$depsOutput = '';
|
12 |
+
|
13 |
+
if (is_array($data['row']['obj']->deps)) {
|
14 |
+
$dependsOnText = (count($data['row']['obj']->deps) === 1)
|
15 |
+
? __('"Child" of one "parent" JS file:', 'wp-asset-clean-up')
|
16 |
+
: sprintf(__('"Child" of %s JS "parent" files:', 'wp-asset-clean-up'),
|
17 |
+
count($data['row']['obj']->deps));
|
18 |
+
} else {
|
19 |
+
$dependsOnText = __('"Child" of "parent" JS file(s):', 'wp-asset-clean-up');
|
20 |
+
}
|
21 |
+
|
22 |
+
$depsOutput .= $dependsOnText.' ';
|
23 |
+
|
24 |
+
foreach ($data['row']['obj']->deps as $depHandle) {
|
25 |
+
if ($depHandle === 'jquery' || strpos($depHandle, 'jquery-ui-') === 0) {
|
26 |
+
$depHandle .= ' '.$jqueryIconHtmlDepends;
|
27 |
+
}
|
28 |
+
|
29 |
+
$depsOutput .= '<span style="color: green; font-weight: 300;">'.$depHandle.'</span>, ';
|
30 |
+
}
|
31 |
+
|
32 |
+
$depsOutput = rtrim($depsOutput, ', ');
|
33 |
+
|
34 |
+
$extraInfo[] = $depsOutput;
|
35 |
+
}
|
36 |
+
// [End] Any dependencies
|
templates/meta-box-loaded-assets/_asset-script-single-row/_load-exceptions.php
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data, $isBulkUnloaded)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap <?php if (! $isBulkUnloaded) { echo 'wpacu_hide'; } ?>">
|
11 |
+
<div data-script-handle="<?php echo $data['row']['obj']->handle; ?>"
|
12 |
+
style="margin-bottom: 12px;"
|
13 |
+
class="wpacu_exception_options_area_wrap">
|
14 |
+
<div class="wpacu_area_one">
|
15 |
+
<?php if ($isBulkUnloaded) { ?>
|
16 |
+
<strong>Make an exception</strong> and always:
|
17 |
+
<?php } else { ?>
|
18 |
+
If unloaded by any of the bulk rules (e.g. everywhere), <strong>make an exception</strong> and always:
|
19 |
+
<?php } ?>
|
20 |
+
</div>
|
21 |
+
<ul class="wpacu_area_two wpacu_asset_options wpacu_exception_options_area">
|
22 |
+
<li id="wpacu_load_it_option_script_<?php echo $data['row']['obj']->handle; ?>">
|
23 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
24 |
+
id="wpacu_load_it_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
25 |
+
class="wpacu_load_it_option_one wpacu_script wpacu_load_exception"
|
26 |
+
type="checkbox"
|
27 |
+
name="wpacu_scripts_load_it[]"
|
28 |
+
<?php if ($data['row']['is_load_exception_per_page']) { ?> checked="checked" <?php } ?>
|
29 |
+
value="<?php echo $data['row']['obj']->handle; ?>" />
|
30 |
+
Load it on this page</label>
|
31 |
+
</li>
|
32 |
+
<li>
|
33 |
+
<label for="wpacu_load_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"><input
|
34 |
+
data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
35 |
+
id="wpacu_load_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
36 |
+
class="wpacu_load_it_option_two wpacu_script wpacu_load_exception"
|
37 |
+
type="checkbox"
|
38 |
+
disabled="disabled"
|
39 |
+
value="1"/>
|
40 |
+
Load it for URLs with request URI matching this RegEx: <a class="go-pro-link-no-style"
|
41 |
+
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=load_via_regex_make_exception"><span
|
42 |
+
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
43 |
+
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
44 |
+
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
45 |
+
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
46 |
+
valign="top" alt=""/></a> <a
|
47 |
+
style="text-decoration: none; color: inherit;" target="_blank"
|
48 |
+
href="https://assetcleanup.com/docs/?p=21#wpacu-method-2"><span
|
49 |
+
class="dashicons dashicons-editor-help"></span></a></label>
|
50 |
+
</li>
|
51 |
+
</ul>
|
52 |
+
</div>
|
53 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-script-single-row/_notes.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
$handleNote = (isset($data['handle_notes']['scripts'][$data['row']['obj']->handle]) && $data['handle_notes']['scripts'][$data['row']['obj']->handle])
|
11 |
+
? $data['handle_notes']['scripts'][$data['row']['obj']->handle]
|
12 |
+
: false;
|
13 |
+
?>
|
14 |
+
<div class="wpacu-handle-notes">
|
15 |
+
<?php if (! $handleNote) { ?>
|
16 |
+
<p><small>No notes have been added about this JavaScript file (e.g. why you unloaded it or decided to keep it loaded) ⟶ <a data-handle="<?php echo $data['row']['obj']->handle; ?>" href="#" class="wpacu-add-handle-note wpacu-for-script"><span class="dashicons dashicons-welcome-write-blog"></span> <label for="wpacu_handle_note_<?php echo $data['row']['obj']->handle; ?>">Add Note</label></a></small></p>
|
17 |
+
<?php } else { ?>
|
18 |
+
<p><small>The following note has been added for this JavaScript file (<em>to have it removed on update, just leave the text area empty</em>):</small></p>
|
19 |
+
<?php } ?>
|
20 |
+
<div <?php if ($handleNote) { echo 'style="display: block;"'; } ?>
|
21 |
+
data-script-handle="<?php echo $data['row']['obj']->handle; ?>"
|
22 |
+
class="wpacu-handle-notes-field">
|
23 |
+
<textarea id="wpacu_handle_note_script_<?php echo $data['row']['obj']->handle; ?>"
|
24 |
+
style="min-height: 40px;"
|
25 |
+
data-wpacu-adapt-height="1"
|
26 |
+
data-wpacu-is-empty-on-page-load="<?php echo (! $handleNote) ? 'true' : 'false'; ?>"
|
27 |
+
<?php if (! $handleNote) { echo 'disabled="disabled"'; } ?>
|
28 |
+
placeholder="<?php echo esc_attr('Add your note here about this JavaScript file', 'wp-asset-clean-up'); ?>"
|
29 |
+
name="wpacu_handle_notes[scripts][<?php echo $data['row']['obj']->handle; ?>]"><?php echo esc_textarea($handleNote); ?></textarea>
|
30 |
+
</div>
|
31 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-script-single-row/_position.php
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if (isset($data['row']['obj']->position) && $data['row']['obj']->position !== '') {
|
11 |
+
$extraInfo[] = __('Position:', 'wp-asset-clean-up') . ' ' . (( $data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY') . '<a class="go-pro-link-no-style" href="' . WPACU_PLUGIN_GO_PRO_URL . '?utm_source=manage_asset&utm_medium=change_js_position"><span class="wpacu-tooltip" style="width: 300px; margin-left: -146px;">Upgrade to Pro and change the location<br />of the JS file (e.g. to BODY to reduce render-blocking or to HEAD for very early triggering)</span><img width="20" height="20" src="' . WPACU_PLUGIN_URL . '/assets/icons/icon-lock.svg" valign="top" alt="" /> Change it?</a>';
|
12 |
+
}
|
templates/meta-box-loaded-assets/_asset-script-single-row/_source.php
ADDED
@@ -0,0 +1,52 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data, $ver) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if (isset($data['row']['obj']->src, $data['row']['obj']->srcHref) && $data['row']['obj']->src !== '' && $data['row']['obj']->srcHref) {
|
11 |
+
$isExternalSrc = true;
|
12 |
+
|
13 |
+
if (\WpAssetCleanUp\Misc::getLocalSrc($data['row']['obj']->src)
|
14 |
+
|| strpos($data['row']['obj']->src, '/?') !== false // Dynamic Local URL
|
15 |
+
|| strpos(str_replace(site_url(), '', $data['row']['obj']->src), '?') === 0 // Starts with ? right after the site url (it's a local URL)
|
16 |
+
) {
|
17 |
+
$isExternalSrc = false;
|
18 |
+
}
|
19 |
+
|
20 |
+
$relSrc = str_replace(site_url(), '', $data['row']['obj']->src);
|
21 |
+
|
22 |
+
if (isset($data['row']['obj']->baseUrl)) {
|
23 |
+
$relSrc = str_replace($data['row']['obj']->baseUrl, '/', $relSrc);
|
24 |
+
}
|
25 |
+
|
26 |
+
$appendAfterSrcHref = (strpos($data['row']['obj']->srcHref, '?') === false) ? '?' : '&';
|
27 |
+
|
28 |
+
if (isset($data['row']['obj']->ver) && $data['row']['obj']->ver) {
|
29 |
+
$verToAppend = is_array($data['row']['obj']->ver) ? http_build_query(array('ver' => $data['row']['obj']->ver)) : 'ver='.$ver;
|
30 |
+
}
|
31 |
+
|
32 |
+
$isJsPreload = (isset($data['preloads']['scripts'][$data['row']['obj']->handle]) && $data['preloads']['scripts'][$data['row']['obj']->handle])
|
33 |
+
? $data['preloads']['scripts'][$data['row']['obj']->handle]
|
34 |
+
: false;
|
35 |
+
|
36 |
+
if ($isJsPreload) {
|
37 |
+
$data['row']['obj']->preload_status = 'preloaded';
|
38 |
+
}
|
39 |
+
?>
|
40 |
+
<div class="wpacu-source-row" style="margin-top: 12px;">
|
41 |
+
<?php _e('Source:', 'wp-asset-clean-up'); ?> <a target="_blank" style="color: green;" <?php if ($isExternalSrc) { ?> data-wpacu-external-source="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref . $verToAppend; ?>" <?php } ?> href="<?php echo $data['row']['obj']->src . $appendAfterSrcHref . $verToAppend; ?>"><?php echo $relSrc; ?></a> <?php if ($isExternalSrc) { ?><span data-wpacu-external-source-status></span><?php } ?>
|
42 |
+
⟶
|
43 |
+
Preload (if kept loaded)?
|
44 |
+
<select style="display: inline-block; width: auto;"
|
45 |
+
name="wpacu_preloads[scripts][<?php echo $data['row']['obj']->handle; ?>]">
|
46 |
+
<option value="">No (default)</option>
|
47 |
+
<option <?php if ($isJsPreload) { ?>selected="selected"<?php } ?> value="basic">Yes, basic</option>
|
48 |
+
</select>
|
49 |
+
<small>* applies site-wide</small> <small><a style="text-decoration: none; color: inherit;" target="_blank" href="https://assetcleanup.com/docs/?p=202"><span class="dashicons dashicons-editor-help"></span></a></small>
|
50 |
+
</div>
|
51 |
+
<?php
|
52 |
+
}
|
templates/meta-box-loaded-assets/_asset-script-single-row/_unload-per-page.php
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data, $isBulkUnloaded)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap"
|
11 |
+
style="<?php
|
12 |
+
// If site-wide unloaded
|
13 |
+
if ($data['row']['global_unloaded']) {
|
14 |
+
echo 'display: none;';
|
15 |
+
}
|
16 |
+
?> padding: 8px 10px 6px !important;">
|
17 |
+
<ul class="wpacu_asset_options" <?php if ($isBulkUnloaded) { echo 'style="display: none;"'; } ?>>
|
18 |
+
<li class="wpacu_unload_this_page">
|
19 |
+
<label class="wpacu_switch">
|
20 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
21 |
+
class="input-unload-on-this-page <?php if (! $isBulkUnloaded) { echo 'wpacu-not-locked'; } ?> wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
22 |
+
id="script_<?php echo $data['row']['obj']->handle; ?>"
|
23 |
+
<?php if ($isBulkUnloaded) { echo 'disabled="disabled"'; }
|
24 |
+
echo $data['row']['checked']; ?>
|
25 |
+
name="<?php echo WPACU_PLUGIN_ID; ?>[scripts][]"
|
26 |
+
type="checkbox"
|
27 |
+
value="<?php echo $data['row']['obj']->handle; ?>" />
|
28 |
+
<span class="wpacu_slider wpacu_round"></span>
|
29 |
+
</label>
|
30 |
+
<label class="wpacu_slider_text" for="script_<?php echo $data['row']['obj']->handle; ?>">
|
31 |
+
<?php echo $data['page_unload_text']; ?>
|
32 |
+
</label>
|
33 |
+
</li>
|
34 |
+
</ul>
|
35 |
+
|
36 |
+
<?php
|
37 |
+
// Bulk Unloaded (e.g. for all 'post' pages), but not site-wide)
|
38 |
+
if (! $data['row']['global_unloaded'] && $isBulkUnloaded) {
|
39 |
+
?>
|
40 |
+
<p style="margin: 0 !important;">
|
41 |
+
<em>
|
42 |
+
<?php echo sprintf(
|
43 |
+
__('"%s" rule is locked and irrelevant as there are global rules set below that overwrite it', 'wp-asset-clean-up'),
|
44 |
+
$data['page_unload_text']
|
45 |
+
); ?>.
|
46 |
+
<?php _e('Once all the rules below are removed, this option will become available again', 'wp-asset-clean-up'); ?>.
|
47 |
+
</em>
|
48 |
+
</p>
|
49 |
+
<div class="wpacu-clearfix" style="margin-top: -5px; height: 0;"></div>
|
50 |
+
<?php
|
51 |
+
}
|
52 |
+
?>
|
53 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-script-single-row/_unload-post-type.php
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if ($data['bulk_unloaded_type'] === 'post_type') {
|
11 |
+
?>
|
12 |
+
<div class="wpacu_asset_options_wrap" <?php if ($data['row']['global_unloaded']) { echo 'style="display: none;"'; } ?>>
|
13 |
+
<?php
|
14 |
+
// Unloaded On All Pages Belonging to the page's Post Type
|
15 |
+
if ($data['row']['is_post_type_unloaded']) {
|
16 |
+
switch ($data['post_type']) {
|
17 |
+
case 'product':
|
18 |
+
$alreadyUnloadedBulkText = __('This JavaScript file is unloaded on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
19 |
+
break;
|
20 |
+
case 'download':
|
21 |
+
$alreadyUnloadedBulkText = __('This JavaScript file is unloaded on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
22 |
+
break;
|
23 |
+
default:
|
24 |
+
$alreadyUnloadedBulkText = sprintf(__('This JavaScript file is unloaded on all <u>%s</u> post types', 'wp-asset-clean-up'), $data['post_type']);
|
25 |
+
}
|
26 |
+
?>
|
27 |
+
<p><strong style="color: #d54e21;"><?php echo $alreadyUnloadedBulkText; ?>.</strong></p>
|
28 |
+
<?php
|
29 |
+
}
|
30 |
+
?>
|
31 |
+
<ul class="wpacu_asset_options">
|
32 |
+
<?php
|
33 |
+
// [START] ALL PAGES HAVING THE SAME POST TYPE
|
34 |
+
if ($data['row']['is_post_type_unloaded']) {
|
35 |
+
?>
|
36 |
+
<li>
|
37 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
38 |
+
class="wpacu_post_type_option wpacu_post_type_script wpacu_keep_bulk_rule"
|
39 |
+
type="radio"
|
40 |
+
name="wpacu_options_post_type_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
41 |
+
checked="checked"
|
42 |
+
value="default"/>
|
43 |
+
<?php _e('Keep bulk rule', 'wp-asset-clean-up'); ?></label>
|
44 |
+
</li>
|
45 |
+
|
46 |
+
<li>
|
47 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
48 |
+
class="wpacu_post_type_option wpacu_post_type_script wpacu_remove_bulk_rule"
|
49 |
+
type="radio"
|
50 |
+
name="wpacu_options_post_type_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
51 |
+
value="remove"/>
|
52 |
+
<?php _e('Remove bulk rule', 'wp-asset-clean-up'); ?></label>
|
53 |
+
</li>
|
54 |
+
<?php
|
55 |
+
} else {
|
56 |
+
switch ($data['post_type']) {
|
57 |
+
case 'product':
|
58 |
+
$unloadBulkText = __('Unload JS on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
59 |
+
break;
|
60 |
+
case 'download':
|
61 |
+
$unloadBulkText = __('Unload JS on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
62 |
+
break;
|
63 |
+
default:
|
64 |
+
$unloadBulkText = sprintf(__('Unload on All Pages of "<strong>%s</strong>" post type', 'wp-asset-clean-up'), $data['post_type']);
|
65 |
+
}
|
66 |
+
?>
|
67 |
+
<li>
|
68 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
69 |
+
data-handle-for="script"
|
70 |
+
class="wpacu_bulk_unload wpacu_post_type_unload wpacu_post_type_script wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
71 |
+
id="wpacu_global_unload_post_type_script_<?php echo $data['row']['obj']->handle; ?>"
|
72 |
+
type="checkbox"
|
73 |
+
name="wpacu_bulk_unload_scripts[post_type][<?php echo $data['post_type']; ?>][]"
|
74 |
+
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
75 |
+
<?php echo $unloadBulkText; ?> <small>* <?php _e('bulk unload', 'wp-asset-clean-up'); ?></small></label>
|
76 |
+
</li>
|
77 |
+
<?php
|
78 |
+
}
|
79 |
+
?>
|
80 |
+
</ul>
|
81 |
+
</div>
|
82 |
+
<?php
|
83 |
+
}
|
templates/meta-box-loaded-assets/_asset-script-single-row/_unload-site-wide.php
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap">
|
11 |
+
<?php
|
12 |
+
// Unloaded Everywhere
|
13 |
+
if ($data['row']['global_unloaded']) {
|
14 |
+
?>
|
15 |
+
<div style="display: inline-block; margin-right: 15px;"><strong style="color: #d54e21;"><?php _e('This JavaScript file is unloaded site-wide (everywhere)', 'wp-asset-clean-up'); ?>.</strong></div>
|
16 |
+
<?php
|
17 |
+
}
|
18 |
+
?>
|
19 |
+
|
20 |
+
<ul class="wpacu_asset_options" <?php if ($data['row']['global_unloaded']) { echo 'style="display: block; margin: 10px 0;"'; } ?>>
|
21 |
+
<?php
|
22 |
+
if ($data['row']['global_unloaded']) {
|
23 |
+
?>
|
24 |
+
<li>
|
25 |
+
<label>
|
26 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
27 |
+
class="wpacu_bulk_option wpacu_script wpacu_keep_site_wide_rule"
|
28 |
+
type="radio"
|
29 |
+
name="wpacu_options_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
30 |
+
checked="checked"
|
31 |
+
value="default" />
|
32 |
+
<?php _e('Keep site-wide rule', 'wp-asset-clean-up'); ?></label>
|
33 |
+
</li>
|
34 |
+
|
35 |
+
<li style="margin-right: 0;">
|
36 |
+
<label>
|
37 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
38 |
+
class="wpacu_bulk_option wpacu_script wpacu_remove_site_wide_rule"
|
39 |
+
type="radio"
|
40 |
+
name="wpacu_options_scripts[<?php echo $data['row']['obj']->handle; ?>]"
|
41 |
+
value="remove" />
|
42 |
+
<?php _e('Remove site-wide rule', 'wp-asset-clean-up'); ?></label>
|
43 |
+
</li>
|
44 |
+
<?php
|
45 |
+
} else {
|
46 |
+
?>
|
47 |
+
<li>
|
48 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
49 |
+
data-handle-for="script"
|
50 |
+
class="wpacu_global_unload wpacu_bulk_unload wpacu_global_script wpacu_unload_rule_input wpacu_unload_rule_for_script"
|
51 |
+
id="wpacu_global_unload_script_<?php echo $data['row']['obj']->handle; ?>"
|
52 |
+
type="checkbox"
|
53 |
+
name="wpacu_global_unload_scripts[]"
|
54 |
+
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
55 |
+
<?php _e('Unload site-wide', 'wp-asset-clean-up'); ?> (<?php _e('everywhere', 'wp-asset-clean-up'); ?>)</label>
|
56 |
+
</li>
|
57 |
+
<?php
|
58 |
+
}
|
59 |
+
?>
|
60 |
+
</ul>
|
61 |
+
|
62 |
+
<?php if ($data['row']['global_unloaded']) { ?>
|
63 |
+
<div style="margin: 7px 0 -2px 0;">
|
64 |
+
<small><span class="dashicons dashicons-warning"
|
65 |
+
style="color: inherit !important; opacity: 0.6; vertical-align: middle;"></span> All other unload rules (e.g. per page, RegEx) are overwritten by this site-wide rule.</small>
|
66 |
+
</div>
|
67 |
+
<?php } ?>
|
68 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-script-single-row/_unload-via-regex.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
// Only show it if "Unload site-wide" is NOT enabled
|
11 |
+
// Otherwise, there's no point to use an unload regex if the asset is unloaded site-wide
|
12 |
+
if (! $data['row']['global_unloaded']) {
|
13 |
+
?>
|
14 |
+
<div data-script-handle="<?php echo $data['row']['obj']->handle; ?>" class="wpacu_asset_options_wrap wpacu_unload_regex_area_wrap">
|
15 |
+
<ul class="wpacu_asset_options">
|
16 |
+
<li>
|
17 |
+
<label for="wpacu_unload_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>">
|
18 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
19 |
+
id="wpacu_unload_it_regex_option_script_<?php echo $data['row']['obj']->handle; ?>"
|
20 |
+
class="wpacu_unload_it_regex_checkbox"
|
21 |
+
type="checkbox"
|
22 |
+
disabled="disabled"
|
23 |
+
value="1"/> <span>Unload it for URLs with request URI matching this RegEx:</span>
|
24 |
+
|
25 |
+
<a class="go-pro-link-no-style"
|
26 |
+
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=unload_script_by_regex"><span
|
27 |
+
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
28 |
+
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
29 |
+
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
30 |
+
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
31 |
+
valign="top" alt=""/></a>
|
32 |
+
</label>
|
33 |
+
|
34 |
+
<a style="text-decoration: none; color: inherit; vertical-align: middle;" target="_blank"
|
35 |
+
href="https://assetcleanup.com/docs/?p=313#wpacu-unload-by-regex"><span
|
36 |
+
class="dashicons dashicons-editor-help"></span></a>
|
37 |
+
</li>
|
38 |
+
</ul>
|
39 |
+
</div>
|
40 |
+
<?php
|
41 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row.php
CHANGED
@@ -15,6 +15,12 @@ $isBulkUnloaded = $data['row']['global_unloaded'] || $data['row']['is_post_typ
|
|
15 |
$childHandles = isset($data['all_deps']['styles'][$data['row']['obj']->handle]) ? $data['all_deps']['styles'][$data['row']['obj']->handle] : array();
|
16 |
sort($childHandles);
|
17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
if ($isBulkUnloaded) {
|
19 |
$data['row']['class'] .= ' wpacu_is_bulk_unloaded';
|
20 |
}
|
@@ -23,107 +29,19 @@ if ($isBulkUnloaded) {
|
|
23 |
class="wpacu_asset_row <?php echo $data['row']['class']; ?>"
|
24 |
style="<?php if ($isCoreFile && $hideCoreFiles) { echo 'display: none;'; } ?>">
|
25 |
<td valign="top">
|
26 |
-
<div class="wpacu_handle" style="margin: 0 0 -8px;">
|
27 |
-
<label for="style_<?php echo $data['row']['obj']->handle; ?>"><?php _e('Handle:', 'wp-asset-clean-up'); ?> <strong><span style="color: green;"><?php echo $data['row']['obj']->handle; ?></span></strong></label>
|
28 |
-
<em>* Stylesheet (.css)</em>
|
29 |
-
<?php if ($isCoreFile && ! $hideCoreFiles) { ?>
|
30 |
-
<span class="dashicons dashicons-warning wordpress-core-file"><span class="wpacu-tooltip">WordPress Core File<br /><?php _e('Not sure if needed or not? In this case, it\'s better to leave it loaded to avoid breaking the website.', 'wp-asset-clean-up'); ?></span></span>
|
31 |
-
<?php
|
32 |
-
}
|
33 |
-
?>
|
34 |
-
</div>
|
35 |
-
<?php
|
36 |
-
if (! empty($childHandles)) {
|
37 |
-
$ignoreChild = (isset($data['ignore_child']['styles'][$data['row']['obj']->handle]) && $data['ignore_child']['styles'][$data['row']['obj']->handle]);
|
38 |
-
?>
|
39 |
-
<p>
|
40 |
-
<em style="font-size: 85%;">
|
41 |
-
<span style="color: #0073aa; width: 19px; height: 19px; vertical-align: middle;" class="dashicons dashicons-info"></span>
|
42 |
-
This file has other CSS "children" files depending on it. By unloading this CSS, the following "children" files will be unloaded too:
|
43 |
-
<span style="color: green; font-weight: 600;">
|
44 |
-
<?php echo implode(', ', $childHandles); ?>
|
45 |
-
</span>
|
46 |
-
</em>
|
47 |
-
<label for="style_<?php echo $data['row']['obj']->handle; ?>_ignore_children">
|
48 |
-
<input type="hidden" name="wpacu_ignore_child[styles][<?php echo $data['row']['obj']->handle; ?>]" value="" />
|
49 |
-
⟶ <input id="style_<?php echo $data['row']['obj']->handle; ?>_ignore_children"
|
50 |
-
type="checkbox"
|
51 |
-
<?php if ($ignoreChild) { ?>checked="checked"<?php } ?>
|
52 |
-
name="wpacu_ignore_child[styles][<?php echo $data['row']['obj']->handle; ?>]"
|
53 |
-
value="1" /> <small><?php _e('Ignore dependency rule and keep the "children" loaded', 'wp-asset-clean-up'); ?></small>
|
54 |
-
</label>
|
55 |
-
</p>
|
56 |
<?php
|
|
|
|
|
|
|
|
|
|
|
57 |
}
|
58 |
|
59 |
-
$ver = (isset($data['row']['obj']->ver) && trim($data['row']['obj']->ver)) ? $data['row']['obj']->ver : $data['wp_version'];
|
60 |
$data['row']['obj']->preload_status = 'not_preloaded'; // default
|
61 |
|
62 |
$styleHandleHasSrc = $showGoogleFontRemoveNotice = false;
|
63 |
|
64 |
-
|
65 |
-
$styleHandleHasSrc = $isExternalSrc = true; // default
|
66 |
-
|
67 |
-
if (\WpAssetCleanUp\Misc::getLocalSrc($data['row']['obj']->src)
|
68 |
-
|| strpos($data['row']['obj']->src, '/?') !== false // Dynamic Local URL
|
69 |
-
|| strpos(str_replace(site_url(), '', $data['row']['obj']->src), '?') === 0 // Starts with ? right after the site url (it's a local URL)
|
70 |
-
) {
|
71 |
-
$isExternalSrc = false;
|
72 |
-
}
|
73 |
-
|
74 |
-
$isGoogleFontLink = stripos($data['row']['obj']->srcHref, '//fonts.googleapis.com/') !== false;
|
75 |
-
|
76 |
-
// Formatting for Google Fonts
|
77 |
-
if ($isGoogleFontLink) {
|
78 |
-
$data['row']['obj']->src = urldecode(\WpAssetCleanUp\OptimiseAssets\FontsGoogle::alterGoogleFontLink($data['row']['obj']->src));
|
79 |
-
$data['row']['obj']->srcHref = urldecode(\WpAssetCleanUp\OptimiseAssets\FontsGoogle::alterGoogleFontLink($data['row']['obj']->srcHref));
|
80 |
-
}
|
81 |
-
|
82 |
-
$data['row']['obj']->src = str_replace(' ', '+', $data['row']['obj']->src);
|
83 |
-
$data['row']['obj']->srcHref = str_replace(' ', '+', $data['row']['obj']->srcHref);
|
84 |
-
|
85 |
-
$relSrc = str_replace(site_url(), '', $data['row']['obj']->src);
|
86 |
-
|
87 |
-
if (isset($data['row']['obj']->baseUrl)) {
|
88 |
-
$relSrc = str_replace($data['row']['obj']->baseUrl, '/', $data['row']['obj']->src);
|
89 |
-
}
|
90 |
-
|
91 |
-
// "font-display" CSS Property for Google Fonts - underline the URL parameter
|
92 |
-
$toUnderline = 'display='.$data['plugin_settings']['google_fonts_display'];
|
93 |
-
$relSrc = str_replace($toUnderline, '<u style="background: #f2faf2;">'.$toUnderline.'</u>', $relSrc);
|
94 |
-
|
95 |
-
$appendAfterSrcHref = '';
|
96 |
-
|
97 |
-
if ( $isGoogleFontLink && $data['plugin_settings']['google_fonts_remove'] ) {
|
98 |
-
$showGoogleFontRemoveNotice = '<span style="color:#c00;">This resource is not loaded as "Remove Google Fonts" is enabled in "Settings" -> "Google Fonts".</span>';
|
99 |
-
}
|
100 |
-
|
101 |
-
$isCssPreload = (isset($data['preloads']['styles'][$data['row']['obj']->handle]) && $data['preloads']['styles'][$data['row']['obj']->handle])
|
102 |
-
? $data['preloads']['styles'][$data['row']['obj']->handle]
|
103 |
-
: false;
|
104 |
-
|
105 |
-
if ($isCssPreload) {
|
106 |
-
$data['row']['obj']->preload_status = 'preloaded';
|
107 |
-
}
|
108 |
-
|
109 |
-
if ($showGoogleFontRemoveNotice) {
|
110 |
-
echo $showGoogleFontRemoveNotice;
|
111 |
-
}
|
112 |
-
?>
|
113 |
-
<div class="wpacu-source-row" style="margin-top: 12px;">
|
114 |
-
<?php _e('Source:', 'wp-asset-clean-up'); ?> <a <?php if ($isExternalSrc) { ?>data-wpacu-external-source="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref; ?>" <?php } ?> target="_blank" style="color: green;" href="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref; ?>"><?php echo $relSrc; ?></a> <?php if ($isExternalSrc) { ?><span data-wpacu-external-source-status></span><?php } ?>
|
115 |
-
⟶
|
116 |
-
Preload (if kept loaded)?
|
117 |
-
<select style="display: inline-block; width: auto;"
|
118 |
-
name="wpacu_preloads[styles][<?php echo $data['row']['obj']->handle; ?>]">
|
119 |
-
<option value="">No (default)</option>
|
120 |
-
<option <?php if ($isCssPreload) { ?>selected="selected"<?php } ?> value="basic">Yes, basic</option>
|
121 |
-
<option disabled="disabled" value="async">Yes, async (Pro)</option>
|
122 |
-
</select>
|
123 |
-
<small>* applies site-wide</small> <small><a style="text-decoration: none; color: inherit;" target="_blank" href="https://assetcleanup.com/docs/?p=202"><span class="dashicons dashicons-editor-help"></span></a></small>
|
124 |
-
</div>
|
125 |
-
<?php
|
126 |
-
}
|
127 |
|
128 |
// Any tips?
|
129 |
if (isset($data['tips']['css'][$data['row']['obj']->handle]) && ($assetTip = $data['tips']['css'][$data['row']['obj']->handle])) {
|
@@ -134,42 +52,11 @@ if ($isBulkUnloaded) {
|
|
134 |
|
135 |
$extraInfo = array();
|
136 |
|
137 |
-
|
138 |
-
$depsOutput = '';
|
139 |
-
|
140 |
-
if (is_array($data['row']['obj']->deps)) {
|
141 |
-
$dependsOnText = (count($data['row']['obj']->deps) === 1)
|
142 |
-
? __('"Child" of one "parent" CSS file:')
|
143 |
-
: sprintf(__('"Child" of %s CSS "parent" files:', 'wp-asset-clean-up'),
|
144 |
-
count($data['row']['obj']->deps));
|
145 |
-
} else {
|
146 |
-
$dependsOnText = __('"Child" of "parent" CSS file(s):', 'wp-asset-clean-up');
|
147 |
-
}
|
148 |
-
|
149 |
-
$depsOutput .= $dependsOnText.' ';
|
150 |
-
|
151 |
-
foreach ($data['row']['obj']->deps as $depHandle) {
|
152 |
-
$depsOutput .= '<span style="color: green; font-weight: 300;">'.$depHandle.'</span>, ';
|
153 |
-
}
|
154 |
-
|
155 |
-
$depsOutput = rtrim($depsOutput, ', ');
|
156 |
-
|
157 |
-
$extraInfo[] = $depsOutput;
|
158 |
-
}
|
159 |
|
160 |
$extraInfo[] = __('Version:', 'wp-asset-clean-up').' '.$ver;
|
161 |
|
162 |
-
|
163 |
-
$extraInfo[] = __('Position:', 'wp-asset-clean-up') . ' ' . (( $data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY') . '<a class="go-pro-link-no-style" href="' . WPACU_PLUGIN_GO_PRO_URL . '?utm_source=manage_asset&utm_medium=change_css_position"><span class="wpacu-tooltip" style="width: 300px; margin-left: -146px;">Upgrade to Pro and change the location<br />of the CSS file (e.g. to BODY to reduce render-blocking or to HEAD for very early triggering)</span><img width="20" height="20" src="' . WPACU_PLUGIN_URL . '/assets/icons/icon-lock.svg" valign="top" alt="" /> Change it?</a>';
|
164 |
-
} elseif (! $styleHandleHasSrc) {
|
165 |
-
if ($data['row']['obj']->handle === 'woocommerce-inline') {
|
166 |
-
$noSrcLoadedIn = __('Inline CSS Loaded In:', 'wp-asset-clean-up');
|
167 |
-
} else {
|
168 |
-
$noSrcLoadedIn = __('This handle is not for external stylesheet (most likely inline CSS) and it is loaded in:', 'wp-asset-clean-up');
|
169 |
-
}
|
170 |
-
|
171 |
-
$extraInfo[] = $noSrcLoadedIn . ' '. (($data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY');
|
172 |
-
}
|
173 |
|
174 |
// [wpacu_lite]
|
175 |
if (isset($data['row']['obj']->src) && $data['row']['obj']->src) {
|
@@ -178,300 +65,38 @@ if ($isBulkUnloaded) {
|
|
178 |
// [/wpacu_lite]
|
179 |
|
180 |
if (! empty($extraInfo)) {
|
181 |
-
|
|
|
182 |
}
|
183 |
?>
|
184 |
|
185 |
<div class="wrap_bulk_unload_options">
|
186 |
-
<div class="wpacu_asset_options_wrap" style="padding: 8px 10px 6px !important;">
|
187 |
-
<ul class="wpacu_asset_options" <?php if ($isBulkUnloaded) { echo 'style="display: none;"'; } ?>>
|
188 |
-
<li class="wpacu_unload_this_page">
|
189 |
-
<label class="wpacu_switch">
|
190 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
191 |
-
class="input-unload-on-this-page <?php if (! $isBulkUnloaded) { echo 'wpacu-not-locked'; } ?> wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
192 |
-
id="style_<?php echo $data['row']['obj']->handle; ?>"
|
193 |
-
<?php if ($isBulkUnloaded) { echo 'disabled="disabled"'; }
|
194 |
-
echo $data['row']['checked']; ?>
|
195 |
-
name="<?php echo WPACU_PLUGIN_ID; ?>[styles][]"
|
196 |
-
type="checkbox"
|
197 |
-
value="<?php echo $data['row']['obj']->handle; ?>" />
|
198 |
-
<span class="wpacu_slider wpacu_round"></span>
|
199 |
-
</label>
|
200 |
-
<label class="wpacu_slider_text" for="style_<?php echo $data['row']['obj']->handle; ?>">
|
201 |
-
<?php echo $data['page_unload_text']; ?>
|
202 |
-
</label>
|
203 |
-
</li>
|
204 |
-
</ul>
|
205 |
-
|
206 |
-
<?php
|
207 |
-
if ($isBulkUnloaded) {
|
208 |
-
?>
|
209 |
-
<p style="margin: 0 !important;">
|
210 |
-
<em>
|
211 |
-
<?php echo sprintf(
|
212 |
-
__('"%s" rule is locked and irrelevant as there are global rules set below that overwrite it', 'wp-asset-clean-up'),
|
213 |
-
$data['page_unload_text']
|
214 |
-
); ?>.
|
215 |
-
<?php _e('Once all the rules below are removed, this option will become available again', 'wp-asset-clean-up'); ?>.
|
216 |
-
</em>
|
217 |
-
</p>
|
218 |
-
<div class="wpacu-clearfix" style="margin-top: -5px; height: 0;"></div>
|
219 |
-
<?php
|
220 |
-
}
|
221 |
-
?>
|
222 |
-
</div>
|
223 |
-
|
224 |
-
<div class="wpacu_asset_options_wrap">
|
225 |
-
<?php
|
226 |
-
// Unloaded Everywhere
|
227 |
-
if ($data['row']['global_unloaded']) {
|
228 |
-
?>
|
229 |
-
<div style="display: inline-block; margin-right: 15px;"><strong style="color: #d54e21;"><?php _e('This stylesheet file is unloaded everywhere', 'wp-asset-clean-up'); ?></strong></div>
|
230 |
-
<?php
|
231 |
-
}
|
232 |
-
?>
|
233 |
-
|
234 |
-
<ul class="wpacu_asset_options" <?php if ($data['row']['global_unloaded']) { echo 'style="display: inline-block; margin-right: 0;"'; } ?>>
|
235 |
-
<?php
|
236 |
-
// [START] UNLOAD EVERYWHERE
|
237 |
-
if ($data['row']['global_unloaded']) {
|
238 |
-
?>
|
239 |
-
<li>
|
240 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
241 |
-
class="wpacu_global_option wpacu_style wpacu_keep_site_wide_rule"
|
242 |
-
type="radio"
|
243 |
-
name="wpacu_options_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
244 |
-
checked="checked"
|
245 |
-
value="default" />
|
246 |
-
<?php _e('Keep site-wide rule', 'wp-asset-clean-up'); ?></label>
|
247 |
-
</li>
|
248 |
-
|
249 |
-
<li style="margin-right: 0;">
|
250 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
251 |
-
class="wpacu_global_option wpacu_style wpacu_remove_site_wide_rule"
|
252 |
-
type="radio"
|
253 |
-
name="wpacu_options_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
254 |
-
value="remove" />
|
255 |
-
<?php _e('Remove site-wide rule', 'wp-asset-clean-up'); ?></label>
|
256 |
-
</li>
|
257 |
-
<?php
|
258 |
-
} else {
|
259 |
-
?>
|
260 |
-
<li>
|
261 |
-
<label>
|
262 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
263 |
-
data-handle-for="style"
|
264 |
-
class="wpacu_global_unload wpacu_bulk_unload wpacu_global_style wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
265 |
-
id="wpacu_global_unload_style_<?php echo $data['row']['obj']->handle; ?>" type="checkbox"
|
266 |
-
name="wpacu_global_unload_styles[]" value="<?php echo $data['row']['obj']->handle; ?>"/>
|
267 |
-
<?php _e('Unload site-wide', 'wp-asset-clean-up'); ?> (<?php _e('everywhere', 'wp-asset-clean-up'); ?>) <small>* bulk unload</small></label>
|
268 |
-
</li>
|
269 |
-
<?php
|
270 |
-
}
|
271 |
-
// [END] UNLOAD EVERYWHERE
|
272 |
-
?>
|
273 |
-
</ul>
|
274 |
-
</div>
|
275 |
<?php
|
276 |
-
|
277 |
-
|
278 |
-
<div class="wpacu_asset_options_wrap">
|
279 |
-
<?php
|
280 |
-
// Unloaded On All Pages Belonging to the page's Post Type
|
281 |
-
if ($data['row']['is_post_type_unloaded']) {
|
282 |
-
switch ($data['post_type']) {
|
283 |
-
case 'product':
|
284 |
-
$alreadyUnloadedBulkText = __('This stylesheet file is unloaded on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
285 |
-
break;
|
286 |
-
case 'download':
|
287 |
-
$alreadyUnloadedBulkText = __('This stylesheet file is unloaded on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
288 |
-
break;
|
289 |
-
default:
|
290 |
-
$alreadyUnloadedBulkText = sprintf(__('This stylesheet file is unloaded on all <u>%s</u> post types', 'wp-asset-clean-up'), $data['post_type']);
|
291 |
-
}
|
292 |
-
?>
|
293 |
-
<div style="margin: 0 0 4px!important;"><strong style="color: #d54e21;"><?php echo $alreadyUnloadedBulkText; ?>.</strong></div>
|
294 |
-
<?php
|
295 |
-
}
|
296 |
-
?>
|
297 |
|
298 |
-
|
299 |
-
|
300 |
-
// [START] ALL PAGES HAVING THE SAME POST TYPE
|
301 |
-
if ($data['row']['is_post_type_unloaded']) {
|
302 |
-
?>
|
303 |
-
<li>
|
304 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
305 |
-
class="wpacu_bulk_option wpacu_style wpacu_keep_bulk_rule"
|
306 |
-
type="radio"
|
307 |
-
name="wpacu_options_post_type_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
308 |
-
checked="checked"
|
309 |
-
value="default"/>
|
310 |
-
<?php _e('Keep bulk rule', 'wp-asset-clean-up'); ?></label>
|
311 |
-
</li>
|
312 |
|
313 |
-
|
314 |
-
|
315 |
-
class="wpacu_bulk_option wpacu_style wpacu_remove_bulk_rule"
|
316 |
-
type="radio"
|
317 |
-
name="wpacu_options_post_type_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
318 |
-
value="remove"/>
|
319 |
-
<?php _e('Remove bulk rule', 'wp-asset-clean-up'); ?></label>
|
320 |
-
</li>
|
321 |
-
<?php
|
322 |
-
} else {
|
323 |
-
switch ($data['post_type']) {
|
324 |
-
case 'product':
|
325 |
-
$unloadBulkText = __('Unload CSS on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
326 |
-
break;
|
327 |
-
case 'download':
|
328 |
-
$unloadBulkText = __('Unload CSS on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
329 |
-
break;
|
330 |
-
default:
|
331 |
-
$unloadBulkText = sprintf(__('Unload on All Pages of "<strong>%s</strong>" post type', 'wp-asset-clean-up'), $data['post_type']);
|
332 |
-
}
|
333 |
-
?>
|
334 |
-
<li>
|
335 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
336 |
-
data-handle-for="style"
|
337 |
-
class="wpacu_bulk_unload wpacu_post_type_unload wpacu_post_type_style wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
338 |
-
id="wpacu_bulk_unload_post_type_style_<?php echo $data['row']['obj']->handle; ?>"
|
339 |
-
type="checkbox"
|
340 |
-
name="wpacu_bulk_unload_styles[post_type][<?php echo $data['post_type']; ?>][]"
|
341 |
-
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
342 |
-
<?php echo $unloadBulkText; ?> <small>* <?php _e('bulk unload', 'wp-asset-clean-up'); ?></small></label>
|
343 |
-
</li>
|
344 |
-
<?php
|
345 |
-
}
|
346 |
-
?>
|
347 |
-
</ul>
|
348 |
-
</div>
|
349 |
-
<?php
|
350 |
-
}
|
351 |
-
// [END] ALL PAGES HAVING THE SAME POST TYPE
|
352 |
-
?>
|
353 |
-
<?php
|
354 |
-
// Only show it if "Unload site-wide" is NOT enabled
|
355 |
-
// Otherwise, there's no point to use an unload regex if the asset is unloaded site-wide
|
356 |
-
if (! $data['row']['global_unloaded']) {
|
357 |
-
?>
|
358 |
-
<div class="wpacu_asset_options_wrap wpacu_unload_regex_area_wrap">
|
359 |
-
<ul class="wpacu_asset_options">
|
360 |
-
<li>
|
361 |
-
<label for="wpacu_unload_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>">
|
362 |
-
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
363 |
-
id="wpacu_unload_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"
|
364 |
-
class="wpacu_unload_it_regex_checkbox wpacu_unload_rule_input"
|
365 |
-
type="checkbox"
|
366 |
-
disabled="disabled"
|
367 |
-
value="1"/> <span>Unload it for URLs with request URI matching this RegEx:</span>
|
368 |
|
369 |
-
|
370 |
-
|
371 |
-
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
372 |
-
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
373 |
-
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
374 |
-
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
375 |
-
valign="top" alt=""/></a> </label>
|
376 |
-
<a style="text-decoration: none; color: inherit; vertical-align: middle;" target="_blank"
|
377 |
-
href="https://assetcleanup.com/docs/?p=313#wpacu-unload-by-regex"><span
|
378 |
-
class="dashicons dashicons-editor-help"></span></a>
|
379 |
-
</li>
|
380 |
-
</ul>
|
381 |
-
</div>
|
382 |
-
<?php
|
383 |
-
}
|
384 |
-
?>
|
385 |
-
<div class="wpacu-clearfix"></div>
|
386 |
-
</div>
|
387 |
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
<div data-style-handle="<?php echo $data['row']['obj']->handle; ?>"
|
392 |
-
style="margin-bottom: 12px;"
|
393 |
-
class="wpacu_exception_options_area_wrap <?php if (! $isBulkUnloaded) { echo 'wpacu_hide'; } ?>">
|
394 |
-
<div class="wpacu_area_one">
|
395 |
-
<?php if ($isBulkUnloaded) { ?>
|
396 |
-
<strong>Make an exception</strong> and always:
|
397 |
-
<?php } else { ?>
|
398 |
-
If unloaded by any of the bulk rules (e.g. everywhere), <strong>make an exception</strong> and always:
|
399 |
-
<?php } ?>
|
400 |
-
</div>
|
401 |
-
<ul class="wpacu_area_two wpacu_asset_options wpacu_exception_options_area">
|
402 |
-
<li id="wpacu_load_it_option_style_<?php echo $data['row']['obj']->handle; ?>">
|
403 |
-
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
404 |
-
id="wpacu_style_load_it_<?php echo $data['row']['obj']->handle; ?>"
|
405 |
-
class="wpacu_load_it_option_one wpacu_style wpacu_load_exception"
|
406 |
-
type="checkbox"
|
407 |
-
<?php if ($data['row']['is_load_exception_per_page']) { ?> checked="checked" <?php } ?>
|
408 |
-
name="wpacu_styles_load_it[]"
|
409 |
-
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
410 |
-
Load it on this page</label>
|
411 |
-
</li>
|
412 |
-
<li>
|
413 |
-
<label for="wpacu_load_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"><input
|
414 |
-
data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
415 |
-
id="wpacu_load_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"
|
416 |
-
class="wpacu_load_it_option_two wpacu_style wpacu_load_exception"
|
417 |
-
type="checkbox"
|
418 |
-
disabled="disabled"
|
419 |
-
value="1"/>
|
420 |
-
Load it for URLs with request URI matching this RegEx: <a class="go-pro-link-no-style"
|
421 |
-
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=load_via_regex_make_exception"><span
|
422 |
-
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
423 |
-
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
424 |
-
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
425 |
-
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
426 |
-
valign="top" alt=""/></a> <a
|
427 |
-
style="text-decoration: none; color: inherit;" target="_blank"
|
428 |
-
href="https://assetcleanup.com/docs/?p=21#wpacu-method-2"><span
|
429 |
-
class="dashicons dashicons-editor-help"></span></a></label>
|
430 |
-
</li>
|
431 |
-
</ul>
|
432 |
<div class="wpacu-clearfix"></div>
|
433 |
</div>
|
434 |
|
435 |
<?php
|
436 |
-
|
437 |
-
|
438 |
-
<?php _e('Inline styling associated with the handle:', 'wp-asset-clean-up'); ?>
|
439 |
-
<a class="wpacu-assets-inline-code-collapsible"
|
440 |
-
<?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-assets-inline-code-collapsible-active'; } ?>
|
441 |
-
href="#"><?php _e('Show / Hide', 'wp-asset-clean-up'); ?></a>
|
442 |
-
<div class="wpacu-assets-inline-code-collapsible-content <?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-open'; } ?>">
|
443 |
-
<div>
|
444 |
-
<p style="margin-bottom: 15px; line-height: normal !important;">
|
445 |
-
<?php foreach ($data['row']['extra_data_css_list'] as $extraDataCSS) {
|
446 |
-
echo '<em>'.htmlspecialchars($extraDataCSS).'</em>'.'<br />';
|
447 |
-
}
|
448 |
-
?>
|
449 |
-
</p>
|
450 |
-
</div>
|
451 |
-
</div>
|
452 |
-
</div>
|
453 |
-
<?php
|
454 |
-
}
|
455 |
|
456 |
-
|
457 |
-
|
458 |
-
: false;
|
459 |
?>
|
460 |
-
<div class="wpacu-handle-notes">
|
461 |
-
<?php if (! $handleNote) { ?>
|
462 |
-
<p><small>No notes have been added about this stylesheet file (e.g. why you unloaded it or decided to keep it loaded) ⟶ <a data-handle="<?php echo $data['row']['obj']->handle; ?>" href="#" class="wpacu-add-handle-note wpacu-for-style"><span class="dashicons dashicons-welcome-write-blog"></span> <label for="wpacu_handle_note_<?php echo $data['row']['obj']->handle; ?>">Add Note</label></a></small></p>
|
463 |
-
<?php } else { ?>
|
464 |
-
<p><small>The following note has been added for this stylesheet file (<em>to have it removed on update, just leave the text area empty</em>):</small></p>
|
465 |
-
<?php } ?>
|
466 |
-
<div <?php if ($handleNote) { echo 'style="display: block;"'; } ?> data-style-handle="<?php echo $data['row']['obj']->handle; ?>" class="wpacu-handle-notes-field">
|
467 |
-
<textarea id="wpacu_handle_note_style_<?php echo $data['row']['obj']->handle; ?>"
|
468 |
-
rows="3"
|
469 |
-
data-wpacu-is-empty-on-page-load="<?php echo (! $handleNote) ? 'true' : 'false'; ?>"
|
470 |
-
<?php if (! $handleNote) { echo 'disabled="disabled"'; } ?>
|
471 |
-
placeholder="<?php echo esc_attr('Add your note here about this stylesheet file', 'wp-asset-clean-up'); ?>"
|
472 |
-
name="wpacu_handle_notes[styles][<?php echo $data['row']['obj']->handle; ?>]"><?php echo esc_textarea($handleNote); ?></textarea>
|
473 |
-
</div>
|
474 |
-
</div>
|
475 |
<img style="display: none;" class="wpacu-ajax-loader" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-ajax-loading-spinner.svg" alt="" />
|
476 |
</td>
|
477 |
</tr>
|
15 |
$childHandles = isset($data['all_deps']['styles'][$data['row']['obj']->handle]) ? $data['all_deps']['styles'][$data['row']['obj']->handle] : array();
|
16 |
sort($childHandles);
|
17 |
|
18 |
+
// Unloaded site-wide
|
19 |
+
if ($data['row']['global_unloaded']) {
|
20 |
+
$data['row']['class'] .= ' wpacu_is_global_unloaded';
|
21 |
+
}
|
22 |
+
|
23 |
+
// Unloaded site-wide OR on all posts, pages etc.
|
24 |
if ($isBulkUnloaded) {
|
25 |
$data['row']['class'] .= ' wpacu_is_bulk_unloaded';
|
26 |
}
|
29 |
class="wpacu_asset_row <?php echo $data['row']['class']; ?>"
|
30 |
style="<?php if ($isCoreFile && $hideCoreFiles) { echo 'display: none;'; } ?>">
|
31 |
<td valign="top">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
<?php
|
33 |
+
include '_asset-style-single-row/_handle.php';
|
34 |
+
|
35 |
+
$ver = $data['wp_version']; // default
|
36 |
+
if (isset($data['row']['obj']->ver) && $data['row']['obj']->ver) {
|
37 |
+
$ver = is_array($data['row']['obj']->ver) ? implode(', ', $data['row']['obj']->ver) : $data['row']['obj']->ver;
|
38 |
}
|
39 |
|
|
|
40 |
$data['row']['obj']->preload_status = 'not_preloaded'; // default
|
41 |
|
42 |
$styleHandleHasSrc = $showGoogleFontRemoveNotice = false;
|
43 |
|
44 |
+
include '_asset-style-single-row/_source.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
|
46 |
// Any tips?
|
47 |
if (isset($data['tips']['css'][$data['row']['obj']->handle]) && ($assetTip = $data['tips']['css'][$data['row']['obj']->handle])) {
|
52 |
|
53 |
$extraInfo = array();
|
54 |
|
55 |
+
include '_asset-style-single-row/_handle_deps.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
|
57 |
$extraInfo[] = __('Version:', 'wp-asset-clean-up').' '.$ver;
|
58 |
|
59 |
+
include '_asset-style-single-row/_position.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
|
61 |
// [wpacu_lite]
|
62 |
if (isset($data['row']['obj']->src) && $data['row']['obj']->src) {
|
65 |
// [/wpacu_lite]
|
66 |
|
67 |
if (! empty($extraInfo)) {
|
68 |
+
$spacingAdj = (isset($noSrcLoadedIn) && $noSrcLoadedIn) ? '18px 0 10px' : '2px 0 10px';
|
69 |
+
echo '<div style="margin: '.$spacingAdj.';">'.implode(' / ', $extraInfo).'</div>';
|
70 |
}
|
71 |
?>
|
72 |
|
73 |
<div class="wrap_bulk_unload_options">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
<?php
|
75 |
+
// Unload on this page
|
76 |
+
include '_asset-style-single-row/_unload-per-page.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
|
78 |
+
// Unload site-wide (everywhere)
|
79 |
+
include '_asset-style-single-row/_unload-site-wide.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
|
81 |
+
// Unload on all pages of [post] post type (if applicable)
|
82 |
+
include '_asset-style-single-row/_unload-post-type.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
|
84 |
+
// Unload via RegEx (if site-wide is not already chosen)
|
85 |
+
include '_asset-style-single-row/_unload-via-regex.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
|
87 |
+
// If any bulk unload rule is set, show the load exceptions
|
88 |
+
include '_asset-style-single-row/_load-exceptions.php';
|
89 |
+
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
<div class="wpacu-clearfix"></div>
|
91 |
</div>
|
92 |
|
93 |
<?php
|
94 |
+
// Extra inline associated with the LINK tag
|
95 |
+
include '_asset-style-single-row/_extra_inline.php';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
|
97 |
+
// Handle Note
|
98 |
+
include '_asset-style-single-row/_notes.php';
|
|
|
99 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
<img style="display: none;" class="wpacu-ajax-loader" src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-ajax-loading-spinner.svg" alt="" />
|
101 |
</td>
|
102 |
</tr>
|
templates/meta-box-loaded-assets/_asset-style-single-row/_extra_inline.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data, $inlineCodeStatus)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if (! empty($data['row']['extra_data_css_list'])) { ?>
|
11 |
+
<div class="wpacu-assets-inline-code-wrap">
|
12 |
+
<?php _e('Inline styling associated with the handle:', 'wp-asset-clean-up'); ?>
|
13 |
+
<a class="wpacu-assets-inline-code-collapsible"
|
14 |
+
<?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-assets-inline-code-collapsible-active'; } ?>
|
15 |
+
href="#"><?php _e('Show / Hide', 'wp-asset-clean-up'); ?></a>
|
16 |
+
<div class="wpacu-assets-inline-code-collapsible-content <?php if ($inlineCodeStatus !== 'contracted') { echo 'wpacu-open'; } ?>">
|
17 |
+
<div>
|
18 |
+
<p style="margin-bottom: 15px; line-height: normal !important;">
|
19 |
+
<?php foreach ($data['row']['extra_data_css_list'] as $extraDataCSS) {
|
20 |
+
echo '<em>'.htmlspecialchars($extraDataCSS).'</em>'.'<br />';
|
21 |
+
}
|
22 |
+
?>
|
23 |
+
</p>
|
24 |
+
</div>
|
25 |
+
</div>
|
26 |
+
</div>
|
27 |
+
<?php
|
28 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_handle.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data, $isCoreFile, $hideCoreFiles, $childHandles) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_handle" style="margin: 0 0 -8px;">
|
11 |
+
<label for="style_<?php echo $data['row']['obj']->handle; ?>"><?php _e('Handle:', 'wp-asset-clean-up'); ?> <strong><span style="color: green;"><?php echo $data['row']['obj']->handle; ?></span></strong></label>
|
12 |
+
<em>* Stylesheet (.css)</em>
|
13 |
+
<?php if ($isCoreFile && ! $hideCoreFiles) { ?>
|
14 |
+
<span class="dashicons dashicons-warning wordpress-core-file"><span class="wpacu-tooltip">WordPress Core File<br /><?php _e('Not sure if needed or not? In this case, it\'s better to leave it loaded to avoid breaking the website.', 'wp-asset-clean-up'); ?></span></span>
|
15 |
+
<?php
|
16 |
+
}
|
17 |
+
?>
|
18 |
+
</div>
|
19 |
+
<?php
|
20 |
+
if (! empty($childHandles)) {
|
21 |
+
$ignoreChild = (isset($data['ignore_child']['styles'][$data['row']['obj']->handle]) && $data['ignore_child']['styles'][$data['row']['obj']->handle]);
|
22 |
+
?>
|
23 |
+
<p>
|
24 |
+
<em style="font-size: 85%;">
|
25 |
+
<span style="color: #0073aa; width: 19px; height: 19px; vertical-align: middle;" class="dashicons dashicons-info"></span>
|
26 |
+
This file has other CSS "children" files depending on it. By unloading this CSS, the following "children" files will be unloaded too:
|
27 |
+
<span style="color: green; font-weight: 600;">
|
28 |
+
<?php echo implode(', ', $childHandles); ?>
|
29 |
+
</span>
|
30 |
+
</em>
|
31 |
+
<label for="style_<?php echo $data['row']['obj']->handle; ?>_ignore_children">
|
32 |
+
<input type="hidden" name="wpacu_ignore_child[styles][<?php echo $data['row']['obj']->handle; ?>]" value="" />
|
33 |
+
⟶ <input id="style_<?php echo $data['row']['obj']->handle; ?>_ignore_children"
|
34 |
+
type="checkbox"
|
35 |
+
<?php if ($ignoreChild) { ?>checked="checked"<?php } ?>
|
36 |
+
name="wpacu_ignore_child[styles][<?php echo $data['row']['obj']->handle; ?>]"
|
37 |
+
value="1" /> <small><?php _e('Ignore dependency rule and keep the "children" loaded', 'wp-asset-clean-up'); ?></small>
|
38 |
+
</label>
|
39 |
+
</p>
|
40 |
+
<?php
|
41 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_handle_deps.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if (isset($data['row']['obj']->deps) && ! empty($data['row']['obj']->deps)) {
|
11 |
+
$depsOutput = '';
|
12 |
+
|
13 |
+
if (is_array($data['row']['obj']->deps)) {
|
14 |
+
$dependsOnText = (count($data['row']['obj']->deps) === 1)
|
15 |
+
? __('"Child" of one "parent" CSS file:')
|
16 |
+
: sprintf(__('"Child" of %s CSS "parent" files:', 'wp-asset-clean-up'),
|
17 |
+
count($data['row']['obj']->deps));
|
18 |
+
} else {
|
19 |
+
$dependsOnText = __('"Child" of "parent" CSS file(s):', 'wp-asset-clean-up');
|
20 |
+
}
|
21 |
+
|
22 |
+
$depsOutput .= $dependsOnText.' ';
|
23 |
+
|
24 |
+
foreach ($data['row']['obj']->deps as $depHandle) {
|
25 |
+
$depsOutput .= '<span style="color: green; font-weight: 300;">'.$depHandle.'</span>, ';
|
26 |
+
}
|
27 |
+
|
28 |
+
$depsOutput = rtrim($depsOutput, ', ');
|
29 |
+
|
30 |
+
$extraInfo[] = $depsOutput;
|
31 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_load-exceptions.php
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-script-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap <?php if (! $isBulkUnloaded) { echo 'wpacu_hide'; } ?>">
|
11 |
+
<div data-style-handle="<?php echo $data['row']['obj']->handle; ?>"
|
12 |
+
class="wpacu_exception_options_area_wrap">
|
13 |
+
<div class="wpacu_area_one">
|
14 |
+
<?php if ($isBulkUnloaded) { ?>
|
15 |
+
<strong>Make an exception</strong> and always:
|
16 |
+
<?php } else { ?>
|
17 |
+
If unloaded by any of the bulk rules (e.g. everywhere), <strong>make an exception</strong> and always:
|
18 |
+
<?php } ?>
|
19 |
+
</div>
|
20 |
+
<ul class="wpacu_area_two wpacu_asset_options wpacu_exception_options_area">
|
21 |
+
<li id="wpacu_load_it_option_style_<?php echo $data['row']['obj']->handle; ?>">
|
22 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
23 |
+
id="wpacu_style_load_it_<?php echo $data['row']['obj']->handle; ?>"
|
24 |
+
class="wpacu_load_it_option_one wpacu_style wpacu_load_exception"
|
25 |
+
type="checkbox"
|
26 |
+
<?php if ($data['row']['is_load_exception_per_page']) { ?> checked="checked" <?php } ?>
|
27 |
+
name="wpacu_styles_load_it[]"
|
28 |
+
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
29 |
+
Load it on this page</label>
|
30 |
+
</li>
|
31 |
+
<li>
|
32 |
+
<label for="wpacu_load_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"><input
|
33 |
+
data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
34 |
+
id="wpacu_load_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"
|
35 |
+
class="wpacu_load_it_option_two wpacu_style wpacu_load_exception"
|
36 |
+
type="checkbox"
|
37 |
+
disabled="disabled"
|
38 |
+
value="1"/>
|
39 |
+
Load it for URLs with request URI matching this RegEx: <a class="go-pro-link-no-style"
|
40 |
+
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=load_via_regex_make_exception"><span
|
41 |
+
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
42 |
+
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
43 |
+
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
44 |
+
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
45 |
+
valign="top" alt=""/></a> <a
|
46 |
+
style="text-decoration: none; color: inherit;" target="_blank"
|
47 |
+
href="https://assetcleanup.com/docs/?p=21#wpacu-method-2"><span
|
48 |
+
class="dashicons dashicons-editor-help"></span></a></label>
|
49 |
+
</li>
|
50 |
+
</ul>
|
51 |
+
<div class="wpacu-clearfix"></div>
|
52 |
+
</div>
|
53 |
+
</div>
|
54 |
+
|
templates/meta-box-loaded-assets/_asset-style-single-row/_notes.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
$handleNote = (isset($data['handle_notes']['styles'][$data['row']['obj']->handle]) && $data['handle_notes']['styles'][$data['row']['obj']->handle])
|
11 |
+
? $data['handle_notes']['styles'][$data['row']['obj']->handle]
|
12 |
+
: false;
|
13 |
+
?>
|
14 |
+
<div class="wpacu-handle-notes">
|
15 |
+
<?php if (! $handleNote) { ?>
|
16 |
+
<p><small>No notes have been added about this stylesheet file (e.g. why you unloaded it or decided to keep it loaded) ⟶ <a data-handle="<?php echo $data['row']['obj']->handle; ?>" href="#" class="wpacu-add-handle-note wpacu-for-style"><span class="dashicons dashicons-welcome-write-blog"></span> <label for="wpacu_handle_note_<?php echo $data['row']['obj']->handle; ?>">Add Note</label></a></small></p>
|
17 |
+
<?php } else { ?>
|
18 |
+
<p><small>The following note has been added for this stylesheet file (<em>to have it removed on update, just leave the text area empty</em>):</small></p>
|
19 |
+
<?php } ?>
|
20 |
+
<div <?php if ($handleNote) { echo 'style="display: block;"'; } ?>
|
21 |
+
data-style-handle="<?php echo $data['row']['obj']->handle; ?>"
|
22 |
+
class="wpacu-handle-notes-field">
|
23 |
+
<textarea id="wpacu_handle_note_style_<?php echo $data['row']['obj']->handle; ?>"
|
24 |
+
style="min-height: 45px;"
|
25 |
+
data-wpacu-adapt-height="1"
|
26 |
+
data-wpacu-is-empty-on-page-load="<?php echo (! $handleNote) ? 'true' : 'false'; ?>"
|
27 |
+
<?php if (! $handleNote) { echo 'disabled="disabled"'; } ?>
|
28 |
+
placeholder="<?php echo esc_attr('Add your note here about this stylesheet file', 'wp-asset-clean-up'); ?>"
|
29 |
+
name="wpacu_handle_notes[styles][<?php echo $data['row']['obj']->handle; ?>]"><?php echo esc_textarea($handleNote); ?></textarea>
|
30 |
+
</div>
|
31 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-style-single-row/_position.php
ADDED
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data, $styleHandleHasSrc) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if ($styleHandleHasSrc && isset($data['row']['obj']->position) && $data['row']['obj']->position !== '') {
|
11 |
+
$extraInfo[] = __('Position:', 'wp-asset-clean-up') . ' ' . (( $data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY') . '<a class="go-pro-link-no-style" href="' . WPACU_PLUGIN_GO_PRO_URL . '?utm_source=manage_asset&utm_medium=change_css_position"><span class="wpacu-tooltip" style="width: 300px; margin-left: -146px;">Upgrade to Pro and change the location<br />of the CSS file (e.g. to BODY to reduce render-blocking or to HEAD for very early triggering)</span><img width="20" height="20" src="' . WPACU_PLUGIN_URL . '/assets/icons/icon-lock.svg" valign="top" alt="" /> Change it?</a>';
|
12 |
+
} elseif (! $styleHandleHasSrc) {
|
13 |
+
if ($data['row']['obj']->handle === 'woocommerce-inline') {
|
14 |
+
$noSrcLoadedIn = __('Inline CSS Loaded In:', 'wp-asset-clean-up');
|
15 |
+
} else {
|
16 |
+
$noSrcLoadedIn = __('This handle is not for external stylesheet (most likely inline CSS) and it is loaded in:', 'wp-asset-clean-up');
|
17 |
+
}
|
18 |
+
|
19 |
+
$extraInfo[] = $noSrcLoadedIn . ' '. (($data['row']['obj']->position === 'head') ? 'HEAD' : 'BODY');
|
20 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_source.php
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! isset($data, $ver, $styleHandleHasSrc, $showGoogleFontRemoveNotice) ) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if (isset($data['row']['obj']->src, $data['row']['obj']->srcHref) && $data['row']['obj']->src && $data['row']['obj']->srcHref) {
|
11 |
+
$styleHandleHasSrc = $isExternalSrc = true; // default
|
12 |
+
|
13 |
+
if (\WpAssetCleanUp\Misc::getLocalSrc($data['row']['obj']->src)
|
14 |
+
|| strpos($data['row']['obj']->src, '/?') !== false // Dynamic Local URL
|
15 |
+
|| strpos(str_replace(site_url(), '', $data['row']['obj']->src), '?') === 0 // Starts with ? right after the site url (it's a local URL)
|
16 |
+
) {
|
17 |
+
$isExternalSrc = false;
|
18 |
+
}
|
19 |
+
|
20 |
+
$isGoogleFontLink = stripos($data['row']['obj']->srcHref, '//fonts.googleapis.com/') !== false;
|
21 |
+
|
22 |
+
// Formatting for Google Fonts
|
23 |
+
if ($isGoogleFontLink) {
|
24 |
+
$data['row']['obj']->src = urldecode(\WpAssetCleanUp\OptimiseAssets\FontsGoogle::alterGoogleFontLink($data['row']['obj']->src));
|
25 |
+
$data['row']['obj']->srcHref = urldecode(\WpAssetCleanUp\OptimiseAssets\FontsGoogle::alterGoogleFontLink($data['row']['obj']->srcHref));
|
26 |
+
}
|
27 |
+
|
28 |
+
$data['row']['obj']->src = str_replace(' ', '+', $data['row']['obj']->src);
|
29 |
+
$data['row']['obj']->srcHref = str_replace(' ', '+', $data['row']['obj']->srcHref);
|
30 |
+
|
31 |
+
$relSrc = str_replace(site_url(), '', $data['row']['obj']->src);
|
32 |
+
|
33 |
+
if (isset($data['row']['obj']->baseUrl)) {
|
34 |
+
$relSrc = str_replace($data['row']['obj']->baseUrl, '/', $data['row']['obj']->src);
|
35 |
+
}
|
36 |
+
|
37 |
+
// "font-display" CSS Property for Google Fonts - underline the URL parameter
|
38 |
+
$toUnderline = 'display='.$data['plugin_settings']['google_fonts_display'];
|
39 |
+
$relSrc = str_replace($toUnderline, '<u style="background: #f2faf2;">'.$toUnderline.'</u>', $relSrc);
|
40 |
+
|
41 |
+
$appendAfterSrcHref = (strpos($data['row']['obj']->srcHref, '?') === false) ? '?' : '&';
|
42 |
+
|
43 |
+
if (isset($data['row']['obj']->ver) && $data['row']['obj']->ver) {
|
44 |
+
$verToAppend = is_array($data['row']['obj']->ver) ? http_build_query(array('ver' => $data['row']['obj']->ver)) : 'ver='.$ver;
|
45 |
+
}
|
46 |
+
|
47 |
+
if ( $isGoogleFontLink && $data['plugin_settings']['google_fonts_remove'] ) {
|
48 |
+
$showGoogleFontRemoveNotice = '<span style="color:#c00;">This resource is not loaded as "Remove Google Fonts" is enabled in "Settings" -> "Google Fonts".</span>';
|
49 |
+
}
|
50 |
+
|
51 |
+
$isCssPreload = (isset($data['preloads']['styles'][$data['row']['obj']->handle]) && $data['preloads']['styles'][$data['row']['obj']->handle])
|
52 |
+
? $data['preloads']['styles'][$data['row']['obj']->handle]
|
53 |
+
: false;
|
54 |
+
|
55 |
+
if ($isCssPreload) {
|
56 |
+
$data['row']['obj']->preload_status = 'preloaded';
|
57 |
+
}
|
58 |
+
|
59 |
+
if ($showGoogleFontRemoveNotice) {
|
60 |
+
echo $showGoogleFontRemoveNotice;
|
61 |
+
}
|
62 |
+
?>
|
63 |
+
<div class="wpacu-source-row" style="margin-top: 12px;">
|
64 |
+
<?php _e('Source:', 'wp-asset-clean-up'); ?> <a <?php if ($isExternalSrc) { ?>data-wpacu-external-source="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref . $verToAppend; ?>" <?php } ?> target="_blank" style="color: green;" href="<?php echo $data['row']['obj']->srcHref . $appendAfterSrcHref . $verToAppend; ?>"><?php echo $relSrc; ?></a> <?php if ($isExternalSrc) { ?><span data-wpacu-external-source-status></span><?php } ?>
|
65 |
+
⟶
|
66 |
+
Preload (if kept loaded)?
|
67 |
+
<select style="display: inline-block; width: auto;"
|
68 |
+
name="wpacu_preloads[styles][<?php echo $data['row']['obj']->handle; ?>]">
|
69 |
+
<option value="">No (default)</option>
|
70 |
+
<option <?php if ($isCssPreload) { ?>selected="selected"<?php } ?> value="basic">Yes, basic</option>
|
71 |
+
<option disabled="disabled" value="async">Yes, async (Pro)</option>
|
72 |
+
</select>
|
73 |
+
<small>* applies site-wide</small> <small><a style="text-decoration: none; color: inherit;" target="_blank" href="https://assetcleanup.com/docs/?p=202"><span class="dashicons dashicons-editor-help"></span></a></small>
|
74 |
+
</div>
|
75 |
+
<?php
|
76 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_unload-per-page.php
ADDED
@@ -0,0 +1,53 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data, $isBulkUnloaded)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap"
|
11 |
+
style="<?php
|
12 |
+
// If site-wide unloaded
|
13 |
+
if ($data['row']['global_unloaded']) {
|
14 |
+
echo 'display: none;';
|
15 |
+
}
|
16 |
+
?> padding: 8px 10px 6px !important;">
|
17 |
+
<ul class="wpacu_asset_options" <?php if ($isBulkUnloaded) { echo 'style="display: none;"'; } ?>>
|
18 |
+
<li class="wpacu_unload_this_page">
|
19 |
+
<label class="wpacu_switch">
|
20 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
21 |
+
class="input-unload-on-this-page <?php if (! $isBulkUnloaded) { echo 'wpacu-not-locked'; } ?> wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
22 |
+
id="style_<?php echo $data['row']['obj']->handle; ?>"
|
23 |
+
<?php if ($isBulkUnloaded) { echo 'disabled="disabled"'; }
|
24 |
+
echo $data['row']['checked']; ?>
|
25 |
+
name="<?php echo WPACU_PLUGIN_ID; ?>[styles][]"
|
26 |
+
type="checkbox"
|
27 |
+
value="<?php echo $data['row']['obj']->handle; ?>" />
|
28 |
+
<span class="wpacu_slider wpacu_round"></span>
|
29 |
+
</label>
|
30 |
+
<label class="wpacu_slider_text" for="style_<?php echo $data['row']['obj']->handle; ?>">
|
31 |
+
<?php echo $data['page_unload_text']; ?>
|
32 |
+
</label>
|
33 |
+
</li>
|
34 |
+
</ul>
|
35 |
+
|
36 |
+
<?php
|
37 |
+
// Bulk Unloaded (e.g. for all 'post' pages), but not site-wide)
|
38 |
+
if (! $data['row']['global_unloaded'] && $isBulkUnloaded) {
|
39 |
+
?>
|
40 |
+
<p style="margin: 0 !important;">
|
41 |
+
<em>
|
42 |
+
<?php echo sprintf(
|
43 |
+
__('"%s" rule is locked and irrelevant as there are global rules set below that overwrite it', 'wp-asset-clean-up'),
|
44 |
+
$data['page_unload_text']
|
45 |
+
); ?>.
|
46 |
+
<?php _e('Once all the rules below are removed, this option will become available again', 'wp-asset-clean-up'); ?>.
|
47 |
+
</em>
|
48 |
+
</p>
|
49 |
+
<div class="wpacu-clearfix" style="margin-top: -5px; height: 0;"></div>
|
50 |
+
<?php
|
51 |
+
}
|
52 |
+
?>
|
53 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-style-single-row/_unload-post-type.php
ADDED
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
if ($data['bulk_unloaded_type'] === 'post_type') {
|
11 |
+
?>
|
12 |
+
<div class="wpacu_asset_options_wrap" <?php if ($data['row']['global_unloaded']) { echo 'style="display: none;"'; } ?>>
|
13 |
+
<?php
|
14 |
+
// Unloaded On All Pages Belonging to the page's Post Type
|
15 |
+
if ($data['row']['is_post_type_unloaded']) {
|
16 |
+
switch ($data['post_type']) {
|
17 |
+
case 'product':
|
18 |
+
$alreadyUnloadedBulkText = __('This stylesheet file is unloaded on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
19 |
+
break;
|
20 |
+
case 'download':
|
21 |
+
$alreadyUnloadedBulkText = __('This stylesheet file is unloaded on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
22 |
+
break;
|
23 |
+
default:
|
24 |
+
$alreadyUnloadedBulkText = sprintf(__('This stylesheet file is unloaded on all <u>%s</u> post types', 'wp-asset-clean-up'), $data['post_type']);
|
25 |
+
}
|
26 |
+
?>
|
27 |
+
<div style="margin: 0 0 4px!important;"><strong style="color: #d54e21;"><?php echo $alreadyUnloadedBulkText; ?>.</strong></div>
|
28 |
+
<?php
|
29 |
+
}
|
30 |
+
?>
|
31 |
+
|
32 |
+
<ul class="wpacu_asset_options">
|
33 |
+
<?php
|
34 |
+
if ($data['row']['is_post_type_unloaded']) {
|
35 |
+
?>
|
36 |
+
<li>
|
37 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
38 |
+
class="wpacu_bulk_option wpacu_style wpacu_keep_bulk_rule"
|
39 |
+
type="radio"
|
40 |
+
name="wpacu_options_post_type_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
41 |
+
checked="checked"
|
42 |
+
value="default"/>
|
43 |
+
<?php _e('Keep bulk rule', 'wp-asset-clean-up'); ?></label>
|
44 |
+
</li>
|
45 |
+
|
46 |
+
<li>
|
47 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
48 |
+
class="wpacu_bulk_option wpacu_style wpacu_remove_bulk_rule"
|
49 |
+
type="radio"
|
50 |
+
name="wpacu_options_post_type_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
51 |
+
value="remove"/>
|
52 |
+
<?php _e('Remove bulk rule', 'wp-asset-clean-up'); ?></label>
|
53 |
+
</li>
|
54 |
+
<?php
|
55 |
+
} else {
|
56 |
+
switch ($data['post_type']) {
|
57 |
+
case 'product':
|
58 |
+
$unloadBulkText = __('Unload CSS on all WooCommerce "Product" pages', 'wp-asset-clean-up');
|
59 |
+
break;
|
60 |
+
case 'download':
|
61 |
+
$unloadBulkText = __('Unload CSS on all Easy Digital Downloads "Download" pages', 'wp-asset-clean-up');
|
62 |
+
break;
|
63 |
+
default:
|
64 |
+
$unloadBulkText = sprintf(__('Unload on All Pages of "<strong>%s</strong>" post type', 'wp-asset-clean-up'), $data['post_type']);
|
65 |
+
}
|
66 |
+
?>
|
67 |
+
<li>
|
68 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
69 |
+
data-handle-for="style"
|
70 |
+
class="wpacu_bulk_unload wpacu_post_type_unload wpacu_post_type_style wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
71 |
+
id="wpacu_bulk_unload_post_type_style_<?php echo $data['row']['obj']->handle; ?>"
|
72 |
+
type="checkbox"
|
73 |
+
name="wpacu_bulk_unload_styles[post_type][<?php echo $data['post_type']; ?>][]"
|
74 |
+
value="<?php echo $data['row']['obj']->handle; ?>"/>
|
75 |
+
<?php echo $unloadBulkText; ?></label>
|
76 |
+
</li>
|
77 |
+
<?php
|
78 |
+
}
|
79 |
+
?>
|
80 |
+
</ul>
|
81 |
+
</div>
|
82 |
+
<?php
|
83 |
+
}
|
templates/meta-box-loaded-assets/_asset-style-single-row/_unload-site-wide.php
ADDED
@@ -0,0 +1,62 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
?>
|
10 |
+
<div class="wpacu_asset_options_wrap">
|
11 |
+
<?php
|
12 |
+
if ($data['row']['global_unloaded']) {
|
13 |
+
?>
|
14 |
+
<div style="display: inline-block; margin-right: 15px;"><strong style="color: #d54e21;"><?php _e('This stylesheet file is unloaded everywhere', 'wp-asset-clean-up'); ?>.</strong></div>
|
15 |
+
<?php
|
16 |
+
}
|
17 |
+
?>
|
18 |
+
<ul class="wpacu_asset_options" <?php if ($data['row']['global_unloaded']) { echo 'style="display: block; margin: 10px 0;"'; } ?>>
|
19 |
+
<?php
|
20 |
+
if ($data['row']['global_unloaded']) {
|
21 |
+
?>
|
22 |
+
<li>
|
23 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
24 |
+
class="wpacu_global_option wpacu_style wpacu_keep_site_wide_rule"
|
25 |
+
type="radio"
|
26 |
+
name="wpacu_options_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
27 |
+
checked="checked"
|
28 |
+
value="default" />
|
29 |
+
<?php _e('Keep site-wide rule', 'wp-asset-clean-up'); ?></label>
|
30 |
+
</li>
|
31 |
+
|
32 |
+
<li style="margin-right: 0;">
|
33 |
+
<label><input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
34 |
+
class="wpacu_global_option wpacu_style wpacu_remove_site_wide_rule"
|
35 |
+
type="radio"
|
36 |
+
name="wpacu_options_styles[<?php echo $data['row']['obj']->handle; ?>]"
|
37 |
+
value="remove" />
|
38 |
+
<?php _e('Remove site-wide rule', 'wp-asset-clean-up'); ?></label>
|
39 |
+
</li>
|
40 |
+
<?php
|
41 |
+
} else {
|
42 |
+
?>
|
43 |
+
<li>
|
44 |
+
<label>
|
45 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
46 |
+
data-handle-for="style"
|
47 |
+
class="wpacu_global_unload wpacu_bulk_unload wpacu_global_style wpacu_unload_rule_input wpacu_unload_rule_for_style"
|
48 |
+
id="wpacu_global_unload_style_<?php echo $data['row']['obj']->handle; ?>" type="checkbox"
|
49 |
+
name="wpacu_global_unload_styles[]" value="<?php echo $data['row']['obj']->handle; ?>"/>
|
50 |
+
<?php _e('Unload site-wide', 'wp-asset-clean-up'); ?> (<?php _e('everywhere', 'wp-asset-clean-up'); ?>)</label>
|
51 |
+
</li>
|
52 |
+
<?php
|
53 |
+
}
|
54 |
+
?>
|
55 |
+
</ul>
|
56 |
+
<?php if ($data['row']['global_unloaded']) { ?>
|
57 |
+
<div style="margin: 7px 0 -2px 0;">
|
58 |
+
<small><span class="dashicons dashicons-warning"
|
59 |
+
style="color: inherit !important; opacity: 0.6; vertical-align: middle;"></span> All other unload rules (e.g. per page, RegEx) are overwritten by this site-wide rule.</small>
|
60 |
+
</div>
|
61 |
+
<?php } ?>
|
62 |
+
</div>
|
templates/meta-box-loaded-assets/_asset-style-single-row/_unload-via-regex.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* The file is included from /templates/meta-box-loaded-assets/_asset-style-single-row.php
|
4 |
+
*/
|
5 |
+
|
6 |
+
if (! isset($data)) {
|
7 |
+
exit; // no direct access
|
8 |
+
}
|
9 |
+
|
10 |
+
// Only show it if "Unload site-wide" is NOT enabled
|
11 |
+
// Otherwise, there's no point to use an unload regex if the asset is unloaded site-wide
|
12 |
+
if (! $data['row']['global_unloaded']) {
|
13 |
+
?>
|
14 |
+
<div class="wpacu_asset_options_wrap wpacu_unload_regex_area_wrap">
|
15 |
+
<ul class="wpacu_asset_options">
|
16 |
+
<li>
|
17 |
+
<label for="wpacu_unload_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>">
|
18 |
+
<input data-handle="<?php echo $data['row']['obj']->handle; ?>"
|
19 |
+
id="wpacu_unload_it_regex_option_style_<?php echo $data['row']['obj']->handle; ?>"
|
20 |
+
class="wpacu_unload_it_regex_checkbox wpacu_unload_rule_input"
|
21 |
+
type="checkbox"
|
22 |
+
disabled="disabled"
|
23 |
+
value="1"/> <span>Unload it for URLs with request URI matching this RegEx:</span>
|
24 |
+
|
25 |
+
<a class="go-pro-link-no-style"
|
26 |
+
href="<?php echo WPACU_PLUGIN_GO_PRO_URL; ?>?utm_source=manage_asset&utm_medium=unload_style_by_regex"><span
|
27 |
+
class="wpacu-tooltip wpacu-larger"><?php _e( 'This feature is available in the premium version of the plugin.',
|
28 |
+
'wp-asset-clean-up' ); ?><br/> <?php _e( 'Click here to upgrade to Pro',
|
29 |
+
'wp-asset-clean-up' ); ?>!</span><img width="20" height="20"
|
30 |
+
src="<?php echo WPACU_PLUGIN_URL; ?>/assets/icons/icon-lock.svg"
|
31 |
+
valign="top" alt=""/></a> </label>
|
32 |
+
<a style="text-decoration: none; color: inherit; vertical-align: middle;" target="_blank"
|
33 |
+
href="https://assetcleanup.com/docs/?p=313#wpacu-unload-by-regex"><span
|
34 |
+
class="dashicons dashicons-editor-help"></span></a>
|
35 |
+
</li>
|
36 |
+
</ul>
|
37 |
+
</div>
|
38 |
+
<?php
|
39 |
+
}
|
templates/meta-box-loaded-assets/_inline_js.php
CHANGED
@@ -118,4 +118,47 @@ if (! isset($data)) {
|
|
118 |
<?php
|
119 |
}
|
120 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
</script>
|
118 |
<?php
|
119 |
}
|
120 |
?>
|
121 |
+
/* Source: http://bdadam.com/blog/automatically-adapting-the-height-textarea.html */
|
122 |
+
(function() {
|
123 |
+
function wpacuAdjustTextareaHeight(el, minHeight) {
|
124 |
+
// compute the height difference which is caused by border and outline
|
125 |
+
var outerHeight = parseInt(window.getComputedStyle(el).height, 10);
|
126 |
+
var diff = outerHeight - el.clientHeight;
|
127 |
+
|
128 |
+
// set the height to 0 in case of it has to be shrinked
|
129 |
+
el.style.height = 0;
|
130 |
+
|
131 |
+
// set the correct height
|
132 |
+
// el.scrollHeight is the full height of the content, not just the visible part
|
133 |
+
el.style.height = Math.max(minHeight, el.scrollHeight + diff) + 'px';
|
134 |
+
}
|
135 |
+
|
136 |
+
|
137 |
+
// We use the "data-wpacu-adapt-height" attribute as a marker
|
138 |
+
var wpacuTextAreas = [].slice.call(document.querySelectorAll('textarea[data-wpacu-adapt-height="1"]'));
|
139 |
+
|
140 |
+
// Iterate through all the textareas on the page
|
141 |
+
wpacuTextAreas.forEach(function(el) {
|
142 |
+
// we need box-sizing: border-box, if the textarea has padding
|
143 |
+
el.style.boxSizing = el.style.mozBoxSizing = 'border-box';
|
144 |
+
|
145 |
+
// we don't need any scrollbars, do we? :)
|
146 |
+
el.style.overflowY = 'hidden';
|
147 |
+
|
148 |
+
// the minimum height initiated through the "rows" attribute
|
149 |
+
var minHeight = el.scrollHeight;
|
150 |
+
|
151 |
+
el.addEventListener('input', function() {
|
152 |
+
wpacuAdjustTextareaHeight(el, minHeight);
|
153 |
+
});
|
154 |
+
|
155 |
+
// we have to readjust when window size changes (e.g. orientation change)
|
156 |
+
window.addEventListener('resize', function() {
|
157 |
+
wpacuAdjustTextareaHeight(el, minHeight);
|
158 |
+
});
|
159 |
+
|
160 |
+
// we adjust height to the initial content
|
161 |
+
wpacuAdjustTextareaHeight(el, minHeight);
|
162 |
+
});
|
163 |
+
}());
|
164 |
</script>
|
wpacu.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/*
|
3 |
* Plugin Name: Asset CleanUp: Page Speed Booster
|
4 |
* Plugin URI: https://wordpress.org/plugins/wp-asset-clean-up/
|
5 |
-
* Version: 1.3.5.
|
6 |
* Description: Unload Chosen Scripts & Styles from Posts/Pages to reduce HTTP Requests, Combine/Minify CSS/JS files
|
7 |
* Author: Gabriel Livan
|
8 |
* Author URI: http://gabelivan.com/
|
@@ -12,7 +12,7 @@
|
|
12 |
|
13 |
// Is the Pro version triggered before the Lite one and are both plugins active?
|
14 |
if (! defined('WPACU_PLUGIN_VERSION')) {
|
15 |
-
define('WPACU_PLUGIN_VERSION', '1.3.5.
|
16 |
}
|
17 |
|
18 |
// Exit if accessed directly
|
2 |
/*
|
3 |
* Plugin Name: Asset CleanUp: Page Speed Booster
|
4 |
* Plugin URI: https://wordpress.org/plugins/wp-asset-clean-up/
|
5 |
+
* Version: 1.3.5.2
|
6 |
* Description: Unload Chosen Scripts & Styles from Posts/Pages to reduce HTTP Requests, Combine/Minify CSS/JS files
|
7 |
* Author: Gabriel Livan
|
8 |
* Author URI: http://gabelivan.com/
|
12 |
|
13 |
// Is the Pro version triggered before the Lite one and are both plugins active?
|
14 |
if (! defined('WPACU_PLUGIN_VERSION')) {
|
15 |
+
define('WPACU_PLUGIN_VERSION', '1.3.5.2');
|
16 |
}
|
17 |
|
18 |
// Exit if accessed directly
|