Files
web_work/migrations/003_add_product_fields.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

58 lines
2.1 KiB
SQL

-- 003_add_product_fields.sql
-- Добавление дополнительных полей (если таблицы уже существуют)
-- Добавляем поля в products если их нет
DO $$
BEGIN
-- color
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'products' AND column_name = 'color') THEN
ALTER TABLE products ADD COLUMN color VARCHAR(50);
END IF;
-- material
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'products' AND column_name = 'material') THEN
ALTER TABLE products ADD COLUMN material VARCHAR(100);
END IF;
-- card_size
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'products' AND column_name = 'card_size') THEN
ALTER TABLE products ADD COLUMN card_size VARCHAR(20) DEFAULT 'small';
END IF;
END $$;
-- Добавляем поля в users если их нет
DO $$
BEGIN
-- city
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'users' AND column_name = 'city') THEN
ALTER TABLE users ADD COLUMN city VARCHAR(100);
END IF;
-- last_login
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'users' AND column_name = 'last_login') THEN
ALTER TABLE users ADD COLUMN last_login TIMESTAMP;
END IF;
END $$;
-- Добавляем поля в categories если их нет
DO $$
BEGIN
-- updated_at
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'categories' AND column_name = 'updated_at') THEN
ALTER TABLE categories ADD COLUMN updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
END IF;
-- created_at
IF NOT EXISTS (SELECT 1 FROM information_schema.columns
WHERE table_name = 'categories' AND column_name = 'created_at') THEN
ALTER TABLE categories ADD COLUMN created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
END IF;
END $$;