diff --git a/server.py b/server.py index 8dfddf5f7b8308b228cce5f9b106f77057bfe104..9b08251012b1bc2d6116fa750298c510ef7f95d3 100644 --- a/server.py +++ b/server.py @@ -8,6 +8,7 @@ import sys import hashlib import random import sched +import traceback app = Flask(__name__) @@ -172,6 +173,12 @@ def handle_errors(endpoint, text, code, *errors, **epargs): def handle_not_found(e): return render_endpoint('index', 'Diese Seite existiert nicht!'), 404 +@app.errorhandler(500) +@app.errorhandler(Exception) +def handle_internal_error(e): + traceback.print_exc() + return render_template('500.html') + # debian ships jinja2 without this test... @app.template_test(name='equalto') def equalto(a,b): diff --git a/templates/500.html b/templates/500.html new file mode 100644 index 0000000000000000000000000000000000000000..f9d663de1875cbb46f4231d613d595c655ee52f5 --- /dev/null +++ b/templates/500.html @@ -0,0 +1,13 @@ +{% extends "base.html" %} +{% block content %} +<div class="panel panel-danger"> + <div class="panel-heading"> + <h1 class="panel-title">Interner Fehler (500)</h1> + </div> + <div class="row panel-body"> + <div class="col-xs-12"> + Es ist ein Fehler aufgetreten. + </div> + </div> +</div> +{% endblock %}