-- Add online details JSONB columns to program and program_session tables
-- Supports meeting, webinar, and live_stream online types
-- meeting_details: { meetingLink, meetingId, meetingPassword }
-- webinar_details: { webinarLink, webinarId, webinarPassword, panelistLink, registrationLink }
-- stream_details:  { streamUrl, backupStreamUrl?, chatUrl? }

ALTER TABLE program_v1
  ADD COLUMN IF NOT EXISTS meeting_details JSONB DEFAULT NULL,
  ADD COLUMN IF NOT EXISTS webinar_details JSONB DEFAULT NULL,
  ADD COLUMN IF NOT EXISTS stream_details  JSONB DEFAULT NULL;

ALTER TABLE program_session
  ADD COLUMN IF NOT EXISTS meeting_details JSONB DEFAULT NULL,
  ADD COLUMN IF NOT EXISTS webinar_details JSONB DEFAULT NULL,
  ADD COLUMN IF NOT EXISTS stream_details  JSONB DEFAULT NULL;