Исправление багов авторизации, корзины и админки
- Исправлено выпадающее меню профиля (hover-баг с margin-top) - Исправлена авторизация: правильные пути к API (api/auth.php) - Исправлены ссылки на админку (admin/index.php вместо admin_panel.php) - Исправлены пути API корзины в catalog.php и checkout.php - Добавлена форма добавления/редактирования товаров в админке - Исправлены кнопки +/- в корзине (улучшена обработка AJAX) - Исправлена регистрация: правильные пути и обработка boolean в PostgreSQL - Добавлена миграция для назначения прав админа пользователю admin@mail.ru - Удален тестовый блок 'Быстрый вход' для неавторизованных пользователей - Улучшена обработка ошибок во всех API-эндпоинтах
This commit is contained in:
50
migrations/004_grant_admin_to_admin_mail.sql
Normal file
50
migrations/004_grant_admin_to_admin_mail.sql
Normal file
@@ -0,0 +1,50 @@
|
||||
-- 004_grant_admin_to_admin_mail.sql
|
||||
-- Миграция: Назначение прав администратора пользователю admin@mail.ru
|
||||
|
||||
-- Обновляем пользователя admin@mail.ru, давая ему права администратора
|
||||
UPDATE users
|
||||
SET is_admin = TRUE,
|
||||
is_active = TRUE,
|
||||
updated_at = CURRENT_TIMESTAMP
|
||||
WHERE email = 'admin@mail.ru';
|
||||
|
||||
-- Проверяем результат
|
||||
DO $$
|
||||
DECLARE
|
||||
updated_count INTEGER;
|
||||
user_info RECORD;
|
||||
BEGIN
|
||||
GET DIAGNOSTICS updated_count = ROW_COUNT;
|
||||
|
||||
IF updated_count > 0 THEN
|
||||
-- Получаем информацию об обновленном пользователе
|
||||
SELECT user_id, email, full_name, is_admin, is_active
|
||||
INTO user_info
|
||||
FROM users
|
||||
WHERE email = 'admin@mail.ru';
|
||||
|
||||
RAISE NOTICE 'Пользователь % (ID: %) успешно получил права администратора',
|
||||
user_info.email, user_info.user_id;
|
||||
RAISE NOTICE 'ФИО: %, Админ: %, Активен: %',
|
||||
user_info.full_name, user_info.is_admin, user_info.is_active;
|
||||
ELSE
|
||||
-- Если пользователь не найден, создаем его с правами админа
|
||||
INSERT INTO users (email, password_hash, full_name, phone, city, is_admin, is_active)
|
||||
VALUES (
|
||||
'admin@mail.ru',
|
||||
'$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', -- admin123
|
||||
'Администратор',
|
||||
'+79129991223',
|
||||
'Москва',
|
||||
TRUE,
|
||||
TRUE
|
||||
)
|
||||
ON CONFLICT (email) DO UPDATE
|
||||
SET is_admin = TRUE,
|
||||
is_active = TRUE,
|
||||
updated_at = CURRENT_TIMESTAMP;
|
||||
|
||||
RAISE NOTICE 'Пользователь admin@mail.ru создан/обновлен с правами администратора';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
Reference in New Issue
Block a user