Skip to content

Conversation

@phoenixpereira
Copy link
Member

@phoenixpereira phoenixpereira commented Jan 8, 2025

Description

Add foundations for email, sms, and push notifications.

Changes Made

  • Updated the db schema to have a phone number and updated at field
  • Added a notifications table in the db schema with fields for the email, sms, and push notifications settings.
  • Added a phone number field to step 2 of the sign up form.
  • Added email and sms preferences to a new step in the sign up form.
  • Made the notifications settings tab functional.
  • Has the following notification preferences for email, sms, and push:
    • Newsletters
    • Club Events and Announcements
    • Sponsor Notifications

Related Issues

Fixes #218

Additional Notes

Push notifications settings aren't accessible right now, we have to decide whether we want it to be just for mobile pwa or normal desktop and mobile web push notifications and make the settings show up accordingly.

Actual notifications functionally requires payload to be set up with workflows for email, sms, and push.

This PR is merging to the 2025 branch, which will be a temporary staging branch for upcoming PRs that will be merged for the start of 2025. This includes changing auth to Keycloak, updating db schema for notifications, email for member sign-up, and adding our code of contact and constitution to our join us page.

@phoenixpereira phoenixpereira self-assigned this Jan 8, 2025
@phoenixpereira phoenixpereira merged commit 68ab999 into compsci-adl:2025 Jan 12, 2025
3 checks passed
@phoenixpereira phoenixpereira deleted the feat/notifications branch January 12, 2025 08:30
phoenixpereira added a commit that referenced this pull request Feb 4, 2025
* feat(auth): Switch to Keycloak (#217)

* feat(Auth): Add basic auth.js + Keycloak setup

* feat(auth): Make header work

* feat(db): Update db schema to make join flow work with Keycloak

* feat(auth): Get payment flow working

* feat(auth): Get admin panel working

* fix(auth): Use correct id

* feat(auth): Add sign out for mobile

* feat: Update join us page to use Keycloak

* feat(auth): Make join us flow work properly

* fix(settings): Show finish sign up box properly

* chore: Remove old forgot password page and unused schemas

* chore: Remove Clerk errors helper

* chore: Remove Clerk packages

* fix: Add md5 types, remove old Clerk styling, add name fields

* chore(ci): Update dockerfile, workflow, and env

* docs: Update Keycloak docs formatting and spelling

* chore: Address feedback

* chore: Remove unused route constants

* chore: Remove unused environment variables in workflow and dockerfile

* chore: Address feedback

* chore: Update membership product name for 2025

* chore(ci): Enable PR workflow for 2025 branch

* chore(ci): Enable PR workflow for 2025 branch

* chore(ci): Revert enable PR workflow for 2025 branch

* chore(ci): Enable PR workflow for 2025 branch (#219)

* chore(ci): Change trigger from pull_request_target to pull_request

* chore: Downgrade eslint version to fix compatibility issues

* fix: Add fallback db url and mock redis client

* feat: Add Welcome Email (#224)

* feat: Add foundations for notifications (#226)

* feat: Add Uni Code of Conduct and Club Constitution links (#228)

* chore(footer): Update copyright year to current dynamically

* feat(notifications): Refactor notification categories to use dynamic names

* feat(join): Update agree to terms step to include links to University Code of Conduct and club Constitution

* feat(about): Add link to club Constitution in About page

* refactor(field): Set field label string to lowercase at start

* chore(auth): Use Keycloak realm role instead of client role to determine committee access (#229)

* docs(keycloak): Improve Keycloak setup documentation (#230)

* chore(ci): Update .env.local.example and streamline env vars in production workflow (#231)

* chore(env): Update .env.local.example to include auth and email env vars

* chore(ci): Refactor production workflow to streamline env var handling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants