mirror of
https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
synced 2024-12-24 10:34:17 +00:00
Merge branch 'development' of gitlab.ub.uni-bielefeld.de:sfb1288inf/opaque into development
This commit is contained in:
commit
999e51bcc5
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,3 +1,3 @@
|
||||
venv
|
||||
.secretsenv
|
||||
.env
|
||||
__pycache__
|
||||
|
@ -1,5 +1,9 @@
|
||||
from flask import flash, redirect, render_template, request, url_for
|
||||
<<<<<<< HEAD
|
||||
from flask_login import login_required, login_user, logout_user, current_user
|
||||
=======
|
||||
from flask_login import current_user, login_required, login_user, logout_user
|
||||
>>>>>>> 1a973bfbc68dfea26a8b5360074480641cb34f31
|
||||
from . import auth
|
||||
from .. import db
|
||||
from .forms import LoginForm, PasswordResetRequestForm, RegistrationForm
|
||||
@ -47,6 +51,8 @@ def register():
|
||||
|
||||
@auth.route('/reset', methods=['GET', 'POST'])
|
||||
def password_reset_request():
|
||||
if not current_user.is_anonymous:
|
||||
return redirect(url_for('main.index'))
|
||||
form = PasswordResetRequestForm()
|
||||
if form.validate_on_submit():
|
||||
user = User.query.filter_by(email=form.email.data.lower()).first()
|
||||
@ -58,4 +64,10 @@ def password_reset_request():
|
||||
flash('An email with instructions to reset your password has been '
|
||||
'sent to you.')
|
||||
return redirect(url_for('auth.login'))
|
||||
return render_template('auth/reset_password.html.j2', form=form, title='Password Reset')
|
||||
return render_template('auth/reset_password.html.j2', form=form,
|
||||
title='Password Reset')
|
||||
|
||||
|
||||
@auth.route('/reset/<token>')
|
||||
def password_reset(token):
|
||||
return 'test'
|
||||
|
@ -1,4 +1,6 @@
|
||||
from flask import current_app
|
||||
from flask_login import UserMixin
|
||||
from itsdangerous import TimedJSONWebSignatureSerializer as Serializer
|
||||
from werkzeug.security import generate_password_hash, check_password_hash
|
||||
from . import db
|
||||
from . import login_manager
|
||||
@ -26,6 +28,10 @@ class User(UserMixin, db.Model):
|
||||
|
||||
password_hash = db.Column(db.String(128))
|
||||
|
||||
def generate_reset_token(self, expiration=3600):
|
||||
s = Serializer(current_app.config['SECRET_KEY'], expiration)
|
||||
return s.dumps({'reset': self.id}).decode('utf-8')
|
||||
|
||||
@property
|
||||
def password(self):
|
||||
raise AttributeError('password is not a readable attribute')
|
||||
|
@ -1,14 +1,20 @@
|
||||
{% extends "base.html.j2" %}
|
||||
|
||||
{% block page_content %}
|
||||
<div class="col s12 m6 offset-m3">
|
||||
<div class="card medium">
|
||||
<div class="col s12 m8 offset-m2">
|
||||
<div class="card small">
|
||||
<div class="card-content">
|
||||
<p>Sign in into an exisiting account or register a new one!</p>
|
||||
<br>
|
||||
<div class="card-action">
|
||||
<a class="btn" href="{{url_for('auth.register')}}">Register</a>
|
||||
<span class="card-title">Reset Your Password</span>
|
||||
<form method="POST">
|
||||
{{ form.hidden_tag() }}
|
||||
<div class="input-field">
|
||||
{{ form.email(class='validate', type='email') }}
|
||||
{{ form.email.label }}
|
||||
</div>
|
||||
<div class="card-action">
|
||||
{{ form.submit(class='btn right') }}
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -5,14 +5,14 @@ basedir = os.path.abspath(os.path.dirname(__file__))
|
||||
|
||||
|
||||
class Config:
|
||||
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.uni-bielefeld.de')
|
||||
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.gmail.com')
|
||||
MAIL_PORT = int(os.environ.get('MAIL_PORT', '587'))
|
||||
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
|
||||
['true', 'on', '1']
|
||||
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
|
||||
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
|
||||
OPAQUE_MAIL_SUBJECT_PREFIX = '[Opaque]'
|
||||
OPAQUE_MAIL_SENDER = 'Opaque Admin <inf_sfb1288@uni-bielefeld.de>'
|
||||
OPAQUE_MAIL_SENDER = 'Opaque Development <dev.opaque@gmail.com>'
|
||||
SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string'
|
||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user