-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrun.py
76 lines (69 loc) · 2.16 KB
/
run.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
#!/usr/bin/python
# -*- coding: utf-8 -*-
import ConfigParser
from flask import Flask
from student import Student
from misc import Misc
from lesson import Lesson
from invoice import Invoice
# init config
config = ConfigParser.SafeConfigParser()
config.read('config.ini')
app = Flask(config.get('dancebo', 'app_name'))
app.secret_key = config.get('dancebo', 'secret_key')
debug = bool(config.get('dancebo', 'debug'))
password = config.read('debug_pass')
# route config
app.add_url_rule('/', 'home_redirect', redirect_to='/login')
# misc endpoints
misc = Misc()
app.add_url_rule('/home', view_func=misc.show_home, methods=['GET'])
app.add_url_rule('/login', view_func=misc.login, methods=['GET', 'POST'])
# student related endpoints
student = Student()
app.add_url_rule(
'/add_student', view_func=student.add_student, methods=['POST']
)
app.add_url_rule(
'/inscription', view_func=student.view_inscription, methods=['GET']
)
app.add_url_rule('/search', view_func=student.search, methods=['POST'])
app.add_url_rule('/cartes', view_func=student.cartes, methods=['GET'])
app.add_url_rule(
'/carte_detail/<int:student_id>', view_func=student.detail, methods=['GET']
)
# lesson related endpoints
lesson = Lesson()
app.add_url_rule('/presence', view_func=lesson.get_presence, methods=['GET'])
app.add_url_rule(
'/add_lesson', view_func=lesson.add_one, methods=['GET', 'POST']
)
app.add_url_rule(
'/chose_lesson', view_func=lesson.chose, methods=['GET', 'POST']
)
app.add_url_rule(
'/edit_lesson/<int:lesson_id>',
view_func=lesson.edit,
methods=['GET', 'POST']
)
app.add_url_rule(
'/add_presence/<int:lesson_id>',
view_func=lesson.add_presence,
methods=['GET', 'POST']
)
app.add_url_rule(
'/remove_presence', view_func=lesson.remove_presence, methods=['POST']
)
app.add_url_rule(
'/list_lessons', view_func=lesson.list_lessons, methods=['GET']
)
# invoices related endpoints
invoice = Invoice()
app.add_url_rule('/invoice', view_func=invoice.list_invoices, methods=['GET'])
app.add_url_rule(
'/edit_invoice/<int:student_id>/<int:lesson_id>',
view_func=invoice.edit_invoice,
methods=['GET', 'POST']
)
if __name__ == '__main__':
app.run(debug=debug)