# -*- coding: utf-8 -*- """ :author: Grey Li (李辉) :url: http://greyli.com :copyright: © 2018 Grey Li :license: MIT, see LICENSE for more details. """ from flask_avatars import Avatars from flask_bootstrap import Bootstrap from flask_dropzone import Dropzone from flask_login import LoginManager, AnonymousUserMixin from flask_mail import Mail from flask_moment import Moment from flask_sqlalchemy import SQLAlchemy from flask_whooshee import Whooshee from flask_wtf import CSRFProtect bootstrap = Bootstrap() db = SQLAlchemy() login_manager = LoginManager() mail = Mail() dropzone = Dropzone() moment = Moment() whooshee = Whooshee() avatars = Avatars() csrf = CSRFProtect() @login_manager.user_loader def load_user(user_id): from albumy.models import User user = User.query.get(int(user_id)) return user login_manager.login_view = 'auth.login' # login_manager.login_message = 'Your custom message' login_manager.login_message_category = 'warning' login_manager.refresh_view = 'auth.re_authenticate' # login_manager.needs_refresh_message = 'Your custom message' login_manager.needs_refresh_message_category = 'warning' class Guest(AnonymousUserMixin): def can(self, permission_name): return False @property def is_admin(self): return False login_manager.anonymous_user = Guest