Skip to content

✨ User privacy controls (map, birthday, profile) #28

@fusion94

Description

@fusion94

Summary

Today every member with a coordinate is on the map and every birthday flows into the public community calendar feed. Add three privacy toggles so members control their own visibility.

Proposed Approach

  1. Add columns to users:
    • show_on_map INTEGER DEFAULT 1
    • hide_birthday_year INTEGER DEFAULT 0
    • exclude_birthday_from_calendar INTEGER DEFAULT 0
  2. New section in src/pages/Profile.jsx titled "Privacy" with three switches.
  3. GET /api/users and the map fetch respect show_on_map.
  4. GET /api/calendar/subscribe and the events feed exclude birthdays where exclude_birthday_from_calendar = 1.
  5. Birthday rendering everywhere checks hide_birthday_year — show "March 5" instead of "March 5, 1985".

Acceptance Criteria

  • User toggling "show me on map" hides their pin from MapView for everyone.
  • User toggling "hide birthday year" causes their birthday to render without a year on every page.
  • User toggling "exclude my birthday from calendar" removes their birthday from community calendar/iCal feeds.
  • Defaults are backwards-compatible for existing users (visible / year shown / birthday included).

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