}
}
// Check, the data were found and if template really exists
if (!is_file(JPATH_THEMES . '/' . $template->template . '/index.php')) {
throw new \InvalidArgumentException(Text::sprintf('JERROR_COULD_NOT_FIND_TEMPLATE', $original_tmpl));
}
}
// Cache the result
$this->template = $template;
public function render(\Throwable $error): string
{
$app = Factory::getApplication();
// Get the current template from the application
$template = $app->getTemplate(true);
// Push the error object into the document
$this->getDocument()->setError($error);
// Add registry file for the template asset
// 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 file
require_once dirname(__FILE__) . '/includes/app.php';
JSNHtmlAsset::addScriptPath('jsn', 'joomlashine/js');
// Prepare config
foreach (JSNVersion::$products AS $product)
{
JSNHtmlAsset::prepare($product, !$application->isSite());
}
// Predefine script libraries
if (JSNVersion::isJoomlaCompatible('3.2'))
{
// Let the parent class do the construction first.
parent::__construct($subject, $config);
// Initialize JSN Framework.
require_once dirname(__FILE__) . '/libraries/loader.php';
require_once dirname(__FILE__) . '/jsnframework.defines.php';
// Get application object.
self::$_app = JFactory::getApplication();
// Get requested component, view and task.
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 file
require_once dirname(__FILE__) . '/includes/app.php';
[2/2]
InvalidArgumentException
|
---|
InvalidArgumentException: Kan template "protostar" niet vinden. at /var/www/kleiduif.be/libraries/src/Application/SiteApplication.php:537 at Joomla\CMS\Application\SiteApplication->getTemplate(true) (/var/www/kleiduif.be/libraries/src/Error/Renderer/HtmlRenderer.php:50) at Joomla\CMS\Error\Renderer\HtmlRenderer->render(object(Error)) (/var/www/kleiduif.be/libraries/src/Exception/ExceptionHandler.php:126) at Joomla\CMS\Exception\ExceptionHandler::render(object(Error)) (/var/www/kleiduif.be/libraries/src/Exception/ExceptionHandler.php:72) at Joomla\CMS\Exception\ExceptionHandler::handleException(object(Error)) (/var/www/kleiduif.be/libraries/src/Application/CMSApplication.php:322) at Joomla\CMS\Application\CMSApplication->execute() (/var/www/kleiduif.be/includes/app.php:61) at require_once('/var/www/kleiduif.be/includes/app.php') (/var/www/kleiduif.be/index.php:32) |
[1/2]
Error
|
---|
Error: Call to undefined method Joomla\CMS\Application\SiteApplication::isSite() at /var/www/kleiduif.be/plugins/system/jsnframework/jsnframework.defines.php:61 at require_once() (/var/www/kleiduif.be/plugins/system/jsnframework/jsnframework.php:48) at PlgSystemJSNFramework->__construct(object(Dispatcher), array('type' => 'system', 'name' => 'jsnframework', 'params' => '{"imageshow":"imageshow","token_key":"104033c88a3d2ecc407cfae19a214c87"}', 'id' => 10027)) (/var/www/kleiduif.be/libraries/src/Extension/ExtensionManagerTrait.php:242) at Joomla\CMS\Application\CMSApplication->loadPluginFromFilesystem('jsnframework', 'system') (/var/www/kleiduif.be/libraries/src/Extension/ExtensionManagerTrait.php:160) at Joomla\CMS\Application\CMSApplication->loadExtension('Joomla\\CMS\\Extension\\PluginInterface', 'jsnframework:system', '/var/www/kleiduif.be/plugins/system/jsnframework') (/var/www/kleiduif.be/libraries/src/Extension/ExtensionManagerTrait.php:99) at Joomla\CMS\Application\CMSApplication->bootPlugin('jsnframework', 'system') (/var/www/kleiduif.be/libraries/src/Plugin/PluginHelper.php:232) at Joomla\CMS\Plugin\PluginHelper::import(object(stdClass), true, object(Dispatcher)) (/var/www/kleiduif.be/libraries/src/Plugin/PluginHelper.php:192) at Joomla\CMS\Plugin\PluginHelper::importPlugin('system') (/var/www/kleiduif.be/libraries/src/Application/CMSApplication.php:744) at Joomla\CMS\Application\CMSApplication->initialiseApp(array('language' => 'nl-NL')) (/var/www/kleiduif.be/libraries/src/Application/SiteApplication.php:635) at Joomla\CMS\Application\SiteApplication->initialiseApp() (/var/www/kleiduif.be/libraries/src/Application/SiteApplication.php:226) at Joomla\CMS\Application\SiteApplication->doExecute() (/var/www/kleiduif.be/libraries/src/Application/CMSApplication.php:293) at Joomla\CMS\Application\CMSApplication->execute() (/var/www/kleiduif.be/includes/app.php:61) at require_once('/var/www/kleiduif.be/includes/app.php') (/var/www/kleiduif.be/index.php:32) |