Spade
Mini Shell
PK�
�[��O���#folderinstaller/folderinstaller.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.folderInstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
/**
* FolderInstaller Plugin.
*
* @since 3.6.0
*/
class PlgInstallerFolderInstaller extends JPlugin
{
/**
* Load the language file on instantiation.
*
* @var boolean
* @since 3.6.0
*/
protected $autoloadLanguage = true;
/**
* Textfield or Form of the Plugin.
*
* @return array Returns an array with the tab information
*
* @since 3.6.0
*/
public function onInstallerAddInstallationTab()
{
$tab = array();
$tab['name'] = 'folder';
$tab['label'] =
JText::_('PLG_INSTALLER_FOLDERINSTALLER_TEXT');
// Render the input
ob_start();
include JPluginHelper::getLayoutPath('installer',
'folderinstaller');
$tab['content'] = ob_get_clean();
return $tab;
}
}
PK�
�[v��w__#folderinstaller/folderinstaller.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.6" type="plugin"
group="installer">
<name>PLG_INSTALLER_FOLDERINSTALLER</name>
<author>Joomla! Project</author>
<creationDate>May 2016</creationDate>
<copyright>Copyright (C) 2005 - 2020 Open Source Matters. All rights
reserved.</copyright>
<license>GNU General Public License version 2 or later; see
LICENSE.txt</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>3.6.0</version>
<description>PLG_INSTALLER_FOLDERINSTALLER_PLUGIN_XML_DESCRIPTION</description>
<files>
<filename
plugin="folderinstaller">folderinstaller.php</filename>
</files>
<languages>
<language
tag="en-GB">en-GB.plg_installer_folderinstaller.ini</language>
<language
tag="en-GB">en-GB.plg_installer_folderinstaller.sys.ini</language>
</languages>
</extension>
PK�
�[��.���
folderinstaller/tmpl/default.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.folderinstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
JHtml::_('bootstrap.tooltip');
$app = JFactory::getApplication('administrator');
JFactory::getDocument()->addScriptDeclaration('
Joomla.submitbuttonfolder = function()
{
var form = document.getElementById("adminForm");
// do field validation
if (form.install_directory.value == "")
{
alert("' .
JText::_('PLG_INSTALLER_FOLDERINSTALLER_NO_INSTALL_PATH', true) .
'");
}
else
{
JoomlaInstaller.showLoading();
form.installtype.value = "folder"
form.submit();
}
};
');
?>
<legend><?php echo
JText::_('PLG_INSTALLER_FOLDERINSTALLER_TEXT');
?></legend>
<div class="control-group">
<label for="install_directory"
class="control-label"><?php echo
JText::_('PLG_INSTALLER_FOLDERINSTALLER_TEXT');
?></label>
<div class="controls">
<input type="text" id="install_directory"
name="install_directory" class="span5 input_box"
size="70"
value="<?php echo
$app->input->get('install_directory',
$app->get('tmp_path')); ?>" />
</div>
</div>
<div class="form-actions">
<input type="button" class="btn btn-primary"
id="installbutton_directory"
value="<?php echo
JText::_('PLG_INSTALLER_FOLDERINSTALLER_BUTTON'); ?>"
onclick="Joomla.submitbuttonfolder()" />
</div>
PK�
�[�,*�99helpdeskpro/helpdeskpro.phpnu�[���<?php
/**
* @package Joomla
* @subpackage Helpdesk Pro
* @author Tuan Pham Ngoc
* @copyright Copyright (C) 2012 - 2021 Ossolution Team
* @license GNU/GPL, see LICENSE.php
*/
defined('_JEXEC') or die;
use Joomla\CMS\Plugin\CMSPlugin;
use Joomla\CMS\Uri\Uri;
class plgInstallerHelpdeskPro extends CMSPlugin
{
public function onInstallerBeforePackageDownload(&$url,
&$headers)
{
$uri = Uri::getInstance($url);
$host = $uri->getHost();
$validHosts = array('joomdonation.com',
'www.joomdonation.com');
if (!in_array($host, $validHosts))
{
return true;
}
$documentId = $uri->getVar('document_id');
if ($documentId != 67)
{
return true;
}
if (!file_exists(JPATH_ADMINISTRATOR .
'/components/com_helpdeskpro/init.php'))
{
return true;
}
// Get Download ID and append it to the URL
require_once JPATH_ADMINISTRATOR .
'/components/com_helpdeskpro/init.php';
require_once JPATH_ROOT .
'/components/com_helpdeskpro/Helper/Helper.php';
$config = \OSSolution\HelpdeskPro\Site\Helper\Helper::getConfig();
// Append the Download ID to the download URL
if (!empty($config->download_id))
{
$uri->setVar('download_id', $config->download_id);
$url = $uri->toString();
// Append domain to URL for logging
$siteUri = Uri::getInstance();
$uri->setVar('domain', $siteUri->getHost());
$uri->setVar('version',
\OSSolution\HelpdeskPro\Site\Helper\Helper::getInstalledVersion());
$url = $uri->toString();
}
return true;
}
}PK�
�[�aT�||helpdeskpro/helpdeskpro.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.0" type="plugin"
group="installer" method="upgrade">
<name>Installer - Helpdesk Pro</name>
<author>Tuan Pham Ngoc</author>
<authorEmail>tuanpn@joomdonation.com</authorEmail>
<authorUrl>http://www.joomdonation.com</authorUrl>
<copyright>Copyright (C) 2010 - 2019 Ossolution
Team</copyright>
<license>GNU General Public License version 3, or
later</license>
<creationDate>August 2016</creationDate>
<version>4.3.0</version>
<description>Allows the installation of Helpdesk Pro updates.
This plugin MUST be installed for the Helpdesk Pro updates to be installed
under your Joomla site. Otherwise you will see the updates but you will not
be able to install them.</description>
<files>
<filename
plugin="helpdeskpro">helpdeskpro.php</filename>
</files>
</extension>PK�
�[��|��>loginasuser/language/en-GB/en-GB.plg_installer_loginasuser.ininu�[���;
Defaults
PLG_INSTALLER_LOGINASUSER="Installer - Login as User"
PLG_INSTALLER_LOGINASUSER_XML_DESCRIPTION="This plugin helps admin
users to login to the front-end as a specific user. It is useful for
websites where the admin user needs to check if a user can see their
order(s) correctly, if a form was filled out correctly, or any issues with
a user's personal details, etc. The Admin user will be accessing all
this information as the external User in order to replicate any issues and
assist the user."
PK�
�[��|��Bloginasuser/language/en-GB/en-GB.plg_installer_loginasuser.sys.ininu�[���;
Defaults
PLG_INSTALLER_LOGINASUSER="Installer - Login as User"
PLG_INSTALLER_LOGINASUSER_XML_DESCRIPTION="This plugin helps admin
users to login to the front-end as a specific user. It is useful for
websites where the admin user needs to check if a user can see their
order(s) correctly, if a form was filled out correctly, or any issues with
a user's personal details, etc. The Admin user will be accessing all
this information as the external User in order to replicate any issues and
assist the user."
PK�
�[�V�%loginasuser/language/en-GB/index.htmlnu�[���<!DOCTYPE
html><title></title>
PK�
�[�V�loginasuser/language/index.htmlnu�[���<!DOCTYPE
html><title></title>
PK�
�[?���loginasuser/loginasuser.phpnu�[���<?php
/* ======================================================
# Login as User for Joomla! - v3.5.9 (pro version)
# -------------------------------------------------------
# For Joomla! CMS (v3.x)
# Author: Web357 (Yiannis Christodoulou)
# Copyright (©) 2014-2022 Web357. All rights reserved.
# License: GNU/GPLv3, http://www.gnu.org/licenses/gpl-3.0.html
# Website: https:/www.web357.com
# Demo: https://demo.web357.com/joomla/login-as-user
# Support: support@web357.com
# Last modified: Wednesday 07 December 2022, 11:05:26 AM
========================================================= */
defined('_JEXEC') or die;
class plgInstallerLoginasuser extends JPlugin
{
public function onInstallerBeforePackageDownload(&$url,
&$headers)
{
if (parse_url($url, PHP_URL_HOST) == 'www.web357.com' ||
parse_url($url, PHP_URL_HOST) == 'downloads.web357.com') {
$apikey_from_plugin_parameters =
Web357Framework\Functions::getWeb357ApiKey();
$current_url = JURI::getInstance()->toString();
$parse = parse_url($current_url);
$domain = isset($parse['host']) ?
$parse['host'] : 'domain.com';
$url = str_replace('?cms=j', '&cms=j',
$url);
$uri = JUri::getInstance($url);
$item = $uri->getVar('item');
if ($item !== 'loginasuser')
{
return;
}
if (!empty($apikey_from_plugin_parameters))
{
$uri->setVar('liveupdate', 'true');
$uri->setVar('domain', $domain);
$uri->setVar('dlid',
$apikey_from_plugin_parameters);
$url = $uri->toString();
$url = str_replace('?cms=',
'&cms=', $url);
$url = str_replace(' ', '+', $url);
}
// Watchful.net support
elseif (isset($parse['query']) &&
strpos($parse['query'], 'com_watchfulli') !== false)
{
$apikey = $uri->getVar('key'); // get apikey
from watchful settings
if (isset($apikey) && !empty($apikey))
{
$apikey = str_replace(' ', '+',
$apikey);
$uri->setVar('liveupdate',
'com_watchfulli');
$uri->setVar('domain', $domain);
$uri->setVar('dlid', $apikey);
$uri->setVar('key', $apikey);
$url = $uri->toString();
$url = str_replace('?cms=',
'&cms=', $url);
}
else
{
JFactory::getApplication()->enqueueMessage(JText::_('W357FRM_APIKEY_WARNING'),
'notice');
}
}
else
{
// load default and current language
$jlang = JFactory::getLanguage();
$jlang->load('plg_system_web357framework',
JPATH_ADMINISTRATOR, 'en-GB', true);
// warn about missing api key
JFactory::getApplication()->enqueueMessage(JText::_('W357FRM_APIKEY_WARNING'),
'notice');
}
}
return true;
}
}PK�
�[fv�PWWloginasuser/loginasuser.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.1" type="plugin"
group="installer" method="upgrade">
<name>PLG_INSTALLER_LOGINASUSER</name>
<author>Web357 (Yiannis Christodoulou)</author>
<creationDate>07-Dec-2022</creationDate>
<copyright>Copyright (©) 2014-2022 Web357. All rights
reserved.</copyright>
<license>GNU/GPLv3,
http://www.gnu.org/licenses/gpl-3.0.html</license>
<authorEmail>support@web357.com</authorEmail>
<authorUrl>https:/www.web357.com</authorUrl>
<version>3.5.9</version>
<variant>pro</variant>
<description>This plugin helps admin users to login to the front-end
as a specific user. It is useful for websites where the admin user needs to
check if a user can see their order(s) correctly, if a form was filled out
correctly, or any issues with a user personal details, etc. The Admin user
will be accessing all this information as the external User in order to
replicate any issues and assist the user.</description>
<files>
<folder>language</folder>
<filename
plugin="loginasuser">loginasuser.php</filename>
<filename>script.install.helper.php</filename>
</files>
<scriptfile>script.install.php</scriptfile>
<updateservers><server type="extension"
priority="1" name="Login as User (pro
version)"><![CDATA[https://updates.web357.com/loginasuser/loginasuser_pro.xml]]></server></updateservers>
</extension>PK�
�[�m0=0=%loginasuser/script.install.helper.phpnu�[���<?php
/* ======================================================
# Login as User for Joomla! - v3.5.9 (pro version)
# -------------------------------------------------------
# For Joomla! CMS (v3.x)
# Author: Web357 (Yiannis Christodoulou)
# Copyright (©) 2014-2022 Web357. All rights reserved.
# License: GNU/GPLv3, http://www.gnu.org/licenses/gpl-3.0.html
# Website: https:/www.web357.com
# Demo: https://demo.web357.com/joomla/login-as-user
# Support: support@web357.com
# Last modified: Wednesday 07 December 2022, 11:05:26 AM
========================================================= */
defined('_JEXEC') or die;
jimport('joomla.filesystem.file');
jimport('joomla.filesystem.folder');
class PlgInstallerLoginasuserInstallerScriptHelper
{
public $name = '';
public $alias = '';
public $extname = '';
public $extension_type = '';
public $plugin_folder = 'system';
public $module_position = 'web357';
public $client_id = 0;
public $install_type = 'install';
public $show_message = true;
public $db = null;
public $softbreak = null;
public $mini_version = null;
public function __construct(&$params)
{
$this->extname = $this->extname ?: $this->alias;
$this->db = JFactory::getDbo();
// Get Joomla's version
$jversion = new JVersion;
$short_version = explode('.', $jversion->getShortVersion());
// 3.8.10
$this->mini_version =
$short_version[0].'.'.$short_version[1]; // 3.8
}
public function preflight($route, $adapter)
{
if (!in_array($route, array('install', 'update')))
{
return true;
}
JFactory::getLanguage()->load('plg_system_web357installer',
JPATH_PLUGINS . '/system/web357installer');
if ($this->show_message && $this->isInstalled())
{
$this->install_type = 'update';
}
if ($this->onBeforeInstall($route) === false)
{
return false;
}
return true;
}
public function postflight($route, $adapter)
{
$this->removeGlobalLanguageFiles();
if (version_compare($this->mini_version, "4.0",
"<"))
{
$this->removeUnusedLanguageFiles();
}
JFactory::getLanguage()->load($this->getPrefix() . '_' .
$this->extname, $this->getMainFolder());
if (!in_array($route, array('install', 'update')))
{
return true;
}
$this->updateHttptoHttpsInUpdateSites();
if ($this->onAfterInstall($route) === false)
{
return false;
}
if ($route == 'install')
{
$this->publishExtension();
}
if ($this->show_message)
{
$this->addInstalledMessage();
}
JFactory::getCache()->clean('com_plugins');
JFactory::getCache()->clean('_system');
return true;
}
public function isInstalled()
{
if ( ! is_file($this->getInstalledXMLFile()))
{
return false;
}
$query = $this->db->getQuery(true)
->select($this->db->quoteName('extension_id'))
->from('#__extensions')
->where($this->db->quoteName('type') . ' =
' . $this->db->quote($this->extension_type))
->where($this->db->quoteName('element') . ' =
' . $this->db->quote($this->getElementName()));
$this->db->setQuery($query, 0, 1);
$result = $this->db->loadResult();
return empty($result) ? false : true;
}
public function getMainFolder()
{
switch ($this->extension_type)
{
case 'plugin' :
return JPATH_PLUGINS . '/' . $this->plugin_folder .
'/' . $this->extname;
case 'component' :
return JPATH_ADMINISTRATOR . '/components/com_' .
$this->extname;
case 'module' :
return JPATH_SITE . '/modules/mod_' . $this->extname;
case 'library' :
return JPATH_SITE . '/libraries/' . $this->extname;
}
}
public function getInstalledXMLFile()
{
return $this->getXMLFile($this->getMainFolder());
}
public function getCurrentXMLFile()
{
return $this->getXMLFile(__DIR__);
}
public function getXMLFile($folder)
{
switch ($this->extension_type)
{
case 'module' :
return $folder . '/mod_' . $this->extname .
'.xml';
default :
return $folder . '/' . $this->extname . '.xml';
}
}
public function uninstallExtension($extname, $type = 'plugin',
$folder = 'system', $show_message = true)
{
if (empty($extname))
{
return;
}
$folders = array();
switch ($type)
{
case 'plugin';
$folders[] = JPATH_PLUGINS . '/' . $folder . '/' .
$extname;
break;
case 'component':
$folders[] = JPATH_ADMINISTRATOR . '/components/com_' .
$extname;
$folders[] = JPATH_SITE . '/components/com_' . $extname;
break;
case 'module':
$folders[] = JPATH_ADMINISTRATOR . '/modules/mod_' .
$extname;
$folders[] = JPATH_SITE . '/modules/mod_' . $extname;
break;
}
if ( ! $this->foldersExist($folders))
{
return;
}
$query = $this->db->getQuery(true)
->select($this->db->quoteName('extension_id'))
->from('#__extensions')
->where($this->db->quoteName('element') . ' =
' . $this->db->quote($this->getElementName($type,
$extname)))
->where($this->db->quoteName('type') . ' =
' . $this->db->quote($type));
if ($type == 'plugin')
{
$query->where($this->db->quoteName('folder') . '
= ' . $this->db->quote($folder));
}
$this->db->setQuery($query);
$ids = $this->db->loadColumn();
if (empty($ids))
{
foreach ($folders as $folder)
{
JFolder::delete($folder);
}
return;
}
$ignore_ids =
JFactory::getApplication()->getUserState('rl_ignore_uninstall_ids',
array());
if (JFactory::getApplication()->input->get('option') ==
'com_installer' &&
JFactory::getApplication()->input->get('task') ==
'remove')
{
// Don't attempt to uninstall extensions that are already selected
to get uninstalled by them selves
$ignore_ids = array_merge($ignore_ids,
JFactory::getApplication()->input->get('cid', array(),
'array'));
JFactory::getApplication()->input->set('cid',
array_merge($ignore_ids, $ids));
}
$ids = array_diff($ids, $ignore_ids);
if (empty($ids))
{
return;
}
$ignore_ids = array_merge($ignore_ids, $ids);
JFactory::getApplication()->setUserState('rl_ignore_uninstall_ids',
$ignore_ids);
foreach ($ids as $id)
{
$tmpInstaller = new JInstaller;
$tmpInstaller->uninstall($type, $id);
}
if ($show_message)
{
JFactory::getApplication()->enqueueMessage(
JText::sprintf(
'COM_INSTALLER_UNINSTALL_SUCCESS',
JText::_('COM_INSTALLER_TYPE_TYPE_' . strtoupper($type))
)
);
}
}
public function foldersExist($folders = array())
{
foreach ($folders as $folder)
{
if (is_dir($folder))
{
return true;
}
}
return false;
}
public function uninstallPlugin($extname, $folder = 'system',
$show_message = true)
{
$this->uninstallExtension($extname, 'plugin', $folder,
$show_message);
}
public function uninstallComponent($extname, $show_message = true)
{
$this->uninstallExtension($extname, 'component', null,
$show_message);
}
public function uninstallModule($extname, $show_message = true)
{
$this->uninstallExtension($extname, 'module', null,
$show_message);
}
public function publishExtension()
{
switch ($this->extension_type)
{
case 'plugin' :
$this->publishPlugin();
case 'module' :
$this->publishModule();
}
}
public function publishPlugin()
{
$query = $this->db->getQuery(true)
->update('#__extensions')
->set($this->db->quoteName('enabled') . ' =
1')
->where($this->db->quoteName('type') . ' =
' . $this->db->quote('plugin'))
->where($this->db->quoteName('element') . ' =
' . $this->db->quote($this->extname))
->where($this->db->quoteName('folder') . ' =
' . $this->db->quote($this->plugin_folder));
$this->db->setQuery($query);
$this->db->execute();
}
public function publishModule()
{
// Get module id
$query = $this->db->getQuery(true)
->select($this->db->quoteName('id'))
->from('#__modules')
->where($this->db->quoteName('module') . ' =
' . $this->db->quote('mod_' . $this->extname))
->where($this->db->quoteName('client_id') . ' =
' . (int) $this->client_id);
$this->db->setQuery($query, 0, 1);
$id = $this->db->loadResult();
if ( ! $id)
{
return;
}
// check if module is already in the modules_menu table (meaning is is
already saved)
$query->clear()
->select($this->db->quoteName('moduleid'))
->from('#__modules_menu')
->where($this->db->quoteName('moduleid') . ' =
' . (int) $id);
$this->db->setQuery($query, 0, 1);
$exists = $this->db->loadResult();
if ($exists)
{
return;
}
// Get highest ordering number in position
$query->clear()
->select($this->db->quoteName('ordering'))
->from('#__modules')
->where($this->db->quoteName('position') . ' =
' . $this->db->quote($this->module_position))
->where($this->db->quoteName('client_id') . ' =
' . (int) $this->client_id)
->order('ordering DESC');
$this->db->setQuery($query, 0, 1);
$ordering = $this->db->loadResult();
$ordering++;
// publish module and set ordering number
$query->clear()
->update('#__modules')
->set($this->db->quoteName('published') . ' =
1')
->set($this->db->quoteName('ordering') . ' =
' . (int) $ordering)
->set($this->db->quoteName('position') . ' =
' . $this->db->quote($this->module_position))
->where($this->db->quoteName('id') . ' = '
. (int) $id);
$this->db->setQuery($query);
$this->db->execute();
// add module to the modules_menu table
$query->clear()
->insert('#__modules_menu')
->columns(array($this->db->quoteName('moduleid'),
$this->db->quoteName('menuid')))
->values((int) $id . ', 0');
$this->db->setQuery($query);
$this->db->execute();
}
public function addInstalledMessage()
{
JFactory::getApplication()->enqueueMessage(
JText::sprintf(
JText::_($this->install_type == 'update' ?
'W357_THE_EXTENSION_HAS_BEEN_UPDATED_SUCCESSFULLY' :
'W357_THE_EXTENSION_HAS_BEEN_INSTALLED_SUCCESSFULLY'),
'<strong>' . JText::_($this->name) .
'</strong>',
'<strong>' . $this->getVersion() .
'</strong>',
$this->getFullType()
)
);
}
public function getPrefix()
{
switch ($this->extension_type)
{
case 'plugin';
return JText::_('plg_' .
strtolower($this->plugin_folder));
case 'component':
return JText::_('com');
case 'module':
return JText::_('mod');
case 'library':
return JText::_('lib');
default:
return $this->extension_type;
}
}
public function getElementName($type = null, $extname = null)
{
$type = is_null($type) ? $this->extension_type : $type;
$extname = is_null($extname) ? $this->extname : $extname;
switch ($type)
{
case 'component' :
return 'com_' . $extname;
case 'module' :
return 'mod_' . $extname;
case 'plugin' :
default:
return $extname;
}
}
public function getFullType()
{
return JText::_('W357_' . strtoupper($this->getPrefix()));
}
public function getVersion($file = '')
{
$file = $file ?: $this->getCurrentXMLFile();
if ( ! is_file($file))
{
return '';
}
$xml = JInstaller::parseXMLInstallFile($file);
if ( ! $xml || ! isset($xml['version']))
{
return '';
}
return $xml['version'];
}
public function isNewer()
{
if ( ! $installed_version =
$this->getVersion($this->getInstalledXMLFile()))
{
return true;
}
$package_version = $this->getVersion();
return version_compare($installed_version, $package_version,
'<=');
}
public function canInstall()
{
// The extension is not installed yet
if ( ! $installed_version =
$this->getVersion($this->getInstalledXMLFile()))
{
return true;
}
// The free version is installed. So any version is ok to install
if (strpos($installed_version, 'PRO') === false)
{
return true;
}
// Current package is a pro version, so all good
if (strpos($this->getVersion(), 'PRO') !== false)
{
return true;
}
JFactory::getLanguage()->load($this->getPrefix() . '_' .
$this->extname, __DIR__);
JFactory::getApplication()->enqueueMessage(JText::_('W357_ERROR_PRO_TO_FREE'),
'error');
JFactory::getApplication()->enqueueMessage(
html_entity_decode(
JText::sprintf(
'W357_ERROR_UNINSTALL_FIRST',
'<a href="//www.web357.com/product/' .
$this->url_alias . '" target="_blank">',
'</a>',
JText::_($this->name)
)
), 'error'
);
return false;
}
public function onBeforeInstall($route)
{
if ( ! $this->canInstall())
{
return false;
}
return true;
}
public function onAfterInstall($route)
{
}
public function delete($files = array())
{
foreach ($files as $file)
{
if (is_dir($file) && JFolder::exists($file))
{
JFolder::delete($file);
}
if (is_file($file) && JFile::exists($file))
{
JFile::delete($file);
}
}
}
public function fixAssetsRules($rules =
'{"core.admin":[],"core.manage":[]}')
{
// replace default rules value {} with the correct initial value
$query = $this->db->getQuery(true)
->update($this->db->quoteName('#__assets'))
->set($this->db->quoteName('rules') . ' = '
. $this->db->quote($rules))
->where($this->db->quoteName('title') . ' =
' . $this->db->quote('com_' . $this->extname))
->where($this->db->quoteName('rules') . ' =
' . $this->db->quote('{}'));
$this->db->setQuery($query);
$this->db->execute();
}
private function updateHttptoHttpsInUpdateSites()
{
$query = $this->db->getQuery(true)
->update('#__update_sites')
->set($this->db->quoteName('location') . ' =
REPLACE('
. $this->db->quoteName('location') . ', '
. $this->db->quote('http://') . ', '
. $this->db->quote('https://')
. ')')
->where($this->db->quoteName('location') . '
LIKE ' . $this->db->quote('http://updates.web357%'));
$this->db->setQuery($query);
$this->db->execute();
}
private function removeGlobalLanguageFiles()
{
if ($this->extension_type == 'library' || $this->alias
=== 'web357framework')
{
return;
}
$language_files = JFolder::files(JPATH_ADMINISTRATOR .
'/language', '\.' . $this->getPrefix() .
'_' . $this->extname . '\.', true, true);
// Remove override files
foreach ($language_files as $i => $language_file)
{
if (strpos($language_file, '/overrides/') === false)
{
continue;
}
unset($language_files[$i]);
}
if (empty($language_files))
{
return;
}
JFile::delete($language_files);
}
private function removeUnusedLanguageFiles()
{
if ($this->extension_type == 'library')
{
return;
}
$main_language_dir_path = JFolder::folders(__DIR__ .
'/language');
$installed_languages = array_merge(
JFolder::folders(JPATH_SITE . '/language'),
JFolder::folders(JPATH_ADMINISTRATOR . '/language')
);
$languages = array();
if (is_array($main_language_dir_path) &&
is_array($installed_languages))
{
$languages = array_diff(
$main_language_dir_path,
$installed_languages
);
}
$delete_languages = array();
if (!empty($languages))
{
foreach ($languages as $language)
{
$delete_languages[] = $this->getMainFolder() .
'/language/' . $language;
}
}
if (empty($delete_languages))
{
return;
}
// Remove folders
$this->delete($delete_languages);
}
}PK�
�[U�Դ�loginasuser/script.install.phpnu�[���<?php
/* ======================================================
# Login as User for Joomla! - v3.5.9 (pro version)
# -------------------------------------------------------
# For Joomla! CMS (v3.x)
# Author: Web357 (Yiannis Christodoulou)
# Copyright (©) 2014-2022 Web357. All rights reserved.
# License: GNU/GPLv3, http://www.gnu.org/licenses/gpl-3.0.html
# Website: https:/www.web357.com
# Demo: https://demo.web357.com/joomla/login-as-user
# Support: support@web357.com
# Last modified: Wednesday 07 December 2022, 11:05:26 AM
========================================================= */
defined('_JEXEC') or die;
require_once __DIR__ . '/script.install.helper.php';
class PlgInstallerLoginasuserInstallerScript extends
PlgInstallerLoginasuserInstallerScriptHelper
{
public $name = 'Login as User';
public $alias = 'loginasuser';
public $extension_type = 'plugin';
public $plugin_folder = 'installer';
}PK�
�[��i%packageinstaller/packageinstaller.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.packageInstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
/**
* PackageInstaller Plugin.
*
* @since 3.6.0
*/
class PlgInstallerPackageInstaller extends JPlugin
{
/**
* Load the language file on instantiation.
*
* @var boolean
* @since 3.6.0
*/
protected $autoloadLanguage = true;
/**
* Textfield or Form of the Plugin.
*
* @return array Returns an array with the tab information
*
* @since 3.6.0
*/
public function onInstallerAddInstallationTab()
{
$tab = array();
$tab['name'] = 'package';
$tab['label'] =
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_PACKAGE_FILE');
// Render the input
ob_start();
include JPluginHelper::getLayoutPath('installer',
'packageinstaller');
$tab['content'] = ob_get_clean();
return $tab;
}
}
PK�
�[���`ee%packageinstaller/packageinstaller.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.6" type="plugin"
group="installer">
<name>plg_installer_packageinstaller</name>
<author>Joomla! Project</author>
<creationDate>May 2016</creationDate>
<copyright>Copyright (C) 2005 - 2020 Open Source Matters. All rights
reserved.</copyright>
<license>GNU General Public License version 2 or later; see
LICENSE.txt</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>3.6.0</version>
<description>PLG_INSTALLER_PACKAGEINSTALLER_PLUGIN_XML_DESCRIPTION</description>
<files>
<filename
plugin="packageinstaller">packageinstaller.php</filename>
</files>
<languages>
<language
tag="en-GB">en-GB.plg_installer_packageinstaller.ini</language>
<language
tag="en-GB">en-GB.plg_installer_packageinstaller.sys.ini</language>
</languages>
</extension>
PK�
�[�h~$~$!packageinstaller/tmpl/default.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.packageinstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
JHtml::_('bootstrap.tooltip');
JHtml::_('jquery.token');
JText::script('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_ERROR_UNKNOWN');
JText::script('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_ERROR_EMPTY');
JText::script('COM_INSTALLER_MSG_WARNINGS_UPLOADFILETOOBIG');
JFactory::getDocument()->addScriptDeclaration('
Joomla.submitbuttonpackage = function()
{
var form = document.getElementById("adminForm");
// do field validation
if (form.install_package.value == "")
{
alert("' .
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_NO_PACKAGE', true) .
'");
}
else if (form.install_package.files[0].size >
form.max_upload_size.value)
{
alert("' .
JText::_('COM_INSTALLER_MSG_WARNINGS_UPLOADFILETOOBIG', true) .
'");
}
else
{
JoomlaInstaller.showLoading();
form.installtype.value = "upload"
form.submit();
}
};
');
// Drag and Drop installation scripts
$token = JSession::getFormToken();
$return =
JFactory::getApplication()->input->getBase64('return');
// Drag-drop installation
JFactory::getDocument()->addScriptDeclaration(
<<<JS
jQuery(document).ready(function($) {
if (typeof FormData === 'undefined') {
$('#legacy-uploader').show();
$('#uploader-wrapper').hide();
return;
}
var uploading = false;
var dragZone = $('#dragarea');
var fileInput = $('#install_package');
var fileSizeMax = $('#max_upload_size').val();
var button = $('#select-file-button');
var url =
'index.php?option=com_installer&task=install.ajax_upload';
var returnUrl = $('#installer-return').val();
var actions = $('.upload-actions');
var progress = $('.upload-progress');
var progressBar = progress.find('.bar');
var percentage = progress.find('.uploading-number');
if (returnUrl) {
url += '&return=' + returnUrl;
}
button.on('click', function(e) {
fileInput.click();
});
fileInput.on('change', function (e) {
if (uploading) {
return;
}
Joomla.submitbuttonpackage();
});
dragZone.on('dragenter', function(e) {
e.preventDefault();
e.stopPropagation();
dragZone.addClass('hover');
return false;
});
// Notify user when file is over the drop area
dragZone.on('dragover', function(e) {
e.preventDefault();
e.stopPropagation();
dragZone.addClass('hover');
return false;
});
dragZone.on('dragleave', function(e) {
e.preventDefault();
e.stopPropagation();
dragZone.removeClass('hover');
return false;
});
dragZone.on('drop', function(e) {
e.preventDefault();
e.stopPropagation();
dragZone.removeClass('hover');
if (uploading) {
return;
}
var files = e.originalEvent.target.files ||
e.originalEvent.dataTransfer.files;
if (!files.length) {
return;
}
var file = files[0];
var data = new FormData;
if (file.size > fileSizeMax) {
alert(Joomla.JText._('COM_INSTALLER_MSG_WARNINGS_UPLOADFILETOOBIG'),
true);
return;
}
data.append('install_package', file);
data.append('installtype', 'upload');
dragZone.attr('data-state', 'uploading');
uploading = true;
$.ajax({
url: url,
data: data,
type: 'post',
processData: false,
cache: false,
contentType: false,
xhr: function () {
var xhr = new window.XMLHttpRequest();
progressBar.css('width', 0);
progressBar.attr('aria-valuenow', 0);
percentage.text(0);
// Upload progress
xhr.upload.addEventListener("progress", function (evt) {
if (evt.lengthComputable) {
var percentComplete = evt.loaded / evt.total;
var number = Math.round(percentComplete * 100);
progressBar.css('width', number + '%');
progressBar.attr('aria-valuenow', number);
percentage.text(number);
if (number === 100) {
dragZone.attr('data-state', 'installing');
}
}
}, false);
return xhr;
}
})
.done(function (res) {
// Handle extension fatal error
if (!res || (!res.success && !res.data)) {
showError(res);
return;
}
// Always redirect that can show message queue from session
if (res.data.redirect) {
location.href = res.data.redirect;
} else {
location.href =
'index.php?option=com_installer&view=install';
}
}).error(function (error) {
uploading = false;
if (error.status === 200) {
var res = error.responseText || error.responseJSON;
showError(res);
} else {
showError(error.statusText);
}
});
function showError(res) {
dragZone.attr('data-state', 'pending');
var message =
Joomla.JText._('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_ERROR_UNKNOWN');
if (res == null) {
message =
Joomla.JText._('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_ERROR_EMPTY');
} else if (typeof res === 'string') {
// Let's remove unnecessary HTML
message = res.replace(/(<([^>]+)>|\s+)/g, ' ');
} else if (res.message) {
message = res.message;
}
Joomla.renderMessages({error: [message]});
}
});
});
JS
);
JFactory::getDocument()->addStyleDeclaration(
<<<CSS
#dragarea {
background-color: #fafbfc;
border: 1px dashed #999;
box-sizing: border-box;
padding: 5% 0;
transition: all 0.2s ease 0s;
width: 100%;
}
#dragarea p.lead {
color: #999;
}
#upload-icon {
font-size: 48px;
width: auto;
height: auto;
margin: 0;
line-height: 175%;
color: #999;
transition: all .2s;
}
#dragarea.hover {
border-color: #666;
background-color: #eee;
}
#dragarea.hover #upload-icon,
#dragarea p.lead {
color: #666;
}
.upload-progress, .install-progress {
width: 50%;
margin: 5px auto;
}
/* Default transition (.3s) is too slow, progress will not run to 100% */
.upload-progress .progress .bar {
-webkit-transition: width .1s;
-moz-transition: width .1s;
-o-transition: width .1s;
transition: width .1s;
}
#dragarea[data-state=pending] .upload-progress {
display: none;
}
#dragarea[data-state=pending] .install-progress {
display: none;
}
#dragarea[data-state=uploading] .install-progress {
display: none;
}
#dragarea[data-state=uploading] .upload-actions {
display: none;
}
#dragarea[data-state=installing] .upload-progress {
display: none;
}
#dragarea[data-state=installing] .upload-actions {
display: none;
}
CSS
);
$maxSizeBytes = JFilesystemHelper::fileUploadMaxSize(false);
$maxSize = JHtml::_('number.bytes', $maxSizeBytes);
?>
<legend><?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_INSTALL_JOOMLA_EXTENSION');
?></legend>
<div id="uploader-wrapper">
<div id="dragarea" data-state="pending">
<div id="dragarea-content" class="text-center">
<p>
<span id="upload-icon" class="icon-upload"
aria-hidden="true"></span>
</p>
<div class="upload-progress">
<div class="progress progress-striped active">
<div class="bar bar-success"
style="width: 0;"
role="progressbar"
aria-valuenow="0"
aria-valuemin="0"
aria-valuemax="100"
></div>
</div>
<p class="lead">
<span class="uploading-text">
<?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_UPLOADING'); ?>
</span>
<span class="uploading-number">0</span><span
class="uploading-symbol">%</span>
</p>
</div>
<div class="install-progress">
<div class="progress progress-striped active">
<div class="bar" style="width:
100%;"></div>
</div>
<p class="lead">
<span class="installing-text">
<?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_INSTALLING'); ?>
</span>
</p>
</div>
<div class="upload-actions">
<p class="lead">
<?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_DRAG_FILE_HERE'); ?>
</p>
<p>
<button id="select-file-button" type="button"
class="btn btn-success">
<span class="icon-copy"
aria-hidden="true"></span>
<?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_SELECT_FILE'); ?>
</button>
</p>
<p>
<?php echo
JText::sprintf('JGLOBAL_MAXIMUM_UPLOAD_SIZE_LIMIT', $maxSize);
?>
</p>
</div>
</div>
</div>
</div>
<div id="legacy-uploader" style="display: none;">
<div class="control-group">
<label for="install_package"
class="control-label"><?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_EXTENSION_PACKAGE_FILE');
?></label>
<div class="controls">
<input class="input_box" id="install_package"
name="install_package" type="file" size="57"
/>
<input id="max_upload_size"
name="max_upload_size" type="hidden"
value="<?php echo $maxSizeBytes; ?>" /><br>
<?php echo
JText::sprintf('JGLOBAL_MAXIMUM_UPLOAD_SIZE_LIMIT', $maxSize);
?>
</div>
</div>
<div class="form-actions">
<button class="btn btn-primary" type="button"
id="installbutton_package"
onclick="Joomla.submitbuttonpackage()">
<?php echo
JText::_('PLG_INSTALLER_PACKAGEINSTALLER_UPLOAD_AND_INSTALL');
?>
</button>
</div>
<input id="installer-return" name="return"
type="hidden" value="<?php echo $return; ?>"
/>
<input id="installer-token" name="return"
type="hidden" value="<?php echo $token; ?>" />
</div>
PK�
�[��ĸ88rsmembership/index.htmlnu�[���<html><head><title></title></head><body></body></html>
PK�
�[h����rsmembership/rsmembership.phpnu�[���<?php
/**
* @package RSMembership!
* @copyright (c) 2009 - 2016 RSJoomla!
* @link https://www.rsjoomla.com
* @license GNU General Public License
http://www.gnu.org/licenses/gpl-3.0.en.html
*/
defined('_JEXEC') or die;
class plgInstallerRSMembership extends JPlugin
{
public function onInstallerBeforePackageDownload(&$url,
&$headers)
{
$uri = JUri::getInstance($url);
$parts = explode('/', $uri->getPath());
if ($uri->getHost() == 'www.rsjoomla.com' &&
(in_array('com_rsmembership', $parts) ||
in_array('plg_rsmembership_ideal', $parts))) {
if
(!file_exists(JPATH_ADMINISTRATOR.'/components/com_rsmembership/helpers/config.php'))
{
return;
}
if
(!file_exists(JPATH_ADMINISTRATOR.'/components/com_rsmembership/helpers/version.php'))
{
return;
}
// Load our config
require_once
JPATH_ADMINISTRATOR.'/components/com_rsmembership/helpers/config.php';
// Load our version
require_once
JPATH_ADMINISTRATOR.'/components/com_rsmembership/helpers/version.php';
// Load language
JFactory::getLanguage()->load('plg_installer_rsmembership');
// Get the version
$version = new RSMembershipVersion;
// Get the update code
$code =
RSMembershipConfig::getInstance()->get('global_register_code');
// No code added
if (!strlen($code)) {
JFactory::getApplication()->enqueueMessage(JText::_('PLG_INSTALLER_RSMEMBERSHIP_MISSING_UPDATE_CODE'),
'warning');
return;
}
// Code length is incorrect
if (strlen($code) != 20) {
JFactory::getApplication()->enqueueMessage(JText::_('PLG_INSTALLER_RSMEMBERSHIP_INCORRECT_CODE'),
'warning');
return;
}
// Compute the update hash
$uri->setVar('hash', md5($code.$version->key));
$uri->setVar('domain', JUri::getInstance()->getHost());
$uri->setVar('code', $code);
$url = $uri->toString();
}
}
}
PK�
�[�aa�uursmembership/rsmembership.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin"
group="installer" method="upgrade">
<name>plg_installer_rsmembership</name>
<creationDate>June 2015</creationDate>
<author>RSJoomla!</author>
<authorEmail>support@rsjoomla.com</authorEmail>
<authorUrl>https://www.rsjoomla.com</authorUrl>
<copyright>(c) 2015 www.rsjoomla.com</copyright>
<license>http://www.gnu.org/copyleft/gpl.html
GNU/GPL</license>
<version>1.0.0</version>
<description>PLG_INSTALLER_RSMEMBERSHIP_XML_DESCRIPTION</description>
<files>
<filename
plugin="rsmembership">rsmembership.php</filename>
<filename>index.html</filename>
</files>
<languages folder="language">
<language
tag="en-GB">en-GB/en-GB.plg_installer_rsmembership.ini</language>
<language
tag="en-GB">en-GB/en-GB.plg_installer_rsmembership.sys.ini</language>
</languages>
</extension>PK�
�[��ĸ88rsticketspro/index.htmlnu�[���<html><head><title></title></head><body></body></html>
PK�
�[r��ӭ�rsticketspro/rsticketspro.phpnu�[���<?php
/**
* @package RSTickets! Pro
*
* @copyright (c) 2010 - 2016 RSJoomla!
* @link https://www.rsjoomla.com
* @license GNU General Public License
http://www.gnu.org/licenses/gpl-3.0.en.html
*/
defined('_JEXEC') or die;
class plgInstallerRsticketspro extends JPlugin
{
public function onInstallerBeforePackageDownload(&$url,
&$headers)
{
$uri = JUri::getInstance($url);
$parts = explode('/', $uri->getPath());
if ($uri->getHost() == 'www.rsjoomla.com' &&
(in_array('com_rsticketspro', $parts) ||
in_array('plg_rsticketspro_cron', $parts) ||
in_array('plg_rsticketspro_reports', $parts))) {
if
(!file_exists(JPATH_ADMINISTRATOR.'/components/com_rsticketspro/helpers/config.php'))
{
return;
}
if
(!file_exists(JPATH_ADMINISTRATOR.'/components/com_rsticketspro/helpers/version.php'))
{
return;
}
// Load our config
require_once
JPATH_ADMINISTRATOR.'/components/com_rsticketspro/helpers/config.php';
// Load our version
require_once
JPATH_ADMINISTRATOR.'/components/com_rsticketspro/helpers/version.php';
// Load language
JFactory::getLanguage()->load('plg_installer_rsticketspro');
// Get the version
$version = new RSTicketsProVersion;
// Get the update code
$code =
RSTicketsProConfig::getInstance()->get('global_register_code');
// No code added
if (!strlen($code)) {
JFactory::getApplication()->enqueueMessage(JText::_('PLG_INSTALLER_RSTICKETSPRO_MISSING_UPDATE_CODE'),
'warning');
return;
}
// Code length is incorrect
if (strlen($code) != 20) {
JFactory::getApplication()->enqueueMessage(JText::_('PLG_INSTALLER_RSTICKETSPRO_INCORRECT_CODE'),
'warning');
return;
}
// Compute the update hash
$uri->setVar('hash', md5($code.$version->key));
$uri->setVar('domain', JUri::getInstance()->getHost());
$uri->setVar('code', $code);
$url = $uri->toString();
}
}
}
PK�
�[�0d<xxrsticketspro/rsticketspro.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin"
group="installer" method="upgrade">
<name>plg_installer_rsticketspro</name>
<creationDate>January 2016</creationDate>
<author>RSJoomla!</author>
<authorEmail>support@rsjoomla.com</authorEmail>
<authorUrl>https://www.rsjoomla.com</authorUrl>
<copyright>(c) 2015 www.rsjoomla.com</copyright>
<license>http://www.gnu.org/copyleft/gpl.html
GNU/GPL</license>
<version>1.0.0</version>
<description>PLG_INSTALLER_RSTICKETSPRO_XML_DESCRIPTION</description>
<files>
<filename
plugin="rsticketspro">rsticketspro.php</filename>
<filename>index.html</filename>
</files>
<languages folder="language">
<language
tag="en-GB">en-GB/en-GB.plg_installer_rsticketspro.ini</language>
<language
tag="en-GB">en-GB/en-GB.plg_installer_rsticketspro.sys.ini</language>
</languages>
</extension>PK�
�[smartslider3/index.htmlnu�[���PK�
�[�`�CCsmartslider3/smartslider3.phpnu�[���<?php
use
Nextend\SmartSlider3\Platform\Joomla\Plugin\PluginInstallerSmartSlider3;
defined('_JEXEC') or die;
jimport("smartslider3.joomla");
if
(class_exists('\Nextend\SmartSlider3\Platform\Joomla\Plugin\PluginInstallerSmartSlider3'))
{
class_alias(PluginInstallerSmartSlider3::class,
'plgInstallerSmartslider3');
}PK�
�[����smartslider3/smartslider3.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.9" type="plugin"
group="installer" method="upgrade">
<name>Smart Slider 3 Updater Plugin</name>
<author>Nextendweb</author>
<creationDate>2021-05-31</creationDate>
<copyright>Copyright (C) 2020 Nextendweb.com. All rights
reserved.</copyright>
<license>http://www.gnu.org/licenses/gpl-3.0.txt GNU General
Public License</license>
<authorEmail>roland@nextendweb.com</authorEmail>
<authorUrl>https://smartslider3.com</authorUrl>
<version>3.5.0.8</version>
<files>
<filename
plugin="smartslider3">smartslider3.php</filename>
<filename>index.html</filename>
</files>
</extension>
PK�
�[�&�\\urlinstaller/tmpl/default.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.urlinstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
JHtml::_('bootstrap.tooltip');
JFactory::getDocument()->addScriptDeclaration('
Joomla.submitbuttonurl = function()
{
var form = document.getElementById("adminForm");
// do field validation
if (form.install_url.value == "" || form.install_url.value ==
"http://" || form.install_url.value == "https://") {
alert("' .
JText::_('PLG_INSTALLER_URLINSTALLER_NO_URL', true) .
'");
}
else
{
JoomlaInstaller.showLoading();
form.installtype.value = "url"
form.submit();
}
};
');
?>
<legend><?php echo
JText::_('PLG_INSTALLER_URLINSTALLER_TEXT'); ?></legend>
<div class="control-group">
<label for="install_url"
class="control-label"><?php echo
JText::_('PLG_INSTALLER_URLINSTALLER_TEXT'); ?></label>
<div class="controls">
<input type="text" id="install_url"
name="install_url" class="span5 input_box"
size="70" placeholder="https://"/>
</div>
</div>
<div class="form-actions">
<input type="button" class="btn btn-primary"
id="installbutton_url"
value="<?php echo
JText::_('PLG_INSTALLER_URLINSTALLER_BUTTON'); ?>"
onclick="Joomla.submitbuttonurl()" />
</div>
PK�
�[�&���urlinstaller/urlinstaller.phpnu�[���<?php
/**
* @package Joomla.Plugin
* @subpackage Installer.urlinstaller
*
* @copyright Copyright (C) 2005 - 2020 Open Source Matters, Inc. All
rights reserved.
* @license GNU General Public License version 2 or later; see
LICENSE.txt
*/
defined('_JEXEC') or die;
/**
* UrlFolderInstaller Plugin.
*
* @since 3.6.0
*/
class PlgInstallerUrlInstaller extends JPlugin
{
/**
* Load the language file on instantiation.
*
* @var boolean
* @since 3.6.0
*/
protected $autoloadLanguage = true;
/**
* Textfield or Form of the Plugin.
*
* @return array Returns an array with the tab information
*
* @since 3.6.0
*/
public function onInstallerAddInstallationTab()
{
$tab = array();
$tab['name'] = 'url';
$tab['label'] =
JText::_('PLG_INSTALLER_URLINSTALLER_TEXT');
// Render the input
ob_start();
include JPluginHelper::getLayoutPath('installer',
'urlinstaller');
$tab['content'] = ob_get_clean();
return $tab;
}
}
PK�
�['{jsMMurlinstaller/urlinstaller.xmlnu�[���<?xml
version="1.0" encoding="utf-8"?>
<extension version="3.6" type="plugin"
group="installer">
<name>PLG_INSTALLER_URLINSTALLER</name>
<author>Joomla! Project</author>
<creationDate>May 2016</creationDate>
<copyright>Copyright (C) 2005 - 2020 Open Source Matters. All rights
reserved.</copyright>
<license>GNU General Public License version 2 or later; see
LICENSE.txt</license>
<authorEmail>admin@joomla.org</authorEmail>
<authorUrl>www.joomla.org</authorUrl>
<version>3.6.0</version>
<description>PLG_INSTALLER_URLINSTALLER_PLUGIN_XML_DESCRIPTION</description>
<files>
<filename
plugin="urlinstaller">urlinstaller.php</filename>
</files>
<languages>
<language
tag="en-GB">en-GB.plg_installer_urlinstaller.ini</language>
<language
tag="en-GB">en-GB.plg_installer_urlinstaller.sys.ini</language>
</languages>
</extension>
PK�
�[��O���#folderinstaller/folderinstaller.phpnu�[���PK�
�[v��w__#Bfolderinstaller/folderinstaller.xmlnu�[���PK�
�[��.���
�folderinstaller/tmpl/default.phpnu�[���PK�
�[�,*�99helpdeskpro/helpdeskpro.phpnu�[���PK�
�[�aT�||�helpdeskpro/helpdeskpro.xmlnu�[���PK�
�[��|��>Qloginasuser/language/en-GB/en-GB.plg_installer_loginasuser.ininu�[���PK�
�[��|��B�loginasuser/language/en-GB/en-GB.plg_installer_loginasuser.sys.ininu�[���PK�
�[�V�%-loginasuser/language/en-GB/index.htmlnu�[���PK�
�[�V��loginasuser/language/index.htmlnu�[���PK�
�[?���loginasuser/loginasuser.phpnu�[���PK�
�[fv�PWW�*loginasuser/loginasuser.xmlnu�[���PK�
�[�m0=0=%�0loginasuser/script.install.helper.phpnu�[���PK�
�[U�Դ�nloginasuser/script.install.phpnu�[���PK�
�[��i%rpackageinstaller/packageinstaller.phpnu�[���PK�
�[���`ee%jvpackageinstaller/packageinstaller.xmlnu�[���PK�
�[�h~$~$!$zpackageinstaller/tmpl/default.phpnu�[���PK�
�[��ĸ88�rsmembership/index.htmlnu�[���PK�
�[h����r�rsmembership/rsmembership.phpnu�[���PK�
�[�aa�uuL�rsmembership/rsmembership.xmlnu�[���PK�
�[��ĸ88�rsticketspro/index.htmlnu�[���PK�
�[r��ӭ���rsticketspro/rsticketspro.phpnu�[���PK�
�[�0d<xx��rsticketspro/rsticketspro.xmlnu�[���PK�
�[L�smartslider3/index.htmlnu�[���PK�
�[�`�CC��smartslider3/smartslider3.phpnu�[���PK�
�[����#�smartslider3/smartslider3.xmlnu�[���PK�
�[�&�\\$�urlinstaller/tmpl/default.phpnu�[���PK�
�[�&����urlinstaller/urlinstaller.phpnu�[���PK�
�['{jsMM��urlinstaller/urlinstaller.xmlnu�[���PK�
��