| Current Path : /home/digilove/public_html/components/com_payzito/packages/payzito_loader/ |
| Current File : /home/digilove/public_html/components/com_payzito/packages/payzito_loader/payzito_loader.php |
<?php
defined('_JEXEC') OR die('Payzito Joomla Restricted Access');
class plgSystemPayzito_loader extends JPlugin
{
function __construct(&$subject,$config)
{
parent::__construct($subject,$config);
}
public function onAfterInitialise()
{
$this->handleEvents('onAfterInitialise');
}
function onAfterRoute()
{
$this->handleEvents('onAfterRoute');
}
public function onAfterRender()
{
$this->handleEvents('onAfterRender');
}
function onExtensionAfterSave()
{
$this->handleEvents('onExtensionAfterSave');
}
function onGetIcons()
{
$this->handleEvents('onGetIcons');
}
function onInstallerBeforePackageDownload(&$url,&$headers)
{
list($url,$headers) = $this->handleEvents('onInstallerBeforePackageDownload',[$url,$headers]);
}
function onPageCacheIsExcluded()
{
if(JFactory::getApplication()->input->getCmd('option') == 'com_payzito')
{
return true;
}
}
private function handleEvents($event,$params=[])
{
if(!$this->isInInstallArea())
{
@include JPATH_ROOT.str_replace('/',DIRECTORY_SEPARATOR,'/components/com_payzito/includes/libraries/base.php');
if(!class_exists('PAConnector'))
{
return false;
}
return PAConnector::handleEvents($event,$params);
}
elseif($event == 'onAfterInitialise')
{
@include_once JPATH_ROOT.str_replace('/',DIRECTORY_SEPARATOR,'/components/com_payzito/includes/setup/setup.php');
PASetup::apply();
return true;
}
else
{
return $params;
}
}
private function isInInstallArea()
{
if($this->isBackend())
{
$app = JFactory::getApplication();
if(
$app->getSession()->get('payzito_setup_ready') ||
isset($GLOBALS['payzito_setup_ready']) ||
isset($_POST['PAAction'])
)
{
return true;
}
}
return false;
}
private function isBackend()
{
$app = JFactory::getApplication();
if(version_compare(JVERSION,'4.0.0','>='))
{
return $app->isClient('administrator');
}
else
{
return $app->isAdmin();
}
}
}