36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
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)
|
|
|