24 lines
958 B
SQL
24 lines
958 B
SQL
-- Migration: Add Album Support
|
|
-- Allows posts to contain multiple pictures displayed as an album gallery
|
|
|
|
ALTER TABLE public.items ADD COLUMN IF NOT EXISTS is_album boolean DEFAULT false;
|
|
ALTER TABLE public.items ADD COLUMN IF NOT EXISTS album_count integer DEFAULT 0;
|
|
|
|
CREATE TABLE IF NOT EXISTS public.album_items (
|
|
id SERIAL PRIMARY KEY,
|
|
item_id INTEGER NOT NULL REFERENCES public.items(id) ON DELETE CASCADE,
|
|
dest CHARACTER VARYING(60) NOT NULL,
|
|
mime CHARACTER VARYING(100) NOT NULL,
|
|
size INTEGER NOT NULL,
|
|
checksum CHARACTER VARYING(255) NOT NULL,
|
|
phash TEXT,
|
|
width INTEGER,
|
|
height INTEGER,
|
|
order_index INTEGER NOT NULL DEFAULT 0,
|
|
slug CHARACTER VARYING(60) DEFAULT NULL,
|
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_album_items_item_id ON public.album_items(item_id, order_index ASC);
|
|
CREATE INDEX IF NOT EXISTS idx_album_items_slug ON public.album_items(slug);
|