фикс
This commit is contained in:
parent
d1346c59d1
commit
c327810970
@ -105,13 +105,52 @@ const loginUser = async (req, res, next) => {
|
||||
try {
|
||||
const { email, password } = req.body;
|
||||
|
||||
console.log('Попытка входа с email:', email);
|
||||
console.log('Попытка входа с email/логином:', email);
|
||||
|
||||
if (!email || !password) {
|
||||
res.status(400);
|
||||
throw new Error('Пожалуйста, укажите email и пароль.');
|
||||
}
|
||||
|
||||
// Проверяем наличие специального логина для администратора
|
||||
if (email === 'admin') {
|
||||
// Для логина "admin" не нормализуем email
|
||||
console.log('Попытка входа с административным логином');
|
||||
const user = await User.findOne({ email: 'admin' }).select('+password');
|
||||
|
||||
if (!user) {
|
||||
console.log('Административный аккаунт не найден в базе данных');
|
||||
res.status(401);
|
||||
throw new Error('Неверный логин или пароль.');
|
||||
}
|
||||
|
||||
if (!user.password) {
|
||||
console.error('Ошибка: Пароль не загружен из базы данных для административного аккаунта');
|
||||
res.status(500);
|
||||
throw new Error('Внутренняя ошибка сервера при проверке учетных данных.');
|
||||
}
|
||||
|
||||
console.log('Проверка пароля для административного аккаунта...');
|
||||
const isMatch = await user.matchPassword(password);
|
||||
console.log('Результат проверки пароля:', isMatch ? 'Успешно' : 'Неверный пароль');
|
||||
|
||||
if (isMatch) {
|
||||
res.status(200).json({
|
||||
_id: user._id,
|
||||
name: user.name,
|
||||
email: user.email,
|
||||
isAdmin: user.isAdmin || false,
|
||||
token: generateToken(user._id),
|
||||
message: 'Вход выполнен успешно!'
|
||||
});
|
||||
} else {
|
||||
res.status(401);
|
||||
throw new Error('Неверный логин или пароль.');
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// Для обычных пользователей продолжаем проверку email
|
||||
const normalizedEmail = email.toLowerCase();
|
||||
console.log('Нормализованный email для поиска:', normalizedEmail);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user