36 lines
1.1 KiB
Python

from flask import Flask
from flask import globals
from flask import render_template
from datetime import timedelta
from app.admin import m_admin
from app.auth import m_auth
from app.print import m_print
from app.config import _SECRET_SESSION_KEY as SESSION_KEY
def get_app():
app = Flask(__name__)
app.secret_key = SESSION_KEY
app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=30)
app.config['MAX_CONTENT_LENGTH'] = 10 * 1024 * 1024 # 10mb
@app.errorhandler(Exception)
def e_handler(e):
code = getattr(e, 'code', 500)
if code.__eq__(404):
return app.redirect('/')
return render_template('error.html', error=e), code
app.register_blueprint(m_print)
app.register_blueprint(m_auth, url_prefix='/auth')
app.register_blueprint(m_admin, url_prefix='/admin')
from app._tools.database import DataManager
from app._tools.database import SessionManager
DataManager.init_table()
DataManager.check_admins()
SessionManager.init_table()
return app