def create_app(): app = flask.Flask(__name__) app.config.from_object('config') init_db(app) api.init_app(app) security = Security() security.init_app(app, users) principals = Principal() principals.init_app(app) configure_uploads(app, logos) from app.views import menu, bp menu.init_app(app) app.register_blueprint(bp) if False: login_manager = LoginManager(app) @login_manager.request_loader def load_user_from_request(request): if request.authorization: email, password = request.authorization.username, request.authorization.password user = User.query.filter_by(email=unicode(email)).first() if user is not None: if verify_password(password, user.password): return user @identity_loaded.connect_via(app) def on_identity_loaded(sender, identity): if not isinstance(identity, AnonymousIdentity): identity.provides.add(UserNeed(identity.id)) for role in current_user.roles: identity.provides.add(RoleNeed(role.name)) @principals.identity_loader def read_identity_from_flask_login(): if current_user.is_authenticated(): return Identity(current_user.id) return AnonymousIdentity() return app
app.config['SQLALCHEMY_DATABASE_URI']='mysql://root:@127.0.0.1/flask' db.init_app(app) #with app.test_request_context(): # load_db(db) login_manager = LoginManager() login_manager.init_app(app) @login_manager.user_loader def user_loader(username): return user.query.filter_by(username=username).first() principal = Principal() principal.init_app(app) administrator_permission = Permission(RoleNeed('administrator')) team_member_permission = Permission(RoleNeed('team member')) project_manager_permission = Permission(RoleNeed('project manager')) client_permission = Permission(RoleNeed('client')) @identity_loaded.connect_via(app) def on_identity_loaded(sender, identity): identity.user = current_user if hasattr(current_user, 'rolename'): identity.provides.add(RoleNeed(current_user.rolename)) class UserSchema(Schema): class Meta:
RoleNeed, UserNeed) from flask_restful import abort from sqlalchemy import exc from steerclear import login_manager, app from steerclear.utils import cas from steerclear.utils.permissions import (admin_permission, student_permission, AccessRideNeed) from forms import * from models import * # setup login blueprint login_bp = Blueprint('login', __name__) # setup flask-principal principal = Principal() principal.init_app(app) """ create_roles ------------ Function called before app processes first request. Creates the admin and student Roles if they do not already exist """ @app.before_first_request def create_roles(): # create student Role if Role.query.filter_by(name='student').first() is None: role = Role(name='student', description='Student Role') db.session.add(role)
def create_app(): app = flask.Flask(__name__) app.config.from_object("config") init_db(app) api.init_app(app) security = Security() security.init_app(app, users) principals = Principal() principals.init_app(app) configure_uploads(app, logos) from app.views import menu, bp from app.signals import init_signals init_signals(app) menu.init_app(app) app.register_blueprint(bp) if False: login_manager = LoginManager(app) @login_manager.request_loader def load_user_from_request(request): if request.authorization: email, password = request.authorization.username, request.authorization.password user = User.query.filter_by(email=unicode(email)).first() if user is not None: if verify_password(password, user.password): return user @identity_loaded.connect_via(app) def on_identity_loaded(sender, identity): if not isinstance(identity, AnonymousIdentity): identity.provides.add(UserNeed(identity.id)) for role in current_user.roles: identity.provides.add(RoleNeed(role.name)) @principals.identity_loader def read_identity_from_flask_login(): if current_user.is_authenticated(): return Identity(current_user.id) return AnonymousIdentity() @app.after_request def somefunc(response): if "cid" not in flask.request.cookies: cid = str(uuid.uuid4()) expires = datetime.datetime.now() + datetime.timedelta(days=365 * 2) response.set_cookie("cid", cid, expires=expires) return response return app