-
Notifications
You must be signed in to change notification settings - Fork 0
/
auth.py
62 lines (48 loc) · 2.18 KB
/
auth.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
from flask import url_for, redirect, Blueprint, request, flash
from flask_login import login_user, logout_user
from models import SUP_Users
from app import db
auth = Blueprint('auth', __name__)
@auth.route('/login', methods=['POST'])
def login():
if request.method == 'POST':
username = request.form.get('inputUsername')
password = request.form.get('inputPassword')
user = SUP_Users.query.filter_by(username=username).first()
if user:
if user.password == password:
login_user(user, remember=True)
flash('Giriş Yapıldı!', category='success')
return redirect(url_for('views.home'))
else:
flash('Şifreniz Yanlış!', category='error')
return redirect(url_for('views.account'))
else:
flash('Kullanıcı Bulunamadı!', category='error')
return redirect(url_for('views.account'))
@auth.route('/register', methods=['POST'])
def register():
if request.method == 'POST':
username = request.form.get('inputUsernameNew')
password = request.form.get('inputPasswordNew')
user = SUP_Users.query.filter_by(username=username).first()
if user:
flash('Bu Kullanıcı Adı Mevcut!', category='error')
return redirect(url_for('views.account'))
elif len(username) > 20 or len(username) < 3:
flash('Kullanıcı adı 3 ile 20 karakter uzunluğunda olmalıdır!', category='error')
return redirect(url_for('views.account'))
elif len(password) > 20 or len(password) < 3:
flash('Şifreniz 3 ile 20 karakter uzunluğunda olmalıdır!', category='error')
return redirect(url_for('views.account'))
else:
new_user = SUP_Users(username=username, password=password)
db.session.add(new_user)
db.session.commit()
flash('Kayıt Olundu!', category='success')
login_user(new_user, remember=True)
return redirect(url_for('views.home'))
@auth.route('/logout')
def logout():
logout_user()
return redirect(url_for('views.home'))