From 4fdff5e2a664c85f87a1902069e51347f69d5cf5 Mon Sep 17 00:00:00 2001 From: Timotei Date: Sat, 2 Mar 2024 00:57:17 +0200 Subject: [PATCH 1/6] Purge - keep guest pages --- src/base.cls.php | 2 ++ src/lang.cls.php | 1 + src/purge.cls.php | 17 ++++++++++++++++- tpl/cache/settings-purge.tpl.php | 10 ++++++++++ 4 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/base.cls.php b/src/base.cls.php index 870f9f960..4683b00ca 100644 --- a/src/base.cls.php +++ b/src/base.cls.php @@ -71,6 +71,7 @@ class Base extends Root ## -------------- Purge ----------------- ## ## -------------------------------------------------- ## const O_PURGE_ON_UPGRADE = 'purge-upgrade'; + const O_PURGE_GUEST_PAGES = 'purge-guest_pages'; const O_PURGE_STALE = 'purge-stale'; const O_PURGE_POST_ALL = 'purge-post_all'; const O_PURGE_POST_FRONTPAGE = 'purge-post_f'; @@ -373,6 +374,7 @@ class Base extends Root // Purge self::O_PURGE_ON_UPGRADE => false, + self::O_PURGE_GUEST_PAGES => true, self::O_PURGE_STALE => false, self::O_PURGE_POST_ALL => false, self::O_PURGE_POST_FRONTPAGE => false, diff --git a/src/lang.cls.php b/src/lang.cls.php index b2d2dce46..004a31107 100644 --- a/src/lang.cls.php +++ b/src/lang.cls.php @@ -130,6 +130,7 @@ public static function title($id) self::O_OBJECT_TRANSIENTS => __('Store Transients', 'litespeed-cache'), self::O_PURGE_ON_UPGRADE => __('Purge All On Upgrade', 'litespeed-cache'), + self::O_PURGE_GUEST_PAGES => __('Purge guest pages on Purge all', 'litespeed-cache'), self::O_PURGE_STALE => __('Serve Stale', 'litespeed-cache'), self::O_PURGE_TIMED_URLS => __('Scheduled Purge URLs', 'litespeed-cache'), self::O_PURGE_TIMED_URLS_TIME => __('Scheduled Purge Time', 'litespeed-cache'), diff --git a/src/purge.cls.php b/src/purge.cls.php index 32574e4ab..0c1e5f122 100644 --- a/src/purge.cls.php +++ b/src/purge.cls.php @@ -192,7 +192,22 @@ private function _purge_all($reason = false) // self::debug( 'CLI request, queue stored: ' . $curr_built ); // } // else { - $this->_purge_all_lscache(true); + + $purge_guest = $this->conf(BASE::O_PURGE_GUEST_PAGES); + if ($purge_guest) { + $this->_purge_all_lscache(true); + } + // else { + // $this->_add(Tag::TYPE_LOCALRES); + // $this->_add(Tag::TYPE_HTTP); + // $this->_add(Tag::TYPE_MIN); + // // $this->_add(Tag::TYPE_FRONTPAGE); + // // if (LITESPEED_SERVER_TYPE !== 'LITESPEED_SERVER_OLS') { + // // $this->_add_private(Tag::TYPE_FRONTPAGE); + // // } + // // $this->_add(Tag::TYPE_PAGES); + // } + $this->_purge_all_cssjs(true); $this->_purge_all_localres(true); // $this->_purge_all_ccss( true ); diff --git a/tpl/cache/settings-purge.tpl.php b/tpl/cache/settings-purge.tpl.php index f5e837ddc..1e9624bf2 100644 --- a/tpl/cache/settings-purge.tpl.php +++ b/tpl/cache/settings-purge.tpl.php @@ -43,6 +43,16 @@ + + + + title($id); ?> + + + build_switch($id); ?> + + + From f300450a6d24dd476e3f2e13dd9c256c1cf36ba4 Mon Sep 17 00:00:00 2001 From: Timotei Date: Mon, 4 Mar 2024 20:36:18 +0200 Subject: [PATCH 2/6] Change default + removed extra code --- data/const.default.ini | 1 + src/base.cls.php | 2 +- src/purge.cls.php | 10 ---------- 3 files changed, 2 insertions(+), 11 deletions(-) diff --git a/data/const.default.ini b/data/const.default.ini index ddc1317ab..33cdc560b 100644 --- a/data/const.default.ini +++ b/data/const.default.ini @@ -190,6 +190,7 @@ purge-upgrade = true ; O_PURGE_STALE purge-stale = false +purge-guest_pages = true purge-post_all = false purge-post_f = true purge-post_h = true diff --git a/src/base.cls.php b/src/base.cls.php index 4683b00ca..254637637 100644 --- a/src/base.cls.php +++ b/src/base.cls.php @@ -374,7 +374,7 @@ class Base extends Root // Purge self::O_PURGE_ON_UPGRADE => false, - self::O_PURGE_GUEST_PAGES => true, + self::O_PURGE_GUEST_PAGES => false, self::O_PURGE_STALE => false, self::O_PURGE_POST_ALL => false, self::O_PURGE_POST_FRONTPAGE => false, diff --git a/src/purge.cls.php b/src/purge.cls.php index 0c1e5f122..11e73434c 100644 --- a/src/purge.cls.php +++ b/src/purge.cls.php @@ -197,16 +197,6 @@ private function _purge_all($reason = false) if ($purge_guest) { $this->_purge_all_lscache(true); } - // else { - // $this->_add(Tag::TYPE_LOCALRES); - // $this->_add(Tag::TYPE_HTTP); - // $this->_add(Tag::TYPE_MIN); - // // $this->_add(Tag::TYPE_FRONTPAGE); - // // if (LITESPEED_SERVER_TYPE !== 'LITESPEED_SERVER_OLS') { - // // $this->_add_private(Tag::TYPE_FRONTPAGE); - // // } - // // $this->_add(Tag::TYPE_PAGES); - // } $this->_purge_all_cssjs(true); $this->_purge_all_localres(true); From a21fcac787633ce65f6d40ab79f50ba3b5ee8a86 Mon Sep 17 00:00:00 2001 From: Timotei Date: Tue, 5 Mar 2024 10:04:06 +0200 Subject: [PATCH 3/6] Rework the cache purge --- src/purge.cls.php | 4 ++-- src/tag.cls.php | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/purge.cls.php b/src/purge.cls.php index 11e73434c..16500d7d4 100644 --- a/src/purge.cls.php +++ b/src/purge.cls.php @@ -192,12 +192,12 @@ private function _purge_all($reason = false) // self::debug( 'CLI request, queue stored: ' . $curr_built ); // } // else { - $purge_guest = $this->conf(BASE::O_PURGE_GUEST_PAGES); if ($purge_guest) { - $this->_purge_all_lscache(true); + $this->_add('guest'); } + $this->_purge_all_lscache(true); $this->_purge_all_cssjs(true); $this->_purge_all_localres(true); // $this->_purge_all_ccss( true ); diff --git a/src/tag.cls.php b/src/tag.cls.php index 324a073c0..8c95bc9f0 100644 --- a/src/tag.cls.php +++ b/src/tag.cls.php @@ -312,6 +312,10 @@ private static function _build_type_tags() return $tags; } + private static function _is_visitor_guest(){ + return is_user_logged_in(); + } + /** * Generate all cache tags before output * @@ -328,7 +332,7 @@ private static function _finalize() self::$_tags = array_merge(self::$_tags, $type_tags); } - if (defined('LITESPEED_GUEST') && LITESPEED_GUEST) { + if((defined('LITESPEED_GUEST') && LITESPEED_GUEST) || (self::cls()->conf(BASE::O_GUEST) && !self::_is_visitor_guest())){ self::$_tags[] = 'guest'; } From 687a859a3a24eb8f1302808feae6d59509ab6b57 Mon Sep 17 00:00:00 2001 From: Timotei Date: Wed, 6 Mar 2024 06:20:23 +0200 Subject: [PATCH 4/6] Rename setting + Skip guest tag in purge all --- data/const.default.ini | 2 +- src/base.cls.php | 4 ++-- src/lang.cls.php | 2 +- src/purge.cls.php | 13 +++++++------ src/tag.cls.php | 8 ++++++-- tpl/cache/settings-purge.tpl.php | 2 +- 6 files changed, 18 insertions(+), 13 deletions(-) diff --git a/data/const.default.ini b/data/const.default.ini index 33cdc560b..124fdfb12 100644 --- a/data/const.default.ini +++ b/data/const.default.ini @@ -190,7 +190,7 @@ purge-upgrade = true ; O_PURGE_STALE purge-stale = false -purge-guest_pages = true +purge-skip_guest_pages = false purge-post_all = false purge-post_f = true purge-post_h = true diff --git a/src/base.cls.php b/src/base.cls.php index 254637637..ac69f5b42 100644 --- a/src/base.cls.php +++ b/src/base.cls.php @@ -71,7 +71,7 @@ class Base extends Root ## -------------- Purge ----------------- ## ## -------------------------------------------------- ## const O_PURGE_ON_UPGRADE = 'purge-upgrade'; - const O_PURGE_GUEST_PAGES = 'purge-guest_pages'; + const O_PURGE_SKIP_GUEST_PAGES = 'purge-skip_guest_pages'; const O_PURGE_STALE = 'purge-stale'; const O_PURGE_POST_ALL = 'purge-post_all'; const O_PURGE_POST_FRONTPAGE = 'purge-post_f'; @@ -374,7 +374,7 @@ class Base extends Root // Purge self::O_PURGE_ON_UPGRADE => false, - self::O_PURGE_GUEST_PAGES => false, + self::O_PURGE_SKIP_GUEST_PAGES => false, self::O_PURGE_STALE => false, self::O_PURGE_POST_ALL => false, self::O_PURGE_POST_FRONTPAGE => false, diff --git a/src/lang.cls.php b/src/lang.cls.php index 004a31107..0b01b3785 100644 --- a/src/lang.cls.php +++ b/src/lang.cls.php @@ -130,7 +130,7 @@ public static function title($id) self::O_OBJECT_TRANSIENTS => __('Store Transients', 'litespeed-cache'), self::O_PURGE_ON_UPGRADE => __('Purge All On Upgrade', 'litespeed-cache'), - self::O_PURGE_GUEST_PAGES => __('Purge guest pages on Purge all', 'litespeed-cache'), + self::O_PURGE_SKIP_GUEST_PAGES => __('Skip guest pages on Purge all', 'litespeed-cache'), self::O_PURGE_STALE => __('Serve Stale', 'litespeed-cache'), self::O_PURGE_TIMED_URLS => __('Scheduled Purge URLs', 'litespeed-cache'), self::O_PURGE_TIMED_URLS_TIME => __('Scheduled Purge Time', 'litespeed-cache'), diff --git a/src/purge.cls.php b/src/purge.cls.php index 16500d7d4..b69ebe865 100644 --- a/src/purge.cls.php +++ b/src/purge.cls.php @@ -192,11 +192,6 @@ private function _purge_all($reason = false) // self::debug( 'CLI request, queue stored: ' . $curr_built ); // } // else { - $purge_guest = $this->conf(BASE::O_PURGE_GUEST_PAGES); - if ($purge_guest) { - $this->_add('guest'); - } - $this->_purge_all_lscache(true); $this->_purge_all_cssjs(true); $this->_purge_all_localres(true); @@ -233,7 +228,13 @@ private function _purge_all($reason = false) */ private function _purge_all_lscache($silence = false) { - $this->_add('*'); + $tags = ['*']; + $skip_purge_guest = $this->conf(BASE::O_PURGE_SKIP_GUEST_PAGES); + if ($skip_purge_guest) { + $tags = ['non-guest']; + } + + $this->_add($tags, false); if (!$silence) { $msg = __('Notified LiteSpeed Web Server to purge all LSCache entries.', 'litespeed-cache'); diff --git a/src/tag.cls.php b/src/tag.cls.php index 8c95bc9f0..4582f5e52 100644 --- a/src/tag.cls.php +++ b/src/tag.cls.php @@ -313,7 +313,7 @@ private static function _build_type_tags() } private static function _is_visitor_guest(){ - return is_user_logged_in(); + return !is_user_logged_in(); } /** @@ -332,9 +332,13 @@ private static function _finalize() self::$_tags = array_merge(self::$_tags, $type_tags); } - if((defined('LITESPEED_GUEST') && LITESPEED_GUEST) || (self::cls()->conf(BASE::O_GUEST) && !self::_is_visitor_guest())){ + if((defined('LITESPEED_GUEST') && LITESPEED_GUEST) || (self::cls()->conf(BASE::O_GUEST) && self::_is_visitor_guest())){ self::$_tags[] = 'guest'; } + + if((defined('LITESPEED_GUEST') && !LITESPEED_GUEST) || !self::_is_visitor_guest()){ + self::$_tags[] = 'non-guest'; + } // append blog main tag self::$_tags[] = ''; diff --git a/tpl/cache/settings-purge.tpl.php b/tpl/cache/settings-purge.tpl.php index 1e9624bf2..7f403e2ae 100644 --- a/tpl/cache/settings-purge.tpl.php +++ b/tpl/cache/settings-purge.tpl.php @@ -45,7 +45,7 @@ - + title($id); ?> From 38d7c977d7161a4228e4ea37108c5e952051b51c Mon Sep 17 00:00:00 2001 From: Timotei Date: Mon, 11 Mar 2024 20:39:04 +0200 Subject: [PATCH 5/6] Change text --- src/lang.cls.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang.cls.php b/src/lang.cls.php index 0b01b3785..34ac4d5b1 100644 --- a/src/lang.cls.php +++ b/src/lang.cls.php @@ -130,7 +130,7 @@ public static function title($id) self::O_OBJECT_TRANSIENTS => __('Store Transients', 'litespeed-cache'), self::O_PURGE_ON_UPGRADE => __('Purge All On Upgrade', 'litespeed-cache'), - self::O_PURGE_SKIP_GUEST_PAGES => __('Skip guest pages on Purge all', 'litespeed-cache'), + self::O_PURGE_SKIP_GUEST_PAGES => __('Skip Guest Mode pages on Purge All', 'litespeed-cache'), self::O_PURGE_STALE => __('Serve Stale', 'litespeed-cache'), self::O_PURGE_TIMED_URLS => __('Scheduled Purge URLs', 'litespeed-cache'), self::O_PURGE_TIMED_URLS_TIME => __('Scheduled Purge Time', 'litespeed-cache'), From e4d5c0b6e93c4c5ce72f9868ba4d174197aecd0f Mon Sep 17 00:00:00 2001 From: Hai Zheng Date: Tue, 16 Apr 2024 11:40:56 -0400 Subject: [PATCH 6/6] Update lang.cls.php --- src/lang.cls.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang.cls.php b/src/lang.cls.php index 34ac4d5b1..a6d18649f 100644 --- a/src/lang.cls.php +++ b/src/lang.cls.php @@ -130,7 +130,7 @@ public static function title($id) self::O_OBJECT_TRANSIENTS => __('Store Transients', 'litespeed-cache'), self::O_PURGE_ON_UPGRADE => __('Purge All On Upgrade', 'litespeed-cache'), - self::O_PURGE_SKIP_GUEST_PAGES => __('Skip Guest Mode pages on Purge All', 'litespeed-cache'), + self::O_PURGE_SKIP_GUEST_PAGES => __('Skip Guest Mode Pages on Purge All', 'litespeed-cache'), self::O_PURGE_STALE => __('Serve Stale', 'litespeed-cache'), self::O_PURGE_TIMED_URLS => __('Scheduled Purge URLs', 'litespeed-cache'), self::O_PURGE_TIMED_URLS_TIME => __('Scheduled Purge Time', 'litespeed-cache'),