1
|
|
|
from flask import Flask, render_template, redirect, url_for |
2
|
|
|
from flask_sqlalchemy import SQLAlchemy |
3
|
|
|
|
4
|
|
|
app = Flask(__name__) |
5
|
|
|
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///bday.db' |
6
|
|
|
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False |
7
|
|
|
db = SQLAlchemy(app) |
8
|
|
|
|
9
|
|
|
|
10
|
|
|
# DB Model |
11
|
|
|
class User(db.Model): |
12
|
|
|
id = db.Column(db.Integer, primary_key=True, autoincrement=True) |
13
|
|
|
pseudo = db.Column(db.String(32)) |
14
|
|
|
password = db.Column(db.String(128)) |
15
|
|
|
birthday = db.Column(db.Date, default=None) |
16
|
|
|
|
17
|
|
|
|
18
|
|
|
class Birthday(db.Model): |
19
|
|
|
id = db.Column(db.Integer, primary_key=True) |
20
|
|
|
user_id = db.Column(db.Integer, primary_key=True) |
21
|
|
|
person_name = db.Column(db.String(32)) |
22
|
|
|
person_birthday = db.Column(db.Date) |
23
|
|
|
|
24
|
|
|
|
25
|
|
|
@app.route('/', methods=('GET', 'POST')) |
26
|
|
|
def index_page(): |
27
|
|
|
return render_template('index.jinja2') |
28
|
|
|
|
29
|
|
|
|
30
|
|
|
@app.route('/auth/login', methods=('GET', 'POST')) |
31
|
|
|
def login_page(): |
32
|
|
|
return render_template('auth/login.jinja2') |
33
|
|
|
|
34
|
|
|
|
35
|
|
|
@app.route('/auth/register', methods=('GET', 'POST')) |
36
|
|
|
def register_page(): |
37
|
|
|
return render_template('auth/register.jinja2') |
38
|
|
|
|
39
|
|
|
|
40
|
|
|
@app.route('/dashboard') |
41
|
|
|
def dashboard_page(): |
42
|
|
|
return render_template('dashboard.jinja2') |
43
|
|
|
|
44
|
|
|
|
45
|
|
|
@app.route('/auth/delete', methods=('GET', 'POST')) |
46
|
|
|
def delete_account_page(): |
47
|
|
|
return render_template('auth/delete.jinja2') |
48
|
|
|
|
49
|
|
|
|
50
|
|
|
@app.route('/legal') |
51
|
|
|
def legal_page(): |
52
|
|
|
return render_template('legal.jinja2') |
53
|
|
|
|
54
|
|
|
|
55
|
|
|
@app.route('/logout/') |
56
|
|
|
def logout(): |
57
|
|
|
return redirect(url_for('index')) |
58
|
|
|
|
59
|
|
|
|
60
|
|
|
if __name__ == '__main__': |
61
|
|
|
db.create_all() |
62
|
|
|
app.run(debug=True) |
63
|
|
|
|