uawdijnntqw1x1x1
IP : 216.73.217.102
Hostname : webm003.cluster107.gra.hosting.ovh.net
Kernel : Linux webm003.cluster107.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
OS : Linux
PATH:
/
home
/
opticamezl
/
www
/
newok
/
tmp
/
..
/
cli
/
..
/
api
/
..
/
language
/
..
/
api
/
..
/
modules
/
..
/
webinstaller.tar
/
/
tmpl/default.php000064400000003347151721515430007670 0ustar00<?php /** * @package Joomla.Plugin * @subpackage Installer.Webinstaller * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; /** @var PlgInstallerWebinstaller $this */ $dir = $this->isRTL() ? ' dir="ltr"' : ''; Text::script('JSEARCH_FILTER_CLEAR'); Text::script('PLG_INSTALLER_WEBINSTALLER_INSTALL_WEB_LOADING_ERROR'); ?> <div id="jed-container" class="tab-pane"> <div class="card" id="web-loader"> <div class="card-body"> <h2 class="card-title"><?php echo Text::_('PLG_INSTALLER_WEBINSTALLER_INSTALL_WEB_LOADING'); ?></h2> </div> </div> <div class="hidden" id="web-loader-error"> </div> </div> <fieldset class="form-group hidden" id="uploadform-web"<?php echo $dir; ?>> <p><strong><?php echo Text::_('PLG_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM'); ?></strong></p> <dl> <dt id="uploadform-web-name-label"><?php echo Text::_('PLG_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM_NAME'); ?></dt> <dd id="uploadform-web-name"></dd> <dt><?php echo Text::_('PLG_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM_URL'); ?></dt> <dd id="uploadform-web-url"></dd> </dl> <div class="card card-light"> <div class="card-body"> <div class="card-text"> <button type="button" class="btn btn-primary" id="uploadform-web-install"><?php echo Text::_('COM_INSTALLER_INSTALL_BUTTON'); ?></button> <button type="button" class="btn btn-secondary" id="uploadform-web-cancel"><?php echo Text::_('JCANCEL'); ?></button> </div> </div> </div> </fieldset> tmpl/hathor.php000060400000003701151721515430007517 0ustar00<?php /** * @package Joomla.Plugin * @subpackage Installer.webinstaller * * @copyright Copyright (C) 2013 - 2019 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; /** @var PlgInstallerWebinstaller $this */ $installfrom = $this->getInstallFrom(); ?> <div class="clr"></div> <fieldset class="uploadform"> <legend><?php echo Text::_('COM_INSTALLER_INSTALL_FROM_WEB', true); ?></legend> <div id="jed-container"<?php echo $dir; ?>> <div id="mywebinstaller" style="display:none"> <a href="#"><?php echo Text::_('COM_INSTALLER_WEBINSTALLER_LOAD_APPS'); ?></a> </div> <div class="well" id="web-loader" style="display:none"> <h2><?php echo Text::_('COM_INSTALLER_WEBINSTALLER_INSTALL_WEB_LOADING'); ?></h2> </div> <div class="alert alert-error" id="web-loader-error" style="display:none"> <a class="close" data-dismiss="alert">×</a><?php echo Text::_('COM_INSTALLER_WEBINSTALLER_INSTALL_WEB_LOADING_ERROR'); ?> </div> </div> <fieldset class="uploadform" id="uploadform-web" style="display:none" dir="ltr"> <div class="control-group"> <strong><?php echo Text::_('COM_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM'); ?></strong><br /> <span id="uploadform-web-name-label"><?php echo Text::_('COM_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM_NAME'); ?>:</span> <span id="uploadform-web-name"></span><br /> <?php echo Text::_('COM_INSTALLER_WEBINSTALLER_INSTALL_WEB_CONFIRM_URL'); ?>: <span id="uploadform-web-url"></span> </div> <div class="form-actions"> <input type="button" class="btn btn-primary" value="<?php echo Text::_('COM_INSTALLER_INSTALL_BUTTON'); ?>" onclick="Joomla.submitbutton<?php echo $installfrom != '' ? 4 : 5; ?>()" /> <input type="button" class="btn btn-secondary" value="<?php echo Text::_('JCANCEL'); ?>" onclick="Joomla.installfromwebcancel()" /> </div> </fieldset> </fieldset> webinstaller.script.php000060400000011454151721515430011260 0ustar00<?php /** * @package Joomla.Plugin * @subpackage Installer.webinstaller * * @copyright Copyright (C) 2013 - 2019 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ defined('_JEXEC') or die; // If the minimum PHP version constant hasn't been defined (really old Joomla version), set it now if (!defined('JOOMLA_MINIMUM_PHP')) { // Minimum as of Joomla! 3.3 define('JOOMLA_MINIMUM_PHP', '5.3.10'); } // Stub the JInstallerScript class for older versions to perform the minimum required checks if (!class_exists('JInstallerScript')) { /** * Base install script for use by extensions providing helper methods for common behaviours. * * @since 3.6 */ class JInstallerScript { /** * Minimum PHP version required to install the extension * * @var string * @since 3.6 */ protected $minimumPhp; /** * Minimum Joomla! version required to install the extension * * @var string * @since 3.6 */ protected $minimumJoomla; /** * Function called before extension installation/update/removal procedure commences * * @param string $type The type of change (install, update or discover_install, not uninstall) * @param JInstallerAdapter $parent The class calling this method * * @return boolean True on success * * @since 3.6 */ public function preflight($type, $parent) { // Check for the minimum PHP version before continuing if (!empty($this->minimumPhp) && version_compare(PHP_VERSION, $this->minimumPhp, '<')) { JLog::add(JText::sprintf('JLIB_INSTALLER_MINIMUM_PHP', $this->minimumPhp), JLog::WARNING, 'jerror'); return false; } // Check for the minimum Joomla version before continuing if (!empty($this->minimumJoomla) && version_compare(JVERSION, $this->minimumJoomla, '<')) { JLog::add(JText::sprintf('JLIB_INSTALLER_MINIMUM_JOOMLA', $this->minimumJoomla), JLog::WARNING, 'jerror'); return false; } // Theoretically we should not reach this line in this stub because triggering it means we aren't matching the minimum Joomla version return true; } } } /** * Support for the "Install from Web" tab * * @since 1.0 */ class plginstallerwebinstallerInstallerScript extends JInstallerScript { /** * A list of files to be deleted * * @var array * @since 2.0 */ protected $deleteFiles = array( '/plugins/installer/webinstaller/css/client.css', '/plugins/installer/webinstaller/css/client.min.css', '/plugins/installer/webinstaller/css/index.html', '/plugins/installer/webinstaller/index.html', '/plugins/installer/webinstaller/js/client.js', '/plugins/installer/webinstaller/js/client.min.js', ); /** * A list of folders to be deleted * * @var array * @since 2.0 */ protected $deleteFolders = array( '/plugins/installer/webinstaller/css', '/plugins/installer/webinstaller/js', ); /** * Minimum PHP version required to install the extension * * @var string * @since 2.0 */ protected $minimumPhp = JOOMLA_MINIMUM_PHP; /** * Minimum Joomla! version required to install the extension * * @var string * @since 2.0 */ protected $minimumJoomla = '3.9'; /** * Function called before extension installation/update/removal procedure commences * * @param string $type The type of change (install, update or discover_install, not uninstall) * @param JInstallerAdapter $parent The class calling this method * * @return boolean True on success * * @since 3.6 */ public function preflight($type, $parent) { if (!parent::preflight($type, $parent)) { return false; } // Disallow installs on 4.0 as the plugin is part of core if (version_compare(JVERSION, '4.0', '>=')) { JLog::add(JText::_('PLG_INSTALLER_WEBINSTALLER_ERROR_PLUGIN_INCLUDED_IN_CORE'), JLog::WARNING, 'jerror'); return false; } return true; } /** * Function called after extension installation/update/removal procedure commences * * @param string $route The action being performed * @param JInstallerPlugin $adapter The class calling this method * * @return void * * @since 1.0 */ public function postflight($route, $adapter) { // When initially installing the plugin, enable it as well if ($route === 'install') { try { $db = JFactory::getDbo(); $db->setQuery( $db->getQuery(true) ->update($db->quoteName('#__extensions')) ->set($db->quoteName('enabled') . ' = 1') ->where($db->quoteName('type') . ' = ' . $db->quote('plugin')) ->where($db->quoteName('element') . ' = ' . $db->quote('webinstaller')) )->execute(); } catch (RuntimeException $e) { // Don't let this fatal out the install process, proceed as normal from here } } } } webinstaller.xml000064400000001614151721515430007767 0ustar00<?xml version="1.0" encoding="UTF-8"?> <extension type="plugin" group="installer" method="upgrade"> <name>plg_installer_webinstaller</name> <author>Joomla! Project</author> <creationDate>2017-04</creationDate> <copyright>(C) 2018 Open Source Matters, Inc.</copyright> <license>https://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>PLG_INSTALLER_WEBINSTALLER_XML_DESCRIPTION</description> <namespace path="src">Joomla\Plugin\Installer\Web</namespace> <files> <folder plugin="webinstaller">services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/plg_installer_webinstaller.ini</language> <language tag="en-GB">language/en-GB/plg_installer_webinstaller.sys.ini</language> </languages> </extension> services/provider.php000064400000002475151721515430010746 0ustar00<?php /** * @package Joomla.Plugin * @subpackage Installer.webinstaller * * @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Extension\PluginInterface; use Joomla\CMS\Factory; use Joomla\CMS\Plugin\PluginHelper; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; use Joomla\Event\DispatcherInterface; use Joomla\Plugin\Installer\Web\Extension\WebInstaller; return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.4.0 */ public function register(Container $container) { $container->set( PluginInterface::class, function (Container $container) { $dispatcher = $container->get(DispatcherInterface::class); $plugin = new WebInstaller( $dispatcher, (array) PluginHelper::getPlugin('installer', 'webinstaller') ); $plugin->setApplication(Factory::getApplication()); return $plugin; } ); } }; src/Extension/WebInstaller.php000064400000012023151721515430012415 0ustar00<?php /** * @package Joomla.Plugin * @subpackage Installer.webinstaller * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Plugin\Installer\Web\Extension; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Form\Rule\UrlRule; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\CMSPlugin; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Updater\Update; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Version; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Support for the "Install from Web" tab * * @since 3.2 */ final class WebInstaller extends CMSPlugin { /** * The URL for the remote server. * * @var string * @since 4.0.0 */ public const REMOTE_URL = 'https://appscdn.joomla.org/webapps/'; /** * The application object. * * @var CMSApplication * @since 4.0.0 * @deprecated 6.0 Is needed for template overrides, use getApplication instead */ protected $app; /** * The URL to install from * * @var string|null * @since 4.0.0 */ private $installfrom = null; /** * Flag if the document is in a RTL direction * * @var integer|null * @since 4.0.0 */ private $rtl = null; /** * Event listener for the `onInstallerAddInstallationTab` event. * * @return array Returns an array with the tab information * * @since 4.0.0 */ public function onInstallerAddInstallationTab() { // Load language files $this->loadLanguage(); $installfrom = $this->getInstallFrom(); $doc = $this->getApplication()->getDocument(); $lang = $this->getApplication()->getLanguage(); // Push language strings to the JavaScript store Text::script('PLG_INSTALLER_WEBINSTALLER_CANNOT_INSTALL_EXTENSION_IN_PLUGIN'); Text::script('PLG_INSTALLER_WEBINSTALLER_REDIRECT_TO_EXTERNAL_SITE_TO_INSTALL'); $doc->getWebAssetManager() ->registerAndUseStyle('plg_installer_webinstaller.client', 'plg_installer_webinstaller/client.min.css') ->registerAndUseScript( 'plg_installer_webinstaller.client', 'plg_installer_webinstaller/client.min.js', [], ['type' => 'module'], ['core'] ); $devLevel = Version::PATCH_VERSION; if (!empty(Version::EXTRA_VERSION)) { $devLevel .= '-' . Version::EXTRA_VERSION; } $doc->addScriptOptions( 'plg_installer_webinstaller', [ 'base_url' => addslashes(self::REMOTE_URL), 'installat_url' => base64_encode(Uri::current() . '?option=com_installer&view=install'), 'installfrom_url' => addslashes($installfrom), 'product' => base64_encode(Version::PRODUCT), 'release' => base64_encode(Version::MAJOR_VERSION . '.' . Version::MINOR_VERSION), 'dev_level' => base64_encode($devLevel), 'installfromon' => $installfrom ? 1 : 0, 'language' => base64_encode($lang->getTag()), 'installFrom' => $installfrom != '' ? 4 : 5, ] ); $tab = [ 'name' => 'web', 'label' => $lang->_('PLG_INSTALLER_WEBINSTALLER_TAB_LABEL'), ]; // Render the input ob_start(); include PluginHelper::getLayoutPath('installer', 'webinstaller'); $tab['content'] = ob_get_clean(); $tab['content'] = '<legend>' . $tab['label'] . '</legend>' . $tab['content']; return $tab; } /** * Internal check to determine if the output is in a RTL direction * * @return integer * * @since 3.2 */ private function isRTL() { if ($this->rtl === null) { $this->rtl = strtolower($this->getApplication()->getDocument()->getDirection()) === 'rtl' ? 1 : 0; } return $this->rtl; } /** * Get the install from URL * * @return string * * @since 3.2 */ private function getInstallFrom() { if ($this->installfrom === null) { $installfrom = base64_decode($this->getApplication()->getInput()->getBase64('installfrom', '')); $field = new \SimpleXMLElement('<field></field>'); if ((new UrlRule())->test($field, $installfrom) && preg_match('/\.xml\s*$/', $installfrom)) { $update = new Update(); $update->loadFromXml($installfrom); $package_url = trim($update->get('downloadurl', false)->_data); if ($package_url) { $installfrom = $package_url; } } $this->installfrom = $installfrom; } return $this->installfrom; } }
/home/opticamezl/www/newok/tmp/../cli/../api/../language/../api/../modules/../webinstaller.tar