optimized admin protection

This commit is contained in:
2025-11-21 01:52:51 +01:00
parent d23bfa0376
commit 24d97f6057
11 changed files with 974 additions and 185 deletions

View File

@@ -1,11 +1,13 @@
import { Link, useLocation, useNavigate } from 'react-router-dom'
import { useAuth } from '../contexts/AuthContext'
import { usePermissions } from '../contexts/PermissionsContext'
import { useState, useEffect } from 'react'
const Sidebar = ({ isOpen, setIsOpen }) => {
const location = useLocation()
const navigate = useNavigate()
const { user, logout } = useAuth()
const { isAdmin } = usePermissions()
const [expandedMenus, setExpandedMenus] = useState({})
const menuItems = [
@@ -128,7 +130,8 @@ const Sidebar = ({ isOpen, setIsOpen }) => {
</li>
))}
{/* Settings Menu mit Unterpunkten */}
{/* Settings Menu mit Unterpunkten - nur für Admins */}
{isAdmin && (
<li>
<button
onClick={() => isOpen && toggleMenu(settingsMenu.path)}
@@ -184,6 +187,7 @@ const Sidebar = ({ isOpen, setIsOpen }) => {
</ul>
)}
</li>
)}
</ul>
{/* Profil-Eintrag und Logout am unteren Ende */}
<div className="mt-auto pt-2 border-t border-slate-700/50 space-y-2">