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
/
language
/
..
/
cache
/
.
/
..
/
tmp
/
..
/
plugins
/
..
/
cli
/
..
/
api
/
..
/
api
/
..
/
joomla.zip
/
/
PK 9�\^���field/TraitShack.phpnu&1i�<?php /** * @package OSMap * @contact www.joomlashack.com, help@joomlashack.com * @copyright 2021-2023 Joomlashack.com. All rights reserved * @license https://www.gnu.org/licenses/gpl.html GNU/GPL * * This file is part of OSMap. * * OSMap is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * OSMap is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OSMap. If not, see <https://www.gnu.org/licenses/>. */ use Alledia\Framework\Factory; defined('_JEXEC') or die(); trait TraitShack { protected static $frameworkLoaded = null; /** * @return bool */ protected function isPro() { if ($this->isFrameworkLoaded()) { $license = Factory::getExtension('osmap', 'component'); return $license->isPro(); } return false; } /** * @return null */ protected function isFrameworkLoaded() { if (static::$frameworkLoaded === null) { if (!defined('ALLEDIA_FRAMEWORK_LOADED')) { $path = JPATH_SITE . '/libraries/allediaframework/include.php'; if (is_file($path)) { require_once $path; } } static::$frameworkLoaded = defined('ALLEDIA_FRAMEWORK_LOADED'); } return static::$frameworkLoaded; } } PK 9�\�z���field/radio.phpnu&1i�<?php /** * @package OSMap * @contact www.joomlashack.com, help@joomlashack.com * @copyright 2021-2023 Joomlashack.com. All rights reserved * @license https://www.gnu.org/licenses/gpl.html GNU/GPL * * This file is part of OSMap. * * OSMap is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * OSMap is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OSMap. If not, see <https://www.gnu.org/licenses/>. */ use Joomla\CMS\Form\FormHelper; defined('_JEXEC') or die(); require_once __DIR__ . '/TraitShack.php'; FormHelper::loadFieldClass('radio'); class ShackFormFieldRadio extends JFormFieldRadio { use TraitShack; public function setup(SimpleXMLElement $element, $value, $group = null) { return $this->isPro() && parent::setup($element, $value, $group); } } PK 9�\���u��)language/en-GB/en-GB.plg_osmap_joomla.ininu&1i�; @package OSMap ; @contact www.joomlashack.com, help@joomlashack.com ; @copyright 2007-2014 XMap - Joomla! Vargas - Guillermo Vargas. All rights reserved. ; @copyright 2016-2023 Joomlashack.com. All rights reserved. ; @license https://www.gnu.org/licenses/gpl.html GNU/GPL ; ; This file is part of OSMap. ; ; OSMap is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 2 of the License, or ; (at your option) any later version. ; ; OSMap is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with OSMap. If not, see <https://www.gnu.org/licenses/>. ; ; Note : All ini files need to be saved as UTF-8 - No BOM PLG_OSMAP_JOOMLA = "OSMap - Joomla Content" PLG_OSMAP_JOOMLA_PLUGIN_DESCRIPTION = "Add support for articles and categories" COM_PLUGINS_BASIC_FIELDSET_LABEL = "Basic Settings" COM_PLUGINS_NEWS_FIELDSET_LABEL = "News Sitemap Settings" COM_PLUGINS_XML_FIELDSET_LABEL = "XML Sitemap Settings" JGLOBAL_FIELDSET_NEWS = "News" JGLOBAL_FIELDSET_XML = "XML" PLG_OSMAP_JOOMLA_OPTION_ALL = "All" PLG_OSMAP_JOOMLA_OPTION_ALWAYS = "Always" PLG_OSMAP_JOOMLA_OPTION_ASC = "ASC" PLG_OSMAP_JOOMLA_OPTION_CREATED = "Creation Date" PLG_OSMAP_JOOMLA_OPTION_DAILY = "Daily" PLG_OSMAP_JOOMLA_OPTION_DESC = "DESC" PLG_OSMAP_JOOMLA_OPTION_HITS = "Visits" PLG_OSMAP_JOOMLA_OPTION_HOURLY = "Hourly" PLG_OSMAP_JOOMLA_OPTION_HTML_ONLY = "In HTML Sitemap Only" PLG_OSMAP_JOOMLA_OPTION_MODIFIED = "Modification Date" PLG_OSMAP_JOOMLA_OPTION_MONTHLY = "Monthly" PLG_OSMAP_JOOMLA_OPTION_NEVER = "Never" PLG_OSMAP_JOOMLA_OPTION_ORDERING = "Ordering" PLG_OSMAP_JOOMLA_OPTION_PUBLISH = "Publish Date" PLG_OSMAP_JOOMLA_OPTION_TITLE = "Title" PLG_OSMAP_JOOMLA_OPTION_USE_PARENT_MENU = "Use Parent Menu Settings" PLG_OSMAP_JOOMLA_OPTION_WEEKLY = "Weekly" PLG_OSMAP_JOOMLA_OPTION_XML_ONLY = "In XML Sitemap Only" PLG_OSMAP_JOOMLA_OPTION_YEARLY = "Yearly" PLG_OSMAP_JOOMLA_SETTING_ADD_IMAGES_DESC = "If yes, will parse the content of the article searching for images to add them to the site map. Valid Only for XML site map (Search engines Sitemap) " PLG_OSMAP_JOOMLA_SETTING_ADD_IMAGES_LABEL = "Add images?" PLG_OSMAP_JOOMLA_SETTING_ADD_PAGEBREAKS_DESC = "If yes, will include the sub-pages of the article into the sitemap." PLG_OSMAP_JOOMLA_SETTING_ADD_PAGEBREAKS_LABEL = "Add Pagebreak" PLG_OSMAP_JOOMLA_SETTING_ART_CHANCE_FREQ = "Article Change frequency" PLG_OSMAP_JOOMLA_SETTING_ART_CHANCE_FREQ_DESC = "Set the chage frequency for articles" PLG_OSMAP_JOOMLA_SETTING_ART_PRIORITY = "Article Priority" PLG_OSMAP_JOOMLA_SETTING_ART_PRIORITY_DESC = "Set the priority for articles" PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DESC = "Specify how to sort the articles" PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DIR_DESC = "Specify the direction for article's ordering" PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DIR_LABEL = "Article ordering direction" PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_LABEL = "Article ordering" PLG_OSMAP_JOOMLA_SETTING_CAT_CHANCE_FREQ = "Category Change frequency" PLG_OSMAP_JOOMLA_SETTING_CAT_CHANCE_FREQ_DESC = "Set the chage frequency for the categories" PLG_OSMAP_JOOMLA_SETTING_CAT_PRIORITY = "Category Priority" PLG_OSMAP_JOOMLA_SETTING_CAT_PRIORITY_DESC = "Set the priority for the categories" PLG_OSMAP_JOOMLA_SETTING_EXPAND_CATEGORIES = "Expand Categories" PLG_OSMAP_JOOMLA_SETTING_EXPAND_CATEGORIES_DESC = "Set true if OSMap should include the articles within each category link" PLG_OSMAP_JOOMLA_SETTING_EXPAND_FEATURED = "Expand Featured" PLG_OSMAP_JOOMLA_SETTING_EXPAND_FEATURED_DESC = "Set true if OSMap should include the articles within each "Featured Articles" link (usually the frontpage menu item)" PLG_OSMAP_JOOMLA_SETTING_INCLUDE_ARCHIVED = "Include Archived" PLG_OSMAP_JOOMLA_SETTING_INCLUDE_ARCHIVED_DESC = "Select when should the archived articles be included in the sitemap" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_AGE = "Max. Article's Age in days" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_AGE_DESC = "The maximun number of days that an article must have to be included in the sitemap. (0 for no limit)" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_CAT = "Max. Articles per Category" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_CAT_DESC = "Maximum number of articles per category to include in the sitemap (0 for no limit)." PLG_OSMAP_JOOMLA_SETTING_MAX_CATEG_LEVEL_LABEL = "Max Subcategory Levels" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_CATTITLE = "Catetegory Title" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_DESC = "Which keywords should we use for Google News Sitemap?" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_LABEL = "Keywords" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_METAKEYS = "Article's Metakeys" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_METAKEYS_CATTITLE = "Article's Metakeys + Category Title" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_NONE = "None" PLG_OSMAP_JOOMLA_SETTING_PREPARE_CONTENT_DESC = "Optionally prepare the content with the Joomla Content Plugins." PLG_OSMAP_JOOMLA_SETTING_PREPARE_CONTENT_LABEL = "Prepare Content" PLG_OSMAP_JOOMLA_SETTING_SHOW_UNAUTH_LINKS = "Show Unauthorized Links" PLG_OSMAP_JOOMLA_SETTING_SHOW_UNAUTH_LINKS_DESC = "If yes, will show links to content to registered content even if you are not logged in. The user will need to login to see the item in full." PK 9�\N�� ZZ-language/en-GB/en-GB.plg_osmap_joomla.sys.ininu&1i�; @package OSMap ; @contact www.joomlashack.com, help@joomlashack.com ; @copyright 2007-2014 XMap - Joomla! Vargas - Guillermo Vargas. All rights reserved. ; @copyright 2016-2023 Joomlashack.com. All rights reserved. ; @license https://www.gnu.org/licenses/gpl.html GNU/GPL ; ; This file is part of OSMap. ; ; OSMap is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 2 of the License, or ; (at your option) any later version. ; ; OSMap is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with OSMap. If not, see <https://www.gnu.org/licenses/>. ; ; Note : All ini files need to be saved as UTF-8 - No BOM PLG_OSMAP_JOOMLA = "OSMap - Joomla Content" PLG_OSMAP_JOOMLA_PLUGIN_DESCRIPTION = "Add support for articles and categories" PK 9�\�Eh��)language/tr-TR/tr-TR.plg_osmap_joomla.ininu&1i�; @package OSMap ; @contact www.joomlashack.com, help@joomlashack.com ; @copyright 2007-2014 XMap - Joomla! Vargas - Guillermo Vargas. All rights reserved. ; @copyright 2016-2023 Joomlashack.com. All rights reserved. ; @license https://www.gnu.org/licenses/gpl.html GNU/GPL ; ; This file is part of OSMap. ; ; OSMap is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 2 of the License, or ; (at your option) any later version. ; ; OSMap is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with OSMap. If not, see <https://www.gnu.org/licenses/>. ; ; Note : All ini files need to be saved as UTF-8 - No BOM PLG_OSMAP_JOOMLA="OSMap - Joomla İçeriği" PLG_OSMAP_JOOMLA_PLUGIN_DESCRIPTION = "Makaleler ve kategoriler için destek eklenir." COM_PLUGINS_BASIC_FIELDSET_LABEL = "Temel Ayarlar" COM_PLUGINS_NEWS_FIELDSET_LABEL = "Haber Site Haritası Ayarları" COM_PLUGINS_XML_FIELDSET_LABEL = "XML Site Haritası Ayarları" JGLOBAL_FIELDSET_NEWS = "Haber" JGLOBAL_FIELDSET_XML = "XML" PLG_OSMAP_JOOMLA_OPTION_ALL = "Tümü" PLG_OSMAP_JOOMLA_OPTION_ALWAYS = "Her Zaman" PLG_OSMAP_JOOMLA_OPTION_ASC = "Artan" PLG_OSMAP_JOOMLA_OPTION_CREATED = "Oluşturma Tarihi" PLG_OSMAP_JOOMLA_OPTION_DAILY = "Günlük" PLG_OSMAP_JOOMLA_OPTION_DESC = "Azalan" PLG_OSMAP_JOOMLA_OPTION_HITS = "Ziyaretler" PLG_OSMAP_JOOMLA_OPTION_HOURLY = "Saatlik" PLG_OSMAP_JOOMLA_OPTION_HTML_ONLY = "Yalnız HTML Site Haritasında" PLG_OSMAP_JOOMLA_OPTION_MODIFIED = "Değişiklik Tarihi" PLG_OSMAP_JOOMLA_OPTION_MONTHLY = "Aylık" PLG_OSMAP_JOOMLA_OPTION_NEVER = "Asla" PLG_OSMAP_JOOMLA_OPTION_ORDERING = "Sıralama" PLG_OSMAP_JOOMLA_OPTION_PUBLISH = "Yayınlama Tarihi" PLG_OSMAP_JOOMLA_OPTION_TITLE = "Başlık" PLG_OSMAP_JOOMLA_OPTION_USE_PARENT_MENU = "Üst Menü Ayarları Kullanılsın" PLG_OSMAP_JOOMLA_OPTION_WEEKLY = "Haftalık" PLG_OSMAP_JOOMLA_OPTION_XML_ONLY = "Yalnız XML Site Haritasında" PLG_OSMAP_JOOMLA_OPTION_YEARLY = "Yıllık" PLG_OSMAP_JOOMLA_SETTING_ADD_IMAGES_DESC = "Evetse, site haritasına eklemek için resim arayan makalenin içeriğini ayrıştırır. Yalnızca XML site haritası için geçerlidir (Arama Motorları Site Haritası)." PLG_OSMAP_JOOMLA_SETTING_ADD_IMAGES_LABEL = "Görüntüler Eklensin mi?" PLG_OSMAP_JOOMLA_SETTING_ADD_PAGEBREAKS_DESC = "Evetse, makalenin alt sayfaları site haritasına eklenir." PLG_OSMAP_JOOMLA_SETTING_ADD_PAGEBREAKS_LABEL = "Sayfa Sonu Eklensin" PLG_OSMAP_JOOMLA_SETTING_ART_CHANCE_FREQ = "Makale Değişiklik Sıklığı" PLG_OSMAP_JOOMLA_SETTING_ART_CHANCE_FREQ_DESC = "Makaleler için değiştirme sıklığını ayarlayın." PLG_OSMAP_JOOMLA_SETTING_ART_PRIORITY = "Makale Önceliği" PLG_OSMAP_JOOMLA_SETTING_ART_PRIORITY_DESC = "Makaleler için önceliği ayarlayın." PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DESC = "Makalelerin nasıl sıralanacağını belirtin." PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DIR_DESC = "Makalelerin sıralama yönünü belirtin." PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_DIR_LABEL = "Makale Sıralama Yönü" PLG_OSMAP_JOOMLA_SETTING_ARTICLE_ORDER_LABEL = "Makale Sıralaması" PLG_OSMAP_JOOMLA_SETTING_CAT_CHANCE_FREQ = "Kategori Değişiklik Sıklığı" PLG_OSMAP_JOOMLA_SETTING_CAT_CHANCE_FREQ_DESC = "Kategoriler için değiştirme sıklığını ayarlayın." PLG_OSMAP_JOOMLA_SETTING_CAT_PRIORITY = "Kategori Önceliği" PLG_OSMAP_JOOMLA_SETTING_CAT_PRIORITY_DESC = "Kategoriler için önceliği ayarlayın." PLG_OSMAP_JOOMLA_SETTING_EXPAND_CATEGORIES = "Kategoriler Genişletilsin" PLG_OSMAP_JOOMLA_SETTING_EXPAND_CATEGORIES_DESC = "OSMap'in her kategori bağlantısındaki makaleleri içermesi gerekiyorsa doğru olarak ayarlayın." PLG_OSMAP_JOOMLA_SETTING_EXPAND_FEATURED = "Öne Çıkanlar Genişletilsin" PLG_OSMAP_JOOMLA_SETTING_EXPAND_FEATURED_DESC = "OSMap'in "Öne Çıkan Makaleler" bağlantılarındaki (genellikle ön sayfa menü öğesi) makaleleri içermesi gerekiyorsa doğru olarak ayarlayın." PLG_OSMAP_JOOMLA_SETTING_INCLUDE_ARCHIVED = "Arşivlenen Eklensin" PLG_OSMAP_JOOMLA_SETTING_INCLUDE_ARCHIVED_DESC = "Arşivlenen makalelerin site haritasına ne zaman dahil edileceğini seçin." PLG_OSMAP_JOOMLA_SETTING_MAX_ART_AGE = "Gün Içinde Makalenin Maksimum Ömrü" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_AGE_DESC = "Bir makalenin site haritasına eklenmesi gereken maksiumum gün sayısı. (sınırsız için 0)" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_CAT = "Kategori Başına Maksimum Makale" PLG_OSMAP_JOOMLA_SETTING_MAX_ART_CAT_DESC = "Site haritasına dahil edilecek kategori başına maksimum makale sayısı (sınırsız için 0)." PLG_OSMAP_JOOMLA_SETTING_MAX_CATEG_LEVEL_LABEL = "Maksimum Alt Kategori Seviyesi" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_CATTITLE = "Kategori Başlığı" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_DESC = "Google Haberler Site Haritası için hangi anahtar kelimeler kullanılsın?" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_LABEL = "Anahtar Kelimeler" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_METAKEYS = "Makalenin Meta Anahtarları" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_METAKEYS_CATTITLE = "Makalenin Meta Anahtarları + Kategori Başlığı" PLG_OSMAP_JOOMLA_SETTING_NEWS_KEYWORDS_NONE = "Hiçbiri" PLG_OSMAP_JOOMLA_SETTING_PREPARE_CONTENT_DESC = "İsteğe bağlı olarak Joomla İçerik Eklentileri ile içeriği hazırlayın." PLG_OSMAP_JOOMLA_SETTING_PREPARE_CONTENT_LABEL = "İçerik Hazırlama" PLG_OSMAP_JOOMLA_SETTING_SHOW_UNAUTH_LINKS = "Yetkisiz Bağlantılar Gösterilsin" PLG_OSMAP_JOOMLA_SETTING_SHOW_UNAUTH_LINKS_DESC = "Evet ise, oturum açmamış olsanız bile kayıtlı içeriğe içerik bağlantıları gösterilir. Kullanıcının öğeyi tam olarak görebilmesi için giriş yapması gerekir." PK 9�\��ؐ^^-language/tr-TR/tr-TR.plg_osmap_joomla.sys.ininu&1i�; @package OSMap ; @contact www.joomlashack.com, help@joomlashack.com ; @copyright 2007-2014 XMap - Joomla! Vargas - Guillermo Vargas. All rights reserved. ; @copyright 2016-2023 Joomlashack.com. All rights reserved. ; @license https://www.gnu.org/licenses/gpl.html GNU/GPL ; ; This file is part of OSMap. ; ; OSMap is free software: you can redistribute it and/or modify ; it under the terms of the GNU General Public License as published by ; the Free Software Foundation, either version 2 of the License, or ; (at your option) any later version. ; ; OSMap is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License ; along with OSMap. If not, see <https://www.gnu.org/licenses/>. ; ; Note : All ini files need to be saved as UTF-8 - No BOM PLG_OSMAP_JOOMLA="OSMap - Joomla İçerik" PLG_OSMAP_JOOMLA_PLUGIN_DESCRIPTION="Makaleler ve kategoriler için destek eklenir." PK 9�\ew6fefe joomla.phpnu&1i�<?php /** * @package OSMap * @contact www.joomlashack.com, help@joomlashack.com * @copyright 2007-2014 XMap - Joomla! Vargas - Guillermo Vargas. All rights reserved. * @copyright 2016-2023 Joomlashack.com. All rights reserved. * @license https://www.gnu.org/licenses/gpl.html GNU/GPL * * This file is part of OSMap. * * OSMap is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 2 of the License, or * (at your option) any later version. * * OSMap is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with OSMap. If not, see <https://www.gnu.org/licenses/>. */ use Alledia\OSMap\Factory; use Alledia\OSMap\Helper\General; use Alledia\OSMap\Plugin\Base; use Alledia\OSMap\Plugin\ContentInterface; use Alledia\OSMap\Sitemap\Collector; use Alledia\OSMap\Sitemap\Item; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Uri\Uri; use Joomla\Registry\Registry; use Joomla\Utilities\ArrayHelper; defined('_JEXEC') or die(); JLoader::register('ContentHelperRoute', JPATH_SITE . '/components/com_content/helpers/route.php'); JLoader::register('ContentHelperQuery', JPATH_SITE . '/components/com_content/helpers/query.php'); /** * Handles standard Joomla's Content articles/categories * * This plugin is able to expand the categories keeping the right order of the * articles according to the menu settings and the user session data (user state). * * This is a very complex plugin, if you are trying to build your own plugin * for other component, I suggest you to take a look to another plugis as * they are usually most simple. ;) */ class PlgOSMapJoomla extends Base implements ContentInterface { /** * @var self */ protected static $instance = null; /** * @var bool */ protected static $prepareContent = null; /** * Returns the unique instance of the plugin * * @return self */ public static function getInstance() { if (empty(static::$instance)) { $dispatcher = Factory::getDispatcher(); static::$instance = new self($dispatcher); } return static::$instance; } /** * Returns the element of the component which this plugin supports. * * @return string */ public function getComponentElement() { return 'com_content'; } /** * This function is called before a menu item is used. We use it to set the * proper uniqueid for the item * * @param Item $node Menu item to be "prepared" * @param Registry $params The extension params * * @return bool * @throws Exception */ public static function prepareMenuItem($node, $params) { static::checkMemory(); $db = Factory::getDbo(); $container = Factory::getPimpleContainer(); $linkQuery = parse_url($node->link); if (!isset($linkQuery['query'])) { return false; } parse_str(html_entity_decode($linkQuery['query']), $linkVars); $view = ArrayHelper::getValue($linkVars, 'view', ''); $id = ArrayHelper::getValue($linkVars, 'id', 0); switch ($view) { case 'archive': $node->adapterName = 'JoomlaCategory'; $node->uid = 'joomla.archive.' . $node->id; $node->expandible = true; break; case 'featured': $node->adapterName = 'JoomlaCategory'; $node->uid = 'joomla.featured.' . $node->id; $node->expandible = true; break; case 'categories': case 'category': $node->adapterName = 'JoomlaCategory'; $node->uid = 'joomla.category.' . $id; $node->expandible = true; break; case 'article': $node->adapterName = 'JoomlaArticle'; $node->expandible = false; $paramAddPageBreaks = $params->get('add_pagebreaks', 1); $paramAddImages = $params->get('add_images', 1); $query = $db->getQuery(true) ->select([ $db->quoteName('created'), $db->quoteName('modified'), $db->quoteName('publish_up'), $db->quoteName('metadata'), $db->quoteName('attribs') ]) ->from($db->quoteName('#__content')) ->where($db->quoteName('id') . '=' . (int)$id); if ($paramAddPageBreaks || $paramAddImages) { $query->select([ $db->quoteName('introtext'), $db->quoteName('fulltext'), $db->quoteName('images') ]); } $db->setQuery($query); if (($item = $db->loadObject()) != null) { // Set the node UID $node->uid = 'joomla.article.' . $id; // Set dates $node->modified = $item->modified; $node->created = $item->created; $node->publishUp = $item->publish_up; $item->params = $item->attribs; $text = ''; if (isset($item->introtext) && isset($item->fulltext)) { $text = $item->introtext . $item->fulltext; } static::prepareContent($text, $params); if ($paramAddImages) { $maxImages = $params->get('max_images', 1000); $node->images = []; // Images from text $node->images = array_merge( $node->images, $container->imagesHelper->getImagesFromText($text, $maxImages) ); // Images from params if (!empty($item->images)) { $node->images = array_merge( $node->images, $container->imagesHelper->getImagesFromParams($item) ); } } if ($paramAddPageBreaks) { $node->subnodes = General::getPagebreaks($text, $node->link, $node->uid); $node->expandible = (count($node->subnodes) > 0); // This article has children } } else { return false; } break; } return true; } /** * Expands a com_content menu item * * @param Collector $collector * @param Item $parent * @param Registry $params * * @return void * @throws Exception */ public static function getTree($collector, $parent, $params) { $db = Factory::getDbo(); $linkQuery = parse_url($parent->link); if (!isset($linkQuery['query'])) { return; } parse_str(html_entity_decode($linkQuery['query']), $linkVars); $view = ArrayHelper::getValue($linkVars, 'view', ''); $id = intval(ArrayHelper::getValue($linkVars, 'id', '')); /* * Parameters Initialisation */ $paramExpandCategories = $params->get('expand_categories', 1) > 0; $paramExpandFeatured = $params->get('expand_featured', 1); $paramIncludeArchived = $params->get('include_archived', 2); $paramAddPageBreaks = $params->get('add_pagebreaks', 1); $paramCatPriority = $params->get('cat_priority', $parent->priority); $paramCatChangefreq = $params->get('cat_changefreq', $parent->changefreq); if ($paramCatPriority == '-1') { $paramCatPriority = $parent->priority; } if ($paramCatChangefreq == '-1') { $paramCatChangefreq = $parent->changefreq; } $params->set('cat_priority', $paramCatPriority); $params->set('cat_changefreq', $paramCatChangefreq); $paramArtPriority = $params->get('art_priority', $parent->priority); $paramArtChangefreq = $params->get('art_changefreq', $parent->changefreq); if ($paramArtPriority == '-1') { $paramArtPriority = $parent->priority; } if ($paramArtChangefreq == '-1') { $paramArtChangefreq = $parent->changefreq; } $params->set('art_priority', $paramArtPriority); $params->set('art_changefreq', $paramArtChangefreq); // If enabled, loads the page break language if ($paramAddPageBreaks && !defined('OSMAP_PLUGIN_JOOMLA_LOADED')) { // Load it just once define('OSMAP_PLUGIN_JOOMLA_LOADED', 1); Factory::getLanguage()->load('plg_content_pagebreak'); } switch ($view) { case 'category': if (empty($id)) { $id = intval($params->get('id', 0)); } if ($paramExpandCategories && $id) { static::expandCategory($collector, $parent, $id, $params, $parent->id); } break; case 'featured': if ($paramExpandFeatured) { static::includeCategoryContent($collector, $parent, 'featured', $params); } break; case 'categories': if ($paramExpandCategories) { if (empty($id)) { $id = 1; } static::expandCategory($collector, $parent, $id, $params, $parent->id); } break; case 'archive': if ($paramIncludeArchived) { static::includeCategoryContent($collector, $parent, 'archived', $params); } break; case 'article': // if it's an article menu item, we have to check if we have to expand the // article's page breaks if ($paramAddPageBreaks) { $query = $db->getQuery(true) ->select([ $db->quoteName('introtext'), $db->quoteName('fulltext'), $db->quoteName('alias'), $db->quoteName('catid'), $db->quoteName('attribs') . ' AS params', $db->quoteName('metadata'), $db->quoteName('created'), $db->quoteName('modified'), $db->quoteName('publish_up') ]) ->from($db->quoteName('#__content')) ->where($db->quoteName('id') . '=' . $id); $db->setQuery($query); $item = $db->loadObject(); $item->uid = 'joomla.article.' . $id; $parent->slug = $item->alias ? ($id . ':' . $item->alias) : $id; $parent->link = ContentHelperRoute::getArticleRoute($parent->slug, $item->catid); $parent->subnodes = General::getPagebreaks( $item->introtext . $item->fulltext, $parent->link, $item->uid ); static::printSubNodes($collector, $parent, $params, $parent->subnodes, $item); } } } /** * Get all content items within a content category. * Returns an array of all contained content items. * * @param Collector $collector * @param Item $parent the menu item * @param int $catid the id of the category to be expanded * @param Registry $params parameters for this plugin on Xmap * @param int $itemid the itemid to use for this category's children * @param int $curlevel * * @return void * @throws Exception */ protected static function expandCategory( $collector, $parent, $catid, $params, $itemid, $curlevel = 0 ) { static::checkMemory(); $db = Factory::getDbo(); $where = [ 'a.parent_id = ' . $catid, 'a.published = 1', 'a.extension=' . $db->quote('com_content') ]; if (!$params->get('show_unauth', 0)) { $where[] = 'a.access IN (' . General::getAuthorisedViewLevels() . ') '; } $query = $db->getQuery(true) ->select([ 'a.id', 'a.title', 'a.alias', 'a.access', 'a.path AS route', 'a.created_time AS created', 'a.modified_time AS modified', 'a.params', 'a.metadata', 'a.metakey' ]) ->from('#__categories AS a') ->where($where) ->order('a.lft'); $items = $db->setQuery($query)->loadObjectList(); $curlevel++; $maxLevel = $parent->params->get('max_category_level', 100); if ($curlevel <= $maxLevel) { if (count($items) > 0) { $collector->changeLevel(1); foreach ($items as $item) { $node = (object)[ 'id' => $item->id, 'uid' => 'joomla.category.' . $item->id, 'browserNav' => $parent->browserNav, 'priority' => $params->get('cat_priority'), 'changefreq' => $params->get('cat_changefreq'), 'name' => $item->title, 'expandible' => true, 'secure' => $parent->secure, 'newsItem' => 1, 'adapterName' => 'JoomlaCategory', 'pluginParams' => &$params, 'parentIsVisibleForRobots' => $parent->visibleForRobots, 'created' => $item->created, 'modified' => $item->modified, 'publishUp' => $item->created ]; // Keywords $paramKeywords = $params->get('keywords', 'metakey'); $keywords = null; if ($paramKeywords !== 'none') { $keywords = $item->metakey; } $node->keywords = $keywords; $node->slug = $item->route ? ($item->id . ':' . $item->route) : $item->id; $node->link = ContentHelperRoute::getCategoryRoute($node->slug); $node->itemid = $itemid; // Correct for an issue in Joomla core with occasional empty variables $linkUri = new Uri($node->link); $linkUri->setQuery(array_filter((array)$linkUri->getQuery(true))); $node->link = $linkUri->toString(); if ($collector->printNode($node)) { static::expandCategory($collector, $parent, $item->id, $params, $node->itemid, $curlevel); } } $collector->changeLevel(-1); } } // Include Category's content static::includeCategoryContent($collector, $parent, $catid, $params); } /** * Get all content items within a content category. * Returns an array of all contained content items. * * @param Collector $collector * @param Item $parent * @param int|string $catid * @param Registry $params * * @return void * @throws Exception * */ protected static function includeCategoryContent($collector, $parent, $catid, $params) { static::checkMemory(); $db = Factory::getDbo(); $container = Factory::getPimpleContainer(); $nullDate = $db->quote($db->getNullDate()); $nowDate = $db->quote(Factory::getDate()->toSql()); $selectFields = [ 'a.id', 'a.title', 'a.alias', 'a.catid', 'a.created', 'a.modified', 'a.publish_up', 'a.attribs AS params', 'a.metadata', 'a.language', 'a.metakey', 'a.images', 'c.title AS categMetakey' ]; if ($params->get('add_images', 1) || $params->get('add_pagebreaks', 1)) { $selectFields[] = 'a.introtext'; $selectFields[] = 'a.fulltext'; } if ($params->get('include_archived', 2)) { $where = ['(a.state = 1 or a.state = 2)']; } else { $where = ['a.state = 1']; } if ($catid == 'featured') { $where[] = 'a.featured=1'; } elseif ($catid == 'archived') { $where = ['a.state=2']; } elseif (is_numeric($catid)) { $where[] = 'a.catid=' . (int)$catid; } if (!$params->get('show_unauth', 0)) { $where[] = 'a.access IN (' . General::getAuthorisedViewLevels() . ') '; } $where[] = sprintf( '(ISNULL(a.publish_up) OR a.publish_up = %s OR a.publish_up <= %s)', $nullDate, $nowDate ); $where[] = sprintf( '(ISNULL(a.publish_down) OR a.publish_down = %s OR a.publish_down >= %s)', $nullDate, $nowDate ); //@todo: Do we need join for frontpage? $query = $db->getQuery(true) ->select($selectFields) ->from('#__content AS a') ->join('LEFT', '#__content_frontpage AS fp ON (a.id = fp.content_id)') ->join('LEFT', '#__categories AS c ON (a.catid = c.id)') ->where($where); // Ordering $orderOptions = [ 'a.created', 'a.modified', 'a.publish_up', 'a.hits', 'a.title', 'a.ordering' ]; $orderDirOptions = [ 'ASC', 'DESC' ]; $order = ArrayHelper::getValue($orderOptions, $params->get('article_order', 0), 0); $orderDir = ArrayHelper::getValue($orderDirOptions, $params->get('article_orderdir', 0), 0); $orderBy = ' ' . $order . ' ' . $orderDir; $query->order($orderBy); $maxArt = (int)$params->get('max_art'); $db->setQuery($query, 0, $maxArt); $items = $db->loadObjectList(); if (count($items) > 0) { $collector->changeLevel(1); $paramExpandCategories = $params->get('expand_categories', 1); $paramExpandFeatured = $params->get('expand_featured', 1); $paramIncludeArchived = $params->get('include_archived', 2); foreach ($items as $item) { $node = (object)[ 'id' => $item->id, 'uid' => 'joomla.article.' . $item->id, 'browserNav' => $parent->browserNav, 'priority' => $params->get('art_priority'), 'changefreq' => $params->get('art_changefreq'), 'name' => $item->title, 'created' => $item->created, 'modified' => $item->modified, 'publishUp' => $item->publish_up, 'expandible' => false, 'secure' => $parent->secure, 'newsItem' => 1, 'language' => $item->language, 'adapterName' => 'JoomlaArticle', 'parentIsVisibleForRobots' => $parent->visibleForRobots ]; $keywords = []; $paramKeywords = $params->get('keywords', 'metakey'); if ($paramKeywords !== 'none') { if (in_array($paramKeywords, ['metakey', 'both'])) { $keywords[] = $item->metakey; } if (in_array($paramKeywords, ['category', 'both'])) { $keywords[] = $item->categMetakey; } } $node->keywords = join(',', $keywords); $node->slug = $item->alias ? ($item->id . ':' . $item->alias) : $item->id; $node->catslug = $item->catid; $node->link = ContentHelperRoute::getArticleRoute($node->slug, $node->catslug); // Set the visibility for XML or HTML sitempas if ($catid == 'featured') { // Check if the item is visible in the XML or HTML sitemaps $node->visibleForXML = in_array($paramExpandFeatured, [1, 2]); $node->visibleForHTML = in_array($paramExpandFeatured, [1, 3]); } elseif ($catid == 'archived') { // Check if the item is visible in the XML or HTML sitemaps $node->visibleForXML = in_array($paramIncludeArchived, [1, 2]); $node->visibleForHTML = in_array($paramIncludeArchived, [1, 3]); } elseif (is_numeric($catid)) { // Check if the item is visible in the XML or HTML sitemaps $node->visibleForXML = in_array($paramExpandCategories, [1, 2]); $node->visibleForHTML = in_array($paramExpandCategories, [1, 3]); } // Add images to the article $text = ''; if (isset($item->introtext) && isset($item->fulltext)) { $text = $item->introtext . $item->fulltext; } if ($params->get('add_images', 1)) { $maxImages = $params->get('max_images', 1000); $node->images = []; // Images from text $node->images = array_merge( $node->images, $container->imagesHelper->getImagesFromText($text, $maxImages) ); // Images from params if (!empty($item->images)) { $node->images = array_merge( $node->images, $container->imagesHelper->getImagesFromParams($item) ); } } if ($params->get('add_pagebreaks', 1)) { $node->subnodes = General::getPagebreaks($text, $node->link, $node->uid); // This article has children $node->expandible = (count($node->subnodes) > 0); } if ($collector->printNode($node) && $node->expandible) { static::printSubNodes($collector, $parent, $params, $node->subnodes, $node); } } $collector->changeLevel(-1); } } /** * @param Collector $collector * @param Item $parent * @param Registry $params * @param array $subnodes * @param object $item * * @return void * @throws Exception */ protected static function printSubNodes($collector, $parent, $params, $subnodes, $item) { static::checkMemory(); $collector->changeLevel(1); $i = 0; foreach ($subnodes as $subnode) { $i++; $subnode->browserNav = $parent->browserNav; $subnode->priority = $params->get('art_priority'); $subnode->changefreq = $params->get('art_changefreq'); $subnode->secure = $parent->secure; $subnode->created = $item->created; $subnode->modified = $item->modified; $subnode->publishUp = $item->publish_up ?? $item->created; $collector->printNode($subnode); $subnode = null; unset($subnode); } $collector->changeLevel(-1); } /** * @param string $text * @param Registry $params */ protected static function prepareContent(&$text, Registry $params) { if (static::$prepareContent === null) { $isPro = Factory::getExtension('osmap', 'component')->isPro(); $isHtml = Factory::getDocument()->getType() == 'html'; $prepare = $params->get('prepare_content', true); static::$prepareContent = $isPro && $prepare && $isHtml; } if (static::$prepareContent) { $text = HTMLHelper::_('content.prepare', $text, null, 'com_content.article'); } } } PK 9�\W��ff joomla.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="plugin" group="extension" method="upgrade"> <name>plg_extension_joomla</name> <author>Joomla! Project</author> <creationDate>2010-05</creationDate> <copyright>(C) 2010 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>3.0.0</version> <description>PLG_EXTENSION_JOOMLA_XML_DESCRIPTION</description> <namespace path="src">Joomla\Plugin\Extension\Joomla</namespace> <files> <folder plugin="joomla">services</folder> <folder>src</folder> </files> <languages> <language tag="en-GB">language/en-GB/plg_extension_joomla.ini</language> <language tag="en-GB">language/en-GB/plg_extension_joomla.sys.ini</language> </languages> </extension> PKօ�\�V� index.htmlnu&1i�<!DOCTYPE html><title></title> PKօ�\��@�&�&src/Extension/Joomla.phpnu�[���<?php /** * @package Joomla.Plugin * @subpackage Extension.joomla * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Plugin\Extension\Joomla\Extension; use Joomla\CMS\Installer\Installer; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\CMSPlugin; use Joomla\Database\DatabaseAwareTrait; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Joomla! main extension plugin. * * @since 1.6 */ final class Joomla extends CMSPlugin { use DatabaseAwareTrait; /** * @var integer * * @since 1.6 */ private $eid = 0; /** * @var Installer * * @since 1.6 */ private $installer = null; /** * Load the language file on instantiation. * * @var boolean * * @since 3.1 */ protected $autoloadLanguage = true; /** * Adds an update site to the table if it doesn't exist. * * @param string $name The friendly name of the site * @param string $type The type of site (e.g. collection or extension) * @param string $location The URI for the site * @param boolean $enabled If this site is enabled * @param string $extraQuery Any additional request query to use when updating * * @return void * * @since 1.6 */ private function addUpdateSite($name, $type, $location, $enabled, $extraQuery = '') { // Look if the location is used already; doesn't matter what type you can't have two types at the same address, doesn't make sense $db = $this->getDatabase(); $query = $db->getQuery(true); $query->select($db->quoteName('update_site_id')) ->from($db->quoteName('#__update_sites')) ->where($db->quoteName('location') . ' = :location') ->bind(':location', $location); $db->setQuery($query); $update_site_id = (int) $db->loadResult(); // If it doesn't exist, add it! if (!$update_site_id) { $enabled = (int) $enabled; $query->clear() ->insert($db->quoteName('#__update_sites')) ->columns($db->quoteName(['name', 'type', 'location', 'enabled', 'extra_query'])) ->values(':name, :type, :location, :enabled, :extra_query') ->bind(':name', $name) ->bind(':type', $type) ->bind(':location', $location) ->bind(':enabled', $enabled, ParameterType::INTEGER) ->bind(':extra_query', $extraQuery); $db->setQuery($query); if ($db->execute()) { // Link up this extension to the update site $update_site_id = $db->insertid(); } } // Check if it has an update site id (creation might have failed) if ($update_site_id) { // Look for an update site entry that exists $query->clear() ->select($db->quoteName('update_site_id')) ->from($db->quoteName('#__update_sites_extensions')) ->where( [ $db->quoteName('update_site_id') . ' = :updatesiteid', $db->quoteName('extension_id') . ' = :extensionid', ] ) ->bind(':updatesiteid', $update_site_id, ParameterType::INTEGER) ->bind(':extensionid', $this->eid, ParameterType::INTEGER); $db->setQuery($query); $tmpid = (int) $db->loadResult(); if (!$tmpid) { // Link this extension to the relevant update site $query->clear() ->insert($db->quoteName('#__update_sites_extensions')) ->columns($db->quoteName(['update_site_id', 'extension_id'])) ->values(':updatesiteid, :eid') ->bind(':updatesiteid', $update_site_id, ParameterType::INTEGER) ->bind(':eid', $this->eid, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); } } } /** * Handle post extension install update sites * * @param Installer $installer Installer object * @param integer $eid Extension Identifier * * @return void * * @since 1.6 */ public function onExtensionAfterInstall($installer, $eid) { if ($eid) { $this->installer = $installer; $this->eid = (int) $eid; // After an install we only need to do update sites $this->processUpdateSites(); } } /** * Handle extension uninstall * * @param Installer $installer Installer instance * @param integer $eid Extension id * @param boolean $removed Installation result * * @return void * * @since 1.6 */ public function onExtensionAfterUninstall($installer, $eid, $removed) { // If we have a valid extension ID and the extension was successfully uninstalled wipe out any // update sites for it if ($eid && $removed) { $db = $this->getDatabase(); $query = $db->getQuery(true); $eid = (int) $eid; $query->delete($db->quoteName('#__update_sites_extensions')) ->where($db->quoteName('extension_id') . ' = :eid') ->bind(':eid', $eid, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); // Delete any unused update sites $query->clear() ->select($db->quoteName('update_site_id')) ->from($db->quoteName('#__update_sites_extensions')); $db->setQuery($query); $results = $db->loadColumn(); if (is_array($results)) { // So we need to delete the update sites and their associated updates $updatesite_delete = $db->getQuery(true); $updatesite_delete->delete($db->quoteName('#__update_sites')); $updatesite_query = $db->getQuery(true); $updatesite_query->select($db->quoteName('update_site_id')) ->from($db->quoteName('#__update_sites')); // If we get results back then we can exclude them if (count($results)) { $updatesite_query->whereNotIn($db->quoteName('update_site_id'), $results); $updatesite_delete->whereNotIn($db->quoteName('update_site_id'), $results); } // So let's find what update sites we're about to nuke and remove their associated extensions $db->setQuery($updatesite_query); $update_sites_pending_delete = $db->loadColumn(); if (is_array($update_sites_pending_delete) && count($update_sites_pending_delete)) { // Nuke any pending updates with this site before we delete it // @todo: investigate alternative of using a query after the delete below with a query and not in like above $query->clear() ->delete($db->quoteName('#__updates')) ->whereIn($db->quoteName('update_site_id'), $update_sites_pending_delete); $db->setQuery($query); $db->execute(); } // Note: this might wipe out the entire table if there are no extensions linked $db->setQuery($updatesite_delete); $db->execute(); } // Last but not least we wipe out any pending updates for the extension $query->clear() ->delete($db->quoteName('#__updates')) ->where($db->quoteName('extension_id') . ' = :eid') ->bind(':eid', $eid, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); } } /** * After update of an extension * * @param Installer $installer Installer object * @param integer $eid Extension identifier * * @return void * * @since 1.6 */ public function onExtensionAfterUpdate($installer, $eid) { if ($eid) { $this->installer = $installer; $this->eid = (int) $eid; // Handle any update sites $this->processUpdateSites(); } } /** * Processes the list of update sites for an extension. * * @return void * * @since 1.6 */ private function processUpdateSites() { $manifest = $this->installer->getManifest(); $updateservers = $manifest->updateservers; if ($updateservers) { $children = $updateservers->children(); } else { $children = []; } if (count($children)) { foreach ($children as $child) { $attrs = $child->attributes(); $this->addUpdateSite((string) $attrs['name'], (string) $attrs['type'], trim($child), true, $this->installer->extraQuery); } } else { $data = trim((string) $updateservers); if ($data !== '') { // We have a single entry in the update server line, let us presume this is an extension line $this->addUpdateSite(Text::_('PLG_EXTENSION_JOOMLA_UNKNOWN_SITE'), 'extension', $data, true); } } } } PKօ�\�BwDDservices/provider.phpnu�[���<?php /** * @package Joomla.Plugin * @subpackage Extension.joomla * * @copyright (C) 2022 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\Plugin\PluginHelper; use Joomla\Database\DatabaseInterface; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; use Joomla\Event\DispatcherInterface; use Joomla\Plugin\Extension\Joomla\Extension\Joomla; return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.3.0 */ public function register(Container $container) { $container->set( PluginInterface::class, function (Container $container) { $dispatcher = $container->get(DispatcherInterface::class); $plugin = new Joomla( $dispatcher, (array) PluginHelper::getPlugin('extension', 'joomla') ); $plugin->setDatabase($container->get(DatabaseInterface::class)); return $plugin; } ); } }; PK 9�\^���field/TraitShack.phpnu&1i�PK 9�\�z���8field/radio.phpnu&1i�PK 9�\���u��)^language/en-GB/en-GB.plg_osmap_joomla.ininu&1i�PK 9�\N�� ZZ-y"language/en-GB/en-GB.plg_osmap_joomla.sys.ininu&1i�PK 9�\�Eh��)0'language/tr-TR/tr-TR.plg_osmap_joomla.ininu&1i�PK 9�\��ؐ^^-!?language/tr-TR/tr-TR.plg_osmap_joomla.sys.ininu&1i�PK 9�\ew6fefe �Cjoomla.phpnu&1i�PK 9�\W��ff |�joomla.xmlnu�[���PKօ�\�V� �index.htmlnu&1i�PKօ�\��@�&�&u�src/Extension/Joomla.phpnu�[���PKօ�\�BwDDH�services/provider.phpnu�[���PK���
/home/opticamezl/www/newok/language/../cache/./../tmp/../plugins/../cli/../api/../api/../joomla.zip