i need someone to fix the authentication (login/logout) process for [url removed, login to view]
currently this does not work too well in that the Federated Login give errors and when a user uses the local registration they are unable to set their password, so this is what i need:
1/. fix the local registration process - so that:
a) an email is sent with verification string - this works.
b) when a user clicks on verification link, they are authenticated - this also works - but i want the user to be taken to the set password page so that they can set their password
c) if user already exists on the database, a reset password verification link is sent - this also works - but again when they click on this, they should be taken to the reset password page
2/. Federated login - ensure all federated login works - currently only Mozilla Personna works
In the current MongoDB i have a field provider, which keeps a list of the authentication providers, so:
> [url removed, login to view]().pretty()
"__v" : 0,
"_id" : ObjectId("5254540e75b4990704000001"),
"active" : true,
"email" : "",
"groups" : "member",
"lockUntil" : 0,
"loginAttempts" : 0,
"name" : "First Name",
"password" : "$2a$10$eSGqa6qAuzVmoevqrtmXBunzJA/3ix4CmnMww/[url removed, login to view]",
"provider" : [
"surname" : "Last Name",
"tokenExpires" : 1381346239856,
"tokenString" : "QnBLPUcgCPQD6XXub4HWhXrLIfPluxQSPOTv8c9ujBTC81fTB79NtIdbW0t_DwzM"
this way if a user logins with local and a Federated Login, we don't create duplicate record in the database but simply update the existing record.
3/. create an admin user and an admin view where all the users on the database are listed and editable only by the admin user, so that we have a view as follows:
[first name] [last name] [group - v]
where [ group - v ] is a list containing : Admin, Reviewer, Member
All the code for the application can be located: [url removed, login to view] with instructions of how to install it.
You will need to fork the project and send pull requests. Also you will need to write tests to ensure this works as i want this to be a test driven development.