62 lines
1.3 KiB
PHP
62 lines
1.3 KiB
PHP
<?php
|
|
/*****************************************************************************
|
|
* AdminMenu.php
|
|
* Contains the admin navigation logic.
|
|
*
|
|
* Kabuki CMS (C) 2013-2023, Aaron van Geffen
|
|
*****************************************************************************/
|
|
|
|
class AdminMenu extends Menu
|
|
{
|
|
public function __construct()
|
|
{
|
|
$user = Registry::has('user') ? Registry::get('user') : new Guest();
|
|
if (!$user->isAdmin())
|
|
return;
|
|
|
|
$this->items[0] = [
|
|
'label' => 'Admin',
|
|
'icon' => 'gear',
|
|
'badge' => ErrorLog::getCount(),
|
|
'subs' => [
|
|
[
|
|
'uri' => '/managealbums/',
|
|
'label' => 'Albums',
|
|
],
|
|
[
|
|
'uri' => '/manageassets/',
|
|
'label' => 'Assets',
|
|
],
|
|
[
|
|
'uri' => '/managetags/',
|
|
'label' => 'Tags',
|
|
],
|
|
[
|
|
'uri' => '/manageusers/',
|
|
'label' => 'Users',
|
|
],
|
|
[
|
|
'uri' => '/manageerrors/',
|
|
'label' => 'Errors',
|
|
'badge' => ErrorLog::getCount(),
|
|
],
|
|
],
|
|
];
|
|
|
|
if ($this->items[0]['badge'] == 0)
|
|
unset($this->items[0]['badge']);
|
|
|
|
foreach ($this->items as $i => $item)
|
|
{
|
|
if (isset($item['uri']))
|
|
$this->items[$i]['url'] = BASEURL . $item['uri'];
|
|
|
|
if (!isset($item['subs']))
|
|
continue;
|
|
|
|
foreach ($item['subs'] as $j => $subitem)
|
|
$this->items[$i]['subs'][$j]['url'] = BASEURL . $subitem['uri'];
|
|
}
|
|
}
|
|
}
|