Add email/password sign up

This commit is contained in:
rubenwardy 2018-05-29 18:27:33 +01:00
parent 63a3b5e872
commit df291db69b
No known key found for this signature in database
GPG Key ID: A1E29D52FF81513C
4 changed files with 29 additions and 6 deletions

View File

@ -121,12 +121,15 @@ class User(db.Model, UserMixin):
packages = db.relationship("Package", backref="author", lazy="dynamic")
requests = db.relationship("EditRequest", backref="author", lazy="dynamic")
def __init__(self, username):
def __init__(self, username, active=False, email=None, password=None):
import datetime
self.username = username
self.confirmed_at = datetime.datetime.now() - datetime.timedelta(days=6000)
self.display_name = username
self.active = active
self.email = email
self.password = password
self.rank = UserRank.NOT_JOINED
def canAccessTodoList(self):

View File

@ -95,5 +95,21 @@ Creating an Account
<input type="submit" value="Next">
</form>
</div>
<div class="box box_grey">
<h2>Option 3 - Email/password sign up</h2>
<div class="box-body">
<p>
<b>Only do this if you don't have a forum account!</b>
</p>
<p>
If you have a forum account, please use one of the other two
options.
</p>
<a class="button" href="{{ url_for('user.register') }}">Register</a>
</div>
</div>
{% endif %}
{% endblock %}

View File

@ -32,7 +32,7 @@
Minetest Forum
</a>
{% elif user == current_user %}
<a href="">Link Forums Account</a>
No forum account
{% endif %}
{% if (user.forums_username and user.github_username) or user == current_user %}

View File

@ -62,7 +62,11 @@ def flatpage(path):
@app.before_request
def do_something_whenever_a_request_comes_in():
if current_user.is_authenticated and current_user.rank == UserRank.BANNED:
flash("You have been banned.", "error")
logout_user()
return redirect(url_for('user.login'))
if current_user.is_authenticated:
if current_user.rank == UserRank.BANNED:
flash("You have been banned.", "error")
logout_user()
return redirect(url_for('user.login'))
elif current_user.rank == UserRank.NOT_JOINED:
current_user.rank = UserRank.MEMBER
db.session.commit()