Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added Verification Log Model and Actions #153

Merged
merged 5 commits into from
Sep 30, 2024
Merged

Conversation

samarth52
Copy link
Contributor

@samarth52 samarth52 commented Sep 13, 2024

Issue: #142

This PR adds a generic model for verifications, including password reset and email verification. The schema is as follows:

{
  email: string;
  type: VerificationLogType; // either PASSWORD_RESET or EMAIL_VERIFICATION
  token: string;
  numAttemptsRemaining: number;
  createdAt: Date;
  expiresAt: Date;
}

Actions specific to password reset and email verification have also been added.

  • For password reset:
    • Max. number of attempts is 5
    • Expiry date is set to 15 minutes from the time of creation
    • Token is a 6 digit number (like an OTP code)
  • For email verification:
    • Max. number of attempts is infinite
    • Expiry date is set to 7 days from the time of creation
    • Token is a 32-digit UUID

@samarth52 samarth52 marked this pull request as draft September 13, 2024 00:09
@samarth52 samarth52 marked this pull request as ready for review September 15, 2024 17:15
@samarth52 samarth52 changed the title Added verification log model and actions Added Verification Log Model and Actions Sep 15, 2024
@xHayden xHayden self-requested a review September 16, 2024 16:33
@xHayden xHayden linked an issue Sep 16, 2024 that may be closed by this pull request
6 tasks
@samarth52 samarth52 closed this Sep 24, 2024
@samarth52 samarth52 reopened this Sep 25, 2024
@xHayden xHayden merged commit 9456774 into dev Sep 30, 2024
3 checks passed
xHayden added a commit that referenced this pull request Sep 30, 2024
* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
xHayden added a commit that referenced this pull request Sep 30, 2024
* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

* Added email verification template

* Added password reset endpoints

nits

* Integrated password reset function

* Added password reset constants

* Added basic password reset page frames

* Completed password reset request page

* Updated props

* nits

* Completed password reset verify page

* Completed password reset update page

* Remove cookie after password reset

* Completed password reset confirmation page

* nit

* Refactored components

* Added email verification endpoints

* Added email templates to repo

* Updated var names

* Added Email Verification Screen (#166)

* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Helen <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
xHayden added a commit that referenced this pull request Nov 5, 2024
* Create LICENSE

* clean up

* Cleanup

* update header w condensed version

* Small typing changes, add warning for pathname

* Docker Rewrite (#156)

* add docker rewrite

* Update docker to log entrypoint

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Contact Redesign (#149)

* Changed contact modal to only take in a message, and access user information from the userId. Currently due to expired domain mailersend doesn't work, in order to test you can make a new account and switch out the api key and MAIL_SEND_DOMAIN with a trial domain

* Renaming unclear variables

* Mailing const set to gatech.lol

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Password Reset API Route (#152)

* created database action and api endpoint

* Add TODO for using tokens instead

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Bog-analytics example, page visit tracking (#157)

* add example page view logger for development environment with bog-analytics

* change client api key name

* merge, need to switch to context provider

* change client api key name

* merge, need to switch to context provider

* switch to using provider for analytics logger

* delete accidental import

* yay

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/custom visit (#162)

* Custom visit implemented without user_group, working on that now

* Removed a bunch of api calls unecessarily accessing the database for info available in the token

* Removed mistaken log

* Added game statistics

* Finished game statistics

* Fixed type issues

* Correct middleware pattern

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Refferer should not be undefined, display none

* Hayden/mongo replicaset (#163)

* Modify docker-compose to use a replicaset with mongo/fix docker to properly run mongo internally/fixes theme and tags bug

* Fix order of setup hosts

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Samarth/email verification endpoints (#171)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

* Added email verification template

* Added password reset endpoints

nits

* Integrated password reset function

* Added password reset constants

* Added basic password reset page frames

* Completed password reset request page

* Updated props

* nits

* Completed password reset verify page

* Completed password reset update page

* Remove cookie after password reset

* Completed password reset confirmation page

* nit

* Refactored components

* Added email verification endpoints

* Added email templates to repo

* Updated var names

* Added Email Verification Screen (#166)

* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Helen <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

* Fix referer

* Ankith/data expiration (#176)

* Fully implemented gdpr user deletion, for notes as well

* Accounted for edge case where user switches email to that of a deleted user, and edge case when user redeletes an account

* Removed uncessary console logs

* Changed back domain name

* looks good, no checking for if notes should be rendered if marked to delete

* add logic not to return deleted notes

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Game Popularity and CRON Job (#177)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* Change loading for analytics to prevent CLS and ensure analytics have user data

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* GDPR tracking compliance (#180)

* add tracked property on users that is checked before logging analytics on them for gdpr tracking compliance

* Fix session updating when edit user tracked

* remove session stuff from analytics

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Data Population and Game-specific User Groups Chart (#179)

* inital dashboard integration with analytics done

* separated leaderboard data, queried database for game/user names, styling changes

* delete console logs

* add table for links

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Helen/sort filtering (#178)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* initial commit

* incorporate backend

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* Fix build

* Added log and error checking in popularity updater

* Fix create game bug

* fix create dir bug

* Aakash/dashboard export (#191)

* restructure data fetching and add day/week/month swticher

* example exports working

* finished data processing and export functionality

* Changed label of xlsx page to referrer breakdown

---------

Co-authored-by: yolanda-y-li <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* initial commit (#189)

Co-authored-by: Hayden Carpenter <[email protected]>

* Migrated email to juno (#192)

Co-authored-by: Hayden Carpenter <[email protected]>

* Prod bucket urls

* filter modal and tags design (#194)

* minor image preview updates (#193)

* Yolanda Sprint Day Home Page Design Discrepancies (#197)

* fix design things for general user home page

* Fix page data reload on edit

* nit

* Updated gameboys section'

* Updated gameboy image and styling

---------

Co-authored-by: yolanda-y-li <[email protected]>

* Aakash Sprint Day Dashboard Design Discrepancies (#196)

* implemented all design discrepancies

* linting

* Support remote urls in game create (#198)

* Support remote urls in game create

* Fix editing

* Helen/game gallery design (#195)

* filter modal and tags design

* game gallery design fixes

* Helen/game screen design (#199)

* game screen without admin

* game screen design updates

* disable logger when tracking is off (#190)

* disable logger when tracking is off

* test

* I think it's as simple as making this use client instead of SSR

* Rework logging to hide env keys, all real logging is on server.

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/route verification (#187)

* Temporary change

* More api authentication

* Added cookie to authenticate email verification process has gone through

* Added authentication to user endpoints as well, basically only if its the same user or admin

* Added email authentication to changing your email

* Added message when sending code, now I just need to revamp the UI of the profile and so some more testing

* Finished Admin account design updates, need to do email verification stuff

* Finished ui changes for email authentication

* Change edit profile design to match Figma closer

* Made Profile modifier handle changing labels properly

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Update readme (#201)

* Update readme

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>
xHayden added a commit that referenced this pull request Nov 5, 2024
* Update Prod (#202)

* Create LICENSE

* clean up

* Cleanup

* update header w condensed version

* Small typing changes, add warning for pathname

* Docker Rewrite (#156)

* add docker rewrite

* Update docker to log entrypoint

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Contact Redesign (#149)

* Changed contact modal to only take in a message, and access user information from the userId. Currently due to expired domain mailersend doesn't work, in order to test you can make a new account and switch out the api key and MAIL_SEND_DOMAIN with a trial domain

* Renaming unclear variables

* Mailing const set to gatech.lol

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Password Reset API Route (#152)

* created database action and api endpoint

* Add TODO for using tokens instead

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Bog-analytics example, page visit tracking (#157)

* add example page view logger for development environment with bog-analytics

* change client api key name

* merge, need to switch to context provider

* change client api key name

* merge, need to switch to context provider

* switch to using provider for analytics logger

* delete accidental import

* yay

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/custom visit (#162)

* Custom visit implemented without user_group, working on that now

* Removed a bunch of api calls unecessarily accessing the database for info available in the token

* Removed mistaken log

* Added game statistics

* Finished game statistics

* Fixed type issues

* Correct middleware pattern

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Refferer should not be undefined, display none

* Hayden/mongo replicaset (#163)

* Modify docker-compose to use a replicaset with mongo/fix docker to properly run mongo internally/fixes theme and tags bug

* Fix order of setup hosts

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Samarth/email verification endpoints (#171)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

* Added email verification template

* Added password reset endpoints

nits

* Integrated password reset function

* Added password reset constants

* Added basic password reset page frames

* Completed password reset request page

* Updated props

* nits

* Completed password reset verify page

* Completed password reset update page

* Remove cookie after password reset

* Completed password reset confirmation page

* nit

* Refactored components

* Added email verification endpoints

* Added email templates to repo

* Updated var names

* Added Email Verification Screen (#166)

* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Helen <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

* Fix referer

* Ankith/data expiration (#176)

* Fully implemented gdpr user deletion, for notes as well

* Accounted for edge case where user switches email to that of a deleted user, and edge case when user redeletes an account

* Removed uncessary console logs

* Changed back domain name

* looks good, no checking for if notes should be rendered if marked to delete

* add logic not to return deleted notes

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Game Popularity and CRON Job (#177)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* Change loading for analytics to prevent CLS and ensure analytics have user data

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* GDPR tracking compliance (#180)

* add tracked property on users that is checked before logging analytics on them for gdpr tracking compliance

* Fix session updating when edit user tracked

* remove session stuff from analytics

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Data Population and Game-specific User Groups Chart (#179)

* inital dashboard integration with analytics done

* separated leaderboard data, queried database for game/user names, styling changes

* delete console logs

* add table for links

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Helen/sort filtering (#178)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* initial commit

* incorporate backend

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* Fix build

* Added log and error checking in popularity updater

* Fix create game bug

* fix create dir bug

* Aakash/dashboard export (#191)

* restructure data fetching and add day/week/month swticher

* example exports working

* finished data processing and export functionality

* Changed label of xlsx page to referrer breakdown

---------

Co-authored-by: yolanda-y-li <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* initial commit (#189)

Co-authored-by: Hayden Carpenter <[email protected]>

* Migrated email to juno (#192)

Co-authored-by: Hayden Carpenter <[email protected]>

* Prod bucket urls

* filter modal and tags design (#194)

* minor image preview updates (#193)

* Yolanda Sprint Day Home Page Design Discrepancies (#197)

* fix design things for general user home page

* Fix page data reload on edit

* nit

* Updated gameboys section'

* Updated gameboy image and styling

---------

Co-authored-by: yolanda-y-li <[email protected]>

* Aakash Sprint Day Dashboard Design Discrepancies (#196)

* implemented all design discrepancies

* linting

* Support remote urls in game create (#198)

* Support remote urls in game create

* Fix editing

* Helen/game gallery design (#195)

* filter modal and tags design

* game gallery design fixes

* Helen/game screen design (#199)

* game screen without admin

* game screen design updates

* disable logger when tracking is off (#190)

* disable logger when tracking is off

* test

* I think it's as simple as making this use client instead of SSR

* Rework logging to hide env keys, all real logging is on server.

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/route verification (#187)

* Temporary change

* More api authentication

* Added cookie to authenticate email verification process has gone through

* Added authentication to user endpoints as well, basically only if its the same user or admin

* Added email authentication to changing your email

* Added message when sending code, now I just need to revamp the UI of the profile and so some more testing

* Finished Admin account design updates, need to do email verification stuff

* Finished ui changes for email authentication

* Change edit profile design to match Figma closer

* Made Profile modifier handle changing labels properly

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Update readme (#201)

* Update readme

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>

* oopsies

* update package.json

* update package.json

* update package.json

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>
xHayden added a commit that referenced this pull request Nov 5, 2024
* Update Prod (#202)

* Create LICENSE

* clean up

* Cleanup

* update header w condensed version

* Small typing changes, add warning for pathname

* Docker Rewrite (#156)

* add docker rewrite

* Update docker to log entrypoint

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Contact Redesign (#149)

* Changed contact modal to only take in a message, and access user information from the userId. Currently due to expired domain mailersend doesn't work, in order to test you can make a new account and switch out the api key and MAIL_SEND_DOMAIN with a trial domain

* Renaming unclear variables

* Mailing const set to gatech.lol

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Password Reset API Route (#152)

* created database action and api endpoint

* Add TODO for using tokens instead

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Bog-analytics example, page visit tracking (#157)

* add example page view logger for development environment with bog-analytics

* change client api key name

* merge, need to switch to context provider

* change client api key name

* merge, need to switch to context provider

* switch to using provider for analytics logger

* delete accidental import

* yay

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/custom visit (#162)

* Custom visit implemented without user_group, working on that now

* Removed a bunch of api calls unecessarily accessing the database for info available in the token

* Removed mistaken log

* Added game statistics

* Finished game statistics

* Fixed type issues

* Correct middleware pattern

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Refferer should not be undefined, display none

* Hayden/mongo replicaset (#163)

* Modify docker-compose to use a replicaset with mongo/fix docker to properly run mongo internally/fixes theme and tags bug

* Fix order of setup hosts

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Samarth/email verification endpoints (#171)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

* Added email verification template

* Added password reset endpoints

nits

* Integrated password reset function

* Added password reset constants

* Added basic password reset page frames

* Completed password reset request page

* Updated props

* nits

* Completed password reset verify page

* Completed password reset update page

* Remove cookie after password reset

* Completed password reset confirmation page

* nit

* Refactored components

* Added email verification endpoints

* Added email templates to repo

* Updated var names

* Added Email Verification Screen (#166)

* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Helen <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

* Fix referer

* Ankith/data expiration (#176)

* Fully implemented gdpr user deletion, for notes as well

* Accounted for edge case where user switches email to that of a deleted user, and edge case when user redeletes an account

* Removed uncessary console logs

* Changed back domain name

* looks good, no checking for if notes should be rendered if marked to delete

* add logic not to return deleted notes

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Game Popularity and CRON Job (#177)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* Change loading for analytics to prevent CLS and ensure analytics have user data

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* GDPR tracking compliance (#180)

* add tracked property on users that is checked before logging analytics on them for gdpr tracking compliance

* Fix session updating when edit user tracked

* remove session stuff from analytics

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Data Population and Game-specific User Groups Chart (#179)

* inital dashboard integration with analytics done

* separated leaderboard data, queried database for game/user names, styling changes

* delete console logs

* add table for links

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Helen/sort filtering (#178)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* initial commit

* incorporate backend

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* Fix build

* Added log and error checking in popularity updater

* Fix create game bug

* fix create dir bug

* Aakash/dashboard export (#191)

* restructure data fetching and add day/week/month swticher

* example exports working

* finished data processing and export functionality

* Changed label of xlsx page to referrer breakdown

---------

Co-authored-by: yolanda-y-li <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* initial commit (#189)

Co-authored-by: Hayden Carpenter <[email protected]>

* Migrated email to juno (#192)

Co-authored-by: Hayden Carpenter <[email protected]>

* Prod bucket urls

* filter modal and tags design (#194)

* minor image preview updates (#193)

* Yolanda Sprint Day Home Page Design Discrepancies (#197)

* fix design things for general user home page

* Fix page data reload on edit

* nit

* Updated gameboys section'

* Updated gameboy image and styling

---------

Co-authored-by: yolanda-y-li <[email protected]>

* Aakash Sprint Day Dashboard Design Discrepancies (#196)

* implemented all design discrepancies

* linting

* Support remote urls in game create (#198)

* Support remote urls in game create

* Fix editing

* Helen/game gallery design (#195)

* filter modal and tags design

* game gallery design fixes

* Helen/game screen design (#199)

* game screen without admin

* game screen design updates

* disable logger when tracking is off (#190)

* disable logger when tracking is off

* test

* I think it's as simple as making this use client instead of SSR

* Rework logging to hide env keys, all real logging is on server.

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/route verification (#187)

* Temporary change

* More api authentication

* Added cookie to authenticate email verification process has gone through

* Added authentication to user endpoints as well, basically only if its the same user or admin

* Added email authentication to changing your email

* Added message when sending code, now I just need to revamp the UI of the profile and so some more testing

* Finished Admin account design updates, need to do email verification stuff

* Finished ui changes for email authentication

* Change edit profile design to match Figma closer

* Made Profile modifier handle changing labels properly

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Update readme (#201)

* Update readme

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>

* oopsies

* update package.json

* update package.json

* update package.json

* bad ankith

* bad ankith

* bad ankith

* bad ankith

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>
xHayden added a commit that referenced this pull request Nov 5, 2024
* Update Prod (#202)

* Create LICENSE

* clean up

* Cleanup

* update header w condensed version

* Small typing changes, add warning for pathname

* Docker Rewrite (#156)

* add docker rewrite

* Update docker to log entrypoint

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Contact Redesign (#149)

* Changed contact modal to only take in a message, and access user information from the userId. Currently due to expired domain mailersend doesn't work, in order to test you can make a new account and switch out the api key and MAIL_SEND_DOMAIN with a trial domain

* Renaming unclear variables

* Mailing const set to gatech.lol

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Password Reset API Route (#152)

* created database action and api endpoint

* Add TODO for using tokens instead

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Bog-analytics example, page visit tracking (#157)

* add example page view logger for development environment with bog-analytics

* change client api key name

* merge, need to switch to context provider

* change client api key name

* merge, need to switch to context provider

* switch to using provider for analytics logger

* delete accidental import

* yay

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/custom visit (#162)

* Custom visit implemented without user_group, working on that now

* Removed a bunch of api calls unecessarily accessing the database for info available in the token

* Removed mistaken log

* Added game statistics

* Finished game statistics

* Fixed type issues

* Correct middleware pattern

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Refferer should not be undefined, display none

* Hayden/mongo replicaset (#163)

* Modify docker-compose to use a replicaset with mongo/fix docker to properly run mongo internally/fixes theme and tags bug

* Fix order of setup hosts

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Samarth/email verification endpoints (#171)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

* Added email verification template

* Added password reset endpoints

nits

* Integrated password reset function

* Added password reset constants

* Added basic password reset page frames

* Completed password reset request page

* Updated props

* nits

* Completed password reset verify page

* Completed password reset update page

* Remove cookie after password reset

* Completed password reset confirmation page

* nit

* Refactored components

* Added email verification endpoints

* Added email templates to repo

* Updated var names

* Added Email Verification Screen (#166)

* Added email verification page + nits

* cms dashboard layout and tables (#168)

* cms dashboard layout and tables

* change displayed game when changing pages

* remove comment

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

* Apply styling on clicking of table items in paginated cms views and responsive flex for cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* cms dashboard user traffic (#169)

* add user traffic dashboard (major sources and user groups)

* Merging pie chrats onto cms dashboard

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Prevent CLS (#167)

* initial implementation

* fixed game gallery filtering

* fixed error mistake

* ssr on game page

* fixed video trailer bug + styling changes

* added ssr to game edit page

* fixed pagination bug

* fix build

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Verification Log Model and Actions (#153)

* Added verification log model and actions

* updated docs

* renamed variable

* add should to increase verbosity on flags

* change email token to otp with 20 attempts

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Fix confirmation text

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Helen <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>

* Fix referer

* Ankith/data expiration (#176)

* Fully implemented gdpr user deletion, for notes as well

* Accounted for edge case where user switches email to that of a deleted user, and edge case when user redeletes an account

* Removed uncessary console logs

* Changed back domain name

* looks good, no checking for if notes should be rendered if marked to delete

* add logic not to return deleted notes

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Added Game Popularity and CRON Job (#177)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* Change loading for analytics to prevent CLS and ensure analytics have user data

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* GDPR tracking compliance (#180)

* add tracked property on users that is checked before logging analytics on them for gdpr tracking compliance

* Fix session updating when edit user tracked

* remove session stuff from analytics

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Data Population and Game-specific User Groups Chart (#179)

* inital dashboard integration with analytics done

* separated leaderboard data, queried database for game/user names, styling changes

* delete console logs

* add table for links

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Helen/sort filtering (#178)

* Added popularity field for games

* Added Netlify CRON job

* Reset popularity after updates

* initial commit

* incorporate backend

---------

Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* Fix build

* Added log and error checking in popularity updater

* Fix create game bug

* fix create dir bug

* Aakash/dashboard export (#191)

* restructure data fetching and add day/week/month swticher

* example exports working

* finished data processing and export functionality

* Changed label of xlsx page to referrer breakdown

---------

Co-authored-by: yolanda-y-li <[email protected]>
Co-authored-by: Hayden Carpenter <[email protected]>

* initial commit (#189)

Co-authored-by: Hayden Carpenter <[email protected]>

* Migrated email to juno (#192)

Co-authored-by: Hayden Carpenter <[email protected]>

* Prod bucket urls

* filter modal and tags design (#194)

* minor image preview updates (#193)

* Yolanda Sprint Day Home Page Design Discrepancies (#197)

* fix design things for general user home page

* Fix page data reload on edit

* nit

* Updated gameboys section'

* Updated gameboy image and styling

---------

Co-authored-by: yolanda-y-li <[email protected]>

* Aakash Sprint Day Dashboard Design Discrepancies (#196)

* implemented all design discrepancies

* linting

* Support remote urls in game create (#198)

* Support remote urls in game create

* Fix editing

* Helen/game gallery design (#195)

* filter modal and tags design

* game gallery design fixes

* Helen/game screen design (#199)

* game screen without admin

* game screen design updates

* disable logger when tracking is off (#190)

* disable logger when tracking is off

* test

* I think it's as simple as making this use client instead of SSR

* Rework logging to hide env keys, all real logging is on server.

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Ankith/route verification (#187)

* Temporary change

* More api authentication

* Added cookie to authenticate email verification process has gone through

* Added authentication to user endpoints as well, basically only if its the same user or admin

* Added email authentication to changing your email

* Added message when sending code, now I just need to revamp the UI of the profile and so some more testing

* Finished Admin account design updates, need to do email verification stuff

* Finished ui changes for email authentication

* Change edit profile design to match Figma closer

* Made Profile modifier handle changing labels properly

---------

Co-authored-by: Hayden Carpenter <[email protected]>

* Update readme (#201)

* Update readme

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>

* oopsies

* update package.json

* update package.json

* update package.json

* bad ankith

* bad ankith

* bad ankith

* bad ankith

* production env fixes

---------

Co-authored-by: Helen <[email protected]>
Co-authored-by: Helen Chen <[email protected]>
Co-authored-by: Samrat Sahoo <[email protected]>
Co-authored-by: Ankith T <[email protected]>
Co-authored-by: Aakash Gupta <[email protected]>
Co-authored-by: Yolanda Li <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: Samarth Chandna <[email protected]>
Co-authored-by: yolanda-y-li <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] Password Reset Token Flow (Confirmation Codes)
2 participants