Update login

Add profile
This commit is contained in:
RemiZOffAlex
2019-04-26 19:38:23 +03:00
parent bba7df52d2
commit 1e9ac7eb97
17 changed files with 237 additions and 46 deletions

45
myapp/ns_login/views.py Normal file
View File

@@ -0,0 +1,45 @@
__author__ = 'RemiZOffAlex'
__copyright__ = '(c) RemiZOffAlex'
__license__ = 'MIT'
__email__ = 'remizoffalex@mail.ru'
__url__ = 'https://remizoffalex.ru'
from flask import render_template, escape, request, session, redirect
from .. import app, lib, models
from . import forms
@app.route('/login', methods=['GET', 'POST'])
def login():
"""
Логин
"""
pagedata = {}
pagedata['form'] = forms.LoginForm(request.form)
if request.method == 'POST':
if pagedata['form'].validate():
user = models.db_session.query(
models.User
).filter(
models.User.name == escape(pagedata['form'].username.data),
models.User.password == lib.get_hash_password(
escape(pagedata['form'].password.data),
app.config['SECRET_KEY']
),
models.User.disabled == False
).first()
if user:
session['logged_in'] = True
session['user_id'] = user.id
return redirect('/', code=302)
body = render_template('login.html', pagedata=pagedata)
return body
@app.route('/logout')
def logout():
session.pop('logged_in', None)
session.pop('user_id', None)
return redirect("/", code=302)