* * @return object[] * * @since 5.0.0 */ protected function onSetModules(array $value): array { // Filter out Module elements. Non empty result means invalid data $valid = !array_filter($value, function ($item) { return !\is_object($item); }); $ucfirst = ucfirst($name); $methodName1 = 'onSet' . $ucfirst; $methodName2 = 'set' . $ucfirst; if (method_exists($this, $methodName1)) { $value = $this->{$methodName1}($value); } elseif (method_exists($this, $methodName2)) { @trigger_error( sprintf( 'Use method "%s" for value pre-processing is deprecated, and will not work in Joomla 6. Use "%s" instead. Event %s', $methodName2, public function __construct(string $name, array $arguments = []) { parent::__construct($name, $arguments); foreach ($arguments as $argumentName => $value) { $this->setArgument($argumentName, $value); } } /** * Get an event argument value. ); } $this->constructed = true; parent::__construct($name, $arguments); } /** * Set the value of an event argument. * // Reshape the arguments array to preserve b/c with legacy listeners if ($this->legacyArgumentsOrder) { $arguments = $this->reshapeArguments($arguments, $this->legacyArgumentsOrder); } parent::__construct($name, $arguments); if (!\array_key_exists('subject', $this->arguments)) { throw new \BadMethodCallException("Argument 'subject' of event {$name} is required but has not been provided"); } } public function __construct($name, array $arguments = []) { // This event has a dummy subject for now $this->arguments['subject'] = $this->arguments['subject'] ?? new \stdClass(); parent::__construct($name, $arguments); if (!\array_key_exists('modules', $this->arguments)) { throw new \BadMethodCallException("Argument 'modules' of event {$name} is required but has not been provided"); } // If the onPrepareModuleList event returns an array of modules, then ignore the default module list creation if (!$modules) { $modules = static::getModuleList(); } $modules = $dispatcher->dispatch('onAfterModuleList', new Module\AfterModuleListEvent('onAfterModuleList', [ 'modules' => &$modules, // @todo: Remove reference in Joomla 6, see AfterModuleListEvent::__constructor() ]))->getArgument('modules', $modules); $modules = static::cleanModuleList($modules); public static function &getModules($position) { $position = strtolower($position); $result = []; $input = Factory::getApplication()->getInput(); $modules = &static::load(); $total = \count($modules); for ($i = 0; $i < $total; $i++) { if ($modules[$i]->position === $position) { $result[] = &$modules[$i]; { if ((isset(parent::$_buffer['modules'][$positionName])) && (parent::$_buffer['modules'][$positionName] === false)) { return 0; } $modules = ModuleHelper::getModules($positionName); if (!$withContentOnly) { return \count($modules); } <div class="site-description"><?php echo htmlspecialchars($this->params->get('siteDescription')); ?></div> <?php endif; ?> </div> </div> <?php endif; ?> <?php if ($this->countModules('menu') || $this->countModules('search')) : ?> <div class="grid-child container-nav"> <?php if ($this->countModules('menu')) : ?> <jdoc:include type="modules" name="menu" style="none" /> <?php endif; ?> <?php if ($this->countModules('search')) : ?> // 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(); * 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'; // Load the plugins from the database. $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; } } } $this->set('editor', $editor); // 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', $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]
TypeError
|
|---|
TypeError:
Joomla\CMS\Event\Module\ModuleListEvent::onSetModules(): Argument #1 ($value) must be of type array, null given, called in /home/users/iso/public_html/aparaty/jommla/libraries/src/Event/AbstractEvent.php on line 227
at /home/users/iso/public_html/aparaty/jommla/libraries/src/Event/Module/ModuleListEvent.php:73
at Joomla\CMS\Event\Module\ModuleListEvent->onSetModules(null)
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Event/AbstractEvent.php:227)
at Joomla\CMS\Event\AbstractEvent->setArgument('modules', null)
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Event/AbstractEvent.php:115)
at Joomla\CMS\Event\AbstractEvent->__construct('onAfterModuleList', array('modules' => null, 'subject' => null))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Event/AbstractImmutableEvent.php:51)
at Joomla\CMS\Event\AbstractImmutableEvent->__construct('onAfterModuleList', array('modules' => null, 'subject' => null))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Event/Module/ModuleEvent.php:55)
at Joomla\CMS\Event\Module\ModuleEvent->__construct('onAfterModuleList', array('modules' => null, 'subject' => null))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Event/Module/ModuleListEvent.php:48)
at Joomla\CMS\Event\Module\ModuleListEvent->__construct('onAfterModuleList', array('modules' => null))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Helper/ModuleHelper.php:387)
at Joomla\CMS\Helper\ModuleHelper::load()
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Helper/ModuleHelper.php:89)
at Joomla\CMS\Helper\ModuleHelper::getModules('menu')
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/HtmlDocument.php:669)
at Joomla\CMS\Document\HtmlDocument->countModules('menu')
(/home/users/iso/public_html/aparaty/jommla/templates/cassiopeia/error.php:135)
at require('/home/users/iso/public_html/aparaty/jommla/templates/cassiopeia/error.php')
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/HtmlDocument.php:731)
at Joomla\CMS\Document\HtmlDocument->_loadTemplate('/home/users/iso/public_html/aparaty/jommla/templates/cassiopeia', 'error.php')
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/HtmlDocument.php:785)
at Joomla\CMS\Document\HtmlDocument->_fetchTemplate(array('template' => 'cassiopeia', 'directory' => '/home/users/iso/public_html/aparaty/jommla/templates', 'debug' => false, 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php'))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/HtmlDocument.php:622)
at Joomla\CMS\Document\HtmlDocument->parse(array('template' => 'cassiopeia', 'directory' => '/home/users/iso/public_html/aparaty/jommla/templates', 'debug' => false, 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php'))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/HtmlDocument.php:640)
at Joomla\CMS\Document\HtmlDocument->render(false, array('template' => 'cassiopeia', 'directory' => '/home/users/iso/public_html/aparaty/jommla/templates', 'debug' => false, 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php'))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Document/ErrorDocument.php:139)
at Joomla\CMS\Document\ErrorDocument->render(false, array('template' => 'cassiopeia', 'directory' => '/home/users/iso/public_html/aparaty/jommla/templates', 'debug' => false, 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php'))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Error/Renderer/HtmlRenderer.php:70)
at Joomla\CMS\Error\Renderer\HtmlRenderer->render(object(TypeError))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Exception/ExceptionHandler.php:136)
at Joomla\CMS\Exception\ExceptionHandler::render(object(TypeError))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Exception/ExceptionHandler.php:73)
at Joomla\CMS\Exception\ExceptionHandler::handleException(object(TypeError))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Application/CMSApplication.php:336)
at Joomla\CMS\Application\CMSApplication->execute()
(/home/users/iso/public_html/aparaty/jommla/includes/app.php:58)
at require_once('/home/users/iso/public_html/aparaty/jommla/includes/app.php')
(/home/users/iso/public_html/aparaty/jommla/index.php:32)
|
|
[1/2]
TypeError
|
|---|
TypeError:
count(): Argument #1 ($value) must be of type Countable|array, null given
at /home/users/iso/public_html/aparaty/jommla/libraries/src/Plugin/PluginHelper.php:190
at Joomla\CMS\Plugin\PluginHelper::importPlugin('behaviour', null, true, object(Dispatcher))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Application/CMSApplication.php:762)
at Joomla\CMS\Application\CMSApplication->initialiseApp(array('language' => 'en-GB'))
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Application/SiteApplication.php:643)
at Joomla\CMS\Application\SiteApplication->initialiseApp()
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Application/SiteApplication.php:238)
at Joomla\CMS\Application\SiteApplication->doExecute()
(/home/users/iso/public_html/aparaty/jommla/libraries/src/Application/CMSApplication.php:306)
at Joomla\CMS\Application\CMSApplication->execute()
(/home/users/iso/public_html/aparaty/jommla/includes/app.php:58)
at require_once('/home/users/iso/public_html/aparaty/jommla/includes/app.php')
(/home/users/iso/public_html/aparaty/jommla/index.php:32)
|