from flask import render_template, request, jsonify, redirect from flask_login import current_user from common.utils.nginx_utils import prefixed_url_for def not_found_error(error): if not current_user.is_authenticated: return redirect(prefixed_url_for('security.login')) return render_template('error/404.html'), 404 def internal_server_error(error): if not current_user.is_authenticated: return redirect(prefixed_url_for('security.login')) return render_template('error/500.html'), 500 def not_authorised_error(error): if not current_user.is_authenticated: return redirect(prefixed_url_for('security.login')) return render_template('error/401.html') def access_forbidden(error): if not current_user.is_authenticated: return redirect(prefixed_url_for('security.login')) return render_template('error/403.html') def register_error_handlers(app): app.register_error_handler(404, not_found_error) app.register_error_handler(500, internal_server_error) app.register_error_handler(401, not_authorised_error) app.register_error_handler(403, not_authorised_error)