Initial commit - Black Canyon Tickets whitelabel platform

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-07-08 12:31:31 -06:00
commit 997c129383
139 changed files with 60476 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
-- Add fields to support featured events and public calendar integration
ALTER TABLE events
ADD COLUMN IF NOT EXISTS end_time TIMESTAMP WITH TIME ZONE,
ADD COLUMN IF NOT EXISTS image_url TEXT,
ADD COLUMN IF NOT EXISTS category TEXT DEFAULT 'general',
ADD COLUMN IF NOT EXISTS is_featured BOOLEAN DEFAULT FALSE,
ADD COLUMN IF NOT EXISTS is_public BOOLEAN DEFAULT FALSE,
ADD COLUMN IF NOT EXISTS is_published BOOLEAN DEFAULT TRUE,
ADD COLUMN IF NOT EXISTS external_source TEXT; -- Track if event is from scraper
-- Add indexes for performance
CREATE INDEX IF NOT EXISTS idx_events_is_featured ON events(is_featured);
CREATE INDEX IF NOT EXISTS idx_events_is_public ON events(is_public);
CREATE INDEX IF NOT EXISTS idx_events_category ON events(category);
CREATE INDEX IF NOT EXISTS idx_events_start_time ON events(start_time);
CREATE INDEX IF NOT EXISTS idx_events_external_source ON events(external_source);
-- Add RLS policy for public events (anyone can view public events)
CREATE POLICY IF NOT EXISTS "Anyone can view public published events" ON events
FOR SELECT USING (is_public = true AND is_published = true);
-- Update existing events to be public by default for backward compatibility
UPDATE events SET is_public = true, is_published = true WHERE is_public IS NULL;
-- Add comments for clarity
COMMENT ON COLUMN events.end_time IS 'Event end time - optional, derived from start_time if not provided';
COMMENT ON COLUMN events.image_url IS 'Featured image for the event';
COMMENT ON COLUMN events.category IS 'Event category (music, arts, community, business, food, sports, etc.)';
COMMENT ON COLUMN events.is_featured IS 'Whether event should be featured prominently';
COMMENT ON COLUMN events.is_public IS 'Whether event appears in public calendar';
COMMENT ON COLUMN events.is_published IS 'Whether event is published and visible';
COMMENT ON COLUMN events.external_source IS 'Source of external events (e.g., "scraper", "manual")';