Linux mail.vriendennsm.nl 6.1.0-51-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.177-1 (2026-07-16) x86_64
Apache/2.4.68 (Debian)
Server IP : 217.154.75.17 & Your IP : 216.73.216.195
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
www /
vnsm /
plugins /
system /
sourcerer /
src /
Delete
Unzip
Name
Size
Permission
Date
Action
Area.php
1.76
KB
-rwxr-xr-x
2023-09-03 18:12
Clean.php
2.55
KB
-rwxr-xr-x
2023-09-03 18:12
Code.php
3.53
KB
-rwxr-xr-x
2023-09-03 18:12
Helper.php
2.49
KB
-rwxr-xr-x
2020-07-27 14:43
Params.php
4.72
KB
-rwxr-xr-x
2023-09-03 18:12
Plugin.php
8.25
KB
-rwxr-xr-x
2020-07-27 14:43
Protect.php
1.12
KB
-rwxr-xr-x
2023-09-03 18:12
Replace.php
18.15
KB
-rwxr-xr-x
2023-09-03 18:12
Security.php
2.59
KB
-rwxr-xr-x
2023-09-03 18:12
Save
Rename
<?php /** * @package Sourcerer * @version 9.8.0 * * @author Peter van Westen <info@regularlabs.com> * @link https://regularlabs.com * @copyright Copyright © 2023 Regular Labs All Rights Reserved * @license GNU General Public License version 2 or later */ namespace RegularLabs\Plugin\System\Sourcerer; defined('_JEXEC') or die; use Joomla\CMS\Factory as JFactory; use RegularLabs\Library\ParametersNew as RL_Parameters; use RegularLabs\Library\PluginTag as RL_PluginTag; use RegularLabs\Library\RegEx as RL_RegEx; class Params { protected static $areas = null; protected static $params = null; protected static $regexes = null; public static function get($key = '', $default = '') { if ($key != '') { return self::getByKey($key, $default); } if ( ! is_null(self::$params)) { return self::$params; } $user = JFactory::getApplication()->getIdentity() ?: JFactory::getUser(); $params = RL_Parameters::getPlugin('sourcerer'); $params->tag = RL_PluginTag::clean($params->syntax_word); $params->html_tags_syntax = [['<', '>'], ['\[\[', '\]\]']]; $params->splitter = '<!-- START: SRC_SPLIT -->'; $params->include_path = str_replace('//', '/', ('/' . trim($params->include_path, ' /\\') . '/')); $params->user_is_admin = $user->authorise('core.admin', 1); self::$params = $params; return self::$params; } public static function getArea($type = 'default') { $areas = self::getAreaSettings(); return $areas->{$type} ?? $areas->default; } public static function getAreaSettings() { if ( ! is_null(self::$areas)) { return self::$areas; } $areas = (object) []; // Initialise the different enables $areas->default = self::getAreaDefault(); self::$areas = $areas; return self::$areas; } public static function getRegex($type = 'tag') { $regexes = self::getRegexes(); return $regexes->{$type} ?? $regexes->tag; } public static function getTagCharacters() { $params = self::get(); if ( ! isset($params->tag_character_start)) { self::setTagCharacters(); } return [$params->tag_character_start, $params->tag_character_end]; } public static function getTags($only_start_tags = false) { $params = self::get(); [$tag_start, $tag_end] = self::getTagCharacters(); $tags = [ [ $tag_start . $params->tag, ], [ $tag_start . '/' . $params->tag . $tag_end, ], ]; return $only_start_tags ? $tags[0] : $tags; } public static function setTagCharacters() { $params = self::get(); [self::$params->tag_character_start, self::$params->tag_character_end] = explode('.', $params->tag_characters); } private static function getAreaByType($type = 'default') { } private static function getAreaDefault() { $params = self::get(); return (object) [ 'enable' => true, 'enable_css' => $params->enable_css, 'enable_js' => $params->enable_js, 'enable_php' => $params->enable_php, 'forbidden_php' => $params->forbidden_php, 'forbidden_tags' => $params->forbidden_tags, ]; } private static function getByKey($key, $default = '') { $params = self::get(); return ($params->{$key} ?? null) ?: $default; } private static function getRegexes() { if ( ! is_null(self::$regexes)) { return self::$regexes; } $params = self::get(); // Tag character start and end [$tag_start, $tag_end] = Params::getTagCharacters(); $tag_start = RL_RegEx::quote($tag_start); $tag_end = RL_RegEx::quote($tag_end); $pre = RL_PluginTag::getRegexSurroundingTagPre(); $post = RL_PluginTag::getRegexSurroundingTagPost(); $spaces = RL_PluginTag::getRegexSpaces('*'); self::$regexes = (object) []; self::$regexes->tag = '(' . '(?<start_pre>' . $pre . ')' . $tag_start . RL_RegEx::quote($params->tag) . $spaces . '(?<data>( .*?)?)' . $tag_end . '(?<start_post>' . $post . ')' . '(?<content>.*?)' . '(?<end_pre>' . $pre . ')' . $tag_start . '\/' . RL_RegEx::quote($params->tag) . $tag_end . '(?<end_post>' . $post . ')' . ')'; return self::$regexes; } }