├── Joomla3 ├── com_lscache │ ├── admin │ │ ├── access.xml │ │ ├── assets │ │ │ └── images │ │ │ │ ├── lsc-jml-forum.png │ │ │ │ ├── lsc-jml-github.png │ │ │ │ ├── lsc-jml-icon-a.svg │ │ │ │ ├── lsc-jml-icon-b.svg │ │ │ │ ├── lsc-jml-slack.png │ │ │ │ └── lsc-jml-wiki.png │ │ ├── config.xml │ │ ├── controller.php │ │ ├── controllers │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── index.html │ │ ├── language │ │ │ ├── en-GB │ │ │ │ ├── en-GB.com_lscache.ini │ │ │ │ ├── en-GB.com_lscache.sys.ini │ │ │ │ ├── en-GB.mod_lscache.ini │ │ │ │ ├── en-GB.mod_lscache.sys.ini │ │ │ │ ├── en-GB.plg_system_lscache.ini │ │ │ │ ├── en-GB.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ ├── fr-FR │ │ │ │ ├── fr-FR.com_lscache.ini │ │ │ │ ├── fr-FR.com_lscache.sys.ini │ │ │ │ ├── fr-FR.plg_system_lscache.ini │ │ │ │ ├── fr-FR.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ └── index.html │ │ ├── layouts │ │ │ ├── joomla │ │ │ │ └── searchtools │ │ │ │ │ ├── default.php │ │ │ │ │ └── default │ │ │ │ │ ├── bar.php │ │ │ │ │ ├── filters.php │ │ │ │ │ ├── list.php │ │ │ │ │ ├── noitems.php │ │ │ │ │ └── selector.php │ │ │ └── toolbar │ │ │ │ ├── purgeall.php │ │ │ │ └── purgeurl.php │ │ ├── lscache.php │ │ ├── models │ │ │ ├── fields │ │ │ │ ├── components.php │ │ │ │ └── notepurge.php │ │ │ ├── forms │ │ │ │ ├── filter_modules.xml │ │ │ │ ├── index.html │ │ │ │ └── module.xml │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── sql │ │ │ ├── index.html │ │ │ ├── install.mysql.utf8.sql │ │ │ ├── install.sqlsrv.utf8.sql │ │ │ ├── uninstall.mysql.utf8.sql │ │ │ ├── uninstall.sqlsrv.utf8.sql │ │ │ └── updates │ │ │ │ ├── mysql │ │ │ │ ├── 1.0.1.sql │ │ │ │ ├── 1.3.2.sql │ │ │ │ ├── 1.5.1.sql │ │ │ │ └── index.html │ │ │ │ └── sqlsrv │ │ │ │ ├── 1.0.1.sql │ │ │ │ ├── 1.3.2.sql │ │ │ │ ├── 1.5.1.sql │ │ │ │ └── index.html │ │ ├── tables │ │ │ └── module.php │ │ └── views │ │ │ ├── module │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ └── default.xml │ │ │ └── view.html.php │ │ │ └── modules │ │ │ ├── tmpl │ │ │ ├── default.php │ │ │ ├── default.xml │ │ │ ├── default_purge_url_body.php │ │ │ └── default_purge_url_footer.php │ │ │ └── view.html.php │ ├── component │ │ ├── controller.php │ │ ├── index.html │ │ ├── lscache.php │ │ └── views │ │ │ ├── default │ │ │ ├── index.html │ │ │ ├── metadata.xml │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ ├── default.xml │ │ │ │ └── index.html │ │ │ └── view.html.php │ │ │ └── index.html │ └── lscache.xml ├── esiTemplate │ ├── index.php │ └── templateDetails.xml ├── lscache_plugin │ ├── components │ │ ├── base.php │ │ ├── com_jabuilder.php │ │ ├── com_k2.php │ │ ├── com_komento.php │ │ ├── com_sppagebuilder.php │ │ ├── com_virtuemart.php │ │ ├── helper.php │ │ └── list.php │ ├── lscache.php │ ├── lscache.xml │ ├── lscachebase.php │ ├── lscachecore.php │ └── modules │ │ ├── base.php │ │ ├── helper.php │ │ ├── joomla.login.php │ │ ├── joomla.menu.php │ │ ├── k2.content.php │ │ ├── list.php │ │ └── virtuemart.cart.php ├── mod_lscache │ ├── mod_lscache.php │ ├── mod_lscache.xml │ └── tmpl │ │ └── default.php └── package │ ├── build │ ├── pkg_lscache.xml │ └── pkg_script.php │ ├── buildPackage.sh │ ├── lscache-1.2.0.zip │ ├── lscache-1.2.1.zip │ ├── lscache-1.3.0.zip │ ├── lscache-1.3.1.zip │ ├── lscache-1.3.2.zip │ ├── lscache-1.4.0.zip │ ├── lscache-1.5.0.zip │ ├── lscache-1.5.1.zip │ └── lscache-latest.zip ├── Joomla4 ├── com_lscache │ ├── admin │ │ ├── access.xml │ │ ├── assets │ │ │ └── images │ │ │ │ ├── lsc-jml-forum.png │ │ │ │ ├── lsc-jml-github.png │ │ │ │ ├── lsc-jml-icon-a.svg │ │ │ │ ├── lsc-jml-icon-b.svg │ │ │ │ ├── lsc-jml-slack.png │ │ │ │ └── lsc-jml-wiki.png │ │ ├── config.xml │ │ ├── controller.php │ │ ├── controllers │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── index.html │ │ ├── language │ │ │ ├── en-GB │ │ │ │ ├── en-GB.com_lscache.ini │ │ │ │ ├── en-GB.com_lscache.sys.ini │ │ │ │ ├── en-GB.mod_lscache.ini │ │ │ │ ├── en-GB.mod_lscache.sys.ini │ │ │ │ ├── en-GB.plg_system_lscache.ini │ │ │ │ ├── en-GB.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ ├── fr-FR │ │ │ │ ├── fr-FR.com_lscache.ini │ │ │ │ ├── fr-FR.com_lscache.sys.ini │ │ │ │ ├── fr-FR.plg_system_lscache.ini │ │ │ │ ├── fr-FR.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ └── index.html │ │ ├── layouts │ │ │ ├── joomla │ │ │ │ └── form │ │ │ │ │ └── field │ │ │ │ │ └── modulespositionedit.php │ │ │ └── toolbar │ │ │ │ ├── cancelselect.php │ │ │ │ ├── purgeall.php │ │ │ │ └── purgeurl.php │ │ ├── lscache.php │ │ ├── models │ │ │ ├── fields │ │ │ │ ├── components.php │ │ │ │ └── notepurge.php │ │ │ ├── forms │ │ │ │ ├── filter_modules.xml │ │ │ │ ├── index.html │ │ │ │ └── module.xml │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── sql │ │ │ ├── index.html │ │ │ ├── install.mysql.utf8.sql │ │ │ ├── install.sqlsrv.utf8.sql │ │ │ ├── uninstall.mysql.utf8.sql │ │ │ ├── uninstall.sqlsrv.utf8.sql │ │ │ └── updates │ │ │ │ ├── mysql │ │ │ │ └── index.html │ │ │ │ └── sqlsrv │ │ │ │ └── index.html │ │ ├── tables │ │ │ └── module.php │ │ └── views │ │ │ ├── module │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ └── default.xml │ │ │ └── view.html.php │ │ │ └── modules │ │ │ ├── tmpl │ │ │ ├── default.php │ │ │ ├── default.xml │ │ │ ├── default_purge_url_body.php │ │ │ └── default_purge_url_footer.php │ │ │ └── view.html.php │ ├── component │ │ ├── controller.php │ │ ├── index.html │ │ ├── lscache.php │ │ └── views │ │ │ ├── default │ │ │ ├── index.html │ │ │ ├── metadata.xml │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ ├── default.xml │ │ │ │ └── index.html │ │ │ └── view.html.php │ │ │ └── index.html │ └── lscache.xml ├── esiTemplate │ ├── index.php │ └── templateDetails.xml ├── lscache_plugin │ ├── components │ │ ├── base.php │ │ ├── com_content.php │ │ ├── com_jabuilder.php │ │ ├── com_k2.php │ │ ├── com_komento.php │ │ ├── com_sppagebuilder.php │ │ ├── com_virtuemart.php │ │ ├── helper.php │ │ └── list.php │ ├── lscache.php │ ├── lscache.xml │ ├── lscachebase.php │ ├── lscachecore.php │ └── modules │ │ ├── base.php │ │ ├── helper.php │ │ ├── joomla.login.php │ │ ├── joomla.menu.php │ │ ├── k2.content.php │ │ ├── list.php │ │ └── virtuemart.cart.php ├── mod_lscache_purge │ ├── language │ │ └── en-GB │ │ │ ├── en-GB.mod_lscache_purge.ini │ │ │ └── en-GB.mod_lscache_purge.sys.ini │ ├── mod_lscache_purge.php │ ├── mod_lscache_purge.xml │ └── tmpl │ │ └── default.php └── package │ ├── build │ ├── pkg_lscache.xml │ └── pkg_script.php │ ├── buildPackage.sh │ ├── lscache-1.5.1.zip │ └── lscache-latest.zip ├── Joomla5 ├── com_lscache │ ├── admin │ │ ├── access.xml │ │ ├── assets │ │ │ └── images │ │ │ │ ├── lsc-jml-forum.png │ │ │ │ ├── lsc-jml-github.png │ │ │ │ ├── lsc-jml-icon-a.svg │ │ │ │ ├── lsc-jml-icon-b.svg │ │ │ │ ├── lsc-jml-slack.png │ │ │ │ └── lsc-jml-wiki.png │ │ ├── config.xml │ │ ├── controller.php │ │ ├── controllers │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── index.html │ │ ├── language │ │ │ ├── en-GB │ │ │ │ ├── en-GB.com_lscache.ini │ │ │ │ ├── en-GB.com_lscache.sys.ini │ │ │ │ ├── en-GB.mod_lscache.ini │ │ │ │ ├── en-GB.mod_lscache.sys.ini │ │ │ │ ├── en-GB.plg_system_lscache.ini │ │ │ │ ├── en-GB.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ ├── fr-FR │ │ │ │ ├── fr-FR.com_lscache.ini │ │ │ │ ├── fr-FR.com_lscache.sys.ini │ │ │ │ ├── fr-FR.plg_system_lscache.ini │ │ │ │ ├── fr-FR.plg_system_lscache.sys.ini │ │ │ │ └── index.html │ │ │ └── index.html │ │ ├── layouts │ │ │ ├── joomla │ │ │ │ └── form │ │ │ │ │ └── field │ │ │ │ │ └── modulespositionedit.php │ │ │ └── toolbar │ │ │ │ ├── cancelselect.php │ │ │ │ ├── purgeall.php │ │ │ │ └── purgeurl.php │ │ ├── lscache.php │ │ ├── models │ │ │ ├── fields │ │ │ │ ├── components.php │ │ │ │ └── notepurge.php │ │ │ ├── forms │ │ │ │ ├── filter_modules.xml │ │ │ │ ├── index.html │ │ │ │ └── module.xml │ │ │ ├── index.html │ │ │ ├── module.php │ │ │ └── modules.php │ │ ├── sql │ │ │ ├── index.html │ │ │ ├── install.mysql.utf8.sql │ │ │ ├── install.sqlsrv.utf8.sql │ │ │ ├── uninstall.mysql.utf8.sql │ │ │ ├── uninstall.sqlsrv.utf8.sql │ │ │ └── updates │ │ │ │ ├── mysql │ │ │ │ └── index.html │ │ │ │ └── sqlsrv │ │ │ │ └── index.html │ │ ├── tables │ │ │ └── module.php │ │ └── views │ │ │ ├── module │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ └── default.xml │ │ │ └── view.html.php │ │ │ └── modules │ │ │ ├── tmpl │ │ │ ├── default.php │ │ │ ├── default.xml │ │ │ ├── default_purge_url_body.php │ │ │ └── default_purge_url_footer.php │ │ │ └── view.html.php │ ├── component │ │ ├── controller.php │ │ ├── index.html │ │ ├── lscache.php │ │ └── views │ │ │ ├── default │ │ │ ├── index.html │ │ │ ├── metadata.xml │ │ │ ├── tmpl │ │ │ │ ├── default.php │ │ │ │ ├── default.xml │ │ │ │ └── index.html │ │ │ └── view.html.php │ │ │ └── index.html │ └── lscache.xml ├── esiTemplate │ ├── index.php │ └── templateDetails.xml ├── lscache_plugin │ ├── components │ │ ├── base.php │ │ ├── com_content.php │ │ ├── com_jabuilder.php │ │ ├── com_k2.php │ │ ├── com_komento.php │ │ ├── com_sppagebuilder.php │ │ ├── com_virtuemart.php │ │ ├── helper.php │ │ └── list.php │ ├── lscache.php │ ├── lscache.xml │ ├── lscachebase.php │ ├── lscachecore.php │ └── modules │ │ ├── base.php │ │ ├── helper.php │ │ ├── joomla.login.php │ │ ├── joomla.menu.php │ │ ├── k2.content.php │ │ ├── list.php │ │ └── virtuemart.cart.php ├── mod_lscache_purge │ ├── language │ │ └── en-GB │ │ │ ├── en-GB.mod_lscache_purge.ini │ │ │ └── en-GB.mod_lscache_purge.sys.ini │ ├── mod_lscache_purge.php │ ├── mod_lscache_purge.xml │ └── tmpl │ │ └── default.php └── package │ ├── build │ ├── pkg_lscache.xml │ └── pkg_script.php │ ├── buildPackage.sh │ └── lscache-latest.zip ├── README.md ├── images ├── joomlaPluginConfig.gif ├── joomlaPluginDebug.gif └── joomlaPluginInstall.gif ├── package ├── lscache-1.2.0.zip ├── lscache-1.2.1.zip ├── lscache-1.3.0.zip ├── lscache-1.3.1.zip ├── lscache-1.3.2.zip ├── lscache-1.4.0.zip ├── lscache-1.5.0.zip ├── lscache-V3-1.5.1.zip └── lscache-v4-1.5.1.zip └── virtuemart ├── 3.0.16 ├── administrator │ └── components │ │ └── com_virtuemart │ │ └── models │ │ └── product.php └── components │ └── com_virtuemart │ ├── controllers │ └── cart.php │ └── helpers │ └── cart.php ├── 3.0.19 ├── administrator │ └── components │ │ └── com_virtuemart │ │ └── models │ │ └── product.php └── components │ └── com_virtuemart │ ├── controllers │ └── cart.php │ └── helpers │ └── cart.php ├── 3.2.0 ├── administrator │ └── components │ │ └── com_virtuemart │ │ └── models │ │ └── product.php └── components │ └── com_virtuemart │ ├── controllers │ └── cart.php │ └── helpers │ └── cart.php └── 3.2.2 ├── administrator └── components │ └── com_virtuemart │ └── models │ └── product.php └── components └── com_virtuemart ├── controllers └── cart.php └── helpers └── cart.php /Joomla3/com_lscache/admin/access.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-forum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/com_lscache/admin/assets/images/lsc-jml-forum.png -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/com_lscache/admin/assets/images/lsc-jml-github.png -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-icon-a.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 13 | 14 | 15 | 19 | 23 | 24 | 28 | 29 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-icon-b.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 15 | 23 | 24 | 28 | 32 | 33 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-slack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/com_lscache/admin/assets/images/lsc-jml-slack.png -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/assets/images/lsc-jml-wiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/com_lscache/admin/assets/images/lsc-jml-wiki.png -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/controller.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | // No direct access to this file 10 | defined('_JEXEC') or die; 11 | 12 | /** 13 | * General Controller of HelloWorld component 14 | * 15 | * @package Joomla.Administrator 16 | * @subpackage com_helloworld 17 | * @since 0.0.7 18 | */ 19 | class LSCacheController extends JControllerLegacy 20 | { 21 | /** 22 | * The default view for the display method. 23 | * 24 | * @var string 25 | * @since 12.2 26 | */ 27 | protected $default_view = 'modules'; 28 | } 29 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/controllers/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/controllers/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheControllerModule extends JControllerForm 11 | { 12 | 13 | 14 | } -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/en-GB.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="A High Performance Page Cache for Joomla running on a LiteSpeed Web Server" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/en-GB.mod_lscache.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/en-GB.mod_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST = "Please turn on LiteSpeed Cache via the 'Option' button first." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT = "Curl feature not supported by the server's current PHP version." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED = "Informed LiteSpeed Server to purge all related cached pages successfully." 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL = "After modifying the template, please manually Purge All LiteSpeed Cache to make it effective" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED = "Recached related web pages successfully, %d seconds used." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME = "Recaching related web pages exceed max duration limit, %d seconds used. You can manually Rebuild All LiteSpeed Cache later." 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE = "All LiteSpeed Cache was purged. You can manually Rebuild All LiteSpeed Cache later." 8 | COM_LSCACHE_PLUGIN_CHECKHTACCESS = "Please check .htaccess file and comment/uncomment relate directives." 9 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="LiteSpeed Cache Plugin" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeedCache is a high performance cache solution for Joomla sites running on LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/en-GB/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/fr-FR/fr-FR.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="Un cache de page haute performance pour Joomla fonctionnant sur un serveur Web LiteSpeed" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST="Veuillez d'abord activer LiteSpeed Cache via le bouton 'option'." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT="Fonctionnalité Curl non prise en charge dans la version PHP actuelle." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED="Informé LiteSpeed Server pour purger avec succès toutes les pages mises en cache associées" 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL="Après avoir modifié le modèle, veuillez Purger tout le cache LiteSpeed pour le rendre efficace" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED="Page Web mise en cache avec succès,%d secondes utilisées." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME="La page Web relative mise en cache dépasse la durée maximale,%d secondes utilisées, vous pouvez Reconstruire tout le cache LiteSpeed plus tard. 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE="Tout le cache LiteSpeed a été purgé, vous pouvez Reconstruire tout le cache LiteSpeed plus tard." -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="Plug-in de cache LiteSpeed" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeed Cache est une solution de cache haute performance pour les sites Joomla fonctionnant sur LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/fr-FR/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/language/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/joomla/searchtools/default/bar.php: -------------------------------------------------------------------------------- 1 | get('filterButton', true); 26 | $searchButton = $data['options']->get('searchButton', true); 27 | 28 | $filters = $data['view']->filterForm->getGroup('filter'); 29 | ?> 30 | 31 | 32 | 33 | 40 |
41 | input; ?> 42 | description) : ?> 43 | JText::_($filters['filter_search']->description))); ?> 44 | 45 | 48 |
49 | 50 |
51 | 54 |
55 | 56 |
57 | 60 |
61 | 62 | filterForm->getGroup('filter'); 16 | ?> 17 | 18 | $field) : ?> 19 | 20 | 21 | showon) : ?> 22 | 23 | 'auto', 'relative' => true)); ?> 24 | showon, $field->formControl, $field->group)) . "'"; ?> 25 | 26 |
> 27 | input; ?> 28 |
29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/joomla/searchtools/default/list.php: -------------------------------------------------------------------------------- 1 | filterForm->getGroup('list'); 16 | ?> 17 | 18 |
19 | $field) : ?> 20 |
21 | input; ?> 22 |
23 | 24 |
25 | 26 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/joomla/searchtools/default/noitems.php: -------------------------------------------------------------------------------- 1 | 14 |
15 | 16 |
17 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/joomla/searchtools/default/selector.php: -------------------------------------------------------------------------------- 1 | 14 |
15 | filterForm->getField($data['options']['selectorFieldName'])->input; ?> 16 |
17 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/toolbar/purgeall.php: -------------------------------------------------------------------------------- 1 | 15 | 19 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/layouts/toolbar/purgeurl.php: -------------------------------------------------------------------------------- 1 | 15 | 16 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/lscache.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | defined('_JEXEC') or die; 10 | 11 | if (!JFactory::getUser()->authorise('core.manage', 'com_lscache')) 12 | { 13 | throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403); 14 | } 15 | 16 | $controller = JControllerLegacy::getInstance('LSCache'); 17 | $input = JFactory::getApplication()->input; 18 | $controller->execute($input->getCmd('task')); 19 | $controller->redirect(); 20 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/models/fields/components.php: -------------------------------------------------------------------------------- 1 | getQuery(true) 43 | ->select('DISTINCT a.name AS text, a.element AS value') 44 | ->from('#__extensions as a') 45 | ->where('a.enabled >= 1') 46 | ->where('a.type =' . $db->quote('component')) 47 | ->order('a.extension_id DESC'); 48 | 49 | 50 | $items = $db->setQuery($query)->loadObjectList(); 51 | 52 | if (count($items)) 53 | { 54 | $lang = JFactory::getLanguage(); 55 | 56 | foreach ($items as &$item) 57 | { 58 | // Load language 59 | $extension = $item->value; 60 | $source = JPATH_ADMINISTRATOR . '/components/' . $extension; 61 | $lang->load("$extension.sys", JPATH_ADMINISTRATOR, null, false, true) 62 | || $lang->load("$extension.sys", $source, null, false, true); 63 | 64 | // Translate component name 65 | $item->text = JText::_($item->text); 66 | } 67 | 68 | // Sort by component name 69 | //$items = ArrayHelper::sortObjects($items, 'text', 1, true, true); 70 | } 71 | 72 | // Merge any additional options in the XML definition. 73 | $options = array_merge(parent::getOptions(), $items); 74 | 75 | return $options; 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/models/fields/notepurge.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | defined('JPATH_BASE') or die; 11 | 12 | use Joomla\Utilities\ArrayHelper; 13 | 14 | JFormHelper::loadFieldClass('note'); 15 | 16 | /** 17 | * Display Purge Url field 18 | * 19 | * @since 1.2.1 20 | */ 21 | class JFormFieldNotePurge extends JFormFieldNote 22 | { 23 | protected $type = 'NotePurge'; 24 | 25 | protected function getLabel() 26 | { 27 | $description = (string) $this->element['description']; 28 | $description = JText::_($description); 29 | $settings = JComponentHelper::getParams('com_lscache'); 30 | $secureWords = $settings->get('cleanCache'); 31 | $root = JURI::root(); 32 | $description = str_replace('{webroot}', $root, $description); 33 | $description = str_replace('{secureword}', $secureWords, $description); 34 | 35 | $this->element['description'] = $description; 36 | return parent::getLabel(); 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/models/forms/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/models/forms/module.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 8 | 9 | 20 | 21 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 45 | 46 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 70 | 71 | 72 | 73 | 74 | 75 |
76 |
-------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/models/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/install.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE IF NOT EXISTS `#__modules_lscache` ( 2 | `moduleid` int(11) NOT NULL DEFAULT 0 NOT NULL, 3 | `lscache_type` smallint DEFAULT 0, 4 | `lscache_ttl` smallint DEFAULT 0, 5 | `module_type` smallint DEFAULT 0, 6 | `vary_language` smallint DEFAULT 1, 7 | PRIMARY KEY (`moduleid`) 8 | ); -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/install.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF NOT EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | CREATE TABLE [#__modules_lscache] ( 5 | [moduleid] bigint NOT NULL, 6 | [lscache_type] smallint DEFAULT 0, 7 | [lscache_ttl] smallint DEFAULT 0, 8 | [module_type] smallint DEFAULT 0, 9 | [vary_language] smallint DEFAULT 1, 10 | CONSTRAINT [PK_#__modules_lscache] PRIMARY KEY CLUSTERED ( 11 | [moduleid] ASC 12 | )); -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/uninstall.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS `#__modules_lscache`; 2 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/uninstall.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | DROP TABLE [#__modules_lscache]; -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/mysql/1.0.1.sql: -------------------------------------------------------------------------------- 1 | /* 2 | * @since 1.0.0 3 | * @author LiteSpeed Technologies 4 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 5 | * @license https://opensource.org/licenses/GPL-3.0 6 | */ 7 | 8 | CREATE TABLE IF NOT EXISTS `#__modules_lscache` ( 9 | `moduleid` int(11) NOT NULL DEFAULT 0 NOT NULL, 10 | `lscache_type` smallint DEFAULT 0, 11 | `lscache_ttl` smallint DEFAULT 0, 12 | PRIMARY KEY (`moduleid`) 13 | ); 14 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/mysql/1.3.2.sql: -------------------------------------------------------------------------------- 1 | 2 | ALTER TABLE `#__modules_lscache` 3 | ADD COLUMN `module_type` smallint DEFAULT 0; 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/mysql/1.5.1.sql: -------------------------------------------------------------------------------- 1 | 2 | ALTER TABLE `#__modules_lscache` 3 | ADD COLUMN `vary_language` smallint DEFAULT 1; 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/mysql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/sqlsrv/1.0.1.sql: -------------------------------------------------------------------------------- 1 | /* 2 | * @since 1.0.0 3 | * @author LiteSpeed Technologies 4 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 5 | * @license https://opensource.org/licenses/GPL-3.0 6 | */ 7 | 8 | IF NOT EXISTS (SELECT * FROM sysobjects 9 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 10 | AND type in (N'U')) 11 | CREATE TABLE [#__modules_lscache] ( 12 | [moduleid] bigint NOT NULL, 13 | [lscache_type] smallint DEFAULT 0, 14 | [lscache_ttl] smallint DEFAULT 0, 15 | CONSTRAINT [PK_#__modules_lscache] PRIMARY KEY CLUSTERED ( 16 | [moduleid] ASC 17 | )); -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/sqlsrv/1.3.2.sql: -------------------------------------------------------------------------------- 1 | 2 | ALTER TABLE [#__modules_lscache] 3 | ADD COLUMN [module_type] smallint DEFAULT 0; 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/sqlsrv/1.5.1.sql: -------------------------------------------------------------------------------- 1 | 2 | ALTER TABLE `#__modules_lscache` 3 | ADD COLUMN `vary_language` smallint DEFAULT 1; 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/sql/updates/sqlsrv/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/tables/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | // No direct access 12 | defined('_JEXEC') or die; 13 | 14 | ?> 15 |
17 |
18 |
19 | 20 |
21 |
22 | form->getFieldset() as $field): ?> 23 |
24 |
label; ?>
25 |
input; ?>
26 |
27 | 28 |
29 |
30 |
31 |
32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/views/module/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/views/module/view.html.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheViewModule extends JViewLegacy 11 | { 12 | /** 13 | * View form 14 | * 15 | * @var form 16 | */ 17 | protected $form = null; 18 | 19 | /** 20 | * Display the Module LSCache view 21 | * 22 | * @param string $tpl The name of the template file to parse; automatically searches through the template paths. 23 | * 24 | * @return void 25 | */ 26 | public function display($tpl = null) 27 | { 28 | // Get the Data 29 | $form = $this->get('Form'); 30 | $item = $this->get('Item'); 31 | 32 | // Check for errors. 33 | if (count($errors = $this->get('Errors'))) 34 | { 35 | JError::raiseError(500, implode('
', $errors)); 36 | 37 | return false; 38 | } 39 | 40 | // Assign the Data 41 | $this->form = $form; 42 | $this->item = $item; 43 | 44 | // Set the toolbar 45 | $this->addToolBar(); 46 | 47 | // Display the template 48 | parent::display($tpl); 49 | } 50 | 51 | /** 52 | * Add the page title and toolbar. 53 | * 54 | * @return void 55 | * 56 | * @since 1.6 57 | */ 58 | protected function addToolBar() 59 | { 60 | $input = JFactory::getApplication()->input; 61 | 62 | // Hide Joomla Administrator Main menu 63 | $input->set('hidemainmenu', true); 64 | 65 | $isNew = ($this->item->moduleid == 0); 66 | 67 | if ($isNew) 68 | { 69 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_NEW'); 70 | } 71 | else 72 | { 73 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_EDIT'); 74 | } 75 | 76 | JToolBarHelper::title($title, 'module'); 77 | JToolBarHelper::apply('module.apply'); 78 | JToolBarHelper::save('module.save'); 79 | JToolBarHelper::cancel( 80 | 'module.cancel', 81 | $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE' 82 | ); 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/views/modules/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/views/modules/tmpl/default_purge_url_body.php: -------------------------------------------------------------------------------- 1 | 4 |
5 |

6 | 7 |
8 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/admin/views/modules/tmpl/default_purge_url_footer.php: -------------------------------------------------------------------------------- 1 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/controller.php: -------------------------------------------------------------------------------- 1 | isAdmin(); 7 | if($admin==1) 8 | { 9 | ?> 10 |
11 | This Component was made to make it possible to create a menu item that has only modules and no component.
12 | You can use it by adding a new menu item, select "Blank Component" from the "Menu Item Type" list, and save.
13 | then, go to the module manager, and assign the modules you want to use with this menu item, and you're done!
14 |
15 | execute(JRequest::getCmd('task')); 27 | 28 | // Redirect if set by the controller 29 | $controller->redirect(); 30 | } 31 | 32 | ?> -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 15 | 16 |
17 | params->get('show_page_heading', 1)) : ?> 18 |

19 | escape($this->params->get('page_heading'))) :?> 20 | escape($this->params->get('page_heading')); ?> 21 | 22 | escape($this->params->get('page_title')); ?> 23 | 24 |

25 | 26 |
27 | 28 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/tmpl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/default/view.html.php: -------------------------------------------------------------------------------- 1 | getParams(); 17 | $menus = $app->getMenu(); 18 | $menu = $menus->getActive(); 19 | 20 | if ($menu) 21 | { 22 | $params->set('page_heading', $params->get('page_title', $menu->title)); 23 | } 24 | else 25 | { 26 | $params->set('page_title', JText::_('LSCache Component')); 27 | } 28 | 29 | $title = $params->get('page_title'); 30 | if ($app->getCfg('sitename_pagetitles', 0)) { 31 | $title = JText::sprintf('JPAGETITLE', $app->getCfg('sitename'), $title); 32 | } 33 | $this->document->setTitle($title); 34 | 35 | if ($params->get('menu-meta_description')) 36 | { 37 | $this->document->setDescription($params->get('menu-meta_description')); 38 | } 39 | 40 | if ($params->get('menu-meta_keywords')) 41 | { 42 | $this->document->setMetadata('keywords', $params->get('menu-meta_keywords')); 43 | } 44 | 45 | if ($params->get('robots')) 46 | { 47 | $this->document->setMetadata('robots', $params->get('robots')); 48 | } 49 | 50 | $this->assignRef('params', $params); 51 | 52 | parent::display($tpl); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/component/views/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla3/com_lscache/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | COM_LSCACHE 5 | 6 | December 2017 7 | LiteSpeedTech 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | Copyright Info 11 | GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html 12 | 13 | 1.5.1 14 | 15 | COM_LSCACHE_DESCRIPTION 16 | 17 | 18 | sql/install.mysql.utf8.sql 19 | sql/install.sqlsrv.utf8.sql 20 | 21 | 22 | 23 | 24 | sql/uninstall.mysql.utf8.sql 25 | sql/uninstall.sqlsrv.utf8.sql 26 | 27 | 28 | 29 | 30 | sql/updates/mysql 31 | sql/updates/sqlsrv 32 | 33 | 34 | 35 | 36 | lscache.php 37 | controller.php 38 | index.html 39 | views/ 40 | 41 | 42 | 43 | COM_LSCACHE_MENU 44 | 45 | 46 | access.xml 47 | config.xml 48 | controller.php 49 | lscache.php 50 | index.html 51 | assets 52 | controllers 53 | layouts 54 | models 55 | sql 56 | tables 57 | views 58 | 59 | 60 | en-GB/en-GB.com_lscache.ini 61 | en-GB/en-GB.com_lscache.sys.ini 62 | en-GB/en-GB.plg_system_lscache.ini 63 | en-GB/en-GB.plg_system_lscache.sys.ini 64 | en-GB/en-GB.mod_lscache.ini 65 | en-GB/en-GB.mod_lscache.sys.ini 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /Joomla3/esiTemplate/index.php: -------------------------------------------------------------------------------- 1 | setHtml5(true); 6 | ?> 7 | -------------------------------------------------------------------------------- /Joomla3/esiTemplate/templateDetails.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | esitemplate 5 | 1.0 6 | 9/30/2020 7 | litespeedtech.com 8 | info@litespeedtech.com 9 | Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. 10 | A blank template used when displaying ESI Modules with the Litespeed Cache Plugin 11 | 12 | index.php 13 | templateDetails.xml 14 | 15 | 16 | esi 17 | 18 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheComponentBase extends JPlugin 11 | { 12 | protected $plugin; 13 | protected $dispatcher; 14 | 15 | public function init($dispatcher,&$plugin){ 16 | $this->dispatcher = $dispatcher; 17 | $this->plugin = $plugin; 18 | } 19 | 20 | public function onRegisterEvents(){ 21 | } 22 | 23 | 24 | public function onPurgeContent($context, $row){ 25 | 26 | } 27 | 28 | //return cache tags; 29 | public function getTags($option, $pageElements){ 30 | if(isset($pageElements["context"])){ 31 | $context = $pageElements["context"]; 32 | } 33 | else{ 34 | $context = $option; 35 | } 36 | 37 | if(isset($pageElements["id"])){ 38 | return $context . ':' . $pageElements["id"]; 39 | } 40 | else{ 41 | return $context; 42 | } 43 | } 44 | 45 | public function getComMap(){ 46 | return array(); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/com_jabuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentJabuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $this->dispatcher->register("onJubSaveItem",$this); 16 | $this->dispatcher->register("onJubLoadItem", $this); 17 | 18 | $app = JFactory::getApplication(); 19 | $option = $app->input->get('jub', null); 20 | if($option!=null){ 21 | $this->plugin->pageCachable = false; 22 | } 23 | } 24 | 25 | public function onJubSaveItem($item){ 26 | $this->plugin->purgeContent("com_jabuilder.item", $item); 27 | $this->plugin->purgeAction(); 28 | } 29 | 30 | public function onJubLoadItem($item){ 31 | $this->plugin->onContentPrepare("com_jabuilder.item", $item, $item); 32 | } 33 | 34 | public function onPurgeContent($context, $row) 35 | { 36 | $this->plugin->purgeObject->option = "com_jabuilder"; 37 | $this->plugin->purgeObject->idField = "id"; 38 | 39 | if($context == "com_jabuilder.page"){ 40 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 41 | $this->plugin->purgeObject->ids[] = $row->id; 42 | } 43 | if($context == "com_jabuilder.item"){ 44 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 45 | $this->plugin->purgeObject->ids[] = $row->id; 46 | } 47 | else{ 48 | $this->plugin->purgeObject->tags[] = "com_jabuilder"; 49 | } 50 | } 51 | 52 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/com_k2.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentK2 extends LSCacheComponentBase{ 11 | 12 | public function onRegisterEvents() 13 | { 14 | $this->dispatcher->register("onFinderAfterSave",$this); 15 | $this->dispatcher->register("onFinderAfterDelete", $this); 16 | $this->dispatcher->register("onFinderChangeState", $this); 17 | } 18 | 19 | public function onFinderAfterSave($context, $row, $isNew) 20 | { 21 | if($context!="com_k2.item"){ 22 | $this->plugin->onContentAfterSave($context,$row,$isNew); 23 | } 24 | } 25 | 26 | public function onFinderAfterDelete($context, $row) 27 | { 28 | if($context!="com_k2.item"){ 29 | $this->plugin->onContentAfterDelete($context,$row,$isNew); 30 | } 31 | } 32 | 33 | public function onFinderChangeState($context, $pks, $value){ 34 | if($context!="com_k2.item"){ 35 | $this->plugin->onContentChangeState($context, $pks, $value); 36 | } 37 | } 38 | 39 | public function onPurgeContent($context, $row){ 40 | 41 | $this->plugin->purgeObject->option = "com_k2"; 42 | $this->plugin->purgeObject->idField = "id"; 43 | if($context == "com_k2.item"){ 44 | $purgeTags = 'com_k2,com_k2.item:' . $row->id . ",com_k2.category:" . $row->catid . ",com_k2.user:" . $row->created_by; 45 | $tags = JRequest::getVar('tags', NULL, 'POST', 'array'); 46 | if (count($tags)) 47 | { 48 | $tags = array_unique($tags); 49 | foreach ($tags as $tag) 50 | { 51 | $purgeTags .= ",com_k2.tag:" . $tag; 52 | } 53 | } 54 | $this->plugin->purgeObject->tags[] = $purgeTags; 55 | $this->plugin->purgeObject->ids = array($row->id, $row->catid); 56 | 57 | } 58 | else if($context=="com_k2.tag"){ 59 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->name; 60 | } 61 | else if(!empty($row->id)){ 62 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->id; 63 | $this->plugin->purgeObject->ids[] = $row->id; 64 | } 65 | else{ 66 | $this->plugin->purgeObject->tags[] = 'com_k2'; 67 | } 68 | 69 | } 70 | 71 | public function getTags($option, $pageElements){ 72 | 73 | if(isset($pageElements["layout"])){ 74 | $context = $option . "." . $pageElements["layout"]; 75 | } 76 | else if(isset($pageElements["context"])){ 77 | $context = $pageElements["context"]; 78 | } 79 | else{ 80 | $context = $option; 81 | } 82 | 83 | if($context=="com_k2.tag"){ 84 | return $context . ':' . $pageElements['tag']; 85 | } 86 | else if(isset($pageElements["id"])){ 87 | return $context . ':' . $pageElements["id"]; 88 | } 89 | else{ 90 | return $option; 91 | } 92 | 93 | } 94 | } 95 | 96 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/com_komento.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentKomento extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | 17 | if(empty($namespace=$app->input->get('namespace','')) && empty($task=$app->input->get('task',''))){ 18 | return; 19 | } 20 | 21 | if($app->isAdmin() && in_array($namespace, array('admin.views.comments.stick','admin.views.comments.unstick','admin.views.comments.publish','admin.views.comments.unpublish'))){ 22 | $ids=$app->input->get('ids', array()); 23 | if(count($ids)<1){ 24 | return; 25 | } else { 26 | $this->purgeComment($ids); 27 | } 28 | 29 | } else if($app->isAdmin() && ($task=='remove')){ 30 | $ids=$app->input->get('cid', array()); 31 | if(count($ids)<1){ 32 | return; 33 | } else { 34 | $this->purgeComment($ids); 35 | } 36 | 37 | $this->plugin->log($namespace); 38 | } else if((!$app->isAdmin()) && ($namespace=='site.views.komento.addcomment')){ 39 | $component = $app->input->get('component'); 40 | $cid = $app->input->get('cid'); 41 | $this->plugin->onContentChangeState($component, array($cid), true); 42 | } 43 | } 44 | 45 | protected function purgeComment($ids){ 46 | $db = JFactory::getDbo(); 47 | $query = $db->getQuery(true) 48 | ->select("distinct component, cid") 49 | ->from('#__komento_comments') 50 | ->where($db->quoteName('id') . ' in (' . implode(',', $ids) . ')'); 51 | $db->setQuery($query); 52 | $comments = $db->loadObjectList(); 53 | foreach($comments as $comment){ 54 | $component = $comment->component; 55 | $this->plugin->onContentChangeState($component, array($comment->cid), true); 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/com_sppagebuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentSPPageBuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | if(!$app->isAdmin()){ 17 | if(isset ($this->plugin->pageElements['view']) && ( $this->plugin->pageElements['view']!='page')){ 18 | $this->plugin->pageCachable = false; 19 | } 20 | else{ 21 | $link = JUri::getInstance()->getQuery(); 22 | if(!empty($link)){ 23 | $this->plugin->pageCachable = false; 24 | } 25 | } 26 | 27 | } 28 | } 29 | 30 | public function onPurgeContent($context, $row) 31 | { 32 | $this->plugin->purgeObject->option = "com_sppagebuilder"; 33 | $this->plugin->purgeObject->idField = "id"; 34 | 35 | if(!empty($row->id)){ 36 | $this->plugin->purgeObject->tags[] = "com_sppagebuilder, com_sppagebuilder:" . $row->id; 37 | $this->plugin->purgeObject->ids[] = $row->id; 38 | } 39 | } 40 | 41 | public function getTags($option, $pageElements){ 42 | 43 | if(isset($pageElements["id"])){ 44 | return $option . ':' . $pageElements["id"]; 45 | } 46 | else{ 47 | return $option; 48 | } 49 | 50 | } 51 | 52 | 53 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/helper.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentsHelper 11 | { 12 | const COM_NAME = 0; 13 | const COM_ELEMENT = 1; 14 | const COM_FILE = 2; 15 | const COM_CLASSNAME = 3; 16 | 17 | protected $activeComponents; 18 | protected $plugin; 19 | protected $dispatcher; 20 | 21 | public function __construct (&$plugin, $filter = array()) { 22 | require_once (__DIR__ . '/list.php'); 23 | 24 | $this->plugin = $plugin; 25 | $this->dispatcher = JEventDispatcher::getInstance(); 26 | $this->activeComponents = $lscacheComponents; 27 | 28 | if(count($filter)>0){ 29 | foreach($filter as $component){ 30 | unset($this->activeComponents[$component]); 31 | } 32 | } 33 | } 34 | 35 | public function supportComponent($com_name){ 36 | if(isset($this->activeComponents[$com_name])){ 37 | return true; 38 | } 39 | else{ 40 | return false; 41 | } 42 | } 43 | 44 | public function getInstance($com_name){ 45 | if(!$this->supportComponent($com_name)){ 46 | return null; 47 | } 48 | 49 | $component = $this->activeComponents[$com_name]; 50 | return $this->getInstanceInternal($component); 51 | } 52 | 53 | protected function getInstanceInternal($component){ 54 | 55 | $className = $component[self::COM_CLASSNAME]; 56 | if (!class_exists($className)){ 57 | $filename = __DIR__ . '/' . $component[self::COM_FILE]; 58 | if (file_exists($filename)) { 59 | require_once $filename; 60 | } else { 61 | return NULL; 62 | } 63 | } 64 | 65 | if (!class_exists($className)){ 66 | return NULL; 67 | } 68 | 69 | $instance = new $className($this->dispatcher, array()); 70 | $instance->init($this->dispatcher,$this->plugin); 71 | return $instance; 72 | 73 | } 74 | 75 | public function registerEvents($com_name){ 76 | if($com_name!=null){ 77 | $com_instance = $this->getInstance($com_name); 78 | if($com_instance==null){ 79 | return; 80 | } 81 | $com_instance->onRegisterEvents(); 82 | } 83 | } 84 | 85 | public function onPurgeContent($com_name, $context, $row){ 86 | $com_instance = $this->getInstance($com_name); 87 | if($com_instance==NULL){ 88 | return false; 89 | } 90 | $com_instance->onPurgeContent($context, $row); 91 | } 92 | 93 | public function getTags($com_name, $pageElements){ 94 | $com_instance = $this->getInstance($com_name); 95 | if($com_instance==NULL){ 96 | return ""; 97 | } 98 | return $com_instance->getTags($com_name, $pageElements); 99 | } 100 | 101 | public function getComMap($com_name){ 102 | $com_instance = $this->getInstance($com_name); 103 | if($com_instance==NULL){ 104 | return array(); 105 | } 106 | return $com_instance->getComMap(); 107 | } 108 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/components/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheComponents = Array( 11 | "com_k2" => Array("K2 Component", "com_k2", "com_k2.php", "LSCacheComponentK2"), 12 | "com_jabuilder" => Array("JA Builder", "com_jabuilder", "com_jabuilder.php", "LSCacheComponentJabuilder"), 13 | "com_virtuemart" => Array("VirtueMart", "com_virtuemart", "com_virtuemart.php", "LSCacheComponentVirtueMart"), 14 | "com_sppagebuilder" => Array("SP Page Builder", "com_sppagebuilder", "com_sppagebuilder.php", "LSCacheComponentSPPageBuilder"), 15 | "com_komento" => Array("Komento", "com_komento", "com_komento.php", "LSCacheComponentKomento"), 16 | ); -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LiteSpeed Cache Plugin 4 | LiteSpeedTech 5 | Dec 2017 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 3 or later 8 | info@litespeedtech.com 9 | www.litespeedtech.org 10 | 1.5.1 11 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION 12 | 13 | lscache.php 14 | lscachecore.php 15 | lscachebase.php 16 | components 17 | modules 18 | 19 | 20 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheModuleBase 11 | { 12 | protected $module; 13 | protected $plugin; 14 | 15 | public function __construct(&$plugin, &$module){ 16 | $this->plugin = $plugin; 17 | $this->module = $module; 18 | } 19 | 20 | public function getModuleTags(){ 21 | return ""; 22 | } 23 | 24 | public function afterESIRender(&$content){ 25 | return; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/helper.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | class LSCacheModulesHelper 12 | { 13 | const MODULE_NAME = 0; 14 | const MODULE_ELEMENT = 1; 15 | const MODULE_FILE = 2; 16 | const MODULE_CLASSNAME = 3; 17 | 18 | protected $activeModules; 19 | protected $plugin; 20 | 21 | public function __construct (&$plugin) { 22 | require_once (__DIR__ . '/list.php'); 23 | $this->plugin = $plugin; 24 | $this->activeModules = $lscacheModules; 25 | } 26 | 27 | public function getInstance(&$module){ 28 | 29 | if(!isset($this->activeModules[$module->module])){ 30 | return NULL; 31 | } 32 | 33 | $classModule = $this->activeModules[$module->module]; 34 | 35 | $className = $classModule[self::MODULE_CLASSNAME]; 36 | if (!class_exists($className)){ 37 | $filename = __DIR__ . '/' . $classModule[self::MODULE_FILE]; 38 | if (file_exists($filename)) { 39 | require_once $filename; 40 | } else { 41 | return NULL; 42 | } 43 | } 44 | 45 | if (!class_exists($className)){ 46 | return NULL; 47 | } 48 | 49 | return new $className($this->plugin, $module); 50 | } 51 | 52 | public function getModuleTags(&$module){ 53 | $lscacheModule = $this->getInstance($module); 54 | if($lscacheModule==NULL){ 55 | return ""; 56 | } 57 | return $lscacheModule->getModuleTags(); 58 | } 59 | 60 | public function afterESIRender(&$module, &$content){ 61 | $lscacheModule = $this->getInstance($module); 62 | if($lscacheModule==NULL){ 63 | return; 64 | } 65 | $lscacheModule->afterESIRender($content); 66 | } 67 | 68 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/joomla.login.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleJoomlaLogin extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | 14 | $cacheType = $this->plugin->getModuleCacheType($this->module); 15 | if(($cacheType!=plgSystemLSCache::MODULE_ESI) && ($this->plugin->settings->get('loginESI',1)==1)){ 16 | $this->module->original_cache_type = $this->module->cache_type; 17 | $this->module->cache_type = plgSystemLSCache::MODULE_ESI; 18 | $this->module->lscache_type = -1; 19 | $this->module->lscache_ttl = 14; 20 | $this->module->lscache_tag = "joomla.login"; 21 | } 22 | 23 | return ""; 24 | } 25 | 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/joomla.menu.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | use Joomla\Registry\Registry; 11 | 12 | class LSCacheModuleJoomlaMenu extends LSCacheModuleBase 13 | { 14 | public function getModuleTags(){ 15 | 16 | $moduleParams = new Registry; 17 | $moduleParams->loadString($this->module->params); 18 | $menuid = $moduleParams->get('base', FALSE); 19 | if($menuid){ 20 | return 'com_menus:' . $menuid; 21 | } 22 | else{ 23 | return ''; 24 | } 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/k2.content.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleK2Content extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | return "com_k2"; 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheModules = Array( 11 | "mod_menu" => Array("Joomla.mod_menu", "mod_menu", "joomla.menu.php", "LSCacheModuleJoomlaMenu"), 12 | "mod_k2_content" => Array("K2.mod_k2_content", "mod_k2_content", "k2.content.php", "LSCacheModuleK2Content"), 13 | "mod_virtuemart_cart" => Array("VirtueMart.mod_virtuemart_cart", "mod_virtuemart_cart", "virtuemart.cart.php", "LSCacheModuleVirtueMartCart"), 14 | 15 | ); -------------------------------------------------------------------------------- /Joomla3/lscache_plugin/modules/virtuemart.cart.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleVirtueMartCart extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | if($this->plugin->getModuleCacheType($this->module)!=1){ 14 | $this->module->original_cache_type = $this->module->cache_type; 15 | $this->module->cache_type = 1; 16 | $this->module->lscache_type = -1; 17 | $this->module->lscache_ttl = 120; 18 | $this->module->lscache_tag = 'com_virtuemart.cart'; 19 | } 20 | return ""; 21 | } 22 | 23 | } -------------------------------------------------------------------------------- /Joomla3/mod_lscache/mod_lscache.php: -------------------------------------------------------------------------------- 1 | get('layout', 'default')); 4 | -------------------------------------------------------------------------------- /Joomla3/mod_lscache/mod_lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | MOD_LSCACHE_NAME 4 | LiteSpeed Technologies 5 | January 2021 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 2 or later; see LICENSE.txt 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | 1.0.0 11 | MOD_LSCACHE_XML_DESCRIPTION 12 | 13 | 14 | mod_lscache.php 15 | tmpl 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /Joomla3/mod_lscache/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 4 | 5 |
6 | 7 | 9 | 10 | 11 |
-------------------------------------------------------------------------------- /Joomla3/package/build/pkg_lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | LiteSpeed LSCache Package 10 | LiteSpeed Technologies 11 | March 2018 12 | lscache 13 | 1.5.1 14 | http://www.litespeedtech.com/ 15 | LiteSpeed Technologies 16 | https://www.litespeedtech.com/products#cpl 17 | Package to install the LiteSpeed LSCache pluginwith supporting component 18 | pkg_script.php 19 | 20 | com_lscache.zip 21 | lscache_plugin.zip 22 | mod_lscache.zip 23 | 24 | -------------------------------------------------------------------------------- /Joomla3/package/buildPackage.sh: -------------------------------------------------------------------------------- 1 | rm -f ./build/*.zip 2 | rm -rf ./build/esiTemplate 3 | rm -f lscache-latest.zip 4 | cd ../com_lscache 5 | zip -r ../package/build/com_lscache.zip ./* 6 | cd ../lscache_plugin 7 | zip -r ../package/build/lscache_plugin.zip ./* 8 | cd ../mod_lscache_purge 9 | zip -r ../package/build/mod_lscache_purge.zip ./* 10 | cp -r ../esiTemplate ../package/build/ 11 | cd ../package/build 12 | zip -r ../lscache-latest.zip ./* 13 | cd .. 14 | rm -f ./build/*.zip 15 | rm -rf ./build/esiTemplate 16 | echo Latest package has been built to lscache-latest. 17 | -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.2.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.2.0.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.2.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.2.1.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.3.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.3.0.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.3.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.3.1.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.3.2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.3.2.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.4.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.4.0.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.5.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.5.0.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-1.5.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-1.5.1.zip -------------------------------------------------------------------------------- /Joomla3/package/lscache-latest.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla3/package/lscache-latest.zip -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/access.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/assets/images/lsc-jml-forum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/com_lscache/admin/assets/images/lsc-jml-forum.png -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/assets/images/lsc-jml-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/com_lscache/admin/assets/images/lsc-jml-github.png -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/assets/images/lsc-jml-icon-a.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 13 | 14 | 15 | 19 | 23 | 24 | 28 | 29 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/assets/images/lsc-jml-slack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/com_lscache/admin/assets/images/lsc-jml-slack.png -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/assets/images/lsc-jml-wiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/com_lscache/admin/assets/images/lsc-jml-wiki.png -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/controller.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | // No direct access to this file 10 | defined('_JEXEC') or die; 11 | 12 | /** 13 | * General Controller of HelloWorld component 14 | * 15 | * @package Joomla.Administrator 16 | * @subpackage com_helloworld 17 | * @since 0.0.7 18 | */ 19 | class LSCacheController extends JControllerLegacy 20 | { 21 | /** 22 | * The default view for the display method. 23 | * 24 | * @var string 25 | * @since 12.2 26 | */ 27 | protected $default_view = 'modules'; 28 | } 29 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/controllers/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/controllers/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheControllerModule extends JControllerForm 11 | { 12 | 13 | 14 | } -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/en-GB.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="A High Performance Page Cache for Joomla running on a LiteSpeed Web Server" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/en-GB.mod_lscache.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/en-GB.mod_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST = "Please turn on LiteSpeed Cache via the 'Option' button first." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT = "Curl feature not supported by the server's current PHP version." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED = "Informed LiteSpeed Server to purge all related cached pages successfully." 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL = "After modifying the template, please manually Purge All LiteSpeed Cache to make it effective" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED = "Recached related web pages successfully, %d seconds used." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME = "Recaching related web pages exceed max duration limit, %d seconds used. You can manually Rebuild All LiteSpeed Cache later." 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE = "All LiteSpeed Cache was purged. You can manually Rebuild All LiteSpeed Cache later." 8 | COM_LSCACHE_PLUGIN_CHECKHTACCESS = "Please check .htaccess file and comment/uncomment relate directives." 9 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="LiteSpeed Cache Plugin" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeedCache is a high performance cache solution for Joomla sites running on LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/en-GB/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/fr-FR/fr-FR.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="Un cache de page haute performance pour Joomla fonctionnant sur un serveur Web LiteSpeed" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST="Veuillez d'abord activer LiteSpeed Cache via le bouton 'option'." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT="Fonctionnalité Curl non prise en charge dans la version PHP actuelle." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED="Informé LiteSpeed Server pour purger avec succès toutes les pages mises en cache associées" 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL="Après avoir modifié le modèle, veuillez Purger tout le cache LiteSpeed pour le rendre efficace" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED="Page Web mise en cache avec succès,%d secondes utilisées." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME="La page Web relative mise en cache dépasse la durée maximale,%d secondes utilisées, vous pouvez Reconstruire tout le cache LiteSpeed plus tard. 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE="Tout le cache LiteSpeed a été purgé, vous pouvez Reconstruire tout le cache LiteSpeed plus tard." -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="Plug-in de cache LiteSpeed" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeed Cache est une solution de cache haute performance pour les sites Joomla fonctionnant sur LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/fr-FR/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/language/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/layouts/toolbar/cancelselect.php: -------------------------------------------------------------------------------- 1 | 7 | * @license GNU General Public License version 2 or later; see LICENSE.txt 8 | */ 9 | 10 | defined('_JEXEC') or die; 11 | 12 | use Joomla\CMS\Language\Text; 13 | 14 | $text = Text::_('JTOOLBAR_CANCEL'); 15 | ?> 16 | 17 | 20 | 21 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/layouts/toolbar/purgeall.php: -------------------------------------------------------------------------------- 1 | 15 | 19 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/layouts/toolbar/purgeurl.php: -------------------------------------------------------------------------------- 1 | 15 | 16 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/lscache.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | defined('_JEXEC') or die; 10 | 11 | if (!JFactory::getUser()->authorise('core.manage', 'com_lscache')) 12 | { 13 | throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403); 14 | } 15 | 16 | $controller = JControllerLegacy::getInstance('LSCache'); 17 | $input = JFactory::getApplication()->input; 18 | $controller->execute($input->getCmd('task')); 19 | $controller->redirect(); 20 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/models/fields/components.php: -------------------------------------------------------------------------------- 1 | getQuery(true) 43 | ->select('DISTINCT a.name AS text, a.element AS value') 44 | ->from('#__extensions as a') 45 | ->where('a.enabled >= 1') 46 | ->where('a.type =' . $db->quote('component')) 47 | ->order('a.extension_id DESC'); 48 | 49 | 50 | $items = $db->setQuery($query)->loadObjectList(); 51 | 52 | if (count($items)) 53 | { 54 | $lang = JFactory::getLanguage(); 55 | 56 | foreach ($items as &$item) 57 | { 58 | // Load language 59 | $extension = $item->value; 60 | $source = JPATH_ADMINISTRATOR . '/components/' . $extension; 61 | $lang->load("$extension.sys", JPATH_ADMINISTRATOR, null, false, true) 62 | || $lang->load("$extension.sys", $source, null, false, true); 63 | 64 | // Translate component name 65 | $item->text = JText::_($item->text); 66 | } 67 | 68 | // Sort by component name 69 | //$items = ArrayHelper::sortObjects($items, 'text', 1, true, true); 70 | } 71 | 72 | // Merge any additional options in the XML definition. 73 | $options = array_merge(parent::getOptions(), $items); 74 | 75 | return $options; 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/models/fields/notepurge.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | defined('JPATH_BASE') or die; 11 | 12 | use Joomla\Utilities\ArrayHelper; 13 | 14 | JFormHelper::loadFieldClass('note'); 15 | 16 | /** 17 | * Display Purge Url field 18 | * 19 | * @since 1.2.1 20 | */ 21 | class JFormFieldNotePurge extends JFormFieldNote 22 | { 23 | protected $type = 'NotePurge'; 24 | 25 | protected function getLabel() 26 | { 27 | $description = (string) $this->element['description']; 28 | $description = JText::_($description); 29 | $settings = JComponentHelper::getParams('com_lscache'); 30 | $secureWords = $settings->get('cleanCache'); 31 | $root = JURI::root(); 32 | $description = str_replace('{webroot}', $root, $description); 33 | $description = str_replace('{secureword}', $secureWords, $description); 34 | 35 | $this->element['description'] = $description; 36 | return parent::getLabel(); 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/models/forms/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/models/forms/module.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 8 | 9 | 20 | 21 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 45 | 46 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 70 | 71 | 72 | 73 | 74 |
75 |
-------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/models/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/install.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE IF NOT EXISTS `#__modules_lscache` ( 2 | `moduleid` int(11) NOT NULL DEFAULT 0 NOT NULL, 3 | `lscache_type` smallint DEFAULT 0, 4 | `lscache_ttl` smallint DEFAULT 0, 5 | `module_type` smallint DEFAULT 0, 6 | `vary_language` smallint DEFAULT 1, 7 | PRIMARY KEY (`moduleid`) 8 | ); -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/install.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF NOT EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | CREATE TABLE [#__modules_lscache] ( 5 | [moduleid] bigint NOT NULL, 6 | [lscache_type] smallint DEFAULT 0, 7 | [lscache_ttl] smallint DEFAULT 0, 8 | [module_type] smallint DEFAULT 0, 9 | [vary_language] smallint DEFAULT 1, 10 | CONSTRAINT [PK_#__modules_lscache] PRIMARY KEY CLUSTERED ( 11 | [moduleid] ASC 12 | )); -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/uninstall.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS `#__modules_lscache`; 2 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/uninstall.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | DROP TABLE [#__modules_lscache]; -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/updates/mysql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/sql/updates/sqlsrv/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/tables/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | // No direct access 12 | defined('_JEXEC') or die; 13 | 14 | ?> 15 |
17 |
18 |
19 | 20 |
21 |
22 | form->getFieldset() as $field): ?> 23 |
24 |
label; ?>
25 |
input; ?>
26 |
27 | 28 |
29 |
30 |
31 |
32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/views/module/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/views/module/view.html.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheViewModule extends JViewLegacy 11 | { 12 | /** 13 | * View form 14 | * 15 | * @var form 16 | */ 17 | protected $form = null; 18 | 19 | /** 20 | * Display the Module LSCache view 21 | * 22 | * @param string $tpl The name of the template file to parse; automatically searches through the template paths. 23 | * 24 | * @return void 25 | */ 26 | public function display($tpl = null) 27 | { 28 | // Get the Data 29 | $form = $this->get('Form'); 30 | $item = $this->get('Item'); 31 | 32 | // Check for errors. 33 | if (count($errors = $this->get('Errors'))) 34 | { 35 | JError::raiseError(500, implode('
', $errors)); 36 | 37 | return false; 38 | } 39 | 40 | // Assign the Data 41 | $this->form = $form; 42 | $this->item = $item; 43 | 44 | // Set the toolbar 45 | $this->addToolBar(); 46 | 47 | // Display the template 48 | parent::display($tpl); 49 | } 50 | 51 | /** 52 | * Add the page title and toolbar. 53 | * 54 | * @return void 55 | * 56 | * @since 1.6 57 | */ 58 | protected function addToolBar() 59 | { 60 | $input = JFactory::getApplication()->input; 61 | 62 | // Hide Joomla Administrator Main menu 63 | $input->set('hidemainmenu', true); 64 | 65 | $isNew = ($this->item->moduleid == 0); 66 | 67 | if ($isNew) 68 | { 69 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_NEW'); 70 | } 71 | else 72 | { 73 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_EDIT'); 74 | } 75 | 76 | JToolBarHelper::title($title, 'module'); 77 | JToolBarHelper::apply('module.apply'); 78 | JToolBarHelper::save('module.save'); 79 | JToolBarHelper::cancel( 80 | 'module.cancel', 81 | $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE' 82 | ); 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/views/modules/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/views/modules/tmpl/default_purge_url_body.php: -------------------------------------------------------------------------------- 1 | 4 |
5 |

6 | 7 |
8 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/admin/views/modules/tmpl/default_purge_url_footer.php: -------------------------------------------------------------------------------- 1 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/controller.php: -------------------------------------------------------------------------------- 1 | input->set('view','default'); // force it to be the search view 14 | 15 | return parent::display($cachable, $urlparams); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/com_lscache/component/index.html -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/lscache.php: -------------------------------------------------------------------------------- 1 | isClient('administrator'); 7 | if($admin==1) 8 | { 9 | ?> 10 |
11 | This Component was made to make it possible to create a menu item that has only modules and no component.
12 | You can use it by adding a new menu item, select "Blank Component" from the "Menu Item Type" list, and save.
13 | then, go to the module manager, and assign the modules you want to use with this menu item, and you're done!
14 |
15 | execute(JFactory::getApplication()->input->getCmd('task')); 27 | 28 | // Redirect if set by the controller 29 | $controller->redirect(); 30 | } 31 | 32 | ?> -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 15 | 16 |
17 | params->get('show_page_heading', 1)) : ?> 18 |

19 | escape($this->params->get('page_heading'))) :?> 20 | escape($this->params->get('page_heading')); ?> 21 | 22 | escape($this->params->get('page_title')); ?> 23 | 24 |

25 | 26 |
27 | 28 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/tmpl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/default/view.html.php: -------------------------------------------------------------------------------- 1 | getParams(); 17 | $menus = $app->getMenu(); 18 | $menu = $menus->getActive(); 19 | 20 | if ($menu) 21 | { 22 | $params->set('page_heading', $params->get('page_title', $menu->title)); 23 | } 24 | else 25 | { 26 | $params->set('page_title', JText::_('LSCache Component')); 27 | } 28 | 29 | $title = $params->get('page_title'); 30 | if ($app->getCfg('sitename_pagetitles', 0)) { 31 | $title = JText::sprintf('JPAGETITLE', $app->getCfg('sitename'), $title); 32 | } 33 | $this->document->setTitle($title); 34 | 35 | if ($params->get('menu-meta_description')) 36 | { 37 | $this->document->setDescription($params->get('menu-meta_description')); 38 | } 39 | 40 | if ($params->get('menu-meta_keywords')) 41 | { 42 | $this->document->setMetadata('keywords', $params->get('menu-meta_keywords')); 43 | } 44 | 45 | if ($params->get('robots')) 46 | { 47 | $this->document->setMetadata('robots', $params->get('robots')); 48 | } 49 | 50 | $this->params = $params; 51 | 52 | parent::display($tpl); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/component/views/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla4/com_lscache/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | COM_LSCACHE 5 | 6 | December 2017 7 | LiteSpeedTech 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | Copyright Info 11 | GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html 12 | 13 | 1.5.1 14 | 15 | COM_LSCACHE_DESCRIPTION 16 | 17 | 18 | sql/install.mysql.utf8.sql 19 | sql/install.sqlsrv.utf8.sql 20 | 21 | 22 | 23 | 24 | sql/uninstall.mysql.utf8.sql 25 | sql/uninstall.sqlsrv.utf8.sql 26 | 27 | 28 | 29 | 30 | sql/updates/mysql 31 | sql/updates/sqlsrv 32 | 33 | 34 | 35 | 36 | lscache.php 37 | controller.php 38 | index.html 39 | views/ 40 | 41 | 42 | 43 | COM_LSCACHE_MENU 44 | 45 | 46 | access.xml 47 | config.xml 48 | controller.php 49 | lscache.php 50 | index.html 51 | assets 52 | controllers 53 | layouts 54 | models 55 | sql 56 | tables 57 | views 58 | 59 | 60 | en-GB/en-GB.com_lscache.ini 61 | en-GB/en-GB.com_lscache.sys.ini 62 | en-GB/en-GB.plg_system_lscache.ini 63 | en-GB/en-GB.plg_system_lscache.sys.ini 64 | en-GB/en-GB.mod_lscache.ini 65 | en-GB/en-GB.mod_lscache.sys.ini 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /Joomla4/esiTemplate/index.php: -------------------------------------------------------------------------------- 1 | setHtml5(true); 6 | ?> 7 | -------------------------------------------------------------------------------- /Joomla4/esiTemplate/templateDetails.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | esitemplate 5 | 1.0 6 | 9/30/2020 7 | litespeedtech.com 8 | info@litespeedtech.com 9 | Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. 10 | A blank template used when displaying ESI Modules with the Litespeed Cache Plugin 11 | 12 | index.php 13 | templateDetails.xml 14 | 15 | 16 | esi 17 | 18 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheComponentBase extends JPlugin 11 | { 12 | protected $plugin; 13 | protected $dispatcher; 14 | 15 | public function init($dispatcher,&$plugin){ 16 | $this->dispatcher = $dispatcher; 17 | $this->plugin = $plugin; 18 | } 19 | 20 | public function onRegisterEvents(){ 21 | } 22 | 23 | 24 | public function onPurgeContent($context, $row){ 25 | 26 | } 27 | 28 | //return cache tags; 29 | public function getTags($option, $pageElements){ 30 | if(isset($pageElements["context"])){ 31 | $context = $pageElements["context"]; 32 | } 33 | else{ 34 | $context = $option; 35 | } 36 | 37 | if(isset($pageElements["id"])){ 38 | return $context . ':' . $pageElements["id"]; 39 | } 40 | else{ 41 | return $context; 42 | } 43 | } 44 | 45 | public function getComMap(){ 46 | return array(); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/com_content.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | use Joomla\Component\Content\Site\Helper\RouteHelper; 10 | 11 | class LSCacheComponentContent extends LSCacheComponentBase 12 | { 13 | 14 | 15 | public function getComMap() 16 | { 17 | $comUrls = array(); 18 | $db = JFactory::getDbo(); 19 | 20 | // get category urls 21 | $query = $db->getQuery(true) 22 | ->select($db->quoteName(array('id','language'))) 23 | ->from('#__categories'); 24 | $query->where($db->quoteName('published') . ' =1'); 25 | $query->where($db->quoteName('extension') . ' ="com_content"'); 26 | 27 | try { 28 | $db->setQuery($query); 29 | $categories = $db->loadObjectList(); 30 | foreach($categories as $category){ 31 | $link = RouteHelper::getCategoryRoute($category->id, $category->language); 32 | $comUrls[] = $link; 33 | } 34 | } catch (RuntimeException $ex) { 35 | return array(); 36 | } 37 | 38 | // get article urls; 39 | $query = $db->getQuery(true) 40 | ->select($db->quoteName(array('id','language','catid','alias'))) 41 | ->from('#__content'); 42 | $query->where($db->quoteName('state') . ' =1'); 43 | 44 | try { 45 | $db->setQuery($query); 46 | $articles = $db->loadObjectList(); 47 | foreach($articles as $article){ 48 | if(empty($article->id)){ 49 | continue; 50 | } 51 | $slug = $article->alias ? ($article->id . ':' . $article->alias) : $article->id; 52 | 53 | $link = RouteHelper::getArticleRoute($slug, $article->catid, $article->language); 54 | 55 | $comUrls[] = $link; 56 | } 57 | } catch (RuntimeException $ex) { 58 | return array(); 59 | } 60 | return $comUrls; 61 | } 62 | 63 | 64 | 65 | } 66 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/com_jabuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentJabuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $this->dispatcher->addListener("onJubSaveItem",[$this,'onJubSaveItem']); 16 | $this->dispatcher->addListener("onJubLoadItem", [$this, 'onJubLoadItem']); 17 | 18 | $app = JFactory::getApplication(); 19 | $option = $app->input->get('jub', null); 20 | if($option!=null){ 21 | $this->plugin->pageCachable = false; 22 | } 23 | } 24 | 25 | public function onJubSaveItem($item){ 26 | $this->plugin->purgeContent("com_jabuilder.item", $item); 27 | $this->plugin->purgeAction(); 28 | } 29 | 30 | public function onJubLoadItem($item){ 31 | $this->plugin->onContentPrepare("com_jabuilder.item", $item, $item); 32 | } 33 | 34 | public function onPurgeContent($context, $row) 35 | { 36 | $this->plugin->purgeObject->option = "com_jabuilder"; 37 | $this->plugin->purgeObject->idField = "id"; 38 | 39 | if($context == "com_jabuilder.page"){ 40 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 41 | $this->plugin->purgeObject->ids[] = $row->id; 42 | } 43 | if($context == "com_jabuilder.item"){ 44 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 45 | $this->plugin->purgeObject->ids[] = $row->id; 46 | } 47 | else{ 48 | $this->plugin->purgeObject->tags[] = "com_jabuilder"; 49 | } 50 | } 51 | 52 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/com_k2.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentK2 extends LSCacheComponentBase{ 11 | 12 | public function onRegisterEvents() 13 | { 14 | $this->dispatcher->addListener("onFinderAfterSave",[$this,'onFinderAfterSave']); 15 | $this->dispatcher->addListener("onFinderAfterDelete", [$this,'onFinderAfterDelete']); 16 | $this->dispatcher->addListener("onFinderChangeState", [$this,'onFinderChangeState']); 17 | } 18 | 19 | public function onFinderAfterSave($context, $row, $isNew) 20 | { 21 | if($context!="com_k2.item"){ 22 | $this->plugin->onContentAfterSave($context,$row,$isNew); 23 | } 24 | } 25 | 26 | public function onFinderAfterDelete($context, $row) 27 | { 28 | if($context!="com_k2.item"){ 29 | $this->plugin->onContentAfterDelete($context,$row,$isNew); 30 | } 31 | } 32 | 33 | public function onFinderChangeState($context, $pks, $value){ 34 | if($context!="com_k2.item"){ 35 | $this->plugin->onContentChangeState($context, $pks, $value); 36 | } 37 | } 38 | 39 | public function onPurgeContent($context, $row){ 40 | 41 | $this->plugin->purgeObject->option = "com_k2"; 42 | $this->plugin->purgeObject->idField = "id"; 43 | if($context == "com_k2.item"){ 44 | $purgeTags = 'com_k2,com_k2.item:' . $row->id . ",com_k2.category:" . $row->catid . ",com_k2.user:" . $row->created_by; 45 | $tags = JFactory::getApplication()->input->get('tags', NULL, 'POST', 'array'); 46 | if (count($tags)) 47 | { 48 | $tags = array_unique($tags); 49 | foreach ($tags as $tag) 50 | { 51 | $purgeTags .= ",com_k2.tag:" . $tag; 52 | } 53 | } 54 | $this->plugin->purgeObject->tags[] = $purgeTags; 55 | $this->plugin->purgeObject->ids = array($row->id, $row->catid); 56 | 57 | } 58 | else if($context=="com_k2.tag"){ 59 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->name; 60 | } 61 | else if(!empty($row->id)){ 62 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->id; 63 | $this->plugin->purgeObject->ids[] = $row->id; 64 | } 65 | else{ 66 | $this->plugin->purgeObject->tags[] = 'com_k2'; 67 | } 68 | 69 | } 70 | 71 | public function getTags($option, $pageElements){ 72 | 73 | if(isset($pageElements["layout"])){ 74 | $context = $option . "." . $pageElements["layout"]; 75 | } 76 | else if(isset($pageElements["context"])){ 77 | $context = $pageElements["context"]; 78 | } 79 | else{ 80 | $context = $option; 81 | } 82 | 83 | if($context=="com_k2.tag"){ 84 | return $context . ':' . $pageElements['tag']; 85 | } 86 | else if(isset($pageElements["id"])){ 87 | return $context . ':' . $pageElements["id"]; 88 | } 89 | else{ 90 | return $option; 91 | } 92 | 93 | } 94 | } 95 | 96 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/com_komento.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentKomento extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | 17 | if(empty($namespace=$app->input->get('namespace','')) && empty($task=$app->input->get('task',''))){ 18 | return; 19 | } 20 | 21 | if($app->isClient('administrator') && in_array($namespace, array('admin.views.comments.stick','admin.views.comments.unstick','admin.views.comments.publish','admin.views.comments.unpublish'))){ 22 | $ids=$app->input->get('ids', array()); 23 | if(count($ids)<1){ 24 | return; 25 | } else { 26 | $this->purgeComment($ids); 27 | } 28 | 29 | } else if($app->isClient('administrator') && ($task=='remove')){ 30 | $ids=$app->input->get('cid', array()); 31 | if(count($ids)<1){ 32 | return; 33 | } else { 34 | $this->purgeComment($ids); 35 | } 36 | 37 | $this->plugin->log($namespace); 38 | } else if((!$app->isAdmin()) && ($namespace=='site.views.komento.addcomment')){ 39 | $component = $app->input->get('component'); 40 | $cid = $app->input->get('cid'); 41 | $this->plugin->onContentChangeState($component, array($cid), true); 42 | } 43 | } 44 | 45 | protected function purgeComment($ids){ 46 | $db = JFactory::getDbo(); 47 | $query = $db->getQuery(true) 48 | ->select("distinct component, cid") 49 | ->from('#__komento_comments') 50 | ->where($db->quoteName('id') . ' in (' . implode(',', $ids) . ')'); 51 | $db->setQuery($query); 52 | $comments = $db->loadObjectList(); 53 | foreach($comments as $comment){ 54 | $component = $comment->component; 55 | $this->plugin->onContentChangeState($component, array($comment->cid), true); 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/com_sppagebuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentSPPageBuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | if(!$app->isClient('administrator')){ 17 | if(isset ($this->plugin->pageElements['view']) && ( $this->plugin->pageElements['view']!='page')){ 18 | $this->plugin->pageCachable = false; 19 | } 20 | else{ 21 | $link = JUri::getInstance()->getQuery(); 22 | if(!empty($link)){ 23 | $this->plugin->pageCachable = false; 24 | } 25 | } 26 | 27 | } 28 | } 29 | 30 | public function onPurgeContent($context, $row) 31 | { 32 | $this->plugin->purgeObject->option = "com_sppagebuilder"; 33 | $this->plugin->purgeObject->idField = "id"; 34 | 35 | if(!empty($row->id)){ 36 | $this->plugin->purgeObject->tags[] = "com_sppagebuilder, com_sppagebuilder:" . $row->id; 37 | $this->plugin->purgeObject->ids[] = $row->id; 38 | } 39 | } 40 | 41 | public function getTags($option, $pageElements){ 42 | 43 | if(isset($pageElements["id"])){ 44 | return $option . ':' . $pageElements["id"]; 45 | } 46 | else{ 47 | return $option; 48 | } 49 | 50 | } 51 | 52 | 53 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/components/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheComponents = Array( 11 | "com_k2" => Array("K2 Component", "com_k2", "com_k2.php", "LSCacheComponentK2",1), 12 | "com_jabuilder" => Array("JA Builder", "com_jabuilder", "com_jabuilder.php", "LSCacheComponentJabuilder",1), 13 | "com_virtuemart" => Array("VirtueMart", "com_virtuemart", "com_virtuemart.php", "LSCacheComponentVirtueMart",1), 14 | "com_sppagebuilder" => Array("SP Page Builder", "com_sppagebuilder", "com_sppagebuilder.php", "LSCacheComponentSPPageBuilder",0), 15 | "com_komento" => Array("Komento", "com_komento", "com_komento.php", "LSCacheComponentKomento",1), 16 | "com_content" => Array("Content", "com_content", "com_content.php", "LSCacheComponentContent",1), 17 | ); -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LiteSpeed Cache Plugin 4 | LiteSpeedTech 5 | Dec 2017 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 3 or later 8 | info@litespeedtech.com 9 | www.litespeedtech.org 10 | 1.5.1 11 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION 12 | 13 | lscache.php 14 | lscachecore.php 15 | lscachebase.php 16 | components 17 | modules 18 | 19 | 20 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheModuleBase 11 | { 12 | protected $module; 13 | protected $plugin; 14 | 15 | public function __construct(&$plugin, &$module){ 16 | $this->plugin = $plugin; 17 | $this->module = $module; 18 | } 19 | 20 | public function getModuleTags(){ 21 | return ""; 22 | } 23 | 24 | public function afterESIRender(&$content){ 25 | return; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/helper.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | class LSCacheModulesHelper 12 | { 13 | const MODULE_NAME = 0; 14 | const MODULE_ELEMENT = 1; 15 | const MODULE_FILE = 2; 16 | const MODULE_CLASSNAME = 3; 17 | 18 | protected $activeModules; 19 | protected $plugin; 20 | 21 | public function __construct (&$plugin) { 22 | require_once (__DIR__ . '/list.php'); 23 | $this->plugin = $plugin; 24 | $this->activeModules = $lscacheModules; 25 | } 26 | 27 | public function getInstance(&$module){ 28 | 29 | if(!isset($this->activeModules[$module->module])){ 30 | return NULL; 31 | } 32 | 33 | $classModule = $this->activeModules[$module->module]; 34 | 35 | $className = $classModule[self::MODULE_CLASSNAME]; 36 | if (!class_exists($className)){ 37 | $filename = __DIR__ . '/' . $classModule[self::MODULE_FILE]; 38 | if (file_exists($filename)) { 39 | require_once $filename; 40 | } else { 41 | return NULL; 42 | } 43 | } 44 | 45 | if (!class_exists($className)){ 46 | return NULL; 47 | } 48 | 49 | return new $className($this->plugin, $module); 50 | } 51 | 52 | public function getModuleTags(&$module){ 53 | $lscacheModule = $this->getInstance($module); 54 | if($lscacheModule==NULL){ 55 | return ""; 56 | } 57 | return $lscacheModule->getModuleTags(); 58 | } 59 | 60 | public function afterESIRender(&$module, &$content){ 61 | $lscacheModule = $this->getInstance($module); 62 | if($lscacheModule==NULL){ 63 | return; 64 | } 65 | $lscacheModule->afterESIRender($content); 66 | } 67 | 68 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/joomla.login.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleJoomlaLogin extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | 14 | $cacheType = $this->plugin->getModuleCacheType($this->module); 15 | if(($cacheType!=plgSystemLSCache::MODULE_ESI) && ($this->plugin->settings->get('loginESI',1)==1)){ 16 | $this->module->original_cache_type = $this->module->cache_type; 17 | $this->module->cache_type = plgSystemLSCache::MODULE_ESI; 18 | $this->module->lscache_type = -1; 19 | $this->module->lscache_ttl = 14; 20 | $this->module->lscache_tag = "joomla.login"; 21 | } 22 | 23 | return ""; 24 | } 25 | 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/joomla.menu.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | use Joomla\Registry\Registry; 11 | 12 | class LSCacheModuleJoomlaMenu extends LSCacheModuleBase 13 | { 14 | public function getModuleTags(){ 15 | 16 | $moduleParams = new Registry; 17 | $moduleParams->loadString($this->module->params); 18 | $menuid = $moduleParams->get('base', FALSE); 19 | if($menuid){ 20 | return 'com_menus:' . $menuid; 21 | } 22 | else{ 23 | return ''; 24 | } 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/k2.content.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleK2Content extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | return "com_k2"; 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheModules = Array( 11 | "mod_menu" => Array("Joomla.mod_menu", "mod_menu", "joomla.menu.php", "LSCacheModuleJoomlaMenu"), 12 | "mod_k2_content" => Array("K2.mod_k2_content", "mod_k2_content", "k2.content.php", "LSCacheModuleK2Content"), 13 | "mod_virtuemart_cart" => Array("VirtueMart.mod_virtuemart_cart", "mod_virtuemart_cart", "virtuemart.cart.php", "LSCacheModuleVirtueMartCart"), 14 | 15 | ); -------------------------------------------------------------------------------- /Joomla4/lscache_plugin/modules/virtuemart.cart.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleVirtueMartCart extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | if($this->plugin->getModuleCacheType($this->module)!=1){ 14 | $this->module->original_cache_type = $this->module->cache_type; 15 | $this->module->cache_type = 1; 16 | $this->module->lscache_type = -1; 17 | $this->module->lscache_ttl = 120; 18 | $this->module->lscache_tag = 'com_virtuemart.cart'; 19 | } 20 | return ""; 21 | } 22 | 23 | } -------------------------------------------------------------------------------- /Joomla4/mod_lscache_purge/language/en-GB/en-GB.mod_lscache_purge.ini: -------------------------------------------------------------------------------- 1 | MOD_LSCACHE_PURGE_DESC="LiteSpeed Cache Purge - clean LiteSpeed Cache of this site" 2 | MOD_LSCACHE_PURGE_TITLE = "Purge LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla4/mod_lscache_purge/language/en-GB/en-GB.mod_lscache_purge.sys.ini: -------------------------------------------------------------------------------- 1 | MOD_LSCACHE_PURGE_DESC="LiteSpeed Cache Purge - clean LiteSpeed Cache of this site" 2 | MOD_LSCACHE_PURGE_TITLE = "Purge LiteSpeed Cache" 3 | -------------------------------------------------------------------------------- /Joomla4/mod_lscache_purge/mod_lscache_purge.php: -------------------------------------------------------------------------------- 1 | getIdentity(); 4 | if($user && $user->id!=0){ 5 | require JModuleHelper::getLayoutPath('mod_lscache_purge', $params->get('layout', 'default')); 6 | } -------------------------------------------------------------------------------- /Joomla4/mod_lscache_purge/mod_lscache_purge.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | mod_lscache_purge 4 | LiteSpeed Technologies 5 | January 2021 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 2 or later; see LICENSE.txt 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | 1.0.0 11 | MOD_LSCACHE_PURGE_DESC 12 | 13 | 14 | mod_lscache_purge.php 15 | tmpl 16 | language 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Joomla4/mod_lscache_purge/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 7 | 9 |
10 | 11 |
12 | 13 |
14 | 15 |
16 |
-------------------------------------------------------------------------------- /Joomla4/package/build/pkg_lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | LiteSpeed LSCache Package 10 | LiteSpeed Technologies 11 | March 2018 12 | lscache 13 | 1.5.1 14 | http://www.litespeedtech.com/ 15 | LiteSpeed Technologies 16 | https://www.litespeedtech.com/products#cpl 17 | Package to install the LiteSpeed LSCache pluginwith supporting component 18 | pkg_script.php 19 | 20 | com_lscache.zip 21 | lscache_plugin.zip 22 | mod_lscache_purge.zip 23 | 24 | -------------------------------------------------------------------------------- /Joomla4/package/buildPackage.sh: -------------------------------------------------------------------------------- 1 | rm -f ./build/*.zip 2 | rm -rf ./build/esiTemplate 3 | rm -f lscache-latest.zip 4 | cd ../com_lscache 5 | zip -r ../package/build/com_lscache.zip ./* 6 | cd ../lscache_plugin 7 | zip -r ../package/build/lscache_plugin.zip ./* 8 | cd ../mod_lscache_purge 9 | zip -r ../package/build/mod_lscache_purge.zip ./* 10 | cp -r ../esiTemplate ../package/build/ 11 | cd ../package/build 12 | zip -r ../lscache-latest.zip ./* 13 | cd .. 14 | rm -f ./build/*.zip 15 | rm -rf ./build/esiTemplate 16 | echo Latest package has been built to lscache-latest. 17 | -------------------------------------------------------------------------------- /Joomla4/package/lscache-1.5.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/package/lscache-1.5.1.zip -------------------------------------------------------------------------------- /Joomla4/package/lscache-latest.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla4/package/lscache-latest.zip -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/access.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/assets/images/lsc-jml-forum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/com_lscache/admin/assets/images/lsc-jml-forum.png -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/assets/images/lsc-jml-github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/com_lscache/admin/assets/images/lsc-jml-github.png -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/assets/images/lsc-jml-icon-a.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 10 | 13 | 14 | 15 | 19 | 23 | 24 | 28 | 29 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/assets/images/lsc-jml-slack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/com_lscache/admin/assets/images/lsc-jml-slack.png -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/assets/images/lsc-jml-wiki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/com_lscache/admin/assets/images/lsc-jml-wiki.png -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/controller.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | // No direct access to this file 10 | defined('_JEXEC') or die; 11 | 12 | /** 13 | * General Controller of HelloWorld component 14 | * 15 | * @package Joomla.Administrator 16 | * @subpackage com_helloworld 17 | * @since 0.0.7 18 | */ 19 | class LSCacheController extends JControllerLegacy 20 | { 21 | /** 22 | * The default view for the display method. 23 | * 24 | * @var string 25 | * @since 12.2 26 | */ 27 | protected $default_view = 'modules'; 28 | } 29 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/controllers/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/controllers/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheControllerModule extends JControllerForm 11 | { 12 | 13 | 14 | } -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/en-GB.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="A High Performance Page Cache for Joomla running on a LiteSpeed Web Server" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/en-GB.mod_lscache.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/en-GB.mod_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | 2 | MOD_LSCACHE="Purge LiteSpeed Cache" 3 | MOD_LSCACHE_NAME="Purge LiteSpeed Cache Module" 4 | MOD_LSCACHE_XML_DESCRIPTION="This module shows Purge LiteSpeed Cache link in status bar" 5 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST = "Please turn on LiteSpeed Cache via the 'Option' button first." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT = "Curl feature not supported by the server's current PHP version." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED = "Informed LiteSpeed Server to purge all related cached pages successfully." 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL = "After modifying the template, please manually Purge All LiteSpeed Cache to make it effective" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED = "Recached related web pages successfully, %d seconds used." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME = "Recaching related web pages exceed max duration limit, %d seconds used. You can manually Rebuild All LiteSpeed Cache later." 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE = "All LiteSpeed Cache was purged. You can manually Rebuild All LiteSpeed Cache later." 8 | COM_LSCACHE_PLUGIN_CHECKHTACCESS = "Please check .htaccess file and comment/uncomment relate directives." 9 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/en-GB.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="LiteSpeed Cache Plugin" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeedCache is a high performance cache solution for Joomla sites running on LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/en-GB/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/fr-FR/fr-FR.com_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE="LiteSpeed Cache" 2 | COM_LSCACHE_DESCRIPTION="Un cache de page haute performance pour Joomla fonctionnant sur un serveur Web LiteSpeed" 3 | COM_LSCACHE_MENU="LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.ini: -------------------------------------------------------------------------------- 1 | COM_LSCACHE_PLUGIN_TURNONFIRST="Veuillez d'abord activer LiteSpeed Cache via le bouton 'option'." 2 | COM_LSCACHE_PLUGIN_CURLNOTSUPPORT="Fonctionnalité Curl non prise en charge dans la version PHP actuelle." 3 | COM_LSCACHE_PLUGIN_PURGEINFORMED="Informé LiteSpeed Server pour purger avec succès toutes les pages mises en cache associées" 4 | COM_LSCACHE_PLUGIN_TEMPLATEPURGEALL="Après avoir modifié le modèle, veuillez Purger tout le cache LiteSpeed pour le rendre efficace" 5 | COM_LSCACHE_PLUGIN_PAGERECACHED="Page Web mise en cache avec succès,%d secondes utilisées." 6 | COM_LSCACHE_PLUGIN_PAGERECACHOVERTIME="La page Web relative mise en cache dépasse la durée maximale,%d secondes utilisées, vous pouvez Reconstruire tout le cache LiteSpeed plus tard. 7 | COM_LSCACHE_PLUGIN_NEEDMANUALRECACHE="Tout le cache LiteSpeed a été purgé, vous pouvez Reconstruire tout le cache LiteSpeed plus tard." -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/fr-FR/fr-FR.plg_system_lscache.sys.ini: -------------------------------------------------------------------------------- 1 | PLG_SYSTEM_LSCACHE="Plug-in de cache LiteSpeed" 2 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION="LiteSpeed Cache est une solution de cache haute performance pour les sites Joomla fonctionnant sur LiteSpeed Web Server." -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/fr-FR/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/language/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/layouts/toolbar/cancelselect.php: -------------------------------------------------------------------------------- 1 | 7 | * @license GNU General Public License version 2 or later; see LICENSE.txt 8 | */ 9 | 10 | defined('_JEXEC') or die; 11 | 12 | use Joomla\CMS\Language\Text; 13 | 14 | $text = Text::_('JTOOLBAR_CANCEL'); 15 | ?> 16 | 17 | 20 | 21 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/layouts/toolbar/purgeall.php: -------------------------------------------------------------------------------- 1 | 15 | 19 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/layouts/toolbar/purgeurl.php: -------------------------------------------------------------------------------- 1 | 15 | 16 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/lscache.php: -------------------------------------------------------------------------------- 1 | 5 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 6 | * @license https://opensource.org/licenses/GPL-3.0 7 | */ 8 | 9 | defined('_JEXEC') or die; 10 | 11 | if (!JFactory::getUser()->authorise('core.manage', 'com_lscache')) 12 | { 13 | throw new JAccessExceptionNotallowed(JText::_('JERROR_ALERTNOAUTHOR'), 403); 14 | } 15 | 16 | $controller = JControllerLegacy::getInstance('LSCache'); 17 | $input = JFactory::getApplication()->input; 18 | $controller->execute($input->getCmd('task')); 19 | $controller->redirect(); 20 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/models/fields/components.php: -------------------------------------------------------------------------------- 1 | getQuery(true) 43 | ->select('DISTINCT a.name AS text, a.element AS value') 44 | ->from('#__extensions as a') 45 | ->where('a.enabled >= 1') 46 | ->where('a.type =' . $db->quote('component')) 47 | ->order('a.extension_id DESC'); 48 | 49 | 50 | $items = $db->setQuery($query)->loadObjectList(); 51 | 52 | if (count($items)) 53 | { 54 | $lang = JFactory::getLanguage(); 55 | 56 | foreach ($items as &$item) 57 | { 58 | // Load language 59 | $extension = $item->value; 60 | $source = JPATH_ADMINISTRATOR . '/components/' . $extension; 61 | $lang->load("$extension.sys", JPATH_ADMINISTRATOR, null, false, true) 62 | || $lang->load("$extension.sys", $source, null, false, true); 63 | 64 | // Translate component name 65 | $item->text = JText::_($item->text); 66 | } 67 | 68 | // Sort by component name 69 | //$items = ArrayHelper::sortObjects($items, 'text', 1, true, true); 70 | } 71 | 72 | // Merge any additional options in the XML definition. 73 | $options = array_merge(parent::getOptions(), $items); 74 | 75 | return $options; 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/models/fields/notepurge.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | defined('JPATH_BASE') or die; 11 | 12 | use Joomla\Utilities\ArrayHelper; 13 | 14 | JFormHelper::loadFieldClass('note'); 15 | 16 | /** 17 | * Display Purge Url field 18 | * 19 | * @since 1.2.1 20 | */ 21 | class JFormFieldNotePurge extends JFormFieldNote 22 | { 23 | protected $type = 'NotePurge'; 24 | 25 | protected function getLabel() 26 | { 27 | $description = (string) $this->element['description']; 28 | $description = JText::_($description); 29 | $settings = JComponentHelper::getParams('com_lscache'); 30 | $secureWords = $settings->get('cleanCache'); 31 | $root = JURI::root(); 32 | $description = str_replace('{webroot}', $root, $description); 33 | $description = str_replace('{secureword}', $secureWords, $description); 34 | 35 | $this->element['description'] = $description; 36 | return parent::getLabel(); 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/models/forms/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/models/forms/module.xml: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 8 | 9 | 20 | 21 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 45 | 46 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 70 | 71 | 72 | 73 | 74 |
75 |
-------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/models/index.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/install.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE IF NOT EXISTS `#__modules_lscache` ( 2 | `moduleid` int(11) NOT NULL DEFAULT 0 NOT NULL, 3 | `lscache_type` smallint DEFAULT 0, 4 | `lscache_ttl` smallint DEFAULT 0, 5 | `module_type` smallint DEFAULT 0, 6 | `vary_language` smallint DEFAULT 1, 7 | PRIMARY KEY (`moduleid`) 8 | ); -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/install.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF NOT EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | CREATE TABLE [#__modules_lscache] ( 5 | [moduleid] bigint NOT NULL, 6 | [lscache_type] smallint DEFAULT 0, 7 | [lscache_ttl] smallint DEFAULT 0, 8 | [module_type] smallint DEFAULT 0, 9 | [vary_language] smallint DEFAULT 1, 10 | CONSTRAINT [PK_#__modules_lscache] PRIMARY KEY CLUSTERED ( 11 | [moduleid] ASC 12 | )); -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/uninstall.mysql.utf8.sql: -------------------------------------------------------------------------------- 1 | DROP TABLE IF EXISTS `#__modules_lscache`; 2 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/uninstall.sqlsrv.utf8.sql: -------------------------------------------------------------------------------- 1 | IF EXISTS (SELECT * FROM sysobjects 2 | WHERE id = object_id(N'[dbo].[#__modules_lscache]') 3 | AND type in (N'U')) 4 | DROP TABLE [#__modules_lscache]; -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/updates/mysql/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/sql/updates/sqlsrv/index.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/tables/module.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | // No direct access 12 | defined('_JEXEC') or die; 13 | 14 | ?> 15 |
17 |
18 |
19 | 20 |
21 |
22 | form->getFieldset() as $field): ?> 23 |
24 |
label; ?>
25 |
input; ?>
26 |
27 | 28 |
29 |
30 |
31 |
32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/views/module/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/views/module/view.html.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheViewModule extends JViewLegacy 11 | { 12 | /** 13 | * View form 14 | * 15 | * @var form 16 | */ 17 | protected $form = null; 18 | 19 | /** 20 | * Display the Module LSCache view 21 | * 22 | * @param string $tpl The name of the template file to parse; automatically searches through the template paths. 23 | * 24 | * @return void 25 | */ 26 | public function display($tpl = null) 27 | { 28 | // Get the Data 29 | $form = $this->get('Form'); 30 | $item = $this->get('Item'); 31 | 32 | // Check for errors. 33 | if (count($errors = $this->get('Errors'))) 34 | { 35 | JError::raiseError(500, implode('
', $errors)); 36 | 37 | return false; 38 | } 39 | 40 | // Assign the Data 41 | $this->form = $form; 42 | $this->item = $item; 43 | 44 | // Set the toolbar 45 | $this->addToolBar(); 46 | 47 | // Display the template 48 | parent::display($tpl); 49 | } 50 | 51 | /** 52 | * Add the page title and toolbar. 53 | * 54 | * @return void 55 | * 56 | * @since 1.6 57 | */ 58 | protected function addToolBar() 59 | { 60 | $input = JFactory::getApplication()->input; 61 | 62 | // Hide Joomla Administrator Main menu 63 | $input->set('hidemainmenu', true); 64 | 65 | $isNew = ($this->item->moduleid == 0); 66 | 67 | if ($isNew) 68 | { 69 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_NEW'); 70 | } 71 | else 72 | { 73 | $title = JText::_('COM_LSCACHE_MANAGER_LSCACHE_EDIT'); 74 | } 75 | 76 | JToolBarHelper::title($title, 'module'); 77 | JToolBarHelper::apply('module.apply'); 78 | JToolBarHelper::save('module.save'); 79 | JToolBarHelper::cancel( 80 | 'module.cancel', 81 | $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE' 82 | ); 83 | } 84 | } 85 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/views/modules/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/views/modules/tmpl/default_purge_url_body.php: -------------------------------------------------------------------------------- 1 | 4 |
5 |

6 | 7 |
8 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/admin/views/modules/tmpl/default_purge_url_footer.php: -------------------------------------------------------------------------------- 1 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/controller.php: -------------------------------------------------------------------------------- 1 | input->set('view','default'); // force it to be the search view 14 | 15 | return parent::display($cachable, $urlparams); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/com_lscache/component/index.html -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/lscache.php: -------------------------------------------------------------------------------- 1 | isClient('administrator'); 7 | if($admin==1) 8 | { 9 | ?> 10 |
11 | This Component was made to make it possible to create a menu item that has only modules and no component.
12 | You can use it by adding a new menu item, select "Blank Component" from the "Menu Item Type" list, and save.
13 | then, go to the module manager, and assign the modules you want to use with this menu item, and you're done!
14 |
15 | execute(JFactory::getApplication()->input->getCmd('task')); 27 | 28 | // Redirect if set by the controller 29 | $controller->redirect(); 30 | } 31 | 32 | ?> -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 15 | 16 |
17 | params->get('show_page_heading', 1)) : ?> 18 |

19 | escape($this->params->get('page_heading'))) :?> 20 | escape($this->params->get('page_heading')); ?> 21 | 22 | escape($this->params->get('page_title')); ?> 23 | 24 |

25 | 26 |
27 | 28 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/tmpl/default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/tmpl/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/default/view.html.php: -------------------------------------------------------------------------------- 1 | getParams(); 17 | $menus = $app->getMenu(); 18 | $menu = $menus->getActive(); 19 | 20 | if ($menu) 21 | { 22 | $params->set('page_heading', $params->get('page_title', $menu->title)); 23 | } 24 | else 25 | { 26 | $params->set('page_title', JText::_('LSCache Component')); 27 | } 28 | 29 | $title = $params->get('page_title'); 30 | if ($app->getCfg('sitename_pagetitles', 0)) { 31 | $title = JText::sprintf('JPAGETITLE', $app->getCfg('sitename'), $title); 32 | } 33 | $this->document->setTitle($title); 34 | 35 | if ($params->get('menu-meta_description')) 36 | { 37 | $this->document->setDescription($params->get('menu-meta_description')); 38 | } 39 | 40 | if ($params->get('menu-meta_keywords')) 41 | { 42 | $this->document->setMetadata('keywords', $params->get('menu-meta_keywords')); 43 | } 44 | 45 | if ($params->get('robots')) 46 | { 47 | $this->document->setMetadata('robots', $params->get('robots')); 48 | } 49 | 50 | $this->params = $params; 51 | 52 | parent::display($tpl); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/component/views/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /Joomla5/com_lscache/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | COM_LSCACHE 5 | 6 | December 2017 7 | LiteSpeedTech 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | Copyright Info 11 | GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html 12 | 13 | 1.5.1 14 | 15 | COM_LSCACHE_DESCRIPTION 16 | 17 | 18 | sql/install.mysql.utf8.sql 19 | sql/install.sqlsrv.utf8.sql 20 | 21 | 22 | 23 | 24 | sql/uninstall.mysql.utf8.sql 25 | sql/uninstall.sqlsrv.utf8.sql 26 | 27 | 28 | 29 | 30 | sql/updates/mysql 31 | sql/updates/sqlsrv 32 | 33 | 34 | 35 | 36 | lscache.php 37 | controller.php 38 | index.html 39 | views/ 40 | 41 | 42 | 43 | COM_LSCACHE_MENU 44 | 45 | 46 | access.xml 47 | config.xml 48 | controller.php 49 | lscache.php 50 | index.html 51 | assets 52 | controllers 53 | layouts 54 | models 55 | sql 56 | tables 57 | views 58 | 59 | 60 | en-GB/en-GB.com_lscache.ini 61 | en-GB/en-GB.com_lscache.sys.ini 62 | en-GB/en-GB.plg_system_lscache.ini 63 | en-GB/en-GB.plg_system_lscache.sys.ini 64 | en-GB/en-GB.mod_lscache.ini 65 | en-GB/en-GB.mod_lscache.sys.ini 66 | 67 | 68 | 69 | 70 | -------------------------------------------------------------------------------- /Joomla5/esiTemplate/index.php: -------------------------------------------------------------------------------- 1 | setHtml5(true); 6 | ?> 7 | -------------------------------------------------------------------------------- /Joomla5/esiTemplate/templateDetails.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | esitemplate 5 | 1.0 6 | 9/30/2020 7 | litespeedtech.com 8 | info@litespeedtech.com 9 | Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved. 10 | A blank template used when displaying ESI Modules with the Litespeed Cache Plugin 11 | 12 | index.php 13 | templateDetails.xml 14 | 15 | 16 | esi 17 | 18 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheComponentBase extends JPlugin 11 | { 12 | protected $plugin; 13 | protected $dispatcher; 14 | 15 | public function init($dispatcher,&$plugin){ 16 | $this->dispatcher = $dispatcher; 17 | $this->plugin = $plugin; 18 | } 19 | 20 | public function onRegisterEvents(){ 21 | } 22 | 23 | 24 | public function onPurgeContent($context, $row){ 25 | 26 | } 27 | 28 | //return cache tags; 29 | public function getTags($option, $pageElements){ 30 | if(isset($pageElements["context"])){ 31 | $context = $pageElements["context"]; 32 | } 33 | else{ 34 | $context = $option; 35 | } 36 | 37 | if(isset($pageElements["id"])){ 38 | return $context . ':' . $pageElements["id"]; 39 | } 40 | else{ 41 | return $context; 42 | } 43 | } 44 | 45 | public function getComMap(){ 46 | return array(); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/com_content.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | use Joomla\Component\Content\Site\Helper\RouteHelper; 10 | 11 | class LSCacheComponentContent extends LSCacheComponentBase 12 | { 13 | 14 | 15 | public function getComMap() 16 | { 17 | $comUrls = array(); 18 | $db = JFactory::getDbo(); 19 | 20 | // get category urls 21 | $query = $db->getQuery(true) 22 | ->select($db->quoteName(array('id','language'))) 23 | ->from('#__categories'); 24 | $query->where($db->quoteName('published') . ' =1'); 25 | $query->where($db->quoteName('extension') . ' ="com_content"'); 26 | 27 | try { 28 | $db->setQuery($query); 29 | $categories = $db->loadObjectList(); 30 | foreach($categories as $category){ 31 | $link = RouteHelper::getCategoryRoute($category->id, $category->language); 32 | $comUrls[] = $link; 33 | } 34 | } catch (RuntimeException $ex) { 35 | return array(); 36 | } 37 | 38 | // get article urls; 39 | $query = $db->getQuery(true) 40 | ->select($db->quoteName(array('id','language','catid','alias'))) 41 | ->from('#__content'); 42 | $query->where($db->quoteName('state') . ' =1'); 43 | 44 | try { 45 | $db->setQuery($query); 46 | $articles = $db->loadObjectList(); 47 | foreach($articles as $article){ 48 | if(empty($article->id)){ 49 | continue; 50 | } 51 | $slug = $article->alias ? ($article->id . ':' . $article->alias) : $article->id; 52 | 53 | $link = RouteHelper::getArticleRoute($slug, $article->catid, $article->language); 54 | 55 | $comUrls[] = $link; 56 | } 57 | } catch (RuntimeException $ex) { 58 | return array(); 59 | } 60 | return $comUrls; 61 | } 62 | 63 | 64 | 65 | } 66 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/com_jabuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentJabuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $this->dispatcher->addListener("onJubSaveItem",[$this,'onJubSaveItem']); 16 | $this->dispatcher->addListener("onJubLoadItem", [$this, 'onJubLoadItem']); 17 | 18 | $app = JFactory::getApplication(); 19 | $option = $app->input->get('jub', null); 20 | if($option!=null){ 21 | $this->plugin->pageCachable = false; 22 | } 23 | } 24 | 25 | public function onJubSaveItem($item){ 26 | $this->plugin->purgeContent("com_jabuilder.item", $item); 27 | $this->plugin->purgeAction(); 28 | } 29 | 30 | public function onJubLoadItem($item){ 31 | $this->plugin->onContentPrepare("com_jabuilder.item", $item, $item); 32 | } 33 | 34 | public function onPurgeContent($context, $row) 35 | { 36 | $this->plugin->purgeObject->option = "com_jabuilder"; 37 | $this->plugin->purgeObject->idField = "id"; 38 | 39 | if($context == "com_jabuilder.page"){ 40 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 41 | $this->plugin->purgeObject->ids[] = $row->id; 42 | } 43 | if($context == "com_jabuilder.item"){ 44 | $this->plugin->purgeObject->tags[] = "com_jabuilder, com_jabuilder.item:" . $row->id; 45 | $this->plugin->purgeObject->ids[] = $row->id; 46 | } 47 | else{ 48 | $this->plugin->purgeObject->tags[] = "com_jabuilder"; 49 | } 50 | } 51 | 52 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/com_k2.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentK2 extends LSCacheComponentBase{ 11 | 12 | public function onRegisterEvents() 13 | { 14 | $this->dispatcher->addListener("onFinderAfterSave",[$this,'onFinderAfterSave']); 15 | $this->dispatcher->addListener("onFinderAfterDelete", [$this,'onFinderAfterDelete']); 16 | $this->dispatcher->addListener("onFinderChangeState", [$this,'onFinderChangeState']); 17 | } 18 | 19 | public function onFinderAfterSave($context, $row, $isNew) 20 | { 21 | if($context!="com_k2.item"){ 22 | $this->plugin->onContentAfterSave($context,$row,$isNew); 23 | } 24 | } 25 | 26 | public function onFinderAfterDelete($context, $row) 27 | { 28 | if($context!="com_k2.item"){ 29 | $this->plugin->onContentAfterDelete($context,$row,$isNew); 30 | } 31 | } 32 | 33 | public function onFinderChangeState($context, $pks, $value){ 34 | if($context!="com_k2.item"){ 35 | $this->plugin->onContentChangeState($context, $pks, $value); 36 | } 37 | } 38 | 39 | public function onPurgeContent($context, $row){ 40 | 41 | $this->plugin->purgeObject->option = "com_k2"; 42 | $this->plugin->purgeObject->idField = "id"; 43 | if($context == "com_k2.item"){ 44 | $purgeTags = 'com_k2,com_k2.item:' . $row->id . ",com_k2.category:" . $row->catid . ",com_k2.user:" . $row->created_by; 45 | $tags = JFactory::getApplication()->input->get('tags', NULL, 'POST', 'array'); 46 | if (count($tags)) 47 | { 48 | $tags = array_unique($tags); 49 | foreach ($tags as $tag) 50 | { 51 | $purgeTags .= ",com_k2.tag:" . $tag; 52 | } 53 | } 54 | $this->plugin->purgeObject->tags[] = $purgeTags; 55 | $this->plugin->purgeObject->ids = array($row->id, $row->catid); 56 | 57 | } 58 | else if($context=="com_k2.tag"){ 59 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->name; 60 | } 61 | else if(!empty($row->id)){ 62 | $this->plugin->purgeObject->tags[] = "com_k2," . $context . ":" . $row->id; 63 | $this->plugin->purgeObject->ids[] = $row->id; 64 | } 65 | else{ 66 | $this->plugin->purgeObject->tags[] = 'com_k2'; 67 | } 68 | 69 | } 70 | 71 | public function getTags($option, $pageElements){ 72 | 73 | if(isset($pageElements["layout"])){ 74 | $context = $option . "." . $pageElements["layout"]; 75 | } 76 | else if(isset($pageElements["context"])){ 77 | $context = $pageElements["context"]; 78 | } 79 | else{ 80 | $context = $option; 81 | } 82 | 83 | if($context=="com_k2.tag"){ 84 | return $context . ':' . $pageElements['tag']; 85 | } 86 | else if(isset($pageElements["id"])){ 87 | return $context . ':' . $pageElements["id"]; 88 | } 89 | else{ 90 | return $option; 91 | } 92 | 93 | } 94 | } 95 | 96 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/com_komento.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentKomento extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | 17 | if(empty($namespace=$app->input->get('namespace','')) && empty($task=$app->input->get('task',''))){ 18 | return; 19 | } 20 | 21 | if($app->isClient('administrator') && in_array($namespace, array('admin.views.comments.stick','admin.views.comments.unstick','admin.views.comments.publish','admin.views.comments.unpublish'))){ 22 | $ids=$app->input->get('ids', array()); 23 | if(count($ids)<1){ 24 | return; 25 | } else { 26 | $this->purgeComment($ids); 27 | } 28 | 29 | } else if($app->isClient('administrator') && ($task=='remove')){ 30 | $ids=$app->input->get('cid', array()); 31 | if(count($ids)<1){ 32 | return; 33 | } else { 34 | $this->purgeComment($ids); 35 | } 36 | 37 | $this->plugin->log($namespace); 38 | } else if((!$app->isAdmin()) && ($namespace=='site.views.komento.addcomment')){ 39 | $component = $app->input->get('component'); 40 | $cid = $app->input->get('cid'); 41 | $this->plugin->onContentChangeState($component, array($cid), true); 42 | } 43 | } 44 | 45 | protected function purgeComment($ids){ 46 | $db = JFactory::getDbo(); 47 | $query = $db->getQuery(true) 48 | ->select("distinct component, cid") 49 | ->from('#__komento_comments') 50 | ->where($db->quoteName('id') . ' in (' . implode(',', $ids) . ')'); 51 | $db->setQuery($query); 52 | $comments = $db->loadObjectList(); 53 | foreach($comments as $comment){ 54 | $component = $comment->component; 55 | $this->plugin->onContentChangeState($component, array($comment->cid), true); 56 | } 57 | } 58 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/com_sppagebuilder.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheComponentSPPageBuilder extends LSCacheComponentBase{ 11 | 12 | 13 | public function onRegisterEvents() 14 | { 15 | $app = JFactory::getApplication(); 16 | if(!$app->isClient('administrator')){ 17 | if(isset ($this->plugin->pageElements['view']) && ( $this->plugin->pageElements['view']!='page')){ 18 | $this->plugin->pageCachable = false; 19 | } 20 | else{ 21 | $link = JUri::getInstance()->getQuery(); 22 | if(!empty($link)){ 23 | $this->plugin->pageCachable = false; 24 | } 25 | } 26 | 27 | } 28 | } 29 | 30 | public function onPurgeContent($context, $row) 31 | { 32 | $this->plugin->purgeObject->option = "com_sppagebuilder"; 33 | $this->plugin->purgeObject->idField = "id"; 34 | 35 | if(!empty($row->id)){ 36 | $this->plugin->purgeObject->tags[] = "com_sppagebuilder, com_sppagebuilder:" . $row->id; 37 | $this->plugin->purgeObject->ids[] = $row->id; 38 | } 39 | } 40 | 41 | public function getTags($option, $pageElements){ 42 | 43 | if(isset($pageElements["id"])){ 44 | return $option . ':' . $pageElements["id"]; 45 | } 46 | else{ 47 | return $option; 48 | } 49 | 50 | } 51 | 52 | 53 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/components/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheComponents = Array( 11 | "com_k2" => Array("K2 Component", "com_k2", "com_k2.php", "LSCacheComponentK2",1), 12 | "com_jabuilder" => Array("JA Builder", "com_jabuilder", "com_jabuilder.php", "LSCacheComponentJabuilder",1), 13 | "com_virtuemart" => Array("VirtueMart", "com_virtuemart", "com_virtuemart.php", "LSCacheComponentVirtueMart",1), 14 | "com_sppagebuilder" => Array("SP Page Builder", "com_sppagebuilder", "com_sppagebuilder.php", "LSCacheComponentSPPageBuilder",0), 15 | "com_komento" => Array("Komento", "com_komento", "com_komento.php", "LSCacheComponentKomento",1), 16 | "com_content" => Array("Content", "com_content", "com_content.php", "LSCacheComponentContent",1), 17 | ); -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LiteSpeed Cache Plugin 4 | LiteSpeedTech 5 | Dec 2017 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 3 or later 8 | info@litespeedtech.com 9 | www.litespeedtech.org 10 | 1.5.1 11 | PLG_SYSTEM_LSCACHE_XML_DESCRIPTION 12 | 13 | lscache.php 14 | lscachecore.php 15 | lscachebase.php 16 | components 17 | modules 18 | 19 | 20 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/base.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | abstract class LSCacheModuleBase 11 | { 12 | protected $module; 13 | protected $plugin; 14 | 15 | public function __construct(&$plugin, &$module){ 16 | $this->plugin = $plugin; 17 | $this->module = $module; 18 | } 19 | 20 | public function getModuleTags(){ 21 | return ""; 22 | } 23 | 24 | public function afterESIRender(&$content){ 25 | return; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/helper.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | 11 | class LSCacheModulesHelper 12 | { 13 | const MODULE_NAME = 0; 14 | const MODULE_ELEMENT = 1; 15 | const MODULE_FILE = 2; 16 | const MODULE_CLASSNAME = 3; 17 | 18 | protected $activeModules; 19 | protected $plugin; 20 | 21 | public function __construct (&$plugin) { 22 | require_once (__DIR__ . '/list.php'); 23 | $this->plugin = $plugin; 24 | $this->activeModules = $lscacheModules; 25 | } 26 | 27 | public function getInstance(&$module){ 28 | 29 | if(!isset($this->activeModules[$module->module])){ 30 | return NULL; 31 | } 32 | 33 | $classModule = $this->activeModules[$module->module]; 34 | 35 | $className = $classModule[self::MODULE_CLASSNAME]; 36 | if (!class_exists($className)){ 37 | $filename = __DIR__ . '/' . $classModule[self::MODULE_FILE]; 38 | if (file_exists($filename)) { 39 | require_once $filename; 40 | } else { 41 | return NULL; 42 | } 43 | } 44 | 45 | if (!class_exists($className)){ 46 | return NULL; 47 | } 48 | 49 | return new $className($this->plugin, $module); 50 | } 51 | 52 | public function getModuleTags(&$module){ 53 | $lscacheModule = $this->getInstance($module); 54 | if($lscacheModule==NULL){ 55 | return ""; 56 | } 57 | return $lscacheModule->getModuleTags(); 58 | } 59 | 60 | public function afterESIRender(&$module, &$content){ 61 | $lscacheModule = $this->getInstance($module); 62 | if($lscacheModule==NULL){ 63 | return; 64 | } 65 | $lscacheModule->afterESIRender($content); 66 | } 67 | 68 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/joomla.login.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleJoomlaLogin extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | 14 | $cacheType = $this->plugin->getModuleCacheType($this->module); 15 | if(($cacheType!=plgSystemLSCache::MODULE_ESI) && ($this->plugin->settings->get('loginESI',1)==1)){ 16 | $this->module->original_cache_type = $this->module->cache_type; 17 | $this->module->cache_type = plgSystemLSCache::MODULE_ESI; 18 | $this->module->lscache_type = -1; 19 | $this->module->lscache_ttl = 14; 20 | $this->module->lscache_tag = "joomla.login"; 21 | } 22 | 23 | return ""; 24 | } 25 | 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/joomla.menu.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | use Joomla\Registry\Registry; 11 | 12 | class LSCacheModuleJoomlaMenu extends LSCacheModuleBase 13 | { 14 | public function getModuleTags(){ 15 | 16 | $moduleParams = new Registry; 17 | $moduleParams->loadString($this->module->params); 18 | $menuid = $moduleParams->get('base', FALSE); 19 | if($menuid){ 20 | return 'com_menus:' . $menuid; 21 | } 22 | else{ 23 | return ''; 24 | } 25 | 26 | } 27 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/k2.content.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleK2Content extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | return "com_k2"; 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/list.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | $lscacheModules = Array( 11 | "mod_menu" => Array("Joomla.mod_menu", "mod_menu", "joomla.menu.php", "LSCacheModuleJoomlaMenu"), 12 | "mod_k2_content" => Array("K2.mod_k2_content", "mod_k2_content", "k2.content.php", "LSCacheModuleK2Content"), 13 | "mod_virtuemart_cart" => Array("VirtueMart.mod_virtuemart_cart", "mod_virtuemart_cart", "virtuemart.cart.php", "LSCacheModuleVirtueMartCart"), 14 | 15 | ); -------------------------------------------------------------------------------- /Joomla5/lscache_plugin/modules/virtuemart.cart.php: -------------------------------------------------------------------------------- 1 | 6 | * @copyright Copyright (c) 2017-2018 LiteSpeed Technologies, Inc. (https://www.litespeedtech.com) 7 | * @license https://opensource.org/licenses/GPL-3.0 8 | */ 9 | 10 | class LSCacheModuleVirtueMartCart extends LSCacheModuleBase 11 | { 12 | public function getModuleTags(){ 13 | if($this->plugin->getModuleCacheType($this->module)!=1){ 14 | $this->module->original_cache_type = $this->module->cache_type; 15 | $this->module->cache_type = 1; 16 | $this->module->lscache_type = -1; 17 | $this->module->lscache_ttl = 120; 18 | $this->module->lscache_tag = 'com_virtuemart.cart'; 19 | } 20 | return ""; 21 | } 22 | 23 | } -------------------------------------------------------------------------------- /Joomla5/mod_lscache_purge/language/en-GB/en-GB.mod_lscache_purge.ini: -------------------------------------------------------------------------------- 1 | MOD_LSCACHE_PURGE_DESC="LiteSpeed Cache Purge - clean LiteSpeed Cache of this site" 2 | MOD_LSCACHE_PURGE_TITLE = "Purge LiteSpeed Cache" -------------------------------------------------------------------------------- /Joomla5/mod_lscache_purge/language/en-GB/en-GB.mod_lscache_purge.sys.ini: -------------------------------------------------------------------------------- 1 | MOD_LSCACHE_PURGE_DESC="LiteSpeed Cache Purge - clean LiteSpeed Cache of this site" 2 | MOD_LSCACHE_PURGE_TITLE = "Purge LiteSpeed Cache" 3 | -------------------------------------------------------------------------------- /Joomla5/mod_lscache_purge/mod_lscache_purge.php: -------------------------------------------------------------------------------- 1 | getIdentity(); 4 | if($user && $user->id!=0){ 5 | require JModuleHelper::getLayoutPath('mod_lscache_purge', $params->get('layout', 'default')); 6 | } -------------------------------------------------------------------------------- /Joomla5/mod_lscache_purge/mod_lscache_purge.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | mod_lscache_purge 4 | LiteSpeed Technologies 5 | January 2021 6 | Copyright (C) 2005 - 2018 Open Source Matters. All rights reserved. 7 | GNU General Public License version 2 or later; see LICENSE.txt 8 | info@litespeedtech.com 9 | www.litespeedtech.com 10 | 1.0.0 11 | MOD_LSCACHE_PURGE_DESC 12 | 13 | 14 | mod_lscache_purge.php 15 | tmpl 16 | language 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /Joomla5/mod_lscache_purge/tmpl/default.php: -------------------------------------------------------------------------------- 1 | 7 | 9 |
10 | 11 |
12 | 13 |
14 | 15 |
16 |
-------------------------------------------------------------------------------- /Joomla5/package/build/pkg_lscache.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | LiteSpeed LSCache Package 10 | LiteSpeed Technologies 11 | March 2018 12 | lscache 13 | 1.5.1 14 | http://www.litespeedtech.com/ 15 | LiteSpeed Technologies 16 | https://www.litespeedtech.com/products#cpl 17 | Package to install the LiteSpeed LSCache pluginwith supporting component 18 | pkg_script.php 19 | 20 | com_lscache.zip 21 | lscache_plugin.zip 22 | mod_lscache_purge.zip 23 | 24 | -------------------------------------------------------------------------------- /Joomla5/package/buildPackage.sh: -------------------------------------------------------------------------------- 1 | rm -f ./build/*.zip 2 | rm -rf ./build/esiTemplate 3 | rm -f lscache-latest.zip 4 | cd ../com_lscache 5 | zip -r ../package/build/com_lscache.zip ./* 6 | cd ../lscache_plugin 7 | zip -r ../package/build/lscache_plugin.zip ./* 8 | cd ../mod_lscache_purge 9 | zip -r ../package/build/mod_lscache_purge.zip ./* 10 | cp -r ../esiTemplate ../package/build/ 11 | cd ../package/build 12 | zip -r ../lscache-latest.zip ./* 13 | cd .. 14 | rm -f ./build/*.zip 15 | rm -rf ./build/esiTemplate 16 | echo Latest package has been built to lscache-latest. 17 | -------------------------------------------------------------------------------- /Joomla5/package/lscache-latest.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/Joomla5/package/lscache-latest.zip -------------------------------------------------------------------------------- /images/joomlaPluginConfig.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/images/joomlaPluginConfig.gif -------------------------------------------------------------------------------- /images/joomlaPluginDebug.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/images/joomlaPluginDebug.gif -------------------------------------------------------------------------------- /images/joomlaPluginInstall.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/images/joomlaPluginInstall.gif -------------------------------------------------------------------------------- /package/lscache-1.2.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.2.0.zip -------------------------------------------------------------------------------- /package/lscache-1.2.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.2.1.zip -------------------------------------------------------------------------------- /package/lscache-1.3.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.3.0.zip -------------------------------------------------------------------------------- /package/lscache-1.3.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.3.1.zip -------------------------------------------------------------------------------- /package/lscache-1.3.2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.3.2.zip -------------------------------------------------------------------------------- /package/lscache-1.4.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.4.0.zip -------------------------------------------------------------------------------- /package/lscache-1.5.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-1.5.0.zip -------------------------------------------------------------------------------- /package/lscache-V3-1.5.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-V3-1.5.1.zip -------------------------------------------------------------------------------- /package/lscache-v4-1.5.1.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/lscache-joomla/3a915d86e70ebcf18d13a2239793cd6f4c68c503/package/lscache-v4-1.5.1.zip --------------------------------------------------------------------------------