Back to HtmlRenderer class

Method render

public string
render
(\Throwable $error)
Render the error page for the given object
Parameters
  • \Throwable $error The error object to be rendered
Returns
  • string
Since
  • 4.0.0
Class: HtmlRenderer
Project: Joomla

Method render - Source code

/**
 * Render the error page for the given object
 *
 * @param   \Throwable  $error  The error object to be rendered
 *
 * @return  string
 *
 * @since   4.0.0
 */
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
    $wa = $this->getDocument()->getWebAssetManager()->getRegistry();
    $wa->addTemplateRegistryFile($template->template, $app->getClientId());
    if (!empty($template->parent)) {
        $wa->addTemplateRegistryFile($template->parent, $app->getClientId());
    }
    if (ob_get_contents()) {
        ob_end_clean();
    }
    $this->getDocument()->setTitle(Text::_('Error') . ': ' . $error->getCode());
    return $this->getDocument()->render(false, ['template' => $template->template, 'directory' => JPATH_THEMES, 'debug' => JDEBUG, 'csp_nonce' => $app->get('csp_nonce'), 'templateInherits' => $template->parent, 'params' => $template->params]);
}