uawdijnntqw1x1x1
IP : 216.73.216.84
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
/
07d6c
/
..
/
assets
/
..
/
layouts
/
..
/
plugins
/
system
/
rereplacer
/
src
/
Items.php
/
/
<?php /** * @package ReReplacer * @version 14.4.1 * * @author Peter van Westen <info@regularlabs.com> * @link https://regularlabs.com * @copyright Copyright © 2025 Regular Labs All Rights Reserved * @license GNU General Public License version 2 or later */ namespace RegularLabs\Plugin\System\ReReplacer; defined('_JEXEC') or die; use Joomla\CMS\Factory as JFactory; use RegularLabs\Library\Document as RL_Document; use RegularLabs\Library\ObjectHelper as RL_ObjectHelper; use RegularLabs\Library\Parameters as RL_Parameters; use RegularLabs\Library\Protect as RL_Protect; use RegularLabs\Library\RegEx as RL_RegEx; use RegularLabs\Library\Xml as RL_Xml; class Items { static $items = []; public static function filter(&$items, $article = null) { foreach ($items as $key => &$item) { if ( (RL_Document::isClient('administrator') && $item->enable_in_admin == 0) || (RL_Document::isClient('site') && $item->enable_in_admin == 2) ) { unset($items[$key]); continue; } if ( ! $item) { unset($items[$key]); } } } /** * @param $area * @param $article * * @return Item[] */ public static function get($area, &$article = null) { $data = self::getItemList($area); if (empty($data)) { return []; } if ($article) { self::filter($data, $article); } $items = []; foreach ($data as $item) { $items[] = new Item($item, $article); } return $items; } public static function getItemList($area = 'article') { if (isset(self::$items[$area])) { return self::$items[$area]; } $db = JFactory::getDbo(); $query = $db->getQuery(true) ->select('r.*') ->from('#__rereplacer AS r') ->where('r.published = 1'); $where = 'r.area = ' . $db->quote($area); $query->where('(' . $where . ')') ->order('r.ordering, r.id'); $db->setQuery($query); $rows = $db->loadObjectList(); $items = []; if (empty($rows)) { self::$items[$area] = $items; return self::$items[$area]; } foreach ($rows as $row) { $item = self::getItem($row, $area); if ( ! $item) { continue; } if (is_array($item)) { $items = [...$items, ...$item]; continue; } $items[] = $item; } if ($area != 'articles') { self::filter($items); } self::$items[$area] = $items; return self::$items[$area]; } public static function getItemsFromXml($xml_data, $item, $area) { } private static function getItem($row, $area = 'article') { $item = RL_Parameters::getObjectFromRegistry($row->params, JPATH_ADMINISTRATOR . '/components/com_rereplacer/forms/item.xml'); unset($row->params); foreach ($row as $key => $param) { $item->{$key} = $param; } if ( ! self::itemPassChecks($item, $area)) { return false; } if (strlen($item->search) < 1) { return false; } self::prepareString($item->search); self::prepareReplaceString($item->replace); return $item; } private static function getItemFromXmlData($item, $xml_data, $area) { } private static function getItemsFromItemXml($item, $area) { } private static function itemPassChecks($item, $area) { if ($item->area != $area) { return false; } if (empty($item->search)) { return false; } if ( (RL_Document::isFeed() && ! $item->enable_in_feeds) || ( ! RL_Document::isFeed() && $item->enable_in_feeds == 2) ) { return false; } return true; } private static function prepareReplaceString(&$string) { [$tag, $characters] = RL_Protect::getSourcererTag(); if (empty($tag)) { return; } [$start, $end] = explode('.', $characters); self::prepareString($string); if ( ! str_contains($string, $start . '/' . $tag . $end)) { return; } // fix usage of non-protected {source} tags to {source 0} $string = str_replace($start . $tag . $end, $start . $tag . ' 0' . $end, $string); } private static function prepareString(&$string) { if (is_string($string)) { return; } $string = ''; } }
/home/opticamezl/www/newok/07d6c/../assets/../layouts/../plugins/system/rereplacer/src/Items.php