Whoops \ Exception \ ErrorException (E_DEPRECATED)
Creation of dynamic property RocketTheme\Toolbox\StreamWrapper\ReadOnlyStream::$context is deprecated
Previous exceptions
  • Page not found (404)
Whoops\Exception\ErrorException thrown with message "Creation of dynamic property RocketTheme\Toolbox\StreamWrapper\ReadOnlyStream::$context is deprecated" Stacktrace: #20 Whoops\Exception\ErrorException in /home/system1/domains/ashdoda/libraries/gantry5/src/classes/Gantry/Framework/Atoms.php:73 #19 file_exists in /home/system1/domains/ashdoda/libraries/gantry5/src/classes/Gantry/Framework/Atoms.php:73 #18 Gantry\Framework\Atoms:__construct in /home/system1/domains/ashdoda/libraries/gantry5/src/classes/Gantry/Framework/Services/ConfigServiceProvider.php:142 #17 Gantry\Framework\Services\ConfigServiceProvider:load in /home/system1/domains/ashdoda/libraries/gantry5/src/classes/Gantry/Component/Theme/ThemeTrait.php:168 #16 Gantry\Framework\Theme:setLayout in /home/system1/domains/ashdoda/templates/rt_protean/error.php:31 #15 require in /home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php:779 #14 Joomla\CMS\Document\HtmlDocument:_loadTemplate in /home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php:838 #13 Joomla\CMS\Document\HtmlDocument:_fetchTemplate in /home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php:641 #12 Joomla\CMS\Document\HtmlDocument:parse in /home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php:660 #11 Joomla\CMS\Document\HtmlDocument:render in /home/system1/domains/ashdoda/libraries/src/Document/ErrorDocument.php:140 #10 Joomla\CMS\Document\ErrorDocument:render in /home/system1/domains/ashdoda/libraries/src/Error/Renderer/HtmlRenderer.php:69 #9 Joomla\CMS\Error\Renderer\HtmlRenderer:render in /home/system1/domains/ashdoda/libraries/src/Exception/ExceptionHandler.php:131 #8 Joomla\CMS\Exception\ExceptionHandler:render in /home/system1/domains/ashdoda/libraries/src/Exception/ExceptionHandler.php:74 #7 Joomla\CMS\Exception\ExceptionHandler:handleException in /home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php:311 #6 Joomla\CMS\Router\Exception\RouteNotFoundException in /home/system1/domains/ashdoda/libraries/src/Router/Router.php:153 #5 Joomla\CMS\Router\Router:parse in /home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php:1069 #4 Joomla\CMS\Application\CMSApplication:route in /home/system1/domains/ashdoda/libraries/src/Application/SiteApplication.php:820 #3 Joomla\CMS\Application\SiteApplication:route in /home/system1/domains/ashdoda/libraries/src/Application/SiteApplication.php:228 #2 Joomla\CMS\Application\SiteApplication:doExecute in /home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php:278 #1 Joomla\CMS\Application\CMSApplication:execute in /home/system1/domains/ashdoda/includes/app.php:63 #0 require_once in /home/system1/domains/ashdoda/index.php:32
Stack frames (21)
20
Whoops\Exception\ErrorException
/src/classes/Gantry/Framework/Atoms.php73
19
file_exists
/src/classes/Gantry/Framework/Atoms.php73
18
Gantry\Framework\Atoms __construct
/src/classes/Gantry/Framework/Services/ConfigServiceProvider.php142
17
Gantry\Framework\Services\ConfigServiceProvider load
/src/classes/Gantry/Component/Theme/ThemeTrait.php168
16
Gantry\Framework\Theme setLayout
/home/system1/domains/ashdoda/templates/rt_protean/error.php31
15
require
/home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php779
14
Joomla\CMS\Document\HtmlDocument _loadTemplate
/home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php838
13
Joomla\CMS\Document\HtmlDocument _fetchTemplate
/home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php641
12
Joomla\CMS\Document\HtmlDocument parse
/home/system1/domains/ashdoda/libraries/src/Document/HtmlDocument.php660
11
Joomla\CMS\Document\HtmlDocument render
/home/system1/domains/ashdoda/libraries/src/Document/ErrorDocument.php140
10
Joomla\CMS\Document\ErrorDocument render
/home/system1/domains/ashdoda/libraries/src/Error/Renderer/HtmlRenderer.php69
9
Joomla\CMS\Error\Renderer\HtmlRenderer render
/home/system1/domains/ashdoda/libraries/src/Exception/ExceptionHandler.php131
8
Joomla\CMS\Exception\ExceptionHandler render
/home/system1/domains/ashdoda/libraries/src/Exception/ExceptionHandler.php74
7
Joomla\CMS\Exception\ExceptionHandler handleException
/home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php311
6
Joomla\CMS\Router\Exception\RouteNotFoundException
/home/system1/domains/ashdoda/libraries/src/Router/Router.php153
5
Joomla\CMS\Router\Router parse
/home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php1069
4
Joomla\CMS\Application\CMSApplication route
/home/system1/domains/ashdoda/libraries/src/Application/SiteApplication.php820
3
Joomla\CMS\Application\SiteApplication route
/home/system1/domains/ashdoda/libraries/src/Application/SiteApplication.php228
2
Joomla\CMS\Application\SiteApplication doExecute
/home/system1/domains/ashdoda/libraries/src/Application/CMSApplication.php278
1
Joomla\CMS\Application\CMSApplication execute
/home/system1/domains/ashdoda/includes/app.php63
0
require_once
/home/system1/domains/ashdoda/index.php32
            $head = (array)$file->content();
            static::$instances[$outline] = new static(isset($head['atoms']) ? $head['atoms'] : [], $outline);
            $file->free();
 
            static::$instances[$outline]->init();
        }
 
        return static::$instances[$outline];
    }
 
    /**
     * Atoms constructor.
     * @param array $atoms
     * @param string $name
     */
    public function __construct(array $atoms = [], $name = null)
    {
        $this->name = $name;
        $this->items = array_filter($atoms);
        $this->inherit = file_exists('gantry-admin://blueprints/layout/inheritance/atom.yaml');
 
        foreach ($this->items as &$item) {
            if (!empty($item['id'])) {
                $this->ids[$item['id']] = $item;
            }
        }
    }
 
    /**
     * @return $this
     */
    public function init()
    {
        foreach ($this->items as &$item) {
            if (!empty($item['inherit']['outline']) && !empty($item['inherit']['atom'])) {
                $inherited = static::instance($item['inherit']['outline']);
                $test = $inherited->id($item['inherit']['atom']);
                if (isset($test['attributes'])) {
                    $item['attributes'] = $test['attributes'];
                } else {
Arguments
  1. "Creation of dynamic property RocketTheme\Toolbox\StreamWrapper\ReadOnlyStream::$context is deprecated"
    
            $head = (array)$file->content();
            static::$instances[$outline] = new static(isset($head['atoms']) ? $head['atoms'] : [], $outline);
            $file->free();
 
            static::$instances[$outline]->init();
        }
 
        return static::$instances[$outline];
    }
 
    /**
     * Atoms constructor.
     * @param array $atoms
     * @param string $name
     */
    public function __construct(array $atoms = [], $name = null)
    {
        $this->name = $name;
        $this->items = array_filter($atoms);
        $this->inherit = file_exists('gantry-admin://blueprints/layout/inheritance/atom.yaml');
 
        foreach ($this->items as &$item) {
            if (!empty($item['id'])) {
                $this->ids[$item['id']] = $item;
            }
        }
    }
 
    /**
     * @return $this
     */
    public function init()
    {
        foreach ($this->items as &$item) {
            if (!empty($item['inherit']['outline']) && !empty($item['inherit']['atom'])) {
                $inherited = static::instance($item['inherit']['outline']);
                $test = $inherited->id($item['inherit']['atom']);
                if (isset($test['attributes'])) {
                    $item['attributes'] = $test['attributes'];
                } else {
Arguments
  1. "gantry-admin://blueprints/layout/inheritance/atom.yaml"
    
 
        // Locate all configuration files to be compiled.
        $files = (new ConfigFileFinder)->locateFiles($paths);
 
        $cache = $locator->findResource('gantry-cache://theme/compiled/config', true, true);
        if (is_bool($cache)) {
            throw new \RuntimeException('Who just removed Gantry 5 cache folder? Try reloading the page if it fixes the issue');
        }
 
        $compiled = new CompiledConfig($cache, $files, GANTRY5_ROOT);
        $compiled->setBlueprints(static function() use ($container) {
            return $container['blueprints'];
        });
 
        $config = $compiled->load($withDefaults);
 
        // Set atom inheritance.
        $atoms = $config->get('page.head.atoms');
        if (is_array($atoms)) {
            $config->set('page.head.atoms', (new Atoms($atoms))->init()->toArray());
        }
 
        // Set FA default in Joomla
        if (class_exists(Version::class)) {
            $config->def('page.fontawesome.default_version', Version::MAJOR_VERSION < 4 ? 'fa4' : 'fa5css');
        } else {
            $config->def('page.fontawesome.default_version', 'fa4');
        }
 
        return $config;
    }
}
 
Arguments
  1. array:1 [
      0 => array:4 [
        "id" => "assets-4920"
        "type" => "assets"
        "title" => "Custom CSS / JS"
        "attributes" => array:3 [
          "enabled" => "1"
          "css" => array:2 [
            0 => array:4 [
              "location" => "gantry-assets://css/demo.css"
              "inline" => ""
              "extra" => []
              "name" => "Demo CSS"
            ]
            1 => array:4 [
              "location" => "gantry-assets://css/animate.css"
              "inline" => ""
              "extra" => []
              "name" => "Animate CSS"
            ]
          ]
          "javascript" => []
        ]
      ]
    ]
    
        if ($force) {
            unset($gantry['configuration']);
        }
 
        // Set default name only if configuration has not been set before.
        if ($name === null && !isset($gantry['configuration'])) {
            $name = 'default';
        }
 
        $outline = isset($gantry['configuration']) ? $gantry['configuration'] : null;
 
        // Set configuration if given.
        if ($name && $name !== $outline) {
            if (\GANTRY_DEBUGGER) {
                Debugger::addMessage("Using Gantry outline {$name}");
            }
 
            $gantry['configuration'] = $name;
            unset($gantry['config']);
            $gantry['config'] = ConfigServiceProvider::load($gantry, $name);
        }
 
        return $this;
    }
 
    /**
     * Get current preset.
     *
     * @param  bool $forced     If true, return only forced preset or null.
     * @return string|null $preset
     */
    public function preset($forced = false)
    {
        $presets = $this->presets()->toArray();
 
        $preset = $this->preset;
 
        if (!$preset && !$forced) {
            /** @var Config $config */
            $config = static::gantry()['config'];
Arguments
  1. Gantry\Framework\Gantry {#646}
    
  2. "_error"
    
 
// Bootstrap Gantry framework or fail gracefully (inside included file).
$gantry = include __DIR__ . '/includes/gantry.php';
 
/** @var \Gantry\Framework\Theme $theme */
$theme = $gantry['theme'];
 
$context = array(
    'errorcode' => isset($this->error) ? $this->error->getCode() : null,
    'error' => isset($this->error) ? $this->error->getMessage() : null,
    'debug' => $app->get('debug_lang', '0') == '1' || $app->get('debug', '0') == '1',
    'backtrace' => $this->debug ? $this->renderBacktrace() : null
);
 
// Reset used outline configuration.
unset($gantry['configuration']);
 
// Render the page.
echo $theme
    ->setLayout('_error', true)
    ->render('error.html.twig', $context);
 
Arguments
  1. "_error"
    
  2. true
    
     * @param   string  $directory  The name of the template
     * @param   string  $filename   The actual filename
     *
     * @return  string  The contents of the template
     *
     * @since   1.7.0
     */
    protected function _loadTemplate($directory, $filename)
    {
        $contents = '';
 
        // Check to see if we have a valid template file
        if (is_file($directory . '/' . $filename))
        {
            // Store the file path
            $this->_file = $directory . '/' . $filename;
 
            // Get the file content
            ob_start();
            require $directory . '/' . $filename;
            $contents = ob_get_contents();
            ob_end_clean();
        }
 
        return $contents;
    }
 
    /**
     * Fetch the template, and initialise the params
     *
     * @param   array  $params  Parameters to determine the template
     *
     * @return  HtmlDocument instance of $this to allow chaining
     *
     * @since   1.7.0
     */
    protected function _fetchTemplate($params = array())
    {
        // Check
        $directory = $params['directory'] ?? 'templates';
Arguments
  1. "/home/system1/domains/ashdoda/templates/rt_protean/error.php"
    
                    $file = 'index.php';
                }
            }
        }
 
        // Load the language file for the template
        $lang = CmsFactory::getLanguage();
 
        // 1.5 or core then 1.6
        $lang->load('tpl_' . $template, JPATH_BASE)
            || ($inherits !== '' && $lang->load('tpl_' . $inherits, $directory . '/' . $inherits))
            || $lang->load('tpl_' . $template, $directory . '/' . $template);
 
        // Assign the variables
        $this->baseurl = Uri::base(true);
        $this->params = $params['params'] ?? new Registry;
        $this->template = $template;
 
        // Load
        $this->_template = $this->_loadTemplate($baseDir, $file);
 
        return $this;
    }
 
    /**
     * Parse a document template
     *
     * @return  HtmlDocument  instance of $this to allow chaining
     *
     * @since   1.7.0
     */
    protected function _parseTemplate()
    {
        $matches = array();
 
        if (preg_match_all('#<jdoc:include\ type="([^"]+)"(.*)\/>#iU', $this->_template, $matches))
        {
            $messages = [];
            $template_tags_first = [];
            $template_tags_last = [];
Arguments
  1. "/home/system1/domains/ashdoda/templates/rt_protean"
    
  2. "error.php"
    
            $options['title'] = $args[3] ?? null;
        }
 
        parent::$_buffer[$options['type']][$options['name']][$options['title']] = $content;
 
        return $this;
    }
 
    /**
     * Parses the template and populates the buffer
     *
     * @param   array  $params  Parameters for fetching the template
     *
     * @return  HtmlDocument instance of $this to allow chaining
     *
     * @since   1.7.0
     */
    public function parse($params = array())
    {
        return $this->_fetchTemplate($params)->_parseTemplate();
    }
 
    /**
     * Outputs the template to the browser.
     *
     * @param   boolean  $caching  If true, cache the output
     * @param   array    $params   Associative array of attributes
     *
     * @return  string The rendered data
     *
     * @since   1.7.0
     */
    public function render($caching = false, $params = array())
    {
        $this->_caching = $caching;
 
        if (empty($this->_template))
        {
            $this->parse($params);
        }
Arguments
  1. array:7 [
      "template" => "rt_protean"
      "directory" => "/home/system1/domains/ashdoda/templates"
      "debug" => false
      "csp_nonce" => "MjU5MDE5NDNjMGJiODFjNjNiNjkzOTY2NWNmMTg2ZTIxMTc3OGNlMmZiMzk3MTQ1ZTdlODZlY2JjZTgwMjI1OWQ3MTdiZmZkMzMzMTYxNzc2MTAxZDEwZDIzMDdmZmU1NWFkOTE3OGEwMjY2YjNhODVlOGJkYWQ5NDM5OGM0MWE="
      "templateInherits" => ""
      "params" => Joomla\Registry\Registry {#846}
      "file" => "error.php"
    ]
    
        return $this->_fetchTemplate($params)->_parseTemplate();
    }
 
    /**
     * Outputs the template to the browser.
     *
     * @param   boolean  $caching  If true, cache the output
     * @param   array    $params   Associative array of attributes
     *
     * @return  string The rendered data
     *
     * @since   1.7.0
     */
    public function render($caching = false, $params = array())
    {
        $this->_caching = $caching;
 
        if (empty($this->_template))
        {
            $this->parse($params);
        }
 
        if (\array_key_exists('csp_nonce', $params) && $params['csp_nonce'] !== null)
        {
            $this->cspNonce = $params['csp_nonce'];
        }
 
        $data = $this->_renderTemplate();
        parent::render($caching, $params);
 
        return $data;
    }
 
    /**
     * Count the modules in the given position
     *
     * @param   string   $positionName     The position to use
     * @param   boolean  $withContentOnly  Count only a modules which actually has a content
     *
     * @return  integer  Number of modules found
Arguments
  1. array:7 [
      "template" => "rt_protean"
      "directory" => "/home/system1/domains/ashdoda/templates"
      "debug" => false
      "csp_nonce" => "MjU5MDE5NDNjMGJiODFjNjNiNjkzOTY2NWNmMTg2ZTIxMTc3OGNlMmZiMzk3MTQ1ZTdlODZlY2JjZTgwMjI1OWQ3MTdiZmZkMzMzMTYxNzc2MTAxZDEwZDIzMDdmZmU1NWFkOTE3OGEwMjY2YjNhODVlOGJkYWQ5NDM5OGM0MWE="
      "templateInherits" => ""
      "params" => Joomla\Registry\Registry {#846}
      "file" => "error.php"
    ]
    
        {
            $status = 500;
        }
 
        $errorReporting = CmsFactory::getApplication()->get('error_reporting');
 
        if ($errorReporting === "development" || $errorReporting === "maximum")
        {
            $status .= ' ' . str_replace("\n", ' ', $this->_error->getMessage());
        }
 
        CmsFactory::getApplication()->setHeader('status', $status);
 
        // Set variables
        $this->debug = $params['debug'] ?? false;
        $this->error = $this->_error;
 
        $params['file'] = 'error.php';
 
        return parent::render($cache, $params);
    }
 
    /**
     * Render the backtrace
     *
     * @return  string  The contents of the backtrace
     *
     * @since   1.7.0
     */
    public function renderBacktrace()
    {
        // If no error object is set return null
        if (!isset($this->_error))
        {
            return;
        }
 
        // The back trace
        $backtrace = $this->_error->getTrace();
 
Arguments
  1. false
    
  2. array:7 [
      "template" => "rt_protean"
      "directory" => "/home/system1/domains/ashdoda/templates"
      "debug" => false
      "csp_nonce" => "MjU5MDE5NDNjMGJiODFjNjNiNjkzOTY2NWNmMTg2ZTIxMTc3OGNlMmZiMzk3MTQ1ZTdlODZlY2JjZTgwMjI1OWQ3MTdiZmZkMzMzMTYxNzc2MTAxZDEwZDIzMDdmZmU1NWFkOTE3OGEwMjY2YjNhODVlOGJkYWQ5NDM5OGM0MWE="
      "templateInherits" => ""
      "params" => Joomla\Registry\Registry {#846}
      "file" => "error.php"
    ]
    
        $this->getDocument()->setError($error);
 
        // Add registry file for the template asset
        $wa = $this->getDocument()->getWebAssetManager()->getRegistry();
 
        $wa->addTemplateRegistryFile($template->template, $app->getClientId());
 
        if (!empty($template->parent))
        {
            $wa->addTemplateRegistryFile($template->parent, $app->getClientId());
        }
 
        if (ob_get_contents())
        {
            ob_end_clean();
        }
 
        $this->getDocument()->setTitle(Text::_('Error') . ': ' . $error->getCode());
 
        return $this->getDocument()->render(
            false,
            [
                'template'         => $template->template,
                'directory'        => JPATH_THEMES,
                'debug'            => JDEBUG,
                'csp_nonce'        => $app->get('csp_nonce'),
                'templateInherits' => $template->parent,
                'params'           => $template->params,
            ]
        );
    }
}
 
Arguments
  1. false
    
  2. array:7 [
      "template" => "rt_protean"
      "directory" => "/home/system1/domains/ashdoda/templates"
      "debug" => false
      "csp_nonce" => "MjU5MDE5NDNjMGJiODFjNjNiNjkzOTY2NWNmMTg2ZTIxMTc3OGNlMmZiMzk3MTQ1ZTdlODZlY2JjZTgwMjI1OWQ3MTdiZmZkMzMzMTYxNzc2MTAxZDEwZDIzMDdmZmU1NWFkOTE3OGEwMjY2YjNhODVlOGJkYWQ5NDM5OGM0MWE="
      "templateInherits" => ""
      "params" => Joomla\Registry\Registry {#846}
      "file" => "error.php"
    ]
    
            else
            {
                $format = $app->input->getString('format', 'html');
            }
 
            try
            {
                $renderer = AbstractRenderer::getRenderer($format);
            }
            catch (\InvalidArgumentException $e)
            {
                // Default to the HTML renderer
                $renderer = AbstractRenderer::getRenderer('html');
            }
 
            // Reset the document object in the factory, this gives us a clean slate and lets everything render properly
            Factory::$document = $renderer->getDocument();
            Factory::getApplication()->loadDocument(Factory::$document);
 
            $data = $renderer->render($error);
 
            // If nothing was rendered, just use the message from the Exception
            if (empty($data))
            {
                $data = $error->getMessage();
            }
 
            if ($isCli)
            {
                echo $data;
            }
            else
            {
                /** @var CMSApplication $app */
 
                // Do not allow cache
                $app->allowCache(false);
 
                $app->setBody($data);
            }
Arguments
  1. Joomla\CMS\Router\Exception\RouteNotFoundException {#651
      #message: "Page not found"
      #code: 404
      #file: "/home/system1/domains/ashdoda/libraries/src/Router/Router.php"
      #line: 153
    }
    
            }
        }
 
        // Always return false, this will tell PHP to handle the error internally
        return false;
    }
 
    /**
     * Handles exceptions: logs errors and renders error page.
     *
     * @param   \Exception|\Throwable  $error  An Exception or Throwable (PHP 7+) object for which to render the error page.
     *
     * @return  void
     *
     * @since   3.10.0
     */
    public static function handleException(\Throwable $error)
    {
        static::logException($error);
        static::render($error);
    }
 
    /**
     * Render the error page based on an exception.
     *
     * @param   \Throwable  $error  An Exception or Throwable (PHP 7+) object for which to render the error page.
     *
     * @return  void
     *
     * @since   3.0
     */
    public static function render(\Throwable $error)
    {
        try
        {
            $app = Factory::getApplication();
 
            // Flag if we are on cli
            $isCli = $app->isClient('cli');
 
Arguments
  1. Joomla\CMS\Router\Exception\RouteNotFoundException {#651
      #message: "Page not found"
      #code: 404
      #file: "/home/system1/domains/ashdoda/libraries/src/Router/Router.php"
      #line: 153
    }
    
                // Trigger the onAfterCompress event.
                $this->triggerEvent('onAfterCompress');
            }
        }
        catch (\Throwable $throwable)
        {
            /** @var ErrorEvent $event */
            $event = AbstractEvent::create(
                'onError',
                [
                    'subject'     => $throwable,
                    'eventClass'  => ErrorEvent::class,
                    'application' => $this,
                ]
            );
 
            // Trigger the onError event.
            $this->triggerEvent('onError', $event);
 
            ExceptionHandler::handleException($event->getError());
        }
 
        // Trigger the onBeforeRespond event.
        $this->getDispatcher()->dispatch('onBeforeRespond');
 
        // Send the application response.
        $this->respond();
 
        // Trigger the onAfterRespond event.
        $this->getDispatcher()->dispatch('onAfterRespond');
    }
 
    /**
     * Check if the user is required to reset their password.
     *
     * If the user is required to reset their password will be redirected to the page that manage the password reset.
     *
     * @param   string  $option  The option that manage the password reset
     * @param   string  $view    The view that manage the password reset
     * @param   string  $layout  The layout of the view that manage the password reset
Arguments
  1. Joomla\CMS\Router\Exception\RouteNotFoundException {#651
      #message: "Page not found"
      #code: 404
      #file: "/home/system1/domains/ashdoda/libraries/src/Router/Router.php"
      #line: 153
    }
    
     *
     * @since   1.5
     * @throws  \Exception
     */
    public function parse(&$uri, $setVars = false)
    {
        // Do the preprocess stage of the URL parse process
        $this->processParseRules($uri, self::PROCESS_BEFORE);
 
        // Do the main stage of the URL parse process
        $this->processParseRules($uri);
 
        // Do the postprocess stage of the URL parse process
        $this->processParseRules($uri, self::PROCESS_AFTER);
 
        // Check if all parts of the URL have been parsed.
        // Otherwise we have an invalid URL
        if (\strlen($uri->getPath()) > 0)
        {
            throw new RouteNotFoundException(Text::_('JERROR_PAGE_NOT_FOUND'));
        }
 
        if ($setVars)
        {
            $this->setVars($uri->getQuery(true));
 
            return $this->getVars();
        }
 
        return $uri->getQuery(true);
    }
 
    /**
     * Function to convert an internal URI to a route
     *
     * @param   string|array|Uri  $url  The internal URL or an associative array
     *
     * @return  Uri  The absolute search engine friendly URL object
     *
     * @since   1.5
Arguments
  1. "Page not found"
    
Exception message: Page not found
 
    /**
     * Route the application.
     *
     * Routing is the process of examining the request environment to determine which
     * component should receive the request. The component optional parameters
     * are then set in the request object to be processed when the application is being
     * dispatched.
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function route()
    {
        // Get the full request URI.
        $uri = clone Uri::getInstance();
 
        $router = static::getRouter();
        $result = $router->parse($uri, true);
 
        $active = $this->getMenu()->getActive();
 
        if ($active !== null
            && $active->type === 'alias'
            && $active->getParams()->get('alias_redirect')
            && \in_array($this->input->getMethod(), array('GET', 'HEAD'), true))
        {
            $item = $this->getMenu()->getItem($active->getParams()->get('aliasoptions'));
 
            if ($item !== null)
            {
                $oldUri = clone Uri::getInstance();
 
                if ($oldUri->getVar('Itemid') == $active->id)
                {
                    $oldUri->setVar('Itemid', $item->id);
                }
 
                $base = Uri::base(true);
Arguments
  1. Joomla\CMS\Uri\Uri {#627}
    
  2. true
    
 
        parent::render();
    }
 
    /**
     * Route the application.
     *
     * Routing is the process of examining the request environment to determine which
     * component should receive the request. The component optional parameters
     * are then set in the request object to be processed when the application is being
     * dispatched.
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function route()
    {
        // Execute the parent method
        parent::route();
 
        $Itemid = $this->input->getInt('Itemid', null);
        $this->authorise($Itemid);
    }
 
    /**
     * Set the current state of the detect browser option.
     *
     * @param   boolean  $state  The new state of the detect browser option
     *
     * @return    boolean     The previous state
     *
     * @since    3.2
     */
    public function setDetectBrowser($state = false)
    {
        $old = $this->getDetectBrowser();
        $this->detect_browser = $state;
 
        return $old;
        $this->triggerEvent('onAfterDispatch');
    }
 
    /**
     * Method to run the Web application routines.
     *
     * @return  void
     *
     * @since   3.2
     */
    protected function doExecute()
    {
        // Initialise the application
        $this->initialiseApp();
 
        // Mark afterInitialise in the profiler.
        JDEBUG ? $this->profiler->mark('afterInitialise') : null;
 
        // Route the application
        $this->route();
 
        // Mark afterRoute in the profiler.
        JDEBUG ? $this->profiler->mark('afterRoute') : null;
 
        /*
         * Check if the user is required to reset their password
         *
         * Before $this->route(); "option" and "view" can't be safely read using:
         * $this->input->getCmd('option'); or $this->input->getCmd('view');
         * ex: due of the sef urls
         */
        $this->checkUserRequireReset('com_users', 'profile', 'edit', 'com_users/profile.save,com_users/profile.apply,com_users/user.logout');
 
        // Dispatch the application
        $this->dispatch();
 
        // Mark afterDispatch in the profiler.
        JDEBUG ? $this->profiler->mark('afterDispatch') : null;
    }
 
        }
    }
 
    /**
     * Execute the application.
     *
     * @return  void
     *
     * @since   3.2
     */
    public function execute()
    {
        try
        {
            $this->sanityCheckSystemVariables();
            $this->setupLogging();
            $this->createExtensionNamespaceMap();
 
            // Perform application routines.
            $this->doExecute();
 
            // If we have an application document object, render it.
            if ($this->document instanceof \Joomla\CMS\Document\Document)
            {
                // Render the application output.
                $this->render();
            }
 
            // If gzip compression is enabled in configuration and the server is compliant, compress the output.
            if ($this->get('gzip') && !ini_get('zlib.output_compression') && ini_get('output_handler') !== 'ob_gzhandler')
            {
                $this->compress();
 
                // Trigger the onAfterCompress event.
                $this->triggerEvent('onAfterCompress');
            }
        }
        catch (\Throwable $throwable)
        {
            /** @var ErrorEvent $event */
 *
 * In addition to aliasing "common" service keys, we also create aliases for the PHP classes to ensure autowiring objects
 * is supported.  This includes aliases for aliased class names, and the keys for aliased class names should be considered
 * deprecated to be removed when the class name alias is removed as well.
 */
$container->alias('session.web', 'session.web.site')
    ->alias('session', 'session.web.site')
    ->alias('JSession', 'session.web.site')
    ->alias(\Joomla\CMS\Session\Session::class, 'session.web.site')
    ->alias(\Joomla\Session\Session::class, 'session.web.site')
    ->alias(\Joomla\Session\SessionInterface::class, 'session.web.site');
 
// Instantiate the application.
$app = $container->get(\Joomla\CMS\Application\SiteApplication::class);
 
// Set the application as global app
\Joomla\CMS\Factory::$application = $app;
 
// Execute the application.
$app->execute();
 
 
if (version_compare(PHP_VERSION, JOOMLA_MINIMUM_PHP, '<'))
{
    die(
        str_replace(
            '{{phpversion}}',
            JOOMLA_MINIMUM_PHP,
            file_get_contents(dirname(__FILE__) . '/templates/system/incompatible.html')
        )
    );
}
 
/**
 * Constant that is checked in included files to prevent direct access.
 * define() is used rather than "const" to not error for PHP 5.2 and lower
 */
define('_JEXEC', 1);
 
// Run the application - All executable code should be triggered through this file
require_once dirname(__FILE__) . '/includes/app.php';
 
Arguments
  1. "/home/system1/domains/ashdoda/includes/app.php"
    

Environment & details:

Key Value
tmpl
"system"
empty
empty
empty
empty
Key Value
TZ
"UTC"
REDIRECT_REDIRECT_UNIQUE_ID
"ZgV976m3sD7idJDKiCxdSwAAAA8"
REDIRECT_REDIRECT_isproxyrequest
"1"
REDIRECT_REDIRECT_HTTP_AUTHORIZATION
""
REDIRECT_REDIRECT_HTTPS
"on"
REDIRECT_REDIRECT_STATUS
"200"
REDIRECT_UNIQUE_ID
"ZgV976m3sD7idJDKiCxdSwAAAA8"
REDIRECT_HTTP_AUTHORIZATION
""
REDIRECT_HTTPS
"on"
REDIRECT_HANDLER
"application/x-httpd-ea-php83"
REDIRECT_STATUS
"200"
UNIQUE_ID
"ZgV976m3sD7idJDKiCxdSwAAAA8"
HTTPS
"on"
HTTP_HOST
"ashdoda.system1uk.com"
HTTP_X_FORWARDED_FOR
"3.93.59.171"
HTTP_X_FORWARDED_HOST
"ashdoda.system1uk.com"
HTTP_X_FORWARDED_PORT
"443"
HTTP_X_FORWARDED_PROTO
"https"
HTTP_X_FORWARDED_SERVER
"ashdoda.system1uk.com"
HTTP_X_REAL_IP
"3.93.59.171"
HTTP_ACCEPT
"*/*"
HTTP_USER_AGENT
"claudebot"
PATH
"/usr/local/jdk/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin:/opt/bin"
SERVER_SIGNATURE
""
SERVER_SOFTWARE
"Apache"
SERVER_NAME
"ashdoda.system1uk.com"
SERVER_ADDR
"194.76.26.133"
SERVER_PORT
"443"
REMOTE_ADDR
"3.93.59.171"
DOCUMENT_ROOT
"/home/system1/domains/ashdoda"
REQUEST_SCHEME
"https"
CONTEXT_PREFIX
"/cgi-sys"
CONTEXT_DOCUMENT_ROOT
"/usr/local/cpanel/cgi-sys/"
SERVER_ADMIN
"webmaster@ashdoda.system1uk.com"
SCRIPT_FILENAME
"/home/system1/domains/ashdoda/index.php"
REMOTE_PORT
"41754"
REDIRECT_URL
"/index.php"
REDIRECT_QUERY_STRING
"tmpl=system"
GATEWAY_INTERFACE
"CGI/1.1"
SERVER_PROTOCOL
"HTTP/1.1"
REQUEST_METHOD
"GET"
QUERY_STRING
"tmpl=system"
REQUEST_URI
"/%D7%9E%D7%9B%D7%99%D7%A8%D7%AA-%D7%97%D7%9E%D7%A5?tmpl=system"
SCRIPT_NAME
"/index.php"
ORIG_SCRIPT_FILENAME
"/usr/local/cpanel/cgi-sys/ea-php83"
ORIG_PATH_INFO
"/index.php"
ORIG_PATH_TRANSLATED
"/home/system1/domains/ashdoda/index.php"
ORIG_SCRIPT_NAME
"/cgi-sys/ea-php83"
PHP_SELF
"/index.php"
REQUEST_TIME_FLOAT
1711635951.8781
REQUEST_TIME
1711635951
argv
array:1 [
  0 => "tmpl=system"
]
argc
1
empty
0. Whoops\Handler\PrettyPageHandler