Changeset 3135111
- Timestamp:
- 08/13/2024 06:05:33 PM (16 months ago)
- Location:
- litespeed-cache
- Files:
-
- 337 added
- 17 edited
-
tags/6.4 (added)
-
tags/6.4/LICENSE (added)
-
tags/6.4/assets (added)
-
tags/6.4/assets/css (added)
-
tags/6.4/assets/css/fonts (added)
-
tags/6.4/assets/css/fonts/litespeedfont.eot (added)
-
tags/6.4/assets/css/fonts/litespeedfont.svg (added)
-
tags/6.4/assets/css/fonts/litespeedfont.ttf (added)
-
tags/6.4/assets/css/fonts/litespeedfont.woff (added)
-
tags/6.4/assets/css/iziModal.min.css (added)
-
tags/6.4/assets/css/litespeed-legacy.css (added)
-
tags/6.4/assets/css/litespeed.css (added)
-
tags/6.4/assets/img (added)
-
tags/6.4/assets/img/Litespeed.icon.svg (added)
-
tags/6.4/assets/img/iconlscwp.svg (added)
-
tags/6.4/assets/img/icons (added)
-
tags/6.4/assets/img/icons/all.svg (added)
-
tags/6.4/assets/img/icons/all_transients.svg (added)
-
tags/6.4/assets/img/icons/auto_draft.svg (added)
-
tags/6.4/assets/img/icons/cross_icon.svg (added)
-
tags/6.4/assets/img/icons/db.svg (added)
-
tags/6.4/assets/img/icons/empty-cache.svg (added)
-
tags/6.4/assets/img/icons/expired_transient.svg (added)
-
tags/6.4/assets/img/icons/img_optm.svg (added)
-
tags/6.4/assets/img/icons/img_optm_disabled.svg (added)
-
tags/6.4/assets/img/icons/img_webp.svg (added)
-
tags/6.4/assets/img/icons/img_webp_disabled.svg (added)
-
tags/6.4/assets/img/icons/optimize_tables.svg (added)
-
tags/6.4/assets/img/icons/purge-403.svg (added)
-
tags/6.4/assets/img/icons/purge-404.svg (added)
-
tags/6.4/assets/img/icons/purge-500.svg (added)
-
tags/6.4/assets/img/icons/purge-all.svg (added)
-
tags/6.4/assets/img/icons/purge-cssjs.svg (added)
-
tags/6.4/assets/img/icons/purge-front.svg (added)
-
tags/6.4/assets/img/icons/purge-object.svg (added)
-
tags/6.4/assets/img/icons/purge-opcache.svg (added)
-
tags/6.4/assets/img/icons/purge-pages.svg (added)
-
tags/6.4/assets/img/icons/revision.svg (added)
-
tags/6.4/assets/img/icons/spam_comment.svg (added)
-
tags/6.4/assets/img/icons/success_icon.svg (added)
-
tags/6.4/assets/img/icons/trackback-pingback.svg (added)
-
tags/6.4/assets/img/icons/trash_comment.svg (added)
-
tags/6.4/assets/img/icons/trash_post.svg (added)
-
tags/6.4/assets/img/lscwp-logo_90x90.png (added)
-
tags/6.4/assets/img/lscwp_blue_font-icon_22px.svg (added)
-
tags/6.4/assets/img/lscwp_font-icon_32px.svg (added)
-
tags/6.4/assets/img/lscwp_gray-yellow_font-icon_22px.svg (added)
-
tags/6.4/assets/img/lscwp_gray_font-icon_22px.svg (added)
-
tags/6.4/assets/img/lscwp_grayscale_font-icon_22px.svg (added)
-
tags/6.4/assets/img/quic-cloud-icon-16x16.svg (added)
-
tags/6.4/assets/img/quic-cloud-logo-light_stack_300px.png (added)
-
tags/6.4/assets/img/quic-cloud-logo.svg (added)
-
tags/6.4/assets/img/slack-logo.png (added)
-
tags/6.4/assets/js (added)
-
tags/6.4/assets/js/babel.min.js (added)
-
tags/6.4/assets/js/component.cdn.js (added)
-
tags/6.4/assets/js/component.crawler.js (added)
-
tags/6.4/assets/js/css_async.js (added)
-
tags/6.4/assets/js/css_async.min.js (added)
-
tags/6.4/assets/js/guest.docref.js (added)
-
tags/6.4/assets/js/guest.docref.min.js (added)
-
tags/6.4/assets/js/guest.js (added)
-
tags/6.4/assets/js/guest.min.js (added)
-
tags/6.4/assets/js/instant_click.min.js (added)
-
tags/6.4/assets/js/instant_click.ori.js (added)
-
tags/6.4/assets/js/iziModal.min.js (added)
-
tags/6.4/assets/js/js_delay.js (added)
-
tags/6.4/assets/js/js_delay.min.js (added)
-
tags/6.4/assets/js/lazyload.init.js (added)
-
tags/6.4/assets/js/lazyload.lib.js (added)
-
tags/6.4/assets/js/lazyload.min.js (added)
-
tags/6.4/assets/js/litespeed-cache-admin.js (added)
-
tags/6.4/assets/js/react.min.js (added)
-
tags/6.4/assets/js/webfontloader.js (added)
-
tags/6.4/assets/js/webfontloader.min.js (added)
-
tags/6.4/autoload.php (added)
-
tags/6.4/changelog.txt (added)
-
tags/6.4/cli (added)
-
tags/6.4/cli/crawler.cls.php (added)
-
tags/6.4/cli/debug.cls.php (added)
-
tags/6.4/cli/image.cls.php (added)
-
tags/6.4/cli/online.cls.php (added)
-
tags/6.4/cli/option.cls.php (added)
-
tags/6.4/cli/presets.cls.php (added)
-
tags/6.4/cli/purge.cls.php (added)
-
tags/6.4/data (added)
-
tags/6.4/data/.htaccess (added)
-
tags/6.4/data/cache_nocacheable.txt (added)
-
tags/6.4/data/const.default.ini (added)
-
tags/6.4/data/const.network_default.ini (added)
-
tags/6.4/data/css_excludes.txt (added)
-
tags/6.4/data/esi.nonce.txt (added)
-
tags/6.4/data/esi.nonces.txt (added)
-
tags/6.4/data/js_defer_excludes.txt (added)
-
tags/6.4/data/js_excludes.txt (added)
-
tags/6.4/data/optm_uri_exc.txt (added)
-
tags/6.4/data/preset (added)
-
tags/6.4/data/preset/advanced.data (added)
-
tags/6.4/data/preset/aggressive.data (added)
-
tags/6.4/data/preset/basic.data (added)
-
tags/6.4/data/preset/essentials.data (added)
-
tags/6.4/data/preset/extreme.data (added)
-
tags/6.4/data/ucss_whitelist.txt (added)
-
tags/6.4/guest.vary.php (added)
-
tags/6.4/inc (added)
-
tags/6.4/inc/object.lib.php (added)
-
tags/6.4/lang (added)
-
tags/6.4/lang/litespeed-cache.pot (added)
-
tags/6.4/lib (added)
-
tags/6.4/lib/css-min (added)
-
tags/6.4/lib/css-min/colors.cls.php (added)
-
tags/6.4/lib/css-min/minifier.cls.php (added)
-
tags/6.4/lib/css-min/urirewriter.cls.php (added)
-
tags/6.4/lib/css-min/utils.cls.php (added)
-
tags/6.4/lib/guest.cls.php (added)
-
tags/6.4/lib/html-min.cls.php (added)
-
tags/6.4/lib/jsmin.cls.php (added)
-
tags/6.4/lib/jsmin_data (added)
-
tags/6.4/lib/jsmin_data/keywords_after.txt (added)
-
tags/6.4/lib/jsmin_data/keywords_before.txt (added)
-
tags/6.4/lib/jsmin_data/keywords_reserved.txt (added)
-
tags/6.4/lib/jsmin_data/operators.txt (added)
-
tags/6.4/lib/jsmin_data/operators_after.txt (added)
-
tags/6.4/lib/jsmin_data/operators_before.txt (added)
-
tags/6.4/lib/object-cache.php (added)
-
tags/6.4/lib/php-compatibility.func.php (added)
-
tags/6.4/litespeed-cache.php (added)
-
tags/6.4/package-lock.json (added)
-
tags/6.4/package.json (added)
-
tags/6.4/qc-ping.txt (added)
-
tags/6.4/readme.txt (added)
-
tags/6.4/security.md (added)
-
tags/6.4/src (added)
-
tags/6.4/src/activation.cls.php (added)
-
tags/6.4/src/admin-display.cls.php (added)
-
tags/6.4/src/admin-settings.cls.php (added)
-
tags/6.4/src/admin.cls.php (added)
-
tags/6.4/src/api.cls.php (added)
-
tags/6.4/src/avatar.cls.php (added)
-
tags/6.4/src/base.cls.php (added)
-
tags/6.4/src/cdn (added)
-
tags/6.4/src/cdn-setup.cls.php (added)
-
tags/6.4/src/cdn.cls.php (added)
-
tags/6.4/src/cdn/cloudflare.cls.php (added)
-
tags/6.4/src/cdn/quic.cls.php (added)
-
tags/6.4/src/cloud.cls.php (added)
-
tags/6.4/src/conf.cls.php (added)
-
tags/6.4/src/control.cls.php (added)
-
tags/6.4/src/core.cls.php (added)
-
tags/6.4/src/crawler-map.cls.php (added)
-
tags/6.4/src/crawler.cls.php (added)
-
tags/6.4/src/css.cls.php (added)
-
tags/6.4/src/data.cls.php (added)
-
tags/6.4/src/data.upgrade.func.php (added)
-
tags/6.4/src/data_structure (added)
-
tags/6.4/src/data_structure/avatar.sql (added)
-
tags/6.4/src/data_structure/crawler.sql (added)
-
tags/6.4/src/data_structure/crawler_blacklist.sql (added)
-
tags/6.4/src/data_structure/img_optm.sql (added)
-
tags/6.4/src/data_structure/img_optming.sql (added)
-
tags/6.4/src/data_structure/url.sql (added)
-
tags/6.4/src/data_structure/url_file.sql (added)
-
tags/6.4/src/db-optm.cls.php (added)
-
tags/6.4/src/debug2.cls.php (added)
-
tags/6.4/src/doc.cls.php (added)
-
tags/6.4/src/error.cls.php (added)
-
tags/6.4/src/esi.cls.php (added)
-
tags/6.4/src/file.cls.php (added)
-
tags/6.4/src/gui.cls.php (added)
-
tags/6.4/src/health.cls.php (added)
-
tags/6.4/src/htaccess.cls.php (added)
-
tags/6.4/src/img-optm.cls.php (added)
-
tags/6.4/src/import.cls.php (added)
-
tags/6.4/src/instance.cls.php (added)
-
tags/6.4/src/lang.cls.php (added)
-
tags/6.4/src/localization.cls.php (added)
-
tags/6.4/src/media.cls.php (added)
-
tags/6.4/src/metabox.cls.php (added)
-
tags/6.4/src/object-cache.cls.php (added)
-
tags/6.4/src/object.lib.php (added)
-
tags/6.4/src/optimize.cls.php (added)
-
tags/6.4/src/optimizer.cls.php (added)
-
tags/6.4/src/placeholder.cls.php (added)
-
tags/6.4/src/preset.cls.php (added)
-
tags/6.4/src/purge.cls.php (added)
-
tags/6.4/src/report.cls.php (added)
-
tags/6.4/src/rest.cls.php (added)
-
tags/6.4/src/root.cls.php (added)
-
tags/6.4/src/router.cls.php (added)
-
tags/6.4/src/str.cls.php (added)
-
tags/6.4/src/tag.cls.php (added)
-
tags/6.4/src/task.cls.php (added)
-
tags/6.4/src/tool.cls.php (added)
-
tags/6.4/src/ucss.cls.php (added)
-
tags/6.4/src/utility.cls.php (added)
-
tags/6.4/src/vary.cls.php (added)
-
tags/6.4/src/vpi.cls.php (added)
-
tags/6.4/thirdparty (added)
-
tags/6.4/thirdparty/aelia-currencyswitcher.cls.php (added)
-
tags/6.4/thirdparty/amp.cls.php (added)
-
tags/6.4/thirdparty/autoptimize.cls.php (added)
-
tags/6.4/thirdparty/avada.cls.php (added)
-
tags/6.4/thirdparty/bbpress.cls.php (added)
-
tags/6.4/thirdparty/beaver-builder.cls.php (added)
-
tags/6.4/thirdparty/caldera-forms.cls.php (added)
-
tags/6.4/thirdparty/divi-theme-builder.cls.php (added)
-
tags/6.4/thirdparty/elementor.cls.php (added)
-
tags/6.4/thirdparty/entry.inc.php (added)
-
tags/6.4/thirdparty/facetwp.cls.php (added)
-
tags/6.4/thirdparty/gravity-forms.cls.php (added)
-
tags/6.4/thirdparty/litespeed-check.cls.php (added)
-
tags/6.4/thirdparty/nextgengallery.cls.php (added)
-
tags/6.4/thirdparty/perfmatters.cls.php (added)
-
tags/6.4/thirdparty/theme-my-login.cls.php (added)
-
tags/6.4/thirdparty/user-switching.cls.php (added)
-
tags/6.4/thirdparty/wc-pdf-product-vouchers.cls.php (added)
-
tags/6.4/thirdparty/wcml.cls.php (added)
-
tags/6.4/thirdparty/woo-paypal.cls.php (added)
-
tags/6.4/thirdparty/woocommerce.cls.php (added)
-
tags/6.4/thirdparty/woocommerce.content.tpl.php (added)
-
tags/6.4/thirdparty/woocommerce.tab.tpl.php (added)
-
tags/6.4/thirdparty/wp-polls.cls.php (added)
-
tags/6.4/thirdparty/wp-postratings.cls.php (added)
-
tags/6.4/thirdparty/wpdiscuz.cls.php (added)
-
tags/6.4/thirdparty/wplister.cls.php (added)
-
tags/6.4/thirdparty/wpml.cls.php (added)
-
tags/6.4/thirdparty/wptouch.cls.php (added)
-
tags/6.4/thirdparty/yith-wishlist.cls.php (added)
-
tags/6.4/tpl (added)
-
tags/6.4/tpl/banner (added)
-
tags/6.4/tpl/banner/ajax.php (added)
-
tags/6.4/tpl/banner/cloud_news.tpl.php (added)
-
tags/6.4/tpl/banner/cloud_promo.tpl.php (added)
-
tags/6.4/tpl/banner/new_version.php (added)
-
tags/6.4/tpl/banner/new_version_dev.tpl.php (added)
-
tags/6.4/tpl/banner/score.php (added)
-
tags/6.4/tpl/banner/slack.php (added)
-
tags/6.4/tpl/cache (added)
-
tags/6.4/tpl/cache/entry.tpl.php (added)
-
tags/6.4/tpl/cache/entry_network.tpl.php (added)
-
tags/6.4/tpl/cache/more_settings_tip.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-advanced.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-browser.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-cache.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-excludes.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-object.tpl.php (added)
-
tags/6.4/tpl/cache/network_settings-purge.tpl.php (added)
-
tags/6.4/tpl/cache/settings-advanced.tpl.php (added)
-
tags/6.4/tpl/cache/settings-browser.tpl.php (added)
-
tags/6.4/tpl/cache/settings-cache.tpl.php (added)
-
tags/6.4/tpl/cache/settings-esi.tpl.php (added)
-
tags/6.4/tpl/cache/settings-excludes.tpl.php (added)
-
tags/6.4/tpl/cache/settings-object.tpl.php (added)
-
tags/6.4/tpl/cache/settings-purge.tpl.php (added)
-
tags/6.4/tpl/cache/settings-ttl.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.browser.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.cache_dropquery.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.cache_mobile.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.cache_resources.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.exclude_cookies.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.exclude_useragent.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.login_cookie.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.object.tpl.php (added)
-
tags/6.4/tpl/cache/settings_inc.purge_on_upgrade.tpl.php (added)
-
tags/6.4/tpl/cdn (added)
-
tags/6.4/tpl/cdn/auto_setup.tpl.php (added)
-
tags/6.4/tpl/cdn/entry.tpl.php (added)
-
tags/6.4/tpl/cdn/manage.tpl.php (added)
-
tags/6.4/tpl/cdn/settings.tpl.php (added)
-
tags/6.4/tpl/crawler (added)
-
tags/6.4/tpl/crawler/blacklist.tpl.php (added)
-
tags/6.4/tpl/crawler/entry.tpl.php (added)
-
tags/6.4/tpl/crawler/map.tpl.php (added)
-
tags/6.4/tpl/crawler/settings-general.tpl.php (added)
-
tags/6.4/tpl/crawler/settings-simulation.tpl.php (added)
-
tags/6.4/tpl/crawler/settings-sitemap.tpl.php (added)
-
tags/6.4/tpl/crawler/summary.tpl.php (added)
-
tags/6.4/tpl/dash (added)
-
tags/6.4/tpl/dash/dashboard.tpl.php (added)
-
tags/6.4/tpl/dash/entry.tpl.php (added)
-
tags/6.4/tpl/dash/network_dash.tpl.php (added)
-
tags/6.4/tpl/db_optm (added)
-
tags/6.4/tpl/db_optm/entry.tpl.php (added)
-
tags/6.4/tpl/db_optm/manage.tpl.php (added)
-
tags/6.4/tpl/db_optm/settings.tpl.php (added)
-
tags/6.4/tpl/esi.tpl.php (added)
-
tags/6.4/tpl/esi_widget_edit.php (added)
-
tags/6.4/tpl/general (added)
-
tags/6.4/tpl/general/entry.tpl.php (added)
-
tags/6.4/tpl/general/network_settings.tpl.php (added)
-
tags/6.4/tpl/general/settings.tpl.php (added)
-
tags/6.4/tpl/general/settings_inc.auto_upgrade.tpl.php (added)
-
tags/6.4/tpl/general/settings_inc.guest.tpl.php (added)
-
tags/6.4/tpl/general/settings_tuning.tpl.php (added)
-
tags/6.4/tpl/img_optm (added)
-
tags/6.4/tpl/img_optm/entry.tpl.php (added)
-
tags/6.4/tpl/img_optm/network_settings.tpl.php (added)
-
tags/6.4/tpl/img_optm/settings.media_webp.tpl.php (added)
-
tags/6.4/tpl/img_optm/settings.tpl.php (added)
-
tags/6.4/tpl/img_optm/summary.tpl.php (added)
-
tags/6.4/tpl/inc (added)
-
tags/6.4/tpl/inc/admin_footer.php (added)
-
tags/6.4/tpl/inc/api_key.php (added)
-
tags/6.4/tpl/inc/check_cache_disabled.php (added)
-
tags/6.4/tpl/inc/check_if_network_disable_all.php (added)
-
tags/6.4/tpl/inc/disabled_all.php (added)
-
tags/6.4/tpl/inc/in_upgrading.php (added)
-
tags/6.4/tpl/inc/metabox.php (added)
-
tags/6.4/tpl/inc/modal.footer.php (added)
-
tags/6.4/tpl/inc/modal.header.php (added)
-
tags/6.4/tpl/inc/show_display_installed.php (added)
-
tags/6.4/tpl/inc/show_error_cookie.php (added)
-
tags/6.4/tpl/inc/show_rule_conflict.php (added)
-
tags/6.4/tpl/page_optm (added)
-
tags/6.4/tpl/page_optm/entry.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_css.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_html.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_js.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_localization.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_media.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_media_exc.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_tuning.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_tuning_css.tpl.php (added)
-
tags/6.4/tpl/page_optm/settings_vpi.tpl.php (added)
-
tags/6.4/tpl/presets (added)
-
tags/6.4/tpl/presets/entry.tpl.php (added)
-
tags/6.4/tpl/presets/standard.tpl.php (added)
-
tags/6.4/tpl/toolbox (added)
-
tags/6.4/tpl/toolbox/beta_test.tpl.php (added)
-
tags/6.4/tpl/toolbox/edit_htaccess.tpl.php (added)
-
tags/6.4/tpl/toolbox/entry.tpl.php (added)
-
tags/6.4/tpl/toolbox/heartbeat.tpl.php (added)
-
tags/6.4/tpl/toolbox/import_export.tpl.php (added)
-
tags/6.4/tpl/toolbox/log_viewer.tpl.php (added)
-
tags/6.4/tpl/toolbox/purge.tpl.php (added)
-
tags/6.4/tpl/toolbox/report.tpl.php (added)
-
tags/6.4/tpl/toolbox/settings-debug.tpl.php (added)
-
trunk/assets/js/instant_click.min.js (modified) (1 diff)
-
trunk/assets/js/iziModal.min.js (modified) (1 diff)
-
trunk/cli/online.cls.php (modified) (1 diff)
-
trunk/litespeed-cache.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/src/base.cls.php (modified) (2 diffs)
-
trunk/src/cdn-setup.cls.php (modified) (1 diff)
-
trunk/src/cloud.cls.php (modified) (1 diff)
-
trunk/src/crawler.cls.php (modified) (7 diffs)
-
trunk/src/error.cls.php (modified) (1 diff)
-
trunk/src/esi.cls.php (modified) (4 diffs)
-
trunk/src/router.cls.php (modified) (7 diffs)
-
trunk/src/task.cls.php (modified) (3 diffs)
-
trunk/thirdparty/perfmatters.cls.php (modified) (3 diffs)
-
trunk/tpl/img_optm/settings.tpl.php (modified) (2 diffs)
-
trunk/tpl/page_optm/settings_media.tpl.php (modified) (1 diff)
-
trunk/tpl/toolbox/beta_test.tpl.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
litespeed-cache/trunk/assets/js/instant_click.min.js
r3123399 r3135111 1 let t,e,n,o,i,a=null,s=65,c=new Set;const r=1111;function d(t){o=performance.now();const e=t.target.closest("a");m(e)&&p(e.href,"high")}function u(t){if(performance.now()-o<r)return;if(!("closest"in t.target))return;const e=t.target.closest("a");m(e)&&(e.addEventListener("mouseout",f,{passive:!0}),i=setTimeout(()=>{p(e.href,"high"),i=void 0},s))}function l(t){const e=t.target.closest("a");m(e)&&p(e.href,"high")}function f(t){t.relatedTarget&&t.target.closest("a")==t.relatedTarget.closest("a")||i&&(clearTimeout(i),i=void 0)}function h(t){if(performance.now()-o<r)return;const e=t.target.closest("a");if(t.which>1||t.metaKey||t.ctrlKey)return;if(!e)return;e.addEventListener("click",function(t){1337!=t.detail&&t.preventDefault()},{capture:!0,passive:!1,once:!0});const n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1,detail:1337});e.dispatchEvent(n)}function m(o){if(o&&o.href&&(!n||"instant"in o.dataset)){if(o.origin!=location.origin){if(!(e||"instant"in o.dataset)||!a)return}if(["http:","https:"].includes(o.protocol)&&("http:"!=o.protocol||"https:"!=location.protocol)&&(t||!o.search||"instant"in o.dataset)&&!(o.hash&&o.pathname+o.search==location.pathname+location.search||"noInstant"in o.dataset))return!0}}function p(t,e="auto"){if(c.has(t))return;const n=document.createElement("link");n.rel="prefetch",n.href=t,n.fetchPriority=e,n.as="document",document.head.appendChild(n),c.add(t)}!function(){if(!document.createElement("link").relList.supports("prefetch"))return;const o="instantVaryAccept"in document.body.dataset||"Shopify"in window,i=navigator.userAgent.indexOf("Chrome/");i>-1&&(a=parseInt(navigator.userAgent.substring(i+"Chrome/".length)));if(o&&a&&a<110)return;const c="instantMousedownShortcut"in document.body.dataset;t="instantAllowQueryString"in document.body.dataset,e="instantAllowExternalLinks"in document.body.dataset,n="instantWhitelist"in document.body.dataset;const r={capture:!0,passive:!0};let f=!1,v=!1,g=!1;if("instantIntensity"in document.body.dataset){const t=document.body.dataset.instantIntensity;if(t.startsWith("mousedown"))f=!0,"mousedown-only"==t&&(v=!0);else if(t.startsWith("viewport")){const e=navigator.connection&&navigator.connection.saveData,n=navigator.connection&&navigator.connection.effectiveType&&navigator.connection.effectiveType.includes("2g");e||n||("viewport"==t?document.documentElement.clientWidth*document.documentElement.clientHeight<45e4&&(g=!0):"viewport-all"==t&&(g=!0))}else{const e=parseInt(t);isNaN(e)||(s=e)}}v||document.addEventListener("touchstart",d,r);f?c||document.addEventListener("mousedown",l,r):document.addEventListener("mouseover",u,r);c&&document.addEventListener("mousedown",h,r);if(g){let t=window.requestIdleCallback;t||(t=(t=>{t()})),t(function(){const t=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting){const n=e.target;t.unobserve(n),p(n.href)}})});document.querySelectorAll("a").forEach(e=>{m(e)&&t.observe(e)})},{timeout:1500})}}();1 let _chromiumMajorVersionInUserAgent=null,_speculationRulesType,_allowQueryString,_allowExternalLinks,_useWhitelist,_delayOnHover=65,_lastTouchstartEvent,_mouseoverTimer,_preloadedList=new Set;function init(){let e=document.createElement("link").relList,t=e.supports("prefetch")&&e.supports("modulepreload");if(!t)return;let n="instantVaryAccept"in document.body.dataset||"Shopify"in window,r=navigator.userAgent.indexOf("Chrome/");if(r>-1&&(_chromiumMajorVersionInUserAgent=parseInt(navigator.userAgent.substring(r+7))),n&&_chromiumMajorVersionInUserAgent&&_chromiumMajorVersionInUserAgent<110)return;if(_speculationRulesType="none",HTMLScriptElement.supports&&HTMLScriptElement.supports("speculationrules")){let s=document.body.dataset.instantSpecrules;"prerender"==s?_speculationRulesType="prerender":"no"!=s&&(_speculationRulesType="prefetch")}let i="instantMousedownShortcut"in document.body.dataset;_allowQueryString="instantAllowQueryString"in document.body.dataset,_allowExternalLinks="instantAllowExternalLinks"in document.body.dataset,_useWhitelist="instantWhitelist"in document.body.dataset;let o=!1,a=!1,l=!1;if("instantIntensity"in document.body.dataset){let u=document.body.dataset.instantIntensity;if("mousedown"!=u||i||(o=!0),"mousedown-only"!=u||i||(o=!0,a=!0),"viewport"==u){let c=document.documentElement.clientWidth*document.documentElement.clientHeight<45e4,d=navigator.connection&&navigator.connection.saveData,p=navigator.connection&&navigator.connection.effectiveType&&navigator.connection.effectiveType.includes("2g");!c||d||p||(l=!0)}"viewport-all"==u&&(l=!0);let h=parseInt(u);isNaN(h)||(_delayOnHover=h)}let m={capture:!0,passive:!0};if(a?document.addEventListener("touchstart",touchstartEmptyListener,m):document.addEventListener("touchstart",touchstartListener,m),o||document.addEventListener("mouseover",mouseoverListener,m),o&&document.addEventListener("mousedown",mousedownListener,m),i&&document.addEventListener("mousedown",mousedownShortcutListener,m),l){let f=window.requestIdleCallback;f||(f=e=>{e()}),f(function e(){let t=new IntersectionObserver(e=>{e.forEach(e=>{if(e.isIntersecting){let n=e.target;t.unobserve(n),preload(n.href)}})});document.querySelectorAll("a").forEach(e=>{isPreloadable(e)&&t.observe(e)})},{timeout:1500})}}function touchstartListener(e){_lastTouchstartEvent=e;let t=e.target.closest("a");isPreloadable(t)&&preload(t.href,"high")}function touchstartEmptyListener(e){_lastTouchstartEvent=e}function mouseoverListener(e){if(isEventLikelyTriggeredByTouch(e)||!("closest"in e.target))return;let t=e.target.closest("a");isPreloadable(t)&&(t.addEventListener("mouseout",mouseoutListener,{passive:!0}),_mouseoverTimer=setTimeout(()=>{preload(t.href,"high"),_mouseoverTimer=null},_delayOnHover))}function mousedownListener(e){if(isEventLikelyTriggeredByTouch(e))return;let t=e.target.closest("a");isPreloadable(t)&&preload(t.href,"high")}function mouseoutListener(e){(!e.relatedTarget||e.target.closest("a")!=e.relatedTarget.closest("a"))&&_mouseoverTimer&&(clearTimeout(_mouseoverTimer),_mouseoverTimer=null)}function mousedownShortcutListener(e){if(isEventLikelyTriggeredByTouch(e))return;let t=e.target.closest("a");if(e.which>1||e.metaKey||e.ctrlKey||!t)return;t.addEventListener("click",function(e){1337!=e.detail&&e.preventDefault()},{capture:!0,passive:!1,once:!0});let n=new MouseEvent("click",{view:window,bubbles:!0,cancelable:!1,detail:1337});t.dispatchEvent(n)}function isEventLikelyTriggeredByTouch(e){if(!_lastTouchstartEvent||!e||e.target!=_lastTouchstartEvent.target)return!1;let t=e.timeStamp,n=t-_lastTouchstartEvent.timeStamp;return n<2500}function isPreloadable(e){if(e&&e.href&&(!_useWhitelist||"instant"in e.dataset)&&(e.origin==location.origin||(_allowExternalLinks||"instant"in e.dataset)&&_chromiumMajorVersionInUserAgent)){if(["http:","https:"].includes(e.protocol)&&("http:"!=e.protocol||"https:"!=location.protocol)&&(_allowQueryString||!e.search||"instant"in e.dataset)&&(!e.hash||e.pathname+e.search!=location.pathname+location.search)&&!("noInstant"in e.dataset))return!0}}function preload(e,t="auto"){!_preloadedList.has(e)&&("none"!=_speculationRulesType?preloadUsingSpeculationRules(e):preloadUsingLinkElement(e,t),_preloadedList.add(e))}function preloadUsingSpeculationRules(e){let t=document.createElement("script");t.type="speculationrules",t.textContent=JSON.stringify({[_speculationRulesType]:[{source:"list",urls:[e]}]}),document.head.appendChild(t)}function preloadUsingLinkElement(e,t="auto"){let n=document.createElement("link");n.rel="prefetch",n.href=e,n.fetchPriority=t,n.as="document",document.head.appendChild(n)}init(); -
litespeed-cache/trunk/assets/js/iziModal.min.js
r2292926 r3135111 1 1 /* 2 2 * iziModal | v1.6.0 3 * http ://izimodal.marcelodolce.com3 * https://izimodal.marcelodolza.com/ 4 4 * by Marcelo Dolce. 5 5 */ -
litespeed-cache/trunk/cli/online.cls.php
r3009052 r3135111 1 1 <?php 2 2 3 namespace LiteSpeed\CLI; 4 3 5 defined('WPINC') || exit(); 4 6 -
litespeed-cache/trunk/litespeed-cache.php
r3127657 r3135111 5 5 * Plugin URI: https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration 6 6 * Description: High-performance page caching and site optimization from LiteSpeed 7 * Version: 6. 3.0.17 * Version: 6.4 8 8 * Author: LiteSpeed Technologies 9 9 * Author URI: https://www.litespeedtech.com … … 35 35 } 36 36 37 !defined('LSCWP_V') && define('LSCWP_V', '6. 3.0.1');37 !defined('LSCWP_V') && define('LSCWP_V', '6.4'); 38 38 39 39 !defined('LSCWP_CONTENT_DIR') && define('LSCWP_CONTENT_DIR', WP_CONTENT_DIR); -
litespeed-cache/trunk/readme.txt
r3127657 r3135111 1 1 === LiteSpeed Cache === 2 2 Contributors: LiteSpeedTech 3 Tags: caching, optimize, performance, pagespeed, core web vitals, seo, speed, image optimize, compress, object cache, redis, memcached, database cleaner3 Tags: caching, optimize, performance, pagespeed, seo, image optimize, object cache, redis, memcached, database cleaner 4 4 Requires at least: 4.0 5 Tested up to: 6.6 6 Stable tag: 6. 3.0.15 Tested up to: 6.6.1 6 Stable tag: 6.4 7 7 License: GPLv3 8 8 License URI: http://www.gnu.org/licenses/gpl.html … … 251 251 == Changelog == 252 252 253 = 6.4 - Aug 13 2024 = 254 * **Cache** Corrected QC and LSADC cache hit status. 255 * **Cloud** Allow partner info removal in QUIC.cloud notification. 256 * **Crawler** Separated CSS preparation validation from crawler validation. 257 * **GUI** Moved `WordPress Image Quality Control` setting from `Image Optimization` menu to `Page Optimization` menu. 258 * **3rd** Add Elementor Edit button back in ESI. (PR#635) 259 * **3rd** Fixed Instant click potential conflict w/ other plugins. 260 253 261 = 6.3.0.1 - Jul 29 2024 = 254 262 * 🔥🐞**Rest** Disabled WP default Editor cache for REST requests to fix editor errors. (Shivam) -
litespeed-cache/trunk/src/base.cls.php
r3123399 r3135111 217 217 const O_MEDIA_VPI = 'media-vpi'; 218 218 const O_MEDIA_VPI_CRON = 'media-vpi_cron'; 219 const O_IMG_OPTM_JPG_QUALITY = 'img_optm-jpg_quality'; 219 220 220 221 ## -------------------------------------------------- ## … … 230 231 const O_IMG_OPTM_WEBP_ATTR = 'img_optm-webp_attr'; 231 232 const O_IMG_OPTM_WEBP_REPLACE_SRCSET = 'img_optm-webp_replace_srcset'; 232 const O_IMG_OPTM_JPG_QUALITY = 'img_optm-jpg_quality';233 233 234 234 ## -------------------------------------------------- ## -
litespeed-cache/trunk/src/cdn-setup.cls.php
r3123399 r3135111 130 130 '🎊 ' . __('Congratulations, QUIC.cloud successfully set this domain up for the CDN. Please update your nameservers to:', 'litespeed-cache') . $nameservers 131 131 ); 132 } elseif (isset($result['cname'])) { 133 if (isset($this->_summary['cdn_setup_err'])) { 134 unset($this->_summary['cdn_setup_err']); 135 } 136 if (isset($result['summary'])) { 137 $this->_summary['cdn_dns_summary'] = $result['summary']; 138 } 139 $this->cls('Cloud')->set_linked(); 140 $cname = esc_html($result['cname']); 141 $this->cls('Conf')->update_confs(array(self::O_QC_CNAME => $cname, self::O_CDN_QUIC => true)); 142 Admin_Display::succeed('🎊 ' . __('Congratulations, QUIC.cloud successfully set this domain up for the CDN. Please update your cname to:', 'litespeed-cache') . $cname); 132 143 } elseif (isset($result['done'])) { 133 144 if (isset($this->_summary['cdn_setup_err'])) { -
litespeed-cache/trunk/src/cloud.cls.php
r3123399 r3135111 869 869 // Store generic info 870 870 foreach (array('usage', 'promo', 'partner', '_error', '_info', '_note', '_success') as $v) { 871 if ( !empty($json['_carry_on'][$v])) {871 if (isset($json['_carry_on'][$v])) { 872 872 switch ($v) { 873 873 case 'usage': -
litespeed-cache/trunk/src/crawler.cls.php
r3123399 r3135111 239 239 { 240 240 self::debug('------------async-------------start_async_handler'); 241 // self::debug('-------------async------------ check_ajax_referer');242 // add_action('check_ajax_referer', function ($a, $b) {243 // \LiteSpeed\Crawler::debug('---------------' . $a . $b);244 // });245 241 // check_ajax_referer('async_crawler', 'nonce'); 246 // self::debug('--------------async----------- start async crawling');247 242 self::start($manually_run); 248 243 } … … 264 259 self::debug('......crawler manually ran......'); 265 260 } 266 // $i = 0;267 // while ($i < 100) {268 // self::debug('......sleep ' . ($i++) . '......' . time());269 // sleep(1);270 // }271 // return;272 261 273 262 self::cls()->_crawl_data($manually_run); … … 372 361 $vary_val = $this->cls('Vary')->finalize_default_vary($current_crawler['uid']); 373 362 $this->_crawler_conf['cookies'][$vary_name] = $vary_val; 374 $this->_crawler_conf['cookies']['litespeed_ role'] = $current_crawler['uid'];363 $this->_crawler_conf['cookies']['litespeed_hash'] = Router::cls()->get_hash($current_crawler['uid']); 375 364 } 376 365 … … 897 886 } 898 887 899 $_cache_headers = array('x- litespeed-cache', 'x-lsadc-cache', 'x-qc-cache');888 $_cache_headers = array('x-qc-cache', 'x-lsadc-cache', 'x-litespeed-cache'); 900 889 901 890 foreach ($_cache_headers as $_header) { … … 985 974 $options[CURLOPT_USERAGENT] = $this->_crawler_conf['ua']; 986 975 987 /**988 * Append hash to cookie for validation989 * @since 1.9.1990 */991 if ($crawler_only) {992 $this->_crawler_conf['cookies']['litespeed_hash'] = Router::get_hash();993 }994 995 976 // Cookies 996 977 $cookies = array(); … … 1022 1003 } 1023 1004 if ($uid) { 1024 $this->_crawler_conf['cookies']['litespeed_role'] = $uid; 1025 $this->_crawler_conf['cookies']['litespeed_hash'] = Router::get_hash(); 1005 $this->_crawler_conf['cookies']['litespeed_flash_hash'] = Router::cls()->get_flash_hash($uid); 1026 1006 } 1027 1007 … … 1326 1306 break; 1327 1307 1328 // Handle the ajax request to proceed crawler manually by admin 1329 case self::TYPE_START: 1308 case self::TYPE_START: // Handle the ajax request to proceed crawler manually by admin 1330 1309 self::start_async(); 1331 1310 break; -
litespeed-cache/trunk/src/error.cls.php
r3123399 r3135111 62 62 63 63 case 'out_of_daily_quota': 64 $msg = __('You don\'t have enough daily quota left for current service today.', 'litespeed-cache'); 64 $msg = __('You have used all of your daily quota for today.', 'litespeed-cache'); 65 $msg .= 66 ' ' . 67 Doc::learn_more( 68 'https://docs.quic.cloud/billing/services/#daily-limits-on-free-quota-usage', 69 __('Learn more or purchase additional quota.', 'litespeed-cache'), 70 false, 71 false, 72 true 73 ); 65 74 break; 66 75 67 76 case 'out_of_quota': 68 $msg = __('You don\'t have enough quota left for current service this month.', 'litespeed-cache'); 77 $msg = __('You have used all of your quota left for current service this month.', 'litespeed-cache'); 78 $msg .= 79 ' ' . 80 Doc::learn_more( 81 'https://docs.quic.cloud/billing/services/#daily-limits-on-free-quota-usage', 82 __('Learn more or purchase additional quota.', 'litespeed-cache'), 83 false, 84 false, 85 true 86 ); 69 87 break; 70 88 -
litespeed-cache/trunk/src/esi.cls.php
r3123399 r3135111 22 22 private static $has_esi = false; 23 23 private static $_combine_ids = array(); 24 private $admin_rendered = false; 24 25 private $esi_args = null; 25 26 private $_esi_preserve_list = array(); … … 365 366 // Add admin_bar esi 366 367 if (Router::is_logged_in()) { 368 // Remove default Admin bar. Fix https://github.com/elementor/elementor/issues/25198 369 remove_action('wp_body_open', 'wp_admin_bar_render', 0); 370 add_action('wp_body_open', array($this, 'sub_admin_bar_block'), 0); 367 371 remove_action('wp_footer', 'wp_admin_bar_render', 1000); 368 372 add_action('wp_footer', array($this, 'sub_admin_bar_block'), 1000); … … 767 771 global $wp_admin_bar; 768 772 773 if ($this->admin_rendered) { 774 return; 775 } 776 769 777 if (!is_admin_bar_showing() || !is_object($wp_admin_bar)) { 770 778 return; … … 776 784 ); 777 785 786 $this->admin_rendered = true; 778 787 echo $this->sub_esi_block('admin-bar', 'adminbar', $params); 779 788 } -
litespeed-cache/trunk/src/router.cls.php
r3123399 r3135111 1 1 <?php 2 2 3 /** 3 4 * The core plugin router class. … … 8 9 * @since 1.5 Moved into /inc 9 10 */ 11 10 12 namespace LiteSpeed; 13 11 14 defined('WPINC') || exit(); 12 15 13 16 class Router extends Base 14 17 { 18 const LOG_TAG = '[Router]'; 19 15 20 const NONCE = 'LSCWP_NONCE'; 16 21 const ACTION = 'LSCWP_CTRL'; … … 64 69 65 70 const ITEM_HASH = 'hash'; 71 const ITEM_FLASH_HASH = 'flash_hash'; 66 72 67 73 private static $_esi_enabled; … … 241 247 } 242 248 243 if (empty($_COOKIE['litespeed_ role']) || empty($_COOKIE['litespeed_hash'])) {249 if (empty($_COOKIE['litespeed_hash']) && empty($_COOKIE['litespeed_flash_hash'])) { 244 250 return; 245 251 } 246 252 247 Debug2::debug('[Router]starting role validation');253 self::debug('starting role validation'); 248 254 249 255 // Check if is from crawler … … 253 259 // } 254 260 261 // Flash hash validation 262 if (!empty($_COOKIE['litespeed_flash_hash'])) { 263 $hash_data = self::get_option(self::ITEM_FLASH_HASH, array()); 264 if ($hash_data && is_array($hash_data) && !empty($hash_data['hash']) && !empty($hash_data['ts']) && !empty($hash_data['uid'])) { 265 if (time() - $hash_data['ts'] < 120 && $_COOKIE['litespeed_flash_hash'] == $hash_data['hash']) { 266 self::debug('role simulate uid ' . $hash_data['uid']); 267 self::delete_option(self::ITEM_FLASH_HASH); 268 wp_set_current_user($hash_data['uid']); 269 return; 270 } 271 } 272 } 255 273 // Hash validation 256 $hash = self::get_option(self::ITEM_HASH); 257 if (!$hash || $_COOKIE['litespeed_hash'] != $hash) { 258 Debug2::debug('[Router] hash not match ' . $_COOKIE['litespeed_hash'] . ' != ' . $hash); 259 return; 260 } 261 262 $role_uid = $_COOKIE['litespeed_role']; 263 Debug2::debug('[Router] role simulate litespeed_role uid ' . $role_uid); 264 265 wp_set_current_user($role_uid); 274 if (!empty($_COOKIE['litespeed_hash'])) { 275 $hash_data = self::get_option(self::ITEM_HASH, array()); 276 if ($hash_data && is_array($hash_data) && !empty($hash_data['hash']) && !empty($hash_data['ts']) && !empty($hash_data['uid'])) { 277 if (time() - $hash_data['ts'] < $this->conf(Base::O_CRAWLER_RUN_DURATION) && $_COOKIE['litespeed_hash'] == $hash_data['hash']) { 278 if (empty($hash_data['ip'])) { 279 $hash_data['ip'] = self::get_ip(); 280 self::update_option(self::ITEM_HASH, $hash_data); 281 } else { 282 $server_ips = apply_filters('litespeed_server_ips', array($hash_data['ip'])); 283 if (!self::ip_access($server_ips)) { 284 self::debug('WARNING: role simulator ip check failed [db ip] ' . $hash_data['ip'], $server_ips); 285 return; 286 } 287 } 288 wp_set_current_user($hash_data['uid']); 289 return; 290 } 291 } 292 } 293 294 self::debug('WARNING: role simulator hash not match'); 295 } 296 297 /** 298 * Get a short ttl hash (2mins) 299 * 300 * @since 6.4 301 */ 302 public function get_flash_hash($uid) 303 { 304 $hash_data = self::get_option(self::ITEM_FLASH_HASH, array()); 305 if ($hash_data && is_array($hash_data) && !empty($hash_data['hash']) && !empty($hash_data['ts'])) { 306 if (time() - $hash_data['ts'] < 60) { 307 return $hash_data['hash']; 308 } 309 } 310 311 $hash = Str::rrand(32); 312 self::update_option(self::ITEM_FLASH_HASH, array('hash' => $hash, 'ts' => time(), 'uid' => $uid)); 313 return $hash; 266 314 } 267 315 … … 271 319 * @since 3.3 272 320 */ 273 public static function get_hash() 274 { 275 // Reuse previous hash if existed 276 $hash = self::get_option(self::ITEM_HASH); 277 if ($hash) { 278 return $hash; 279 } 280 281 $hash = Str::rrand(6); 282 self::update_option(self::ITEM_HASH, $hash); 321 public function get_hash($uid) 322 { 323 // As this is called only when starting crawling, not per page, no need to reuse 324 $hash = Str::rrand(32); 325 self::update_option(self::ITEM_HASH, array('hash' => $hash, 'ts' => time(), 'uid' => $uid)); 283 326 return $hash; 284 327 } … … 541 584 542 585 switch ($action) { 543 // Save network settings 544 case self::ACTION_SAVE_SETTINGS_NETWORK: 586 case self::ACTION_SAVE_SETTINGS_NETWORK: // Save network settings 545 587 if ($_can_network_option) { 546 588 self::$_action = $action; -
litespeed-cache/trunk/src/task.cls.php
r3123399 r3135111 77 77 public static function async_litespeed_handler() 78 78 { 79 $hash_data = self::get_option('async_call-hash', array()); 80 if (!$hash_data || !is_array($hash_data) || empty($hash_data['hash']) || empty($hash_data['ts'])) { 81 self::debug('async_litespeed_handler no hash data', $hash_data); 82 return; 83 } 84 if (time() - $hash_data['ts'] > 120 || empty($_GET['nonce']) || $_GET['nonce'] != $hash_data['hash']) { 85 self::debug('async_litespeed_handler nonce mismatch'); 86 return; 87 } 88 self::delete_option('async_call-hash'); 89 79 90 $type = Router::verify_type(); 80 81 91 self::debug('type=' . $type); 82 92 … … 107 117 public static function async_call($type) 108 118 { 119 $hash = Str::rrand(32); 120 self::update_option('async_call-hash', array('hash' => $hash, 'ts' => time())); 109 121 $args = array( 110 122 'timeout' => 0.01, … … 115 127 $qs = array( 116 128 'action' => 'async_litespeed', 117 'nonce' => wp_create_nonce('async_litespeed'),129 'nonce' => $hash, 118 130 Router::TYPE => $type, 119 131 ); -
litespeed-cache/trunk/thirdparty/perfmatters.cls.php
r3009052 r3135111 1 1 <?php 2 2 3 /** 3 4 * The Third Party integration with the Perfmatters plugin. … … 5 6 * @since 4.4.5 6 7 */ 8 7 9 namespace LiteSpeed\Thirdparty; 10 8 11 defined('WPINC') || exit(); 9 12 … … 28 31 { 29 32 defined('LITESPEED_ESI_OFF') || define('LITESPEED_ESI_OFF', true); 33 do_action('litespeed_debug', 'Disable ESI due to Perfmatters script manager'); 30 34 } 31 35 } -
litespeed-cache/trunk/tpl/img_optm/settings.tpl.php
r2808204 r3135111 1 1 <?php 2 2 3 namespace LiteSpeed; 3 defined( 'WPINC' ) || exit; 4 5 defined('WPINC') || exit; 4 6 5 7 $this->form_action(); … … 7 9 8 10 <h3 class="litespeed-title-short"> 9 <?php echo __( 'Image Optimization Settings', 'litespeed-cache'); ?>10 <?php Doc::learn_more( 'https://docs.litespeedtech.com/lscache/lscwp/imageopt/#image-optimization-settings-tab'); ?>11 <?php echo __('Image Optimization Settings', 'litespeed-cache'); ?> 12 <?php Doc::learn_more('https://docs.litespeedtech.com/lscache/lscwp/imageopt/#image-optimization-settings-tab'); ?> 11 13 </h3> 12 14 13 <table class="wp-list-table striped litespeed-table"><tbody> 15 <table class="wp-list-table striped litespeed-table"> 16 <tbody> 14 17 15 <tr>16 <th>17 <?php $id = Base::O_IMG_OPTM_AUTO; ?>18 <?php $this->title( $id); ?>19 </th>20 <td>21 <?php $this->build_switch( $id); ?>22 <div class="litespeed-desc">23 <?php echo __( 'Automatically request optimization via cron job.', 'litespeed-cache'); ?>24 </div>25 </td>26 </tr>18 <tr> 19 <th> 20 <?php $id = Base::O_IMG_OPTM_AUTO; ?> 21 <?php $this->title($id); ?> 22 </th> 23 <td> 24 <?php $this->build_switch($id); ?> 25 <div class="litespeed-desc"> 26 <?php echo __('Automatically request optimization via cron job.', 'litespeed-cache'); ?> 27 </div> 28 </td> 29 </tr> 27 30 28 <tr>29 <th>30 <?php $id = Base::O_IMG_OPTM_CRON; ?>31 <?php $this->title( $id); ?>32 </th>33 <td>34 <?php $this->build_switch( $id); ?>35 <div class="litespeed-desc">36 <?php echo __( 'Disabling this will stop the cron job responsible for pulling optimized images back from QUIC.cloud Image Server.', 'litespeed-cache'); ?>37 </div>38 </td>39 </tr>31 <tr> 32 <th> 33 <?php $id = Base::O_IMG_OPTM_CRON; ?> 34 <?php $this->title($id); ?> 35 </th> 36 <td> 37 <?php $this->build_switch($id); ?> 38 <div class="litespeed-desc"> 39 <?php echo __('Disabling this will stop the cron job responsible for pulling optimized images back from QUIC.cloud Image Server.', 'litespeed-cache'); ?> 40 </div> 41 </td> 42 </tr> 40 43 41 <tr>42 <th>43 <?php $id = Base::O_IMG_OPTM_ORI; ?>44 <?php $this->title( $id); ?>45 </th>46 <td>47 <?php $this->build_switch( $id); ?>48 <div class="litespeed-desc">49 <?php echo __( 'Optimize images and save backups of the originals in the same folder.', 'litespeed-cache'); ?>50 </div>51 </td>52 </tr>44 <tr> 45 <th> 46 <?php $id = Base::O_IMG_OPTM_ORI; ?> 47 <?php $this->title($id); ?> 48 </th> 49 <td> 50 <?php $this->build_switch($id); ?> 51 <div class="litespeed-desc"> 52 <?php echo __('Optimize images and save backups of the originals in the same folder.', 'litespeed-cache'); ?> 53 </div> 54 </td> 55 </tr> 53 56 54 <tr>55 <th>56 <?php $id = Base::O_IMG_OPTM_RM_BKUP; ?>57 <?php $this->title( $id); ?>58 </th>59 <td>60 <?php $this->build_switch( $id); ?>61 <div class="litespeed-desc">62 <?php echo __( 'Automatically remove the original image backups after fetching optimized images.', 'litespeed-cache'); ?>57 <tr> 58 <th> 59 <?php $id = Base::O_IMG_OPTM_RM_BKUP; ?> 60 <?php $this->title($id); ?> 61 </th> 62 <td> 63 <?php $this->build_switch($id); ?> 64 <div class="litespeed-desc"> 65 <?php echo __('Automatically remove the original image backups after fetching optimized images.', 'litespeed-cache'); ?> 63 66 64 <br /><font class="litespeed-danger"> 65 🚨 66 <?php echo __( 'This is irreversible.', 'litespeed-cache' ); ?> 67 <?php echo __( 'You will be unable to Revert Optimization once the backups are deleted!', 'litespeed-cache' ); ?> 68 </font> 69 </div> 70 </td> 71 </tr> 67 <br /> 68 <font class="litespeed-danger"> 69 🚨 70 <?php echo __('This is irreversible.', 'litespeed-cache'); ?> 71 <?php echo __('You will be unable to Revert Optimization once the backups are deleted!', 'litespeed-cache'); ?> 72 </font> 73 </div> 74 </td> 75 </tr> 72 76 73 <tr>74 <th>75 <?php $id = Base::O_IMG_OPTM_LOSSLESS; ?>76 <?php $this->title( $id); ?>77 </th>78 <td>79 <?php $this->build_switch( $id); ?>80 <div class="litespeed-desc">81 <?php echo __( 'Optimize images using lossless compression.', 'litespeed-cache'); ?>82 <?php echo __( 'This can improve quality but may result in larger images than lossy compression will.', 'litespeed-cache'); ?>83 </div>84 </td>85 </tr>77 <tr> 78 <th> 79 <?php $id = Base::O_IMG_OPTM_LOSSLESS; ?> 80 <?php $this->title($id); ?> 81 </th> 82 <td> 83 <?php $this->build_switch($id); ?> 84 <div class="litespeed-desc"> 85 <?php echo __('Optimize images using lossless compression.', 'litespeed-cache'); ?> 86 <?php echo __('This can improve quality but may result in larger images than lossy compression will.', 'litespeed-cache'); ?> 87 </div> 88 </td> 89 </tr> 86 90 87 <tr>88 <th>89 <?php $id = Base::O_IMG_OPTM_EXIF; ?>90 <?php $this->title( $id); ?>91 </th>92 <td>93 <?php $this->build_switch( $id); ?>94 <div class="litespeed-desc">95 <?php echo __( 'Preserve EXIF data (copyright, GPS, comments, keywords, etc) when optimizing.', 'litespeed-cache'); ?>96 <?php echo __( 'This will increase the size of optimized files.', 'litespeed-cache'); ?>97 </div>98 </td>99 </tr>91 <tr> 92 <th> 93 <?php $id = Base::O_IMG_OPTM_EXIF; ?> 94 <?php $this->title($id); ?> 95 </th> 96 <td> 97 <?php $this->build_switch($id); ?> 98 <div class="litespeed-desc"> 99 <?php echo __('Preserve EXIF data (copyright, GPS, comments, keywords, etc) when optimizing.', 'litespeed-cache'); ?> 100 <?php echo __('This will increase the size of optimized files.', 'litespeed-cache'); ?> 101 </div> 102 </td> 103 </tr> 100 104 101 <?php102 if ( ! is_multisite()) :105 <?php 106 if (!is_multisite()) : 103 107 // webp 104 108 require LSCWP_DIR . 'tpl/img_optm/settings.media_webp.tpl.php'; 105 109 106 110 endif; 107 ?>111 ?> 108 112 109 <tr>110 <th>111 <?php $id = Base::O_IMG_OPTM_WEBP_ATTR; ?>112 <?php $this->title( $id); ?>113 </th>114 <td>113 <tr> 114 <th> 115 <?php $id = Base::O_IMG_OPTM_WEBP_ATTR; ?> 116 <?php $this->title($id); ?> 117 </th> 118 <td> 115 119 116 <div class="litespeed-textarea-recommended"> 117 <div> 118 <?php $this->build_textarea( $id, 40 ); ?> 120 <div class="litespeed-textarea-recommended"> 121 <div> 122 <?php $this->build_textarea($id, 40); ?> 123 </div> 124 <div> 125 <?php $this->recommended($id); ?> 126 </div> 119 127 </div> 120 <div> 121 <?php $this->recommended( $id ); ?> 128 129 <div class="litespeed-desc"> 130 <?php echo __('Specify which element attributes will be replaced with WebP.', 'litespeed-cache'); ?> 131 <?php echo __('Only attributes listed here will be replaced.', 'litespeed-cache'); ?> 132 <br /><?php echo sprintf(__('Use the format %1$s or %2$s (element is optional).', 'litespeed-cache'), '<code>element.attribute</code>', '<code>.attribute</code>'); ?> 133 <?php Doc::one_per_line(); ?> 122 134 </div> 123 </div> 135 </td> 136 </tr> 124 137 125 <div class="litespeed-desc"> 126 <?php echo __( 'Specify which element attributes will be replaced with WebP.', 'litespeed-cache' ); ?> 127 <?php echo __( 'Only attributes listed here will be replaced.', 'litespeed-cache' ); ?> 128 <br /><?php echo sprintf( __( 'Use the format %1$s or %2$s (element is optional).', 'litespeed-cache' ), '<code>element.attribute</code>', '<code>.attribute</code>' ); ?> 129 <?php Doc::one_per_line(); ?> 130 </div> 131 </td> 132 </tr> 138 <tr> 139 <th> 140 <?php $id = Base::O_IMG_OPTM_WEBP_REPLACE_SRCSET; ?> 141 <?php $this->title($id); ?> 142 </th> 143 <td> 144 <?php $this->build_switch($id); ?> 145 <div class="litespeed-desc"> 146 <?php echo sprintf(__('Enable replacement of WebP in %s elements that were generated outside of WordPress logic.', 'litespeed-cache'), '<code>srcset</code>'); ?> 147 <?php Doc::learn_more('https://docs.litespeedtech.com/lscache/lscwp/imageopt/#webp-for-extra-srcset'); ?> 148 </div> 149 </td> 150 </tr> 133 151 134 <tr> 135 <th> 136 <?php $id = Base::O_IMG_OPTM_WEBP_REPLACE_SRCSET; ?> 137 <?php $this->title( $id ); ?> 138 </th> 139 <td> 140 <?php $this->build_switch( $id ); ?> 141 <div class="litespeed-desc"> 142 <?php echo sprintf( __( 'Enable replacement of WebP in %s elements that were generated outside of WordPress logic.', 'litespeed-cache' ), '<code>srcset</code>' ); ?> 143 <?php Doc::learn_more( 'https://docs.litespeedtech.com/lscache/lscwp/imageopt/#webp-for-extra-srcset' ); ?> 144 </div> 145 </td> 146 </tr> 147 148 <tr> 149 <th> 150 <?php $id = Base::O_IMG_OPTM_JPG_QUALITY; ?> 151 <?php $this->title( $id ); ?> 152 </th> 153 <td> 154 <?php $this->build_input( $id, 'litespeed-input-short' ); ?> 155 <div class="litespeed-desc"> 156 <?php echo __('The image compression quality setting of WordPress out of 100.', 'litespeed-cache'); ?> 157 <?php $this->recommended( $id ); ?> 158 <?php $this->_validate_ttl( $id, 0, 100 ); ?> 159 </div> 160 </td> 161 </tr> 162 </tbody></table> 152 </tbody> 153 </table> 163 154 164 155 <?php 165 156 166 157 $this->form_end(); 167 168 169 -
litespeed-cache/trunk/tpl/page_optm/settings_media.tpl.php
r3076030 r3135111 250 250 </tr> 251 251 252 <tr> 253 <th> 254 <?php $id = Base::O_IMG_OPTM_JPG_QUALITY; ?> 255 <?php $this->title($id); ?> 256 </th> 257 <td> 258 <?php $this->build_input($id, 'litespeed-input-short'); ?> 259 <div class="litespeed-desc"> 260 <?php echo __('The image compression quality setting of WordPress out of 100.', 'litespeed-cache'); ?> 261 <?php $this->recommended($id); ?> 262 <?php $this->_validate_ttl($id, 0, 100); ?> 263 </div> 264 </td> 265 </tr> 252 266 </tbody> 253 267 </table> -
litespeed-cache/trunk/tpl/toolbox/beta_test.tpl.php
r3127657 r3135111 7 7 // Existing public version list 8 8 $v_list = array( 9 '6.4', 9 10 '6.3.0.1', 10 11 '6.2.0.1',
Note: See TracChangeset
for help on using the changeset viewer.