diff --git a/aurweb/routers/errors.py b/aurweb/routers/errors.py index 3bdaeb9d..111d802a 100644 --- a/aurweb/routers/errors.py +++ b/aurweb/routers/errors.py @@ -1,17 +1,14 @@ from aurweb.templates import make_context, render_template -from aurweb import l10n async def not_found(request, exc): - _ = l10n.get_translator_for_request(request) - context = make_context(request, f"404 - {_('Page Not Found')}") - return render_template("errors/404.html", context) + context = make_context(request, "Page Not Found") + return render_template("errors/404.html", context, 404) async def service_unavailable(request, exc): - _ = l10n.get_translator_for_request(request) - context = make_context(request, "503 - {_('Service Unavailable')}") - return render_template("errors/503.html", context) + context = make_context(request, "Service Unavailable") + return render_template("errors/503.html", context, 503) # Maps HTTP errors to functions exceptions = { diff --git a/aurweb/routers/html.py b/aurweb/routers/html.py index ae08c764..50b62450 100644 --- a/aurweb/routers/html.py +++ b/aurweb/routers/html.py @@ -4,7 +4,7 @@ own modules and imported here. """ from http import HTTPStatus from urllib.parse import unquote -from fastapi import APIRouter, Form, Request +from fastapi import APIRouter, Form, Request, HTTPException from fastapi.responses import HTMLResponse, RedirectResponse from aurweb.templates import make_context, render_template @@ -48,3 +48,9 @@ async def index(request: Request): """ Homepage route. """ context = make_context(request, "Home") return render_template("index.html", context) + + +# A route that returns a error 503. For testing purposes. +@router.get("/raisefivethree", response_class=HTMLResponse) +async def raise_service_unavailable(request: Request): + raise HTTPException(status_code=503) diff --git a/templates/errors/404.html b/templates/errors/404.html index 0afdd2fa..4926aff6 100644 --- a/templates/errors/404.html +++ b/templates/errors/404.html @@ -1,8 +1,8 @@ {% extends 'partials/layout.html' %} {% block pageContent %} -
{% trans %}Sorry, the page you've requested does not exist.{% endtrans %}
{% trans %}Don't panic! This site is down due to maintenance. We will be back soon.{% endtrans %}