This commit is contained in:
2020-05-11 06:11:33 +03:00
commit 6784cecf5e
20 changed files with 824 additions and 0 deletions

View File

@ -0,0 +1,36 @@
<?php
$context = BackendMenu::getContext();
if (strpos($context->sideMenuCode, '|') !== false) {
$menu = explode('|', $context->sideMenuCode);
$context->mainMenuCode = $menu[0];
$context->sideMenuCode = $menu[1];
}
if (isset($menu)):
?>
<?= $this->makePartial(__DIR__ . '/../secondary/_sidenav.phtml', [
'context' => $context,
]) ?>
<?php else: ?>
<div class="layout-cell sidenav-tree bg-p" data-control="sidenav-tree" data-search-input="#settings-search-input">
<a class="back-link" href="<?= Backend::url('wms/menu') ?>"><i class="icon-angle-left"></i><?= e(trans('wms.menu::plugin.name')) ?></a>
<div class="layout">
<div class="layout-row min-size">
<?= $this->makePartial(__DIR__ . '/_system_sidebar_menu_toolbar.phtml') ?>
</div>
<div class="layout-row">
<div class="layout-cell">
<div class="layout-relative">
<div class="layout-absolute">
<div class="control-scrollbar" data-control="scrollbar">
<?= $this->makePartial(__DIR__ . '/_system_sidebar_menu.phtml') ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<?php endif; ?>

View File

@ -0,0 +1,52 @@
<?php
if ($sideMenuItems = BackendMenu::listSideMenuItems()):
$collapsedGroups = explode('|',
isset($_COOKIE['sidenav_treegroupStatus'])
? $_COOKIE['sidenav_treegroupStatus']
: null
);
$categories = [];
foreach ($sideMenuItems as $sideItemCode => $item) {
if(!property_exists($item, 'group')) {
$item->group = 'default';
}
if(!property_exists($item, 'keywords')) {
$item->keywords = '';
}
if(!property_exists($item, 'description')) {
$item->description = '';
}
$categories[$item->group][$sideItemCode] = $item;
}
?>
<ul class="top-level">
<?php foreach ($categories as $category => $items):
$collapsed = in_array($category, $collapsedGroups); ?>
<li data-group-code="<?= e($category) ?>" <?= $collapsed ? 'data-status="collapsed"' : null ?>>
<div class="group">
<h3><?= e(trans($category)); ?></h3>
</div>
<ul>
<?php foreach ($items as $item):
$last_path = array_last(explode('/', request()->path())); ?>
<li class="<?=
((BackendMenu::isSideMenuItemActive($item) && empty($item->scontents))
|| (
isset($item->scontents)
&& $item->scontents == $last_path
))
? 'active'
: null;
?>" data-keywords="<?= e(trans($item->keywords)) ?>">
<a href="<?= $item->url ?>">
<i class="<?= $item->icon ?>"></i>
<span class="header"><?= e(trans($item->label)) ?></span>
<span class="description"><?= e(trans($item->description)) ?></span>
</a>
</li>
<?php endforeach ?>
</ul>
</li>
<?php endforeach ?>
</ul>
<?php endif; ?>

View File

@ -0,0 +1,14 @@
<div class="layout control-toolbar">
<div class="layout-cell">
<div class="relative toolbar-item loading-indicator-container size-input-text">
<input placeholder="<?= e(trans('system::lang.settings.search')) ?>" type="text" name="search" value=""
class="form-control icon search"
id="settings-search-input"
autocomplete="off"
data-track-input
data-load-indicator
data-load-indicator-opaque
/>
</div>
</div>
</div>

View File

@ -0,0 +1,81 @@
<?php
$mainMenuCode = 'main';
$sideMainMenuItems = BackendMenu::listSideMenuItems();
if (!isset($context)) {
$context = BackendMenu::getContext();
}
?>
<?php if ($sideMainMenuItems): ?>
<div class="layout-cell layout-sidenav-container wms-menu">
<div class="layout-relative">
<nav
id="layout-sidenav"
class="layout-sidenav bg-p"
data-active-class="active"
data-control="sidenav">
<ul class="nav">
<?php foreach ($sideMainMenuItems as $sideItemCode => $item): ?>
<li
class="<?= $context->mainMenuCode == $sideItemCode ? 'active' : null ?>"
<?= Html::attributes($item->attributes) ?>
>
<a href="<?= $item->url ?>">
<span class="nav-icon">
<?php if ($item->iconSvg): ?>
<img class="svg-icon" src="<?= Url::asset($item->iconSvg) ?>">
<?php endif ?>
<i class="<?= $item->iconSvg ? 'svg-replace' : null ?> <?= $item->icon ?>"></i>
</span>
<span class="nav-label">
<?= e(trans($item->label)) ?>
</span>
</a>
<span
class="counter <?= $item->counter === null ? 'empty' : null ?>"
data-menu-id="<?= e($mainMenuCode.'/'.$sideItemCode) ?>"
<?php if ($item->counterLabel): ?>title="<?= e(trans($item->counterLabel)) ?>"<?php endif ?>
>
<?= e($item->counter) ?>
</span>
</li>
<?php endforeach ?>
</ul>
</nav>
</div>
</div>
<?php endif ?>
<div class="layout-cell sidenav-tree bg-p" data-control="sidenav-tree" data-search-input="#settings-search-input">
<a class="back-link" href="<?= Backend::url('wms/menu' . (empty($context->sideMenuCode) ? '' : "/{$context->mainMenuCode}")) ?>">
<i class="icon-angle-left"></i><?= e(trans($context->mainMenuCode == $mainMenuCode || empty($context->sideMenuCode)
? 'wms.menu::plugin.name'
: "wms.site::lang.{$context->mainMenuCode}.title"
)) ?>
</a>
<div class="layout">
<a class="back-link wms-menu-back-link" href="<?= Backend::url('wms/menu' . (empty($context->sideMenuCode) ? '' : "/{$context->mainMenuCode}")) ?>">
<i class="icon-angle-left"></i><?= e(trans($context->mainMenuCode == $mainMenuCode || empty($context->sideMenuCode)
? 'wms.menu::plugin.name'
: "wms.site::lang.{$context->mainMenuCode}.title"
)) ?>
</a>
<div class="layout-row min-size">
<?= $this->makePartial(__DIR__ . '/../main/_system_sidebar_menu_toolbar.phtml'); ?>
</div>
<div class="layout-row">
<div class="layout-cell">
<div class="layout-relative">
<div class="layout-absolute">
<div class="control-scrollbar" data-control="scrollbar">
<?= $this->makePartial(__DIR__ . '/_sidenav_sidebar_menu.phtml', [
'context' => $context,
]) ?>
</div>
</div>
</div>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,31 @@
<?php
if ($sideMenuItems = $this->getMenu($context->mainMenuCode)):
$collapsedGroups = explode('|',
isset($_COOKIE['sidenav_treegroupStatus'])
? $_COOKIE['sidenav_treegroupStatus']
: null
);
?>
<ul class="top-level">
<?php foreach ($sideMenuItems as $category => $items):
$collapsed = in_array($category, $collapsedGroups); ?>
<li data-group-code="<?= e($category) ?>" <?= $collapsed ? 'data-status="collapsed"' : null ?>>
<div class="group">
<h3><?= e(trans($category)); ?></h3>
</div>
<ul>
<?php foreach ($items as $name => $item): ?>
<?php $keywords = isset($item['keywords']) ? e(trans($item['keywords'])) : ''; ?>
<li class="<?= $context->sideMenuCode == $name ? 'active' : null; ?>" data-keywords="<?= $keywords ?>">
<a href="<?= isset($item['url']) ? $item['url'] : '#'; ?>">
<i class="<?= isset($item['icon']) ? $item['icon'] : ''; ?>"></i>
<span class="header"><?= isset($item['label']) ? e(trans($item['label'])) : '' ?></span>
<span class="description"><?= isset($item['description']) ? e(trans($item['description'])) : '' ?></span>
</a>
</li>
<?php endforeach ?>
</ul>
</li>
<?php endforeach ?>
</ul>
<?php endif; ?>