Audit logging feature files
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
import React, { useState, useRef, useEffect } from 'react';
|
||||
import { User, LogOut, ChevronDown, Shield } from 'lucide-react';
|
||||
import { User, LogOut, ChevronDown, Shield, Clock } from 'lucide-react';
|
||||
import { useAuth } from '../contexts/AuthContext';
|
||||
|
||||
export default function UserMenu({ onManageUsers }) {
|
||||
export default function UserMenu({ onManageUsers, onAuditLog }) {
|
||||
const { user, logout, isAdmin } = useAuth();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const menuRef = useRef(null);
|
||||
@@ -42,6 +42,13 @@ export default function UserMenu({ onManageUsers }) {
|
||||
}
|
||||
};
|
||||
|
||||
const handleAuditLog = () => {
|
||||
setIsOpen(false);
|
||||
if (onAuditLog) {
|
||||
onAuditLog();
|
||||
}
|
||||
};
|
||||
|
||||
if (!user) return null;
|
||||
|
||||
return (
|
||||
@@ -71,13 +78,22 @@ export default function UserMenu({ onManageUsers }) {
|
||||
</div>
|
||||
|
||||
{isAdmin() && (
|
||||
<button
|
||||
onClick={handleManageUsers}
|
||||
className="w-full px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-50 flex items-center gap-3"
|
||||
>
|
||||
<Shield className="w-4 h-4" />
|
||||
Manage Users
|
||||
</button>
|
||||
<>
|
||||
<button
|
||||
onClick={handleManageUsers}
|
||||
className="w-full px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-50 flex items-center gap-3"
|
||||
>
|
||||
<Shield className="w-4 h-4" />
|
||||
Manage Users
|
||||
</button>
|
||||
<button
|
||||
onClick={handleAuditLog}
|
||||
className="w-full px-4 py-2 text-left text-sm text-gray-700 hover:bg-gray-50 flex items-center gap-3"
|
||||
>
|
||||
<Clock className="w-4 h-4" />
|
||||
Audit Log
|
||||
</button>
|
||||
</>
|
||||
)}
|
||||
|
||||
<button
|
||||
|
||||
Reference in New Issue
Block a user