- Исправлено выпадающее меню профиля (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-эндпоинтах
51 lines
1.9 KiB
SQL
51 lines
1.9 KiB
SQL
-- 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 $$;
|
||
|