* @license GNU General Public License version 2 or later; see LICENSE.txt */defined('_JEXEC') or die;$app = JFactory::getApplication();$doc = JFactory::getDocument();$user = JFactory::getUser();$this->language = $doc->language;$this->direction = $doc->direction; // Store the file path $this->_file = $directory . '/' . $filename; // Get the file content ob_start(); require $directory . '/' . $filename; $contents = ob_get_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, 'subject' => $app, 'document' => $renderer->getDocument(), ]) ); $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->dispatchEvent('onError', $event); ExceptionHandler::handleException($event->getError()); } // Trigger the onBeforeRespond event. $this->dispatchEvent( 'onBeforeRespond',// Set the application as global app\Joomla\CMS\Factory::$application = $app;// Execute the application.$app->execute(); // ... die die();}// Run the application - All executable code should be triggered through this filerequire_once __DIR__ . '/includes/app.php';require_once JPATH_ROOT.'/plugins/system/djimgtowebp/helper.php';
require_once JPATH_ROOT.'/plugins/system/djimgtowebp/lib/autoload.php';
use WebPConvert\WebPConvert;
class PlgSystemDJImgToWebp extends JPlugin
{
protected $_webps;
function onAfterRender()
{
if (!is_file($path)) { return new DummyPlugin($dispatcher); } // Include the file of the plugin require_once $path; // Compile the classname $className = 'Plg' . str_replace('-', '', $type) . $plugin; // Editors don't follow the convention case ModuleInterface::class: $container->set($type, new Module(new ModuleDispatcherFactory(''), new HelperFactory(''))); break; case PluginInterface::class: [$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). foreach ($plugins as $value) { if ($value->type === $type && ($plugin === null || $value->name === $plugin)) { static::import($value, $autocreate, $dispatcher); $results = true; } } // Bail out early if we're not using default args // Load the behaviour plugins PluginHelper::importPlugin('behaviour', null, true, $this->getDispatcher()); // Trigger the onAfterInitialise event. PluginHelper::importPlugin('system', null, true, $this->getDispatcher()); $this->dispatchEvent( 'onAfterInitialise', new AfterInitialiseEvent('onAfterInitialise', ['subject' => $this]) ); } $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(); // ... die die();}// Run the application - All executable code should be triggered through this filerequire_once __DIR__ . '/includes/app.php';|
[2/2]
ClassNotFoundError
|
|---|
Symfony\Component\ErrorHandler\Error\ClassNotFoundError:
Attempted to load class "JFactory" from the global namespace.
Did you forget a "use" statement?
at /var/www/clients/client193/web1719/web/templates/ja_simpli/error.php:12
at require()
(/var/www/clients/client193/web1719/web/libraries/src/Document/HtmlDocument.php:734)
at Joomla\CMS\Document\HtmlDocument->_loadTemplate()
(/var/www/clients/client193/web1719/web/libraries/src/Document/HtmlDocument.php:788)
at Joomla\CMS\Document\HtmlDocument->_fetchTemplate()
(/var/www/clients/client193/web1719/web/libraries/src/Document/HtmlDocument.php:625)
at Joomla\CMS\Document\HtmlDocument->parse()
(/var/www/clients/client193/web1719/web/libraries/src/Document/HtmlDocument.php:643)
at Joomla\CMS\Document\HtmlDocument->render()
(/var/www/clients/client193/web1719/web/libraries/src/Document/ErrorDocument.php:139)
at Joomla\CMS\Document\ErrorDocument->render()
(/var/www/clients/client193/web1719/web/libraries/src/Error/Renderer/HtmlRenderer.php:70)
at Joomla\CMS\Error\Renderer\HtmlRenderer->render()
(/var/www/clients/client193/web1719/web/libraries/src/Exception/ExceptionHandler.php:142)
at Joomla\CMS\Exception\ExceptionHandler::render()
(/var/www/clients/client193/web1719/web/libraries/src/Exception/ExceptionHandler.php:76)
at Joomla\CMS\Exception\ExceptionHandler::handleException()
(/var/www/clients/client193/web1719/web/libraries/src/Application/CMSApplication.php:334)
at Joomla\CMS\Application\CMSApplication->execute()
(/var/www/clients/client193/web1719/web/includes/app.php:58)
at require_once('/var/www/clients/client193/web1719/web/includes/app.php')
(/var/www/clients/client193/web1719/web/index.php:51)
|
|
[1/2]
Error
|
|---|
Error:
Class "JPlugin" not found
at /var/www/clients/client193/web1719/web/plugins/system/djimgtowebp/djimgtowebp.php:26
at require_once()
(/var/www/clients/client193/web1719/web/libraries/src/Extension/ExtensionManagerTrait.php:217)
at Joomla\CMS\Application\CMSApplication->loadPluginFromFilesystem()
(/var/www/clients/client193/web1719/web/libraries/src/Extension/ExtensionManagerTrait.php:160)
at Joomla\CMS\Application\CMSApplication->loadExtension()
(/var/www/clients/client193/web1719/web/libraries/src/Extension/ExtensionManagerTrait.php:99)
at Joomla\CMS\Application\CMSApplication->bootPlugin()
(/var/www/clients/client193/web1719/web/libraries/src/Plugin/PluginHelper.php:232)
at Joomla\CMS\Plugin\PluginHelper::import()
(/var/www/clients/client193/web1719/web/libraries/src/Plugin/PluginHelper.php:192)
at Joomla\CMS\Plugin\PluginHelper::importPlugin()
(/var/www/clients/client193/web1719/web/libraries/src/Application/CMSApplication.php:812)
at Joomla\CMS\Application\CMSApplication->initialiseApp()
(/var/www/clients/client193/web1719/web/libraries/src/Application/SiteApplication.php:638)
at Joomla\CMS\Application\SiteApplication->initialiseApp()
(/var/www/clients/client193/web1719/web/libraries/src/Application/SiteApplication.php:237)
at Joomla\CMS\Application\SiteApplication->doExecute()
(/var/www/clients/client193/web1719/web/libraries/src/Application/CMSApplication.php:304)
at Joomla\CMS\Application\CMSApplication->execute()
(/var/www/clients/client193/web1719/web/includes/app.php:58)
at require_once('/var/www/clients/client193/web1719/web/includes/app.php')
(/var/www/clients/client193/web1719/web/index.php:51)
|