Files
MyClub/database/migrations/000006_create_contact_tables.up.sql
T
Tomáš Dvořák 12cba639b9 upload
2025-10-16 13:32:05 +02:00

49 lines
2.1 KiB
SQL

-- Create contact_categories table
CREATE TABLE IF NOT EXISTS contact_categories (
id SERIAL PRIMARY KEY,
name VARCHAR(255) NOT NULL UNIQUE,
description TEXT,
display_order INT DEFAULT 0,
is_active BOOLEAN DEFAULT TRUE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
deleted_at TIMESTAMP
);
CREATE INDEX idx_contact_categories_display_order ON contact_categories(display_order);
CREATE INDEX idx_contact_categories_is_active ON contact_categories(is_active);
-- Create contacts table
CREATE TABLE IF NOT EXISTS contacts (
id SERIAL PRIMARY KEY,
category_id INT REFERENCES contact_categories(id) ON DELETE SET NULL,
name VARCHAR(255) NOT NULL,
position VARCHAR(255),
email VARCHAR(255),
phone VARCHAR(100),
image_url VARCHAR(500),
description TEXT,
display_order INT DEFAULT 0,
is_active BOOLEAN DEFAULT TRUE,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
deleted_at TIMESTAMP
);
CREATE INDEX idx_contacts_category_id ON contacts(category_id);
CREATE INDEX idx_contacts_display_order ON contacts(display_order);
CREATE INDEX idx_contacts_is_active ON contacts(is_active);
-- Add contact/location fields to settings table
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_address VARCHAR(500);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_city VARCHAR(255);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_zip VARCHAR(20);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_country VARCHAR(100);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_phone VARCHAR(100);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS contact_email VARCHAR(255);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS location_latitude DECIMAL(10, 8);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS location_longitude DECIMAL(11, 8);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS map_zoom_level INT DEFAULT 15;
ALTER TABLE settings ADD COLUMN IF NOT EXISTS map_style VARCHAR(255);
ALTER TABLE settings ADD COLUMN IF NOT EXISTS show_map_on_homepage BOOLEAN DEFAULT FALSE;