YCPRadioTelescope / RT-Contracts

Back-end architecture for the Radio Telescope Senior Software Design Project for the 2018-2019 academic year
3 stars 1 forks source link

Admin Confirms User before addition to the Database #15

Closed jhorne98 closed 4 years ago

jhorne98 commented 5 years ago

When the user creates an account before it can be added to the database it must be verified by the admin. Once verification has gone through, the user's information is added to the database of users. This could be done with a pending user flag in the users database.

lgartrell commented 4 years ago

Todd is this the right behaviour? Could lead to a new user missing scheduling an appointment if the admin doesn't verify user quickly. Maybe desired behaviour is a monthly (or weekly) list view of new users that you can delete if necessary?

TUllery commented 4 years ago

I do not want this change. It is expected that the new user notification will be sent to the Admin app and be reviewed in a few minutes/hours, not days. I am expecting a few requests per month. As the user signs up, I believe the text says their membership has to be approved and an email will be sent to them when they can start making observations. The user is added to the database as a pending user to be approved by Admin otherwise (existing functionality).

lgartrell commented 4 years ago

@TUllery Okay, that makes sense to me as well. This would involve changing the User schema. In addition to this change, with the expected notification to the admin app this involves the mobile team as well.

Updated Plan

Backend Mobile App
Make changes to User schema as said by Todd Investigate how to display notification received from backend
Support mobile team by sending a notification to the admin app on user signup Create form for admin to either accept or deny a user
Test changes using existing testing / new testing Test changes

Happy path (This must work for this issue to be closed)

  1. new user signs up through website
  2. backend processes new user, sends notification to admin app
  3. private admin app receives notification, displays pop up to admin
  4. Admin clicks pop up (or a sitting notification in the app itself)
  5. Admin is delivered a form to accept or deny user
  6. Based on admin choice, User is either deleted or approved (new flag in database for pending users)
TUllery commented 4 years ago

To be clearer, I believe the functionality already exists and is working. The Admin is informed to approve a new user who is then sent an email notification about their status.

lgartrell commented 4 years ago

Marking as closed