Skip to content

🔧 Per-user timezone for calendar and ICS exports #32

@fusion94

Description

@fusion94

Summary

server/index.js hardcodes America/Chicago everywhere it stamps a timezone (lines 740, 819, 961, ~996-1010). Anyone outside Central Time gets wrong-time entries when they subscribe to the calendar or import the ICS exports.

Proposed Approach

  1. Add timezone TEXT DEFAULT 'America/Chicago' to the users table (migration).
  2. Profile page gets a timezone picker (use Intl.supportedValuesOf('timeZone')).
  3. ICS generators take a timezone parameter and stamp it per export.
  4. Per-event timezone stays Central by default for community events (preserves existing behavior for exporters who haven't set their TZ).
  5. Public /api/calendar/subscribe continues to use America/Chicago (since it's anonymous), unless query param ?tz= is provided.

Acceptance Criteria

  • Profile has a timezone selector defaulting to America/Chicago.
  • User-authenticated ICS exports honor the chosen timezone.
  • Public subscribe URL accepts ?tz= and respects it.
  • Existing users keep their current behavior with no action required.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions