__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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

/**
 * Joomla! Content Management System
 *
 * @copyright  (C) 2018 Open Source Matters, Inc. <https://www.joomla.org>
 * @license    GNU General Public License version 2 or later; see LICENSE.txt
 */

namespace Joomla\CMS\Toolbar\Button;

use Joomla\CMS\Toolbar\ToolbarButton;

// phpcs:disable PSR1.Files.SideEffects
\defined('_JEXEC') or die;
// phpcs:enable PSR1.Files.SideEffects

/**
 * Render dropdown buttons.
 *
 * @method self toggleSplit(bool $value)
 * @method self toggleButtonClass(string $value)
 * @method bool getToggleSplit()
 * @method string getToggleButtonClass()
 *
 * @since  4.0.0
 */
class DropdownButton extends AbstractGroupButton
{
    /**
     * Property layout.
     *
     * @var    string
     * @since  4.0.0
     */
    protected $layout = 'joomla.toolbar.dropdown';

    /**
     * Prepare options for this button.
     *
     * @param   array  $options  The options about this button.
     *
     * @return  void
     *
     * @since   4.0.0
     * @throws  \Exception
     */
    protected function prepareOptions(array &$options)
    {
        parent::prepareOptions($options);

        $childToolbar          = $this->getChildToolbar();
        $options['hasButtons'] = \count($childToolbar->getItems()) > 0;
        $buttons               = $childToolbar->getItems();

        if ($options['hasButtons']) {
            if ($this->getOption('toggleSplit', true)) {
                /** @var ToolbarButton $button */
                $button = array_shift($buttons);

                $childToolbar->setItems($buttons);

                $options['button']        = $button->render();
                $options['caretClass']    = $options['toggleButtonClass'] ?? $button->getButtonClass();
                $options['dropdownItems'] = $childToolbar->render(['is_child' => true]);
            } else {
                $options['dropdownItems'] = $childToolbar->render(['is_child' => true]);

                $button = new BasicButton($this->getName(), $this->getText(), $options);

                $options['button'] = $button
                    ->setParent($this->parent)
                    ->buttonClass($button->getButtonClass() . ' dropdown-toggle')
                    ->attributes(
                        [
                            'data-bs-toggle' => 'dropdown',
                            'data-bs-target' => '#' . $this->fetchId(),
                            'aria-haspopup'  => 'true',
                            'aria-expanded'  => 'false',
                        ]
                    )
                    ->render();
            }
        }
    }

    /**
     * Get the button CSS Id.
     *
     * @return  string  Button CSS Id
     *
     * @since   4.0.0
     */
    protected function fetchId()
    {
        return $this->parent->getName() . '-dropdown-' . $this->getName();
    }

    /**
     * Method to configure available option accessors.
     *
     * @return  array
     *
     * @since   4.0.0
     */
    protected static function getAccessors(): array
    {
        return array_merge(
            parent::getAccessors(),
            [
                'toggleSplit',
                'toggleButtonClass',
            ]
        );
    }
}

Filemanager

Name Type Size Permission Actions
AbstractGroupButton.php File 1.55 KB 0664
BasicButton.php File 1.06 KB 0664
ConfirmButton.php File 3.02 KB 0664
CustomButton.php File 1.67 KB 0664
DropdownButton.php File 3.14 KB 0664
HelpButton.php File 3.27 KB 0664
InlinehelpButton.php File 2.71 KB 0664
LinkButton.php File 2.08 KB 0664
PopupButton.php File 7.43 KB 0664
SeparatorButton.php File 915 B 0664
StandardButton.php File 3.65 KB 0664
Filemanager