summaryrefslogtreecommitdiff
path: root/__init__.py
blob: 3b5f51dc7115d9cce16f72c4840d68e19643af3d (plain)
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
from flask import Flask
from flask_login import LoginManager
from . import db

def create_app():
    app = Flask(__name__)

    app.config['SECRET_KEY'] = 'secret-key-goes-here'

    # authorization-related routes 
    from .auth import auth as auth_blueprint
    # main routes
    from .main import main as main_blueprint

    app.register_blueprint(main_blueprint)
    app.register_blueprint(auth_blueprint)

    login_manager = LoginManager()
    login_manager.login_view = 'auth.login'
    login_manager.init_app(app)

    @login_manager.user_loader
    def load_user(user_id):
        # must return None in case no such user exists
        return db.get_user(user_id) 

    db.startup() 

    return app