shell bypass 403
Cubjrnet7 Shell
: /home/eklavya/www/administrator/components/com_akeebabackup/src/View/Configuration/ [ drwxr-xr-x ]
<?php /** * @package akeebabackup * @copyright Copyright (c)2006-2025 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ namespace Akeeba\Component\AkeebaBackup\Administrator\View\Configuration; defined('_JEXEC') || die; use Akeeba\Component\AkeebaBackup\Administrator\Mixin\ViewLoadAnyTemplateTrait; use Akeeba\Component\AkeebaBackup\Administrator\Mixin\ViewProfileIdAndNameTrait; use Akeeba\Component\AkeebaBackup\Administrator\Mixin\ViewToolbarTrait; use Akeeba\Engine\Factory; use Akeeba\Engine\Platform; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; #[\AllowDynamicProperties] class HtmlView extends BaseHtmlView { use ViewProfileIdAndNameTrait; use ViewLoadAnyTemplateTrait; use ViewToolbarTrait; /** * Status of the settings encryption: -1 disabled by user, 0 not available, 1 enabled and active * * @var int */ public $secureSettings = 0; /** * Should I show the Configuration Wizard popup prompt? * * @var bool */ public $promptForConfigurationwizard = false; public function display($tpl = null) { $this->addToolbar(); // Load our Javascript $wa = $this->getDocument()->getWebAssetManager(); $wa->useScript('com_akeebabackup.configuration'); // Get the backup profile ID and name $this->getProfileIdAndName(); // Are the settings secured? $this->secureSettings = $this->getSecureSettingsOption(); // Should I show the Configuration Wizard popup prompt? $this->promptForConfigurationwizard = Factory::getConfiguration()->get('akeeba.flag.confwiz', 0) != 1; // Push script options $urls = [ 'browser' => addslashes('index.php?option=com_akeebabackup&view=Browser&processfolder=1&tmpl=component&folder='), 'testFtp' => addslashes('index.php?option=com_akeebabackup&view=Configuration&task=testftp'), 'testSftp' => addslashes('index.php?option=com_akeebabackup&view=Configuration&task=testsftp'), 'dpeauthopen' => addslashes('index.php?option=com_akeebabackup&view=Configuration&task=dpeoauthopen&format=raw'), 'dpecustomapi' => addslashes('index.php?option=com_akeebabackup&view=Configuration&task=dpecustomapi&format=raw'), ]; // Push script options $this->getDocument()->addScriptOptions('akeebabackup.Configuration.URLs', $urls); $this->getDocument()->addScriptOptions('akeebabackup.Configuration.GUIData', json_decode(Factory::getEngineParamsProvider()->getJsonGuiDefinition(), true)); // Push translations Text::script('COM_AKEEBABACKUP_CONFIG_UI_BROWSE'); Text::script('COM_AKEEBABACKUP_CONFIG_UI_CONFIG'); Text::script('COM_AKEEBABACKUP_CONFIG_UI_REFRESH'); Text::script('COM_AKEEBABACKUP_FILEFILTERS_LABEL_UIROOT'); Text::script('COM_AKEEBABACKUP_CONFIG_UI_FTPBROWSER_TITLE'); Text::script('COM_AKEEBABACKUP_CONFIG_DIRECTFTP_TEST_OK'); Text::script('COM_AKEEBABACKUP_CONFIG_DIRECTFTP_TEST_FAIL'); Text::script('COM_AKEEBABACKUP_CONFIG_DIRECTSFTP_TEST_OK'); Text::script('COM_AKEEBABACKUP_CONFIG_DIRECTSFTP_TEST_FAIL'); Text::script('COM_AKEEBABACKUP_CONFIG_UI_CUSTOM'); Text::script('JYES'); Text::script('JNO'); parent::display($tpl); } protected function addToolbar(): void { // Set up the toolbar ToolbarHelper::title(Text::_('COM_AKEEBABACKUP_CONFIG'), 'icon-akeeba'); $toolbar = $this->getToolbarCompat(); $toolbar->apply('apply'); $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) { $childBar->save('save'); $childBar->save2copy('savenew'); } ); $toolbar->cancel('cancel'); $toolbar->link( Text::_('COM_AKEEBABACKUP_CONFWIZ'), 'index.php?option=com_akeebabackup&view=Configurationwizard' ) ->icon('fa fa-bolt'); if (AKEEBABACKUP_PRO) { $toolbar->link( Text::_('COM_AKEEBABACKUP_SCHEDULE'), 'index.php?option=com_akeebabackup&view=Schedule' )->icon('fa fa-calendar'); } $toolbar->preferences('com_akeebabackup'); $toolbar->help(null, false, 'https://www.akeeba.com/documentation/akeeba-backup-joomla/configuration.html'); } /** * Returns the support status of settings encryption. The possible values are: * -1 Disabled by the user * 0 Enabled by inactive (not supported by the server) * 1 Enabled and active * * @return int */ private function getSecureSettingsOption() { // Encryption is disabled by the user if (Platform::getInstance()->get_platform_configuration_option('useencryption', -1) == 0) { return -1; } // Encryption is not supported by this server if (!Factory::getSecureSettings()->supportsEncryption()) { return 0; } $filename = JPATH_ADMINISTRATOR . '/components/com_akeebabackup/serverkey.php'; // Encryption enabled, supported and a key file is present: encryption enabled if (is_file($filename)) { return 1; } // Encryption enabled, supported but and a key file is NOT present: encryption not available return 0; } }