2019-07-14 01:20:35 +02:00
|
|
|
from flask import abort
|
|
|
|
from flask_login import UserMixin, LoginManager
|
|
|
|
|
|
|
|
login_manager = LoginManager()
|
2013-04-29 11:05:09 +02:00
|
|
|
|
2018-11-30 01:28:24 +01:00
|
|
|
|
2013-04-29 11:05:09 +02:00
|
|
|
class User(UserMixin):
|
2018-11-30 01:28:24 +01:00
|
|
|
def __init__(self, id, admin=False):
|
|
|
|
self.admin = admin
|
|
|
|
self.id = id
|
2013-04-29 11:05:09 +02:00
|
|
|
|
2018-12-05 01:10:40 +01:00
|
|
|
def __unicode__(self):
|
|
|
|
return u"{}".format(self.id)
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
return str(self.id)
|
|
|
|
|
2018-12-10 23:51:38 +01:00
|
|
|
@property
|
|
|
|
def is_admin(self):
|
|
|
|
return self.admin
|
|
|
|
|
2019-07-14 01:20:35 +02:00
|
|
|
|
2013-04-29 11:05:09 +02:00
|
|
|
admin_user = User("admin", True)
|
|
|
|
|
2018-11-30 01:28:24 +01:00
|
|
|
|
2013-04-29 11:05:09 +02:00
|
|
|
@login_manager.user_loader
|
|
|
|
def load_user(id):
|
2018-12-05 01:10:40 +01:00
|
|
|
if id == "admin":
|
2018-11-30 01:28:24 +01:00
|
|
|
return admin_user
|
2018-12-05 01:10:40 +01:00
|
|
|
return User(id)
|
2018-11-30 01:28:24 +01:00
|
|
|
|
2013-04-29 11:05:09 +02:00
|
|
|
|
|
|
|
@login_manager.unauthorized_handler
|
|
|
|
def unauthorized():
|
2018-11-30 01:28:24 +01:00
|
|
|
return abort(403)
|