shell bypass 403
Cubjrnet7 Shell
: /home/eklavya/.trash/administrator.1/components/com_akeebabackup/src/View/Remotefiles/ [ drwxr-xr-x ]
<?php /** * @package akeebabackup * @copyright Copyright (c)2006-2024 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ namespace Akeeba\Component\AkeebaBackup\Administrator\View\Remotefiles; defined('_JEXEC') || die; use Akeeba\Component\AkeebaBackup\Administrator\Mixin\ViewLoadAnyTemplateTrait; use Akeeba\Component\AkeebaBackup\Administrator\Mixin\ViewTaskBasedEventsTrait; use Akeeba\Component\AkeebaBackup\Administrator\Model\RemotefilesModel; use Exception; use Joomla\CMS\Factory; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; #[\AllowDynamicProperties] class HtmlView extends BaseHtmlView { use ViewLoadAnyTemplateTrait; use ViewTaskBasedEventsTrait; /** @var string The task of the controller */ public $task; /** @var string The task actually being executed by the controller */ public $doTask; /** * The available remote file actions * * @var array */ public $actions = []; /** * The capabilities of the remote storage engine * * @var array */ public $capabilities = []; /** * Total size of the file(s) to download * * @var int */ public $total; /** * Total size of downloaded file(s) so far * * @var int */ public $done; /** * Percentage of the total download complete, rounded to the nearest whole number (0-100) * * @var int */ public $percent; /** * The backup record ID we are downloading back to the server * * @var int */ public $id; /** * The part number currently being downloaded * * @var int */ public $part; /** * The fragment of the part currently being downloaded * * @var int */ public $frag; /** * Runs on the "listactions" task: lists all * * @throws Exception */ public function onBeforeListactions() { $css = <<< CSS dt.message { display: none; } dd.message { list-style: none; } CSS; $wa = $this->document->getWebAssetManager(); $wa ->useScript('com_akeebabackup.remotefiles') ->addInlineStyle($css); /** @var RemotefilesModel $model */ $model = $this->getModel(); $this->id = $model->getState('id', -1); $this->actions = $model->getActions($this->id); $this->capabilities = $model->getCapabilities($this->id); } public function onBeforeDltoserver() { $css = <<< CSS dl { display: none; } CSS; $wa = $this->document->getWebAssetManager(); $wa ->useScript('com_akeebabackup.remotefiles') ->addInlineStyle($css); /** @var RemotefilesModel $model */ $model = $this->getModel(); $this->setLayout('dlprogress'); // Get progress bar stats $app = Factory::getApplication(); $this->total = $app->getSession()->get('akeebabackup.dl_totalsize', 0); $this->done = $app->getSession()->get('akeebabackup.dl_donesize', 0); $this->percent = ($this->total > 0) ? min(100, (int) (100 * (abs($this->done) / abs($this->total)))) : 0; $this->id = (int) $model->getState('id', 0); $this->part = (int) $model->getState('part', 0); $this->frag = (int) $model->getState('frag', 0); } }