From 2da7634951e652c2afb63c5498a7dffc7e3b5f02 Mon Sep 17 00:00:00 2001 From: Eragonfr Date: Sun, 15 Apr 2018 22:07:03 +0200 Subject: [PATCH] =?UTF-8?q?gestion=20de=20plusieurs=20erreurs=20avec=20des?= =?UTF-8?q?=20messages=20diff=C3=A9rents?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/routes.py | 11 ++++++++++- app/templates/base/errors.html | 26 ++++++++++++++++++++++++++ app/templates/base/errors.html.j2 | 9 --------- 3 files changed, 36 insertions(+), 10 deletions(-) create mode 100644 app/templates/base/errors.html delete mode 100644 app/templates/base/errors.html.j2 diff --git a/app/routes.py b/app/routes.py index 4f8d287..7c7bcb6 100644 --- a/app/routes.py +++ b/app/routes.py @@ -60,9 +60,15 @@ def validation(): login_user(user, remember=form.remember_me.data) return render_template('validation.html', form = form) +@app.route('/error/') +@app.errorhandler(400) @app.errorhandler(401) +@app.errorhandler(403) @app.errorhandler(404) +@app.errorhandler(418) @app.errorhandler(500) +@app.errorhandler(501) +@app.errorhandler(503) def errors(error): form = LoginForm() if form.validate_on_submit(): @@ -71,4 +77,7 @@ def errors(error): flash('pseudo ou mot de passe invalide') return redirect(url_for('index')) login_user(user, remember=form.remember_me.data) - return render_template("base/errors.html.j2", error_code = error.code, form=form), error.code + try: + return render_template("base/errors.html.j2", error_code = error, form=form), error + except: + return render_template("base/errors.html.j2", error_code = error.code, form=form), error.code diff --git a/app/templates/base/errors.html b/app/templates/base/errors.html new file mode 100644 index 0000000..3d77bcd --- /dev/null +++ b/app/templates/base/errors.html @@ -0,0 +1,26 @@ +{% extends "base/container.html" %} + +{% block content %} +
+

Oups erreur {{ error_code }}

+ {% if error_code == 400 %} + Bad Request : Votre requète semble mal formée. + {% elif error_code == 401 %} + Unauthorized : Une authentification est nécessaire pour accéder à la ressource. +
+ Veuillez vous connecter à l'aide du panneau sur la gauche. + {% elif error_code == 403 %} + Forbidden : La page vous est interdit. + {% elif error_code == 404 %} + Not Found : La page n'existe pas ou plus, si vous avez rentré l'url à la main vérifiez de ne pas vous être trompé. + {% elif error_code == 418 %} + I’m a teapot : Je suis une théière + {% elif error_code == 500 %} + Internal Server Error : Erreur interne du serveur. Rassurez vous vous n'êtes pas en cause c'est sans doute un dévlopeur qui à fait l'imbécile. Si cette page s'affiche trop souvent essayez de contacter un administrateur par mail à devs@planet-casio.com. + {% elif error_code == 501 %} + Not Implemented : La fonctionnalité réclamée n'est pas supportée par le serveur. Désolé si cette fonctionnalité vous tient à cœur vous pouvez la proposer sur le forum. + {% elif error_code == 503 %} + Service Unavailable : Service temporairement indisponible ou en maintenance. Patientez! + {% endif %} +
+{% endblock %} diff --git a/app/templates/base/errors.html.j2 b/app/templates/base/errors.html.j2 deleted file mode 100644 index 7025f70..0000000 --- a/app/templates/base/errors.html.j2 +++ /dev/null @@ -1,9 +0,0 @@ -{% extends "base/container.html" %} - -{% block content %} -
-
-

Oups erreur {{ error_code }}

-
-
-{% endblock %}