AnonSec Shell
Server IP : 46.105.57.169  /  Your IP : 216.73.216.84
Web Server : Apache
System : Linux webd003.cluster120.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : maitricfuz ( 93378)
PHP Version : 8.4.10
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/m/a/i/maitricfuz/www/saint-martin-lg/plugins/system/sourcerer/src/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/m/a/i/maitricfuz/www/saint-martin-lg/plugins/system/sourcerer/src/Security.php
<?php
/**
 * @package         Sourcerer
 * @version         12.2.8
 * 
 * @author          Peter van Westen <info@regularlabs.com>
 * @link            https://regularlabs.com
 * @copyright       Copyright © 2026 Regular Labs All Rights Reserved
 * @license         GNU General Public License version 2 or later
 */

namespace RegularLabs\Plugin\System\Sourcerer;

defined('_JEXEC') or die;

use RegularLabs\Library\User as RL_User;

class Security
{
    protected static $security = null;

    public static function get(): object
    {
        if ( ! is_null(self::$security))
        {
            return self::$security;
        }

        self::$security = (object) [
            'pass'     => true,
            'pass_css' => true,
            'pass_js'  => true,
            'pass_php' => true,
        ];

        return self::$security;
    }

    public static function set(object|false|null $article = null): void
    {
        if ( ! isset($article->created_by))
        {
            return;
        }

        $params = Params::get();

        $security_level = (array) $params->articles_security_level;
        $security_css   = $params->articles_security_level_default_css
            ? (array) $params->articles_security_level
            : (array) $params->articles_security_level_css;
        $security_js    = $params->articles_security_level_default_js
            ? (array) $params->articles_security_level
            : (array) $params->articles_security_level_js;
        $security_php   = $params->articles_security_level_default_php
            ? (array) $params->articles_security_level
            : (array) $params->articles_security_level_php;

        $user  = RL_User::get();
        $table = $user->getTable();

        if ($table->load($article->created_by))
        {
            $user = RL_User::get($article->created_by);
        }

        $groups = $user->getAuthorisedGroups();
        array_unshift($groups, -1);

        // Set if security is passed
        // passed = creator is equal or higher than security group level
        $security           = (object) [];
        $pass               = array_intersect($security_level, $groups);
        $security->pass     = ( ! empty($pass));
        $pass               = array_intersect($security_css, $groups);
        $security->pass_css = ( ! empty($pass));
        $pass               = array_intersect($security_js, $groups);
        $security->pass_js  = ( ! empty($pass));
        $pass               = array_intersect($security_php, $groups);
        $security->pass_php = ( ! empty($pass));

        self::$security = $security;
    }
}

Anon7 - 2022
AnonSec Team