Skip to content
This repository has been archived by the owner on Jun 3, 2023. It is now read-only.

Enable login System #49

Merged
merged 14 commits into from
Sep 2, 2013
Merged

Enable login System #49

merged 14 commits into from
Sep 2, 2013

Conversation

mihaibivol
Copy link
Member

Need

In order to make my activity in ROSEdu public
As a ROSEdu comunity member
I want to be able to sign up and login

Deliverables

A login / sign-up system that doesn't allow random signups.

Solution

  • Allow anybody to login and signup
  • Add a field that allows only some of the trusted users to add their projects.

TODO

  • Use django.contrib.auth users in the Person model
  • Add a login page
  • Make profile_set work for an user only if he is logged in
  • Make the template change when an user is logged in
    • Show a link to the user and a link to logout
    • Show the edit link only on self profile page
  • Add change password to profile set
  • Add a signup page
  • Add a basic authorization system

Notes

Having a free for anybody login system would allow anybody to add himself in all the projects and would make the data irrelevant.

Signup page will need the following information displayed:

  • Name
  • Email
  • Password
  • Link to use gravatar

@mihaibivol
Copy link
Member Author

cc @tiriplicamihai

@alexandrujuncu
Copy link

It's a little philosophical question here: if we're open source, why not open authentication (anyone can login).
But I get the pragmatic problem and why we would want just a few people login.
If we want closed accounts the answer is simple: Google Auth (we can haz Google Apps accounts).
And if you implement OpenID login with Google, you can then open it up to any other Google account (if you plan to open it up later).

@mihaibivol
Copy link
Member Author

Anything that we build it's on top of django auth. So these are the first steps to be made regardless of the next auth systems.

The second problem is that we want cool data. Anybody can login but only a few people will be authorized to add projects. (Ensure that after a week we don't get junk data)

@mihaibivol
Copy link
Member Author

It's just a first step and a punctual need and solution for the current state of the project :)

@alexandrujuncu
Copy link

AAA: authentication, authorization and accounting. Google/FB/Github/LinkedIn/internal auth and internal authorization (and accounting, I guess).

@mihaibivol
Copy link
Member Author

I'm curious on how the Need Deliveralbes Solution template works on ROSEdu projects. So can you add an issue in that template so anybody can understand the need and deliverables? For now I'm up to adding it to the backlog milestone.

@mihaibivol
Copy link
Member Author

@tiriplicamihai Can you test that user creation, login and editing works. I don't have the scenarios yet, just test at will :)

The original fixtures don't work so start the app in an empty db state.

@ghost ghost assigned mihaibivol Sep 1, 2013
@tiriplicamihai
Copy link
Contributor

@mihaibivol

  • changing password in edit profile does not work: TemplateDoesNotExist at /password_change/
  • change password link should be displayed on the login page too
  • If a wrong password/username is eneterd the form error is displayed like this:
__all__
Please enter a correct username and password. Note that both fields are case-sensitive.

We should remove the all key

@mihaibivol
Copy link
Member Author

Did you run the server using virtualenv and requirements .txt There are some deprecated usecases that I failed to identify right now.

@mihaibivol
Copy link
Member Author

I'll put the error display issue in #48

@tiriplicamihai
Copy link
Contributor

I didn't use virtualenv, but I used requirements.txt

mihaibivol added a commit that referenced this pull request Sep 2, 2013
@mihaibivol mihaibivol merged commit af3aa36 into master Sep 2, 2013
@mihaibivol mihaibivol deleted the 49-login-signup-system branch September 2, 2013 15:51
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants