forked from itucsdb1515/itucsdb1515
-
Notifications
You must be signed in to change notification settings - Fork 3
/
server.py
77 lines (67 loc) · 2.47 KB
/
server.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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import datetime
import os
import json
import re
from classes.user import User
from classes.operations.user_operations import user_operations
from classes.operations.database_init import database_initialization
from flask import render_template, request, session, redirect, url_for, flash
from config import app, login_required
import team_views
import player_views
import statistics_views
import countries_views
import transfers_views
app.secret_key = 'my preciousssss'
@app.route('/')
@login_required
def home_page():
now = datetime.datetime.now()
return render_template('home.html', current_time=now.ctime())
@app.route('/rules')
@login_required
def rules_page():
now = datetime.datetime.now()
return render_template('rules.html', current_time=now.ctime())
@app.route('/logout')
def logout():
session.pop('logged_in', None)
session.pop('admin', None)
session.pop('username', None)
flash('You were logged out')
return redirect (url_for('login_page'))
@app.route('/login', methods=['GET', 'POST'])
def login_page():
now = datetime.datetime.now()
error = None
if request.method == 'POST':
store = user_operations()
if request.form['submit']=='login':
result=store.get_user(request.form['username'], request.form['password'])
if result.role is '':
error = 'Invalid Credentials. Please try again.'
else:
session['logged_in'] = True
session['username'] = request.form['username'];
if result.role == 'admin':
session['admin'] = True
return redirect(url_for('home_page'))
else:
result=store.add_user(User(0,request.form['username_r'], request.form['password_r'],1,'',request.form['name'],request.form['surname'],request.form['birthdate']))
if result=='success':
session['logged_in'] = True
session['username'] = request.form['username_r'];
return redirect(url_for('home_page'))
return render_template('login.html', error=error, current_time=now.ctime())
@app.route('/init')
def init_db():
store = database_initialization()
store.init_db()
return redirect(url_for('home_page'))
if __name__ == '__main__':
VCAP_APP_PORT = os.getenv('VCAP_APP_PORT')
if VCAP_APP_PORT is not None:
port, debug = int(VCAP_APP_PORT), False
else:
port, debug = 5000, True
app.run(host='0.0.0.0', port=port, debug=debug)