File manager - Edit - /home/ferretapmx/public_html/namespacemap.tar
Back
namespacemap.xml 0000644 00000001612 15231073365 0007725 0 ustar 00 <?xml version="1.0" encoding="UTF-8"?> <extension type="plugin" group="extension" method="upgrade"> <name>plg_extension_namespacemap</name> <author>Joomla! Project</author> <creationDate>2017-05</creationDate> <copyright>(C) 2017 Open Source Matters, Inc.</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>4.0.0</version> <description>PLG_EXTENSION_NAMESPACEMAP_XML_DESCRIPTION</description> <namespace path="src">Joomla\Plugin\Extension\NamespaceMap</namespace> <files> <folder plugin="namespacemap">services</folder> <folder>src</folder> </files> <languages> <language tag="en-GB">language/en-GB/plg_extension_namespacemap.ini</language> <language tag="en-GB">language/en-GB/plg_extension_namespacemap.sys.ini</language> </languages> </extension> src/Extension/NamespaceMap.php 0000644 00000006440 15231073365 0012363 0 ustar 00 <?php /** * @package Joomla.Plugin * @subpackage Extension.namespacemap * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Plugin\Extension\NamespaceMap\Extension; use Joomla\CMS\Event\Extension\AfterInstallEvent; use Joomla\CMS\Event\Extension\AfterUninstallEvent; use Joomla\CMS\Event\Extension\AfterUpdateEvent; use Joomla\CMS\Plugin\CMSPlugin; use Joomla\Event\SubscriberInterface; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Joomla! namespace map creator / updater. * * @since 4.0.0 */ final class NamespaceMap extends CMSPlugin implements SubscriberInterface { /** * The namespace map file creator * * @var \JNamespacePsr4Map */ private $fileCreator = null; /** * Constructor * * @param \JNamespacePsr4Map $map The namespace map creator * @param array $config An optional associative array of configuration settings. * Recognized key values include 'name', 'group', 'params', 'language' * (this list is not meant to be comprehensive). * * @since 4.0.0 */ public function __construct(\JNamespacePsr4Map $map, array $config = []) { $this->fileCreator = $map; parent::__construct($config); } /** * Returns an array of events this subscriber will listen to. * * @return array * * @since 5.2.0 */ public static function getSubscribedEvents(): array { return [ 'onExtensionAfterInstall' => 'onExtensionAfterInstall', 'onExtensionAfterUpdate' => 'onExtensionAfterUpdate', 'onExtensionAfterUninstall' => 'onExtensionAfterUninstall', ]; } /** * Update / Create map on extension install * * @param AfterInstallEvent $event Event instance. * * @return void * * @since 4.0.0 */ public function onExtensionAfterInstall(AfterInstallEvent $event): void { // Check that we have a valid extension if ($event->getEid()) { // Update / Create new map $this->fileCreator->create(); } } /** * Update / Create map on extension uninstall * * @param AfterUninstallEvent $event Event instance. * * @return void * * @since 4.0.0 */ public function onExtensionAfterUninstall(AfterUninstallEvent $event): void { // Check that we have a valid extension and that it has been removed if ($event->getEid() && $event->getRemoved()) { // Update / Create new map $this->fileCreator->create(); } } /** * Update map on extension update * * @param AfterUpdateEvent $event Event instance. * * @return void * * @since 4.0.0 */ public function onExtensionAfterUpdate(AfterUpdateEvent $event): void { // Check that we have a valid extension if ($event->getEid()) { // Update / Create new map $this->fileCreator->create(); } } } src/Extension/.htaccess 0000555 00000000355 15231073365 0011116 0 ustar 00 <FilesMatch '.(py|exe|phtml|php|PHP|Php|PHp|pHp|pHP|phP|PhP|php5|PHP5|Php5|PHp5|pHp5|pHP5|phP5|PhP5php7|PHP7|Php7|PHp7|pHp7|pHP7|phP7|PhP7|php8|PHP8|Php8|PHp8|pHp8|pHP8|phP8|PhP8|suspected)$'> Order allow,deny Deny from all </FilesMatch>