124 lines
7.3 KiB
PHP
124 lines
7.3 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @package Joomla.Administrator
|
|
* @subpackage mod_submenu
|
|
*
|
|
* @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org>
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
defined('_JEXEC') or die;
|
|
|
|
use Joomla\CMS\HTML\HTMLHelper;
|
|
use Joomla\CMS\Language\Text;
|
|
use Joomla\CMS\Router\Route;
|
|
|
|
$user = $app->getIdentity();
|
|
|
|
/** @var \Joomla\CMS\Menu\MenuItem $root */
|
|
?>
|
|
<?php foreach ($root->getChildren() as $child) : ?>
|
|
<?php if ($child->hasChildren()) : ?>
|
|
<div class="module-wrapper">
|
|
<div class="card">
|
|
<?php
|
|
$child->img = $child->img ?? '';
|
|
|
|
if (substr($child->img, 0, 6) === 'class:') {
|
|
$iconImage = '<span class="icon-' . substr($child->img, 6) . '" aria-hidden="true"></span>';
|
|
} elseif (substr($child->img, 0, 6) === 'image:') {
|
|
$iconImage = '<img src="' . substr($child->img, 6) . '" aria-hidden="true">';
|
|
} elseif (!empty($child->img)) {
|
|
$iconImage = '<img src="' . $child->img . '" aria-hidden="true">';
|
|
} elseif ($child->icon) {
|
|
$iconImage = '<span class="icon-' . $child->icon . '" aria-hidden="true"></span>';
|
|
} else {
|
|
$iconImage = '';
|
|
}
|
|
?>
|
|
<h2 class="card-header">
|
|
<?php echo $iconImage; ?>
|
|
<?php echo Text::_($child->title); ?>
|
|
</h2>
|
|
<ul class="list-group list-group-flush">
|
|
<?php foreach ($child->getChildren() as $item) : ?>
|
|
<?php $params = $item->getParams(); ?>
|
|
<?php // Only if Menu-show = true ?>
|
|
<?php if ($params->get('menu_show', 1)) : ?>
|
|
<li class="list-group-item d-flex align-items-center">
|
|
<?php $class = $params->get('menu-quicktask') ? '' : 'class="flex-grow-1"'; ?>
|
|
<a <?php echo $class; ?> href="<?php echo $item->link; ?>"
|
|
<?php echo $item->target === '_blank' ? ' title="' . Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_($item->title)) . '"' : ''; ?>
|
|
<?php echo $item->target ? ' target="' . $item->target . '"' : ''; ?>>
|
|
<?php if (!empty($params->get('menu_image'))) : ?>
|
|
<?php
|
|
$image = htmlspecialchars($params->get('menu_image'), ENT_QUOTES, 'UTF-8');
|
|
$class = htmlspecialchars($params->get('menu_image_css'), ENT_QUOTES, 'UTF-8');
|
|
$alt = $params->get('menu_text') ? '' : htmlspecialchars(Text::_($item->title), ENT_QUOTES, 'UTF-8');
|
|
?>
|
|
<?php echo HTMLHelper::_('image', $image, $alt, 'class="' . $class . '"'); ?>
|
|
<?php endif; ?>
|
|
<?php echo ($params->get('menu_text', 1)) ? htmlspecialchars(Text::_($item->title), ENT_QUOTES, 'UTF-8') : ''; ?>
|
|
<?php if ($item->ajaxbadge) : ?>
|
|
<span class="menu-badge">
|
|
<span class="icon-spin icon-spinner mt-1 system-counter float-end" data-url="<?php echo $item->ajaxbadge; ?>"></span>
|
|
</span>
|
|
<?php endif; ?>
|
|
</a>
|
|
<?php echo $item->iconImage; ?>
|
|
<?php if ($params->get('menu-quicktask')) : ?>
|
|
<?php $permission = $params->get('menu-quicktask-permission'); ?>
|
|
<?php $scope = $item->scope !== 'default' ? $item->scope : null; ?>
|
|
<?php if (!$permission || $user->authorise($permission, $scope)) : ?>
|
|
<span class="menu-quicktask">
|
|
<?php
|
|
$link = $params->get('menu-quicktask');
|
|
$icon = $params->get('menu-quicktask-icon', 'plus');
|
|
|
|
$title = Text::_($params->get('menu-quicktask-title'));
|
|
|
|
if (empty($params->get('menu-quicktask-title'))) {
|
|
$title = Text::_('MOD_MENU_QUICKTASK_NEW');
|
|
}
|
|
|
|
$sronly = Text::_($item->title) . ' - ' . $title;
|
|
?>
|
|
<a href="<?php echo $link; ?>">
|
|
<span class="icon-<?php echo $icon; ?>" title="<?php echo htmlentities($title); ?>" aria-hidden="true"></span>
|
|
<span class="visually-hidden"><?php echo htmlentities($sronly); ?></span>
|
|
</a>
|
|
</span>
|
|
<?php endif; ?>
|
|
<?php endif; ?>
|
|
<?php if ($item->dashboard) : ?>
|
|
<span class="menu-dashboard">
|
|
<?php
|
|
$titleDashboard = Text::sprintf('MOD_MENU_DASHBOARD_LINK', Text::_($child->title));
|
|
|
|
// Prepare the Dashboard icon. We use our own icon, not Fontawesome
|
|
$pathDashboard = 'media/templates/administrator/atum/images/icons/dashboard.svg';
|
|
$attrDashboard = [
|
|
'loading' => 'eager',
|
|
'decoding' => 'async',
|
|
'aria-hidden' => 'true',
|
|
'class' => 'atum-dashboard',
|
|
'height' => '18',
|
|
];
|
|
$iconDashboard = HTMLHelper::_('image', $pathDashboard, '', $attrDashboard, false, 0);
|
|
?>
|
|
<a href="<?php echo Route::_('index.php?option=com_cpanel&view=cpanel&dashboard=' . $item->dashboard); ?>" title="<?php echo $titleDashboard; ?>">
|
|
<span><?php echo $iconDashboard; ?></span>
|
|
<span class="visually-hidden"><?php echo $titleDashboard; ?></span>
|
|
</a>
|
|
</span>
|
|
<?php endif; ?>
|
|
</li>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|