return self::$reporters;
}
public static function getDocument(): Document
{
return self::$document;
}
public static function getTemplate($id = null): Template
{
if ($id !== null) {
}
}
require_once "helper.php"; // Template's Helper
$document = Astroid\Framework::getDocument(); // Astroid Document
$params = Astroid\Framework::getTemplate()->getParams(); // Astroid Params
Astroid\Helper\Head::meta(); // site meta
Astroid\Component\Utility::custom(); // custom code
Astroid\Helper\Head::scripts(); // site scripts
// 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
*
'template' => $template->template,
'directory' => JPATH_THEMES,
'debug' => JDEBUG,
'csp_nonce' => $app->get('csp_nonce'),
'templateInherits' => $template->parent,
'params' => $template->params,
]
);
}
}
// 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';
$result = $db->loadObject();
$params = new Registry();
$params->loadString($result->params);
$result->params = $params;
return $result;
}
protected function _getPresets()
{
$app = Factory::getApplication();
$menu = $app->getMenu()->getActive();
$template_id = isset($menu->template_style_id) ? $menu->template_style_id : 0;
if (!empty($template_id)) {
$jtemplate = $this->_getById($template_id);
} else {
$jtemplate = $app->getTemplate(true);
}
$this->template = $jtemplate->template;
{
define('_ASTROID', 1); // define astroid
self::check(); // check for astroid redirection
self::$debugger = new Debugger(); // Debuuger
self::$template = new Template(); // Template
self::$document = new Document(); // Document
self::constants();
self::audit();
}
public function onAfterRoute()
{
if (!file_exists(JPATH_LIBRARIES . '/astroid/framework/library/astroid')) {
return false;
}
Framework::init();
$option = $this->getApplication()->input->get('option', '');
$astroid = $this->getApplication()->input->get('astroid', '');
if ($option == 'com_ajax' && !empty($astroid)) {
Framework::getClient()->execute($astroid);
}
}
// Convert to indexed array for unpacking.
$arguments = \array_values($arguments);
$result = $this->{$methodName}(...$arguments);
// Ignore null results
if ($result === null) {
return;
}
if ($event->isStopped())
{
return $event;
}
$listener($event);
}
}
return $event;
}
$event = new $className($eventName, $args);
} else {
throw new \InvalidArgumentException('The arguments must either be an event or an array');
}
$result = $dispatcher->dispatch($eventName, $event);
// @todo - There are still test cases where the result isn't defined, temporarily leave the isset check in place
return !isset($result['result']) || \is_null($result['result']) ? [] : $result['result'];
}
}
$this->input->def($key, $value);
}
// Trigger the onAfterRoute event.
PluginHelper::importPlugin('system');
$this->triggerEvent('onAfterRoute');
$Itemid = $this->input->getInt('Itemid', null);
$this->authorise($Itemid);
}
// 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;
if (!$this->isHandlingMultiFactorAuthentication()) {
$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]
TypeError
|
---|
TypeError: Astroid\Framework::getDocument(): Return value must be of type Astroid\Document, null returned at /home/kbimir/public_html/libraries/astroid/framework/library/astroid/Framework.php:88 at Astroid\Framework::getDocument() (/home/kbimir/public_html/templates/astroid_template_one/error.php:22) at require('/home/kbimir/public_html/templates/astroid_template_one/error.php') (/home/kbimir/public_html/libraries/src/Document/HtmlDocument.php:721) at Joomla\CMS\Document\HtmlDocument->_loadTemplate() (/home/kbimir/public_html/libraries/src/Document/HtmlDocument.php:776) at Joomla\CMS\Document\HtmlDocument->_fetchTemplate() (/home/kbimir/public_html/libraries/src/Document/HtmlDocument.php:612) at Joomla\CMS\Document\HtmlDocument->parse() (/home/kbimir/public_html/libraries/src/Document/HtmlDocument.php:630) at Joomla\CMS\Document\HtmlDocument->render() (/home/kbimir/public_html/libraries/src/Document/ErrorDocument.php:139) at Joomla\CMS\Document\ErrorDocument->render() (/home/kbimir/public_html/libraries/src/Error/Renderer/HtmlRenderer.php:78) at Joomla\CMS\Error\Renderer\HtmlRenderer->render() (/home/kbimir/public_html/libraries/src/Exception/ExceptionHandler.php:126) at Joomla\CMS\Exception\ExceptionHandler::render() (/home/kbimir/public_html/libraries/src/Exception/ExceptionHandler.php:72) at Joomla\CMS\Exception\ExceptionHandler::handleException() (/home/kbimir/public_html/libraries/src/Application/CMSApplication.php:322) at Joomla\CMS\Application\CMSApplication->execute() (/home/kbimir/public_html/includes/app.php:61) at require_once('/home/kbimir/public_html/includes/app.php') (/home/kbimir/public_html/index.php:32) |
[1/2]
Error
|
---|
Error: Attempt to assign property "params" on null at /home/kbimir/public_html/libraries/astroid/framework/library/astroid/Template.php:226 at Astroid\Template->_getById() (/home/kbimir/public_html/libraries/astroid/framework/library/astroid/Template.php:37) at Astroid\Template->__construct() (/home/kbimir/public_html/libraries/astroid/framework/library/astroid/Framework.php:35) at Astroid\Framework::init() (/home/kbimir/public_html/plugins/system/astroid/src/Extension/AstroidPlugin.php:34) at Joomla\Plugin\System\Astroid\Extension\AstroidPlugin->onAfterRoute() (/home/kbimir/public_html/libraries/src/Plugin/CMSPlugin.php:289) at Joomla\CMS\Plugin\CMSPlugin->Joomla\CMS\Plugin\{closure}() (/home/kbimir/public_html/libraries/vendor/joomla/event/src/Dispatcher.php:486) at Joomla\Event\Dispatcher->dispatch() (/home/kbimir/public_html/libraries/src/Application/EventAware.php:111) at Joomla\CMS\Application\WebApplication->triggerEvent() (/home/kbimir/public_html/libraries/src/Application/SiteApplication.php:790) at Joomla\CMS\Application\SiteApplication->route() (/home/kbimir/public_html/libraries/src/Application/SiteApplication.php:232) at Joomla\CMS\Application\SiteApplication->doExecute() (/home/kbimir/public_html/libraries/src/Application/CMSApplication.php:293) at Joomla\CMS\Application\CMSApplication->execute() (/home/kbimir/public_html/includes/app.php:61) at require_once('/home/kbimir/public_html/includes/app.php') (/home/kbimir/public_html/index.php:32) |