/** * Middleware для проверки, является ли пользователь администратором * Должен использоваться после middleware авторизации (protect), * который добавляет req.user */ const adminMiddleware = (req, res, next) => { console.log('[DEBUG] adminMiddleware - Проверка прав администратора'); // Проверяем, есть ли пользователь (должен быть добавлен в middleware авторизации) if (!req.user) { console.log('[DEBUG] adminMiddleware - req.user не найден, пользователь не авторизован'); return res.status(401).json({ message: 'Не авторизован' }); } console.log('[DEBUG] adminMiddleware - Пользователь:', { id: req.user._id, email: req.user.email, isAdmin: req.user.isAdmin }); // Проверяем, является ли пользователь администратором if (!req.user.isAdmin) { console.log('[DEBUG] adminMiddleware - Доступ запрещен. У пользователя нет прав администратора'); return res.status(403).json({ message: 'Доступ запрещен. Требуются права администратора' }); } console.log('[DEBUG] adminMiddleware - Пользователь является администратором, доступ разрешен'); // Если пользователь администратор, продолжаем выполнение запроса next(); }; module.exports = adminMiddleware;