* * @return Uri */ protected static function getBase() { return static::$baseUri ?? (static::$baseUri = new Uri(static::$base)); }} * @return Uri */ public static function generate($path, array $parameters = [], $secure = null) { $url = new Uri($path); $base = static::getBase(); if (!$url->getHost() && !str_starts_with($url->getPath(), '/')) { $url = $url->withPath(Path::join($base->getPath(), $url->getPath())); } // add next() as last argument if ($this->stack) { $arguments[] = $this; } return $callback(...$arguments); }} ); } $middleware = new Middleware(array_shift($arguments), $listeners); return $middleware(...$arguments); }} { [$event, $type] = explode('|', $event, 2) + [1 => 'default']; $handler = $this->handlers[$type] ?? $this->handlers['default']; return $handler($this->getListeners($event), $arguments); } /** * Gets the event listeners. * * * @return mixed */ public static function emit($event, ...$arguments) { return static::getDispatcher()->dispatch($event, ...$arguments); } /** * Gets the event dispatcher instance. * try { if (empty($parameters) && is_null($secure) && static::isValid($path)) { return $path; } return (string) Event::emit( 'url.resolve|middleware', [static::class, 'generate'], $path, $parameters, $secure, ? "{$this->baseurl}/{$params['touchicon']}" : "{$this->baseurl}/templates/yootheme/packages/theme-joomla/assets/images/apple-touch-icon.png";$rtl = $this->direction == 'ltr' ? '' : '.rtl';$style = class_exists(File::class) ? Url::to(File::find("~theme/css/theme{.{$template->id},}{$rtl}.css")) : "{$this->baseurl}/templates/system/css/theme{$rtl}.css";$customCss = isset($params['child_theme']) && file_exists("{$directory}_{$params['child_theme']}/css/custom.css") ? "{$this->baseurl}/templates/{$template->template}_{$params['child_theme']}/css/custom.css" : false; // 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; $this->baseurl = Uri::base(true); $this->params = $params['params'] ?? new Registry(); $this->template = $template; // Load $this->_template = $this->_loadTemplate($baseDir, $file); return $this; } /** * * @since 1.7.0 */ public function parse($params = []) { return $this->_fetchTemplate($params)->_parseTemplate(); } /** * Outputs the template to the browser. * public function render($caching = false, $params = []) { $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']; } $this->debug = $params['debug'] ?? false; $this->error = $this->_error; $params['file'] = 'error.php'; return parent::render($cache, $params); } /** * Render the backtrace * ob_end_clean(); } $this->getDocument()->setTitle(Text::_('Error') . ': ' . $error->getCode()); return $this->getDocument()->render( false, [ 'template' => $template->template, 'directory' => JPATH_THEMES, 'debug' => JDEBUG, // 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(); } * @since 3.10.0 */ public static function handleException(\Throwable $error) { static::logException($error); static::render($error); } /** * Render the error page based on an exception. * ); // Trigger the onError event. $this->triggerEvent('onError', $event); ExceptionHandler::handleException($event->getError()); } // Trigger the onBeforeRespond event. $this->getDispatcher()->dispatch('onBeforeRespond');// Set the application as global app\Joomla\CMS\Factory::$application = $app;// Execute the application.$app->execute(); * 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 filerequire_once dirname(__FILE__) . '/includes/app.php'; * * @param string $cache */ public function __construct($cache = null) { $this->config = new Configuration($cache); $this->set(static::class, $this); $this->setAlias(static::class, 'app'); $this->set(Config::class, $this->config); * * @return static */ public static function getInstance($cache = null) { return static::$instance ?? (static::$instance = new static($cache)); } /** * Run application. *Path::setAlias('~theme', $root);Path::setAlias('~yootheme', "{$root}/packages");Path::setAlias('~assets/leaflet', "{$root}/vendor/assets/leaflet");Path::setAlias('~assets/uikit', "{$root}/vendor/assets/uikit");$app = Application::getInstance($cache);$app->load('~theme/packages/{application,encryption,image,translation,http{-message,-server},view{,-metadata}}/bootstrap.php');return $app;$option = $this->app->input->getCmd('option');$options = ['com_ajax', 'com_content', 'com_templates', 'com_modules', 'com_advancedmodules'];if ($this->app->isClient('site') || in_array($option, $options, true)) { // bootstrap application $app = require __DIR__ . '/bootstrap.php'; $app->load( __DIR__ . '/{packages/{platform-joomla,' . 'theme{,-analytics,-cookie,-highlight,-settings},' . 'builder{,-source*,-templates,-newsletter},' . * @param string $file * @return void */ public function loadFile($file) { require $file; } /** * Prevent removal of YOOtheme Installer plugin if other YOOtheme packages are installed. * { parent::__construct($subject, $config); $pattern = JPATH_ROOT . '/templates/*/template_bootstrap.php'; array_map([$this, 'loadFile'], glob($pattern) ?: array()); } /** * Loads a file. * if (!class_exists($className)) { return new DummyPlugin($dispatcher); } // Instantiate the plugin return new $className($dispatcher, (array) PluginHelper::getPlugin($type, $plugin)); } /** * Get the DI container. * case ModuleInterface::class: $container->set($type, new Module(new ModuleDispatcherFactory(''), new HelperFactory(''))); break; case PluginInterface::class: list($pluginName, $pluginType) = explode(':', $extensionName); $container->set($type, $this->loadPluginFromFilesystem($pluginName, $pluginType)); } } $container->get(DispatcherInterface::class)->dispatch( 'onAfterExtensionBoot', $plugin = str_starts_with($plugin, 'plg_') ? substr($plugin, 4) : $plugin; // Path to look for services $path = JPATH_SITE . '/plugins/' . $type . '/' . $plugin; return $this->loadExtension(PluginInterface::class, $plugin . ':' . $type, $path); } /** * Loads the extension. * return; } $plugins[$hash] = true; $plugin = Factory::getApplication()->bootPlugin($plugin->name, $plugin->type); if ($dispatcher && $plugin instanceof DispatcherAwareInterface) { $plugin->setDispatcher($dispatcher); } $plugins = static::load(); // Get the specified plugin(s). for ($i = 0, $t = \count($plugins); $i < $t; $i++) { if ($plugins[$i]->type === $type && ($plugin === null || $plugins[$i]->name === $plugin)) { static::import($plugins[$i], $autocreate, $dispatcher); $results = true; } } // Bail out early if we're not using default args // Load the behaviour plugins PluginHelper::importPlugin('behaviour'); // Trigger the onAfterInitialise event. PluginHelper::importPlugin('system'); $this->triggerEvent('onAfterInitialise'); } /** * Checks if HTTPS is forced in the client configuration. $options['language'] = 'en-GB'; } } // Finish initialisation parent::initialiseApp($options); } /** * Load the library language files for the application * * @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->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();// Set the application as global app\Joomla\CMS\Factory::$application = $app;// Execute the application.$app->execute(); * 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 filerequire_once dirname(__FILE__) . '/includes/app.php';|
[2/2]
Error
|
|---|
Error:
Typed static property YOOtheme\Url::$base must not be accessed before initialization
at /homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/Url.php:141
at YOOtheme\Url::getBase()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/Url.php:93)
at YOOtheme\Url::generate()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/Middleware.php:40)
at YOOtheme\Middleware->__invoke()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/EventDispatcher.php:173)
at YOOtheme\EventDispatcher->handleMiddleware()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/EventDispatcher.php:45)
at YOOtheme\EventDispatcher->dispatch()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/Event.php:47)
at YOOtheme\Event::emit()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/utils/src/Url.php:55)
at YOOtheme\Url::to()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/error.php:43)
at require('/homepages/41/d1019315596/htdocs/web/templates/yootheme/error.php')
(/homepages/41/d1019315596/htdocs/web/libraries/src/Document/HtmlDocument.php:721)
at Joomla\CMS\Document\HtmlDocument->_loadTemplate()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Document/HtmlDocument.php:776)
at Joomla\CMS\Document\HtmlDocument->_fetchTemplate()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Document/HtmlDocument.php:612)
at Joomla\CMS\Document\HtmlDocument->parse()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Document/HtmlDocument.php:630)
at Joomla\CMS\Document\HtmlDocument->render()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Document/ErrorDocument.php:139)
at Joomla\CMS\Document\ErrorDocument->render()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Error/Renderer/HtmlRenderer.php:70)
at Joomla\CMS\Error\Renderer\HtmlRenderer->render()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Exception/ExceptionHandler.php:126)
at Joomla\CMS\Exception\ExceptionHandler::render()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Exception/ExceptionHandler.php:72)
at Joomla\CMS\Exception\ExceptionHandler::handleException()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Application/CMSApplication.php:322)
at Joomla\CMS\Application\CMSApplication->execute()
(/homepages/41/d1019315596/htdocs/web/includes/app.php:61)
at require_once('/homepages/41/d1019315596/htdocs/web/includes/app.php')
(/homepages/41/d1019315596/htdocs/web/index.php:32)
|
|
[1/2]
Error
|
|---|
Error:
Class "YOOtheme\Configuration\Configuration" not found
at /homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/application/src/Application.php:38
at YOOtheme\Application->__construct()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/packages/application/src/Application.php:56)
at YOOtheme\Application::getInstance()
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/bootstrap.php:18)
at require('/homepages/41/d1019315596/htdocs/web/templates/yootheme/bootstrap.php')
(/homepages/41/d1019315596/htdocs/web/templates/yootheme/template_bootstrap.php:9)
at require('/homepages/41/d1019315596/htdocs/web/templates/yootheme/template_bootstrap.php')
(/homepages/41/d1019315596/htdocs/web/plugins/system/yootheme/yootheme.php:44)
at plgSystemYOOtheme->loadFile()
at array_map()
(/homepages/41/d1019315596/htdocs/web/plugins/system/yootheme/yootheme.php:33)
at plgSystemYOOtheme->__construct()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Extension/ExtensionManagerTrait.php:242)
at Joomla\CMS\Application\CMSApplication->loadPluginFromFilesystem()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Extension/ExtensionManagerTrait.php:160)
at Joomla\CMS\Application\CMSApplication->loadExtension()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Extension/ExtensionManagerTrait.php:99)
at Joomla\CMS\Application\CMSApplication->bootPlugin()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Plugin/PluginHelper.php:232)
at Joomla\CMS\Plugin\PluginHelper::import()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Plugin/PluginHelper.php:192)
at Joomla\CMS\Plugin\PluginHelper::importPlugin()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Application/CMSApplication.php:744)
at Joomla\CMS\Application\CMSApplication->initialiseApp()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Application/SiteApplication.php:635)
at Joomla\CMS\Application\SiteApplication->initialiseApp()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Application/SiteApplication.php:226)
at Joomla\CMS\Application\SiteApplication->doExecute()
(/homepages/41/d1019315596/htdocs/web/libraries/src/Application/CMSApplication.php:293)
at Joomla\CMS\Application\CMSApplication->execute()
(/homepages/41/d1019315596/htdocs/web/includes/app.php:61)
at require_once('/homepages/41/d1019315596/htdocs/web/includes/app.php')
(/homepages/41/d1019315596/htdocs/web/index.php:32)
|