白云图书馆管理系统 —— 课程作业项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

67 lines
3.5 KiB

<!-- Side Nav -->
<?php
$nav = [
['name' => '首页', 'id' => 'index', 'svg' => 'home', 'href' => '/'],
['name' => '快捷功能', 'id' => 'categories', 'svg' => 'category', 'sidenav' => [
['name' => '书籍列表', 'href' => '/lists'],
['name' => '书籍检索', 'href' => '/search']
]],
['name' => '用户中心', 'id' => 'users', 'svg' => 'profile', 'sidenav' => [
['name' => '个人资料', 'href' => '/user/info'],
['name' => '借书记录', 'href' => '/user/record']
]],
['name' => '管理中心', 'id' => 'admins', 'svg' => 'wishlist', 'sidenav' => [
['name' => '用户管理', 'href' => '/admin/users'],
['name' => '书籍管理', 'href' => '/admin/books'],
['name' => '库存管理', 'href' => '/admin/stock'],
['name' => '分类管理', 'href' => '/admin/categories'],
]]
];
?>
<nav class="absolute lg:relative lg:flex lg:text-sm bg-indigo-darker lg:bg-transparent pin-l pin-r py-4 px-6 lg:pt-10 lg:pl-12 lg:pr-6 -mt-1 lg:mt-0 overflow-y-auto lg:w-1/5 lg:border-r z-40 hidden">
<ul class="list-reset mb-8 w-full">
<?php
foreach ($nav as $item) {
if (isset($item['sidenav'])) {
if ($item['id'] == 'admins' && !(isset($_SESSION['user']) && $_SESSION['user']['type'] == 1)) continue; ?>
<li class="ml-2 mb-4">
<div class="flex" id="sidenav-<?=$item['id']?>-trigger">
<img src="/assets/img/<?=$item['svg']?>-default.svg" alt="<?=$item['svg']?>-icon" class="w-4 h-4 mr-2">
<div class="hover:cursor-pointer text-white lg:text-indigo-darkest no-underline font-medium w-full relative">
<?=$item['name']."\n"?>
<div class="pointer-events-none absolute pin-y pin-r flex items-center px-1 text-grey-darker" id="sidenav-<?=$item['id']?>-icon">
<svg class="fill-current h-4 w-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
<path d="M9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828 5.757 6.586 4.343 8z" />
</svg>
</div>
</div>
</div>
<ul class="text-grey lg:text-grey-dark list-reset leading-loose mt-2" id="sidenav-<?=$item['id']?>">
<?php foreach ($item['sidenav'] as $sidenav) { ?>
<?=gen_li_tag($sidenav['name'], $sidenav['href'])?>
<?php } ?>
</ul>
</li>
<?php } else { ?>
<li class="ml-2 mb-4 flex">
<img src="/assets/img/<?=$item['svg']?>-default.svg" alt="<?=$item['svg']?>-icon" class="w-4 h-4 mr-2">
<div class="font-medium mobile-home-trigger">
<a class="hover:cursor-pointer text-white lg:text-indigo-darkest no-underline" href="<?=$item['href']?>"><?=$item['name']?></a>
</div>
</li>
<?php }
}
function gen_li_tag($name, $href) {
return $href == explode('?', $_SERVER['REQUEST_URI'])[0] ?
'<li class="flex justify-between items-center transition-normal ml-1 border-l border-grey-dark pl-4 mobile-home-trigger">'.
'<a class="no-underline text-indigo-lighter lg:text-indigo-darker font-medium hover:cursor-pointer" href="'.$href.'">'.
'<span>'.$name.'</span>'.
'</a>'.
'</li>'."\n":
'<li class="transition-normal ml-1 border-l border-grey-dark pl-4">'.
'<a class="no-underline text-white lg:text-grey-dark hover:text-indigo-dark hover:cursor-pointer" href="'.$href.'">'.$name.'</a>'.
'</li>'."\n";
}
?>
</nav>