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() SessionManager.init_table() return app