Files
web_work/migrations/004_grant_admin_to_admin_mail.sql
kirill.khorkov 29b9aaac50 Исправление багов авторизации, корзины и админки
- Исправлено выпадающее меню профиля (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-эндпоинтах
2025-12-16 02:58:44 +03:00

51 lines
1.9 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 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 $$;