This file is part of a Moko Consulting project. SPDX-License-Identifier: GPL-3.0-or-later # FILE INFORMATION DEFGROUP: Joomla.Template.Site INGROUP: MokoCassiopeia REPO: https://github.com/mokoconsulting-tech/MokoCassiopeia PATH: ./templates/mokocassiopeia/error.php VERSION: 03.06.02 BRIEF: Error page template file for MokoCassiopeia */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; /** @var Joomla\CMS\Document\ErrorDocument|Joomla\CMS\Document\HtmlDocument $this */ $app = Factory::getApplication(); $params = $this->params; $wa = $this->getWebAssetManager(); // Template params $params_LightColorName = (string) $params->get('colorLightName', 'standard'); // standard|custom $params_DarkColorName = (string) $params->get('colorDarkName', 'standard'); // standard|custom $params_googletagmanager = $params->get('googletagmanager', false); $params_googletagmanagerid = $params->get('googletagmanagerid', ''); $params_googleanalytics = $params->get('googleanalytics', false); $params_googleanalyticsid = $params->get('googleanalyticsid', ''); $params_custom_head_start = $params->get('custom_head_start', ''); $params_custom_head_end = $params->get('custom_head_end', ''); $params_developmentmode = $params->get('developmentmode', false); // ------------------ Params ------------------ $fluidContainer = (bool) $params->get('fluidContainer', 0); $wrapper = $fluidContainer ? 'wrapper-fluid' : 'wrapper-static'; $stickyHeader = (bool) $params->get('stickyHeader', 0); // Drawer icon params (escaped) $params_leftIcon = htmlspecialchars($params->get('drawerLeftIcon', 'fa-solid fa-chevron-left'), ENT_QUOTES, 'UTF-8'); $params_rightIcon = htmlspecialchars($params->get('drawerRightIcon', 'fa-solid fa-chevron-right'), ENT_QUOTES, 'UTF-8'); // Template/Media path $templatePath = 'media/templates/site/mokocassiopeia'; // =========================== // Web Asset Manager (WAM) — matches your joomla.asset.json // =========================== // Core template CSS $wa->useStyle('template.base'); // css/template.css // Load theme palette stylesheets based on configuration $wa->useStyle('template.light.standard'); // css/theme/light.standard.css $wa->useStyle('template.dark.standard'); // css/theme/dark.standard.css // Load custom palettes only if selected in template configuration AND files exist if ($params_LightColorName === 'custom' && file_exists(JPATH_ROOT . '/media/templates/site/mokocassiopeia/css/theme/light.custom.css')) { $wa->useStyle('template.light.custom'); } if ($params_DarkColorName === 'custom' && file_exists(JPATH_ROOT . '/media/templates/site/mokocassiopeia/css/theme/dark.custom.css')) { $wa->useStyle('template.dark.custom'); } // Scripts $wa->useScript('template.js'); // Load Osaka font for site title $wa->useStyle('template.font.osaka'); // Smart Bootstrap component loading - only load what's needed if ($this->countModules('drawer-left', true) || $this->countModules('drawer-right', true)) { // Load Bootstrap Offcanvas component for drawers HTMLHelper::_('bootstrap.offcanvas'); } // Meta $this->setMetaData('viewport', 'width=device-width, initial-scale=1'); if ($this->params->get('faKitCode')) { $faKit = "https://kit.fontawesome.com/" . $this->params->get('faKitCode') . ".js"; HTMLHelper::_('script', $faKit, ['crossorigin' => 'anonymous']); } else { try { if ($params_developmentmode){ $wa->useStyle('vendor.fa7free.all'); $wa->useStyle('vendor.fa7free.brands'); $wa->useStyle('vendor.fa7free.fontawesome'); $wa->useStyle('vendor.fa7free.regular'); $wa->useStyle('vendor.fa7free.solid'); } else { $wa->useStyle('vendor.fa7free.all.min'); $wa->useStyle('vendor.fa7free.brands.min'); $wa->useStyle('vendor.fa7free.fontawesome.min'); $wa->useStyle('vendor.fa7free.regular.min'); $wa->useStyle('vendor.fa7free.solid.min'); } } catch (\Throwable $e) { if ($params_developmentmode){ $wa->registerAndUseStyle('vendor.fa7free.all.dynamic', $templatePath . '/vendor/fa7free/css/all.css'); $wa->registerAndUseStyle('vendor.fa7free.brands.dynamic', $templatePath . '/vendor/fa7free/css/brands.css'); $wa->registerAndUseStyle('vendor.fa7free.fontawesome.dynamic', $templatePath . '/vendor/fa7free/css/fontawesome.css'); $wa->registerAndUseStyle('vendor.fa7free.regular.dynamic', $templatePath . '/vendor/fa7free/css/regular.css'); $wa->registerAndUseStyle('vendor.fa7free.solid.dynamic', $templatePath . '/vendor/fa7free/css/solid.css'); } else { $wa->registerAndUseStyle('vendor.fa7free.all.min.dynamic', $templatePath . '/vendor/fa7free/css/all.min.css'); $wa->registerAndUseStyle('vendor.fa7free.brands.min.dynamic', $templatePath . '/vendor/fa7free/css/brands.min.css'); $wa->registerAndUseStyle('vendor.fa7free.fontawesome.min.dynamic', $templatePath . '/vendor/fa7free/css/fontawesome.min.css'); $wa->registerAndUseStyle('vendor.fa7free.regular.min.dynamic', $templatePath . '/vendor/fa7free/css/regular.min.css'); $wa->registerAndUseStyle('vendor.fa7free.solid.min.dynamic', $templatePath . '/vendor/fa7free/css/solid.min.css'); } } } // ------------------ Context (logo, bootstrap needs) ------------------ $sitename = htmlspecialchars($app->get('sitename'), ENT_QUOTES, 'UTF-8'); // ------------------------------------- // Brand: logo from params OR siteTitle // ------------------------------------- $brandHtml = ''; $logoFile = (string) $this->params->get('logoFile'); if ($logoFile !== '') { $brandHtml = HTMLHelper::_( 'image', Uri::root(false) . htmlspecialchars($logoFile, ENT_QUOTES, 'UTF-8'), $sitename, ['class' => 'logo d-inline-block', 'loading' => 'eager', 'decoding' => 'async'], false, 0 ); } else { // If no logo file, show the title (defaults to "MokoCassiopeia" if not set) $siteTitle = $this->params->get('siteTitle', 'MokoCassiopeia'); $brandHtml = '' . htmlspecialchars($siteTitle, ENT_COMPAT, 'UTF-8') . ''; } // ------------------ Error details ------------------ $errorObj = isset($this->error) && is_object($this->error) ? $this->error : null; $errorCode = $errorObj ? (int) $errorObj->getCode() : 500; $errorMsg = $errorObj ? $errorObj->getMessage() : Text::_('JERROR_AN_ERROR_HAS_OCCURRED'); $debugOn = defined('JDEBUG') && JDEBUG; // Load user assets last (after all other styles and scripts) $wa->useStyle('template.user'); // css/user.css $wa->useScript('user.js'); // js/user.js ?>

:

Debug mode is ON — detailed error information is shown below.
Exception
Class
Code
getCode(); ?>
Message
getMessage(), ENT_QUOTES, 'UTF-8'); ?>
File
getFile(), ENT_QUOTES, 'UTF-8'); ?> : getLine(); ?>
getTrace() : []; ?>
Stack Trace ( frames)
    $frame) : $file = $frame['file'] ?? '[internal]'; $line = isset($frame['line']) ? (int) $frame['line'] : 0; $func = $frame['function'] ?? ''; $class= $frame['class'] ?? ''; $type = $frame['type'] ?? ''; ?>
  1. # ()
No stack trace available.
params->get('backTop') == 1) : ?> countModules('drawer-left', true)) : ?> countModules('drawer-right', true)) : ?>