kblincoe / QualOpt_SE701

2 stars 15 forks source link

#39 - GitHub Login Service and Participant OptOut Service #113

Closed lilcham closed 6 years ago

lilcham commented 6 years ago

This PR is to deal with Issue #39. The issue deals with two areas of the application; Firstly; the ability to login through Github and Secondly, including a service to allow participants to change their own settings about studies and to opt into future studies and opt out of current studies. This PR is to get the code review discussion started as it is a big PR.

Currently, there are a couple dependencies that need to be addressed before this is pulled in: #5 and #108. These have a potential of altering the code when pulled in; most of would just be small changes that would be addressed before merging.

Summary of Backend Changes

Here is a summary of the current backend changes made:

Frontend Changes

Here are the Frontend Changes made, with images to show the new view for participant accounts:

Github Login:

screen shot 2018-03-16 at 4 59 07 pm

This shows the new button on the login screen to login via github. The github code was added to the existing SocialController areas and it emulated the existing FB, Twitter and Google code.

Participant-Settings

screen shot 2018-03-16 at 5 00 18 pm screen shot 2018-03-16 at 5 00 25 pm

This is the view for a participant to edit their own settings when they have logged in. When they have opted-out of future studies, the extra information about the studies disappear. When they want to opt-into future studies, the extra information is shown and then they can alter it as needed.

Participant-OptOut Service

screen shot 2018-03-16 at 4 59 31 pm screen shot 2018-03-16 at 4 59 47 pm

For the opt-in and opt-out service, the ability for the participants to be able to individually pick which study to opt-out was implemented. All the studies that the participants have been opted into are listed and then for each, then can click opt out and confirm the popup window to be removed from that study.

lilcham commented 6 years ago

Hey @dylhall and @KijongHan, this is now ready to start the code review process.

nateeo commented 6 years ago

@crat019 regarding the issue someone raised about secret keys, me and @st970703 (Facebook & Twitter login) have decided to use System.getenv("SOME_SECRET_KEY") to handle obtaining secrets from environment variables. If you think we should use a file based method or some other way, we should discuss before we move ahead with this solution.

lilcham commented 6 years ago

@Nateeo Yea I think the way that you and @st970703 have decided to it is a good way to hide the secrets and I will follow suit.

softeng-701 commented 6 years ago

@crat019 Please squash your commits, thanks!

lilcham commented 6 years ago

@softeng-701 I am waiting for #5 and #108 to be merged in so I can alter my code, then I will squash all my commits into 1

softeng-701 commented 6 years ago

@crat019 Kindly resolve conflicts and squash your commits, thanks!

lilcham commented 6 years ago

@softeng-701 All reviewed and squashed commits. #108 will have a few merge conflicts with this one, if my PR gets pulled in first, I can work with @TheGuardianWolf and @Nemeritz to fix any conflicts (both merge conflicts and semantic conflicts).

softeng-701 commented 6 years ago

@crat019 resolve conflicts, please!

softeng-701 commented 6 years ago

@crat019 I see that the conflicts are now resolved! can other team members @dylHall @KijongHan approve to merge?

softeng-701 commented 6 years ago

@KijongHan review please!

lilcham commented 6 years ago

@softeng-701 All Approved