фикс
This commit is contained in:
parent
af70e6e986
commit
d25fa7dc87
@ -112,19 +112,19 @@ const loginUser = async (req, res, next) => {
|
|||||||
throw new Error('Пожалуйста, укажите email и пароль.');
|
throw new Error('Пожалуйста, укажите email и пароль.');
|
||||||
} // Проверяем наличие специального логина для администратора
|
} // Проверяем наличие специального логина для администратора
|
||||||
if (email === 'admin') {
|
if (email === 'admin') {
|
||||||
// Для логина "admin" не нормализуем email
|
// Для логина "admin" проверяем аккаунт admin@example.com
|
||||||
console.log('Попытка входа с административным логином');
|
console.log('Попытка входа с административным логином через "admin"');
|
||||||
const user = await User.findOne({ email: 'admin' }).select('+password');
|
const user = await User.findOne({ email: 'admin@example.com' }).select('+password');
|
||||||
|
|
||||||
if (!user) {
|
if (!user) {
|
||||||
console.log('Административный аккаунт не найден в базе данных');
|
console.log('Административный аккаунт не найден в базе данных');
|
||||||
console.log('Создание административного аккаунта...');
|
console.log('Создание административного аккаунта...');
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// Если админ не найден, можно попытаться создать его на месте
|
// Если админ не найден, создаем его с валидным email
|
||||||
const adminUser = new User({
|
const adminUser = new User({
|
||||||
name: 'Администратор',
|
name: 'Администратор',
|
||||||
email: 'admin',
|
email: 'admin@example.com', // Используем валидный email
|
||||||
password: 'admin124', // Пароль будет хеширован pre-save hook
|
password: 'admin124', // Пароль будет хеширован pre-save hook
|
||||||
dateOfBirth: new Date('1990-01-01'),
|
dateOfBirth: new Date('1990-01-01'),
|
||||||
gender: 'other',
|
gender: 'other',
|
||||||
|
@ -15,20 +15,20 @@ mongoose.connect(process.env.MONGO_URI)
|
|||||||
|
|
||||||
const createAdminAccount = async () => {
|
const createAdminAccount = async () => {
|
||||||
try {
|
try {
|
||||||
// Check if admin already exists
|
// Check if admin already exists - use a valid email format
|
||||||
const adminExists = await User.findOne({ email: 'admin' });
|
const adminExists = await User.findOne({ email: 'admin@example.com' });
|
||||||
|
|
||||||
if (adminExists) {
|
if (adminExists) {
|
||||||
console.log('Admin account already exists');
|
console.log('Admin account already exists');
|
||||||
console.log('Email: admin');
|
console.log('Email: admin@example.com');
|
||||||
console.log('Password: admin124');
|
console.log('Password: admin124');
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create admin user
|
// Create admin user with a valid email format
|
||||||
const admin = new User({
|
const admin = new User({
|
||||||
name: 'Администратор',
|
name: 'Администратор',
|
||||||
email: 'admin',
|
email: 'admin@example.com',
|
||||||
password: 'admin124',
|
password: 'admin124',
|
||||||
dateOfBirth: new Date('1990-01-01'),
|
dateOfBirth: new Date('1990-01-01'),
|
||||||
gender: 'other',
|
gender: 'other',
|
||||||
@ -40,9 +40,8 @@ const createAdminAccount = async () => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
await admin.save();
|
await admin.save(); console.log('Admin account created successfully');
|
||||||
console.log('Admin account created successfully');
|
console.log('Email: admin@example.com');
|
||||||
console.log('Email: admin');
|
|
||||||
console.log('Password: admin124');
|
console.log('Password: admin124');
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
@ -7,19 +7,18 @@ const bcrypt = require('bcryptjs');
|
|||||||
* Этот аккаунт будет всегда активен
|
* Этот аккаунт будет всегда активен
|
||||||
*/
|
*/
|
||||||
const initAdminAccount = async () => {
|
const initAdminAccount = async () => {
|
||||||
try {
|
try { console.log('[ADMIN INIT] Проверка наличия административного аккаунта...');
|
||||||
console.log('[ADMIN INIT] Проверка наличия административного аккаунта...');
|
|
||||||
|
|
||||||
// Проверяем, существует ли уже админ
|
// Проверяем, существует ли уже админ - используем правильный формат email
|
||||||
const adminExists = await User.findOne({ email: 'admin', isAdmin: true });
|
const adminExists = await User.findOne({ email: 'admin@example.com', isAdmin: true });
|
||||||
|
|
||||||
if (!adminExists) {
|
if (!adminExists) {
|
||||||
console.log('[ADMIN INIT] Административный аккаунт не найден. Создаю новый...');
|
console.log('[ADMIN INIT] Административный аккаунт не найден. Создаю новый...');
|
||||||
|
|
||||||
// Создаем админа, если не существует
|
// Создаем админа, если не существует - с валидным форматом email
|
||||||
const admin = new User({
|
const admin = new User({
|
||||||
name: 'Администратор',
|
name: 'Администратор',
|
||||||
email: 'admin', // Используем 'admin' как логин
|
email: 'admin@example.com', // Используем валидный email
|
||||||
password: 'admin124',
|
password: 'admin124',
|
||||||
dateOfBirth: new Date('1990-01-01'), // Устанавливаем формальную дату рождения
|
dateOfBirth: new Date('1990-01-01'), // Устанавливаем формальную дату рождения
|
||||||
gender: 'other',
|
gender: 'other',
|
||||||
@ -29,17 +28,16 @@ const initAdminAccount = async () => {
|
|||||||
city: 'Admin',
|
city: 'Admin',
|
||||||
country: 'System'
|
country: 'System'
|
||||||
}
|
}
|
||||||
}); // Сохраняем админа
|
}); // Сохраняем админа const savedAdmin = await admin.save();
|
||||||
const savedAdmin = await admin.save();
|
|
||||||
if (savedAdmin) {
|
if (savedAdmin) {
|
||||||
console.log('[ADMIN INIT] Административный аккаунт успешно создан с логином: admin');
|
console.log('[ADMIN INIT] Административный аккаунт успешно создан с email: admin@example.com');
|
||||||
console.log('[ADMIN INIT] ID администратора:', savedAdmin._id);
|
console.log('[ADMIN INIT] ID администратора:', savedAdmin._id);
|
||||||
console.log('[ADMIN INIT] Для входа используйте: логин "admin", пароль "admin124"');
|
console.log('[ADMIN INIT] Для входа используйте: email "admin@example.com", пароль "admin124"');
|
||||||
} else {
|
} else {
|
||||||
console.error('[ADMIN INIT] Ошибка при сохранении администратора - не возвращен объект');
|
console.error('[ADMIN INIT] Ошибка при сохранении администратора - не возвращен объект');
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
console.log('[ADMIN INIT] Административный аккаунт с логином "admin" уже существует');
|
console.log('[ADMIN INIT] Административный аккаунт с email "admin@example.com" уже существует');
|
||||||
console.log('[ADMIN INIT] ID администратора:', adminExists._id);
|
console.log('[ADMIN INIT] ID администратора:', adminExists._id);
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
@ -22,8 +22,8 @@ const connectDB = async () => {
|
|||||||
// Function to create admin
|
// Function to create admin
|
||||||
const createAdmin = async () => {
|
const createAdmin = async () => {
|
||||||
try {
|
try {
|
||||||
// Check if admin exists
|
// Check if admin exists with valid email format
|
||||||
let admin = await User.findOne({ email: 'admin' });
|
let admin = await User.findOne({ email: 'admin@example.com' });
|
||||||
|
|
||||||
if (admin) {
|
if (admin) {
|
||||||
console.log('Admin user already exists:');
|
console.log('Admin user already exists:');
|
||||||
@ -50,7 +50,7 @@ const createAdmin = async () => {
|
|||||||
|
|
||||||
admin = new User({
|
admin = new User({
|
||||||
name: 'Администратор',
|
name: 'Администратор',
|
||||||
email: 'admin',
|
email: 'admin@example.com', // Use valid email format
|
||||||
password: hashedPassword,
|
password: hashedPassword,
|
||||||
dateOfBirth: new Date('1990-01-01'),
|
dateOfBirth: new Date('1990-01-01'),
|
||||||
gender: 'other',
|
gender: 'other',
|
||||||
@ -150,15 +150,10 @@ const main = async () => {
|
|||||||
|
|
||||||
// Create admin alias
|
// Create admin alias
|
||||||
const adminAlias = await createAdminAlias();
|
const adminAlias = await createAdminAlias();
|
||||||
|
console.log('\nAdmin Credentials:');
|
||||||
console.log('\nAdmin Credentials:');
|
console.log('Email: admin@example.com');
|
||||||
console.log('1. Login: admin');
|
console.log('Password: admin124');
|
||||||
console.log(' Password: admin124');
|
console.log('\nYou can also use "admin" as username and "admin124" as password');
|
||||||
|
|
||||||
if (adminAlias) {
|
|
||||||
console.log('2. Login: admin@example.com');
|
|
||||||
console.log(' Password: admin124');
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log('\nDone!');
|
console.log('\nDone!');
|
||||||
process.exit(0);
|
process.exit(0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user