| Current Path : /home/jeromecohp/www/plugins/system/advancedmodules/ |
| Current File : /home/jeromecohp/www/plugins/system/advancedmodules/advancedmodules.php |
<?php
/**
* @package Advanced Module Manager
* @version 10.1.3
*
* @author Peter van Westen <info@regularlabs.com>
* @link https://regularlabs.com
* @copyright Copyright © 2025 Regular Labs All Rights Reserved
* @license GNU General Public License version 2 or later
*/
defined('_JEXEC') or die;
use Joomla\CMS\Factory as JFactory;
use Joomla\CMS\Form\Form as JForm;
use Joomla\CMS\Language\Text as JText;
use RegularLabs\Library\Document as RL_Document;
use RegularLabs\Library\Extension as RL_Extension;
use RegularLabs\Library\Protect as RL_Protect;
use RegularLabs\Library\RegEx as RL_RegEx;
use RegularLabs\Library\SystemPlugin as RL_SystemPlugin;
use RegularLabs\Plugin\System\AdvancedModules\Document;
use RegularLabs\Plugin\System\AdvancedModules\Helper;
use RegularLabs\Plugin\System\AdvancedModules\ModuleForm;
use RegularLabs\Plugin\System\AdvancedModules\Params;
if ( ! is_file(JPATH_LIBRARIES . '/regularlabs/regularlabs.xml')
|| ! class_exists('RegularLabs\Library\Parameters')
|| ! class_exists('RegularLabs\Library\DownloadKey')
|| ! class_exists('RegularLabs\Library\SystemPlugin')
)
{
JFactory::getApplication()->getLanguage()->load('plg_system_advancedmodules', __DIR__);
JFactory::getApplication()->enqueueMessage(
JText::sprintf('AMM_EXTENSION_CAN_NOT_FUNCTION', JText::_('ADVANCEDMODULEMANAGER'))
. ' ' . JText::_('AMM_REGULAR_LABS_LIBRARY_NOT_INSTALLED'),
'error'
);
return;
}
if ( ! RL_Document::isJoomlaVersion(4, 'ADVANCEDMODULEMANAGER'))
{
RL_Extension::disable('advancedmodules', 'plugin');
RL_Document::adminError(
JText::sprintf('RL_PLUGIN_HAS_BEEN_DISABLED', JText::_('ADVANCEDMODULEMANAGER'))
);
return;
}
if (true)
{
class PlgSystemAdvancedModules extends RL_SystemPlugin
{
public $_title = 'ADVANCEDMODULEMANAGER';
public $_lang_prefix = 'AMM';
public $_page_types = ['html'];
public $_enable_in_admin = true;
public $_can_disable_by_url = false;
public $_jversion = 4;
protected function extraChecks()
{
if ( ! RL_Protect::isComponentInstalled('advancedmodules'))
{
return false;
}
return true;
//return parent::extraChecks();
}
/**
* @param JForm $form The form
* @param stdClass $data The data
*
* @return bool
*/
protected function handleOnContentPrepareForm(JForm $form, $data)
{
if ( ! RL_Document::isHtml())
{
return true;
}
ModuleForm::cleanup($form);
return true;
}
/**
* @param string $html
*
* @return bool
*/
protected function changeFinalHtmlOutput(&$html)
{
Document::removeAssignmentsTabFromMenuItems($html);
Document::replaceLinks($html);
return true;
}
protected function cleanFinalHtmlOutput(&$html)
{
}
public function onPrepareModuleList(&$modules)
{
if (RL_Document::isAdmin())
{
return;
}
Helper::prepareModuleList($modules);
}
public function onRenderModule(&$module)
{
if (RL_Document::isAdmin())
{
return;
}
Helper::renderModule($module);
}
}
}