-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontroller.py
More file actions
112 lines (87 loc) · 2.74 KB
/
Copy pathcontroller.py
File metadata and controls
112 lines (87 loc) · 2.74 KB
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
import web
from web.db import register_database
from web.webapi import data
from Models import RegisterModel, LoginModel, Posts
web.config.debug = False
urls = (
'/', 'Home',
'/register','Register',
'/postregistration', 'PostRegistration',
'/login', 'Login',
'/check-login', 'CheckLogin',
'/logout', 'Logout',
'/post-activity', 'PostActivity',
'/profile/(.*)/info', 'userInfo',
'/profile/(.*)', 'Profile',
'/settings/(.*)', 'Settings',
'/update-settings', 'updateSettings'
)
app = web.application(urls, globals())
session = web.session.Session(app,web.session.DiskStore("session"), initializer={"user": None})
session_data = session._initializer
render = web.template.render('Viewes\Templates', base='MainLayout', globals={"session": session_data, "current_user": session_data["user"]})
class Home:
def GET(self):
post_model = Posts.Posts()
posts = post_model.get_all_post()
return render.Home(posts)
class Register:
def GET(self):
return render.Register()
class PostRegistration:
def POST(self):
data = web.input()
reg_model = RegisterModel.RegisterModel()
reg_model.insert_user(data)
return data.username
class Login:
def GET(self):
return render.Login()
class CheckLogin:
def POST(self):
data = web.input()
login = LoginModel.LoginModel()
isCorrect = login.check_user(data)
if isCorrect:
session_data["user"] = isCorrect
return isCorrect
return "error"
class Logout:
def GET(self):
session["user"] = None
session_data["user"] = None
# session.kill()
return "success"
class PostActivity:
def POST(self):
data = web.input()
data.username = session_data['user']['username']
post_model = Posts.Posts()
post_model.insert_post(data)
return "success"
class Profile:
def GET(self, user):
post_model = Posts.Posts()
posts = post_model.get_user_post(user)
return render.Profile(posts,user)
class userInfo:
def GET(self,user):
Login = LoginModel.LoginModel()
user_info = Login.get_profile(user)
return render.Info(user_info)
class Settings:
def GET(self, user):
Login = LoginModel.LoginModel()
user_info = Login.get_profile(user)
return render.Settings(user_info)
class updateSettings:
def POST(self):
data = web.input()
data.username = session_data['user']['username']
Settings_model = LoginModel.LoginModel()
if Settings_model.update_info(data):
return "success"
else:
return "A fatal error occured"
if __name__ == "__main__":
app.run()