aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Schadt <kingdread@gmx.de>2025-05-06 21:52:19 +0200
committerDaniel Schadt <kingdread@gmx.de>2025-05-06 21:52:19 +0200
commit133252b6b975b4510df6d7454632770768da9682 (patch)
tree9c16877790ad8f72e120df55d1ede9d28ff099e0
parent6d3a6a12998ea3219eb7f7c51541ead668411466 (diff)
downloadfietsboek-133252b6b975b4510df6d7454632770768da9682.tar.gz
fietsboek-133252b6b975b4510df6d7454632770768da9682.tar.bz2
fietsboek-133252b6b975b4510df6d7454632770768da9682.zip
new 403 page
-rw-r--r--fietsboek/locale/de/LC_MESSAGES/messages.mobin16373 -> 16599 bytes
-rw-r--r--fietsboek/locale/de/LC_MESSAGES/messages.po14
-rw-r--r--fietsboek/locale/en/LC_MESSAGES/messages.mobin15327 -> 15551 bytes
-rw-r--r--fietsboek/locale/en/LC_MESSAGES/messages.po14
-rw-r--r--fietsboek/locale/fietslog.pot14
-rw-r--r--fietsboek/static/NoEntry.svg37
-rw-r--r--fietsboek/templates/403.jinja216
-rw-r--r--fietsboek/views/errors.py32
-rw-r--r--fietsboek/views/notfound.py19
9 files changed, 124 insertions, 22 deletions
diff --git a/fietsboek/locale/de/LC_MESSAGES/messages.mo b/fietsboek/locale/de/LC_MESSAGES/messages.mo
index fdea500..bda8bef 100644
--- a/fietsboek/locale/de/LC_MESSAGES/messages.mo
+++ b/fietsboek/locale/de/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/fietsboek/locale/de/LC_MESSAGES/messages.po b/fietsboek/locale/de/LC_MESSAGES/messages.po
index dfd62ff..b621d1c 100644
--- a/fietsboek/locale/de/LC_MESSAGES/messages.po
+++ b/fietsboek/locale/de/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2025-04-25 21:36+0200\n"
+"POT-Creation-Date: 2025-05-06 21:46+0200\n"
"PO-Revision-Date: 2022-07-02 17:35+0200\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language: de\n"
@@ -69,6 +69,18 @@ msgstr "Maximalgeschwindigkeit"
msgid "tooltip.table.avg_speed"
msgstr "Durchschnittsgeschwindigkeit"
+#: fietsboek/templates/403.jinja2:5
+msgid "403.title"
+msgstr "Zugang verboten"
+
+#: fietsboek/templates/403.jinja2:9
+msgid "403.no_access"
+msgstr "Du hast keinen Zugang zu dieser Ressource."
+
+#: fietsboek/templates/403.jinja2:12
+msgid "403.try_log_in"
+msgstr "Falls Du Zugang haben solltest, stelle sicher, dass du korrekt angemeldet bist."
+
#: fietsboek/templates/404.jinja2:5
msgid "404.title"
msgstr "Sackgasse"
diff --git a/fietsboek/locale/en/LC_MESSAGES/messages.mo b/fietsboek/locale/en/LC_MESSAGES/messages.mo
index 316dde9..7b6e259 100644
--- a/fietsboek/locale/en/LC_MESSAGES/messages.mo
+++ b/fietsboek/locale/en/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/fietsboek/locale/en/LC_MESSAGES/messages.po b/fietsboek/locale/en/LC_MESSAGES/messages.po
index 53160f2..7cc4b66 100644
--- a/fietsboek/locale/en/LC_MESSAGES/messages.po
+++ b/fietsboek/locale/en/LC_MESSAGES/messages.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2025-04-25 21:36+0200\n"
+"POT-Creation-Date: 2025-05-06 21:46+0200\n"
"PO-Revision-Date: 2023-04-03 20:42+0200\n"
"Last-Translator: \n"
"Language: en\n"
@@ -69,6 +69,18 @@ msgstr "Max Speed"
msgid "tooltip.table.avg_speed"
msgstr "Average Speed"
+#: fietsboek/templates/403.jinja2:5
+msgid "403.title"
+msgstr "No entry"
+
+#: fietsboek/templates/403.jinja2:9
+msgid "403.no_access"
+msgstr "You are not allowed to access this resource."
+
+#: fietsboek/templates/403.jinja2:12
+msgid "403.try_log_in"
+msgstr "If you should have access, make sure you are logged in with the right credentials."
+
#: fietsboek/templates/404.jinja2:5
msgid "404.title"
msgstr "Dead end"
diff --git a/fietsboek/locale/fietslog.pot b/fietsboek/locale/fietslog.pot
index 80a5c47..f8e3670 100644
--- a/fietsboek/locale/fietslog.pot
+++ b/fietsboek/locale/fietslog.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2025-04-25 21:36+0200\n"
+"POT-Creation-Date: 2025-05-06 21:46+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -65,6 +65,18 @@ msgstr ""
msgid "tooltip.table.avg_speed"
msgstr ""
+#: fietsboek/templates/403.jinja2:5
+msgid "403.title"
+msgstr ""
+
+#: fietsboek/templates/403.jinja2:9
+msgid "403.no_entry"
+msgstr ""
+
+#: fietsboek/templates/403.jinja2:12
+msgid "403.try_log_in"
+msgstr ""
+
#: fietsboek/templates/404.jinja2:5
msgid "404.title"
msgstr ""
diff --git a/fietsboek/static/NoEntry.svg b/fietsboek/static/NoEntry.svg
new file mode 100644
index 0000000..1cc18a4
--- /dev/null
+++ b/fietsboek/static/NoEntry.svg
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" width="600.99628" height="600.99628">
+ <defs>
+ <path id="a" d="M23.809 456.512h.051v-.047h-.051v.047z"/>
+ <path id="b" d="M23.809 456.465v.047l.05-.047h-.05zm.05 0-.05.047v-.047h.05z"/>
+ <path id="c" d="M23.859 456.465h-.05.023v.047l.027-.047z"/>
+ <path id="d" d="M23.809 456.465v.047-.047l.05.047-.05-.047z"/>
+ <path id="e" d="M23.859 456.512v-.047h-.05l.05.047z"/>
+ </defs>
+ <g transform="matrix(1.25 0 0 -1.25 0 600.99628)">
+ <path fill="#fff" d="M480.398 240.399c0-132.551-107.449-240-240-240-132.55 0-240 107.449-240 240 0 132.55 107.45 240 240 240 132.551 0 240-107.45 240-240z"/>
+ <path fill="#c1121c" d="M240.402 472.402c-127.75 0-232-104.25-232-232s104.25-232 232-232c127.746 0 232 104.25 232 232s-104.254 232-232 232zm-208-196h416v-72h-416v72z"/>
+ <path d="M240.398 480.797C107.633 480.797 0 373.164 0 240.399 0 107.633 107.633 0 240.398 0c132.766 0 240.399 107.633 240.399 240.399 0 132.765-107.633 240.398-240.399 240.398zm0-.398c132.551 0 240-107.45 240-240 0-132.551-107.449-240-240-240-132.55 0-240 107.449-240 240 0 132.55 107.45 240 240 240zM23.832 456.512v-.024h-.023l.023.024z"/>
+ <path d="M23.809 456.512h.023v-.023h-.023v.023z"/>
+ <path d="M23.809 456.488v.024l.023-.024h-.023zm.023 0-.023.024v-.024h.023z"/>
+ <path d="M23.859 456.488h-.05.023v.024l.027-.024z"/>
+ <path d="M23.809 456.488v.024-.024l.023.024-.023-.024z"/>
+ <path d="M23.809 456.512h.023v-.023h-.023v.023zm.05 0v-.047h-.05l.05.047z"/>
+ <use xlink:href="#a"/>
+ <use xlink:href="#b"/>
+ <use xlink:href="#c"/>
+ <use xlink:href="#d"/>
+ <use xlink:href="#a"/>
+ <use xlink:href="#e"/>
+ <use xlink:href="#a"/>
+ <use xlink:href="#b"/>
+ <use xlink:href="#c"/>
+ <use xlink:href="#d"/>
+ <use xlink:href="#a"/>
+ <use xlink:href="#e"/>
+ <use xlink:href="#a"/>
+ <use xlink:href="#b"/>
+ <use xlink:href="#c"/>
+ <use xlink:href="#d"/>
+ <use xlink:href="#a"/>
+ </g>
+</svg> \ No newline at end of file
diff --git a/fietsboek/templates/403.jinja2 b/fietsboek/templates/403.jinja2
new file mode 100644
index 0000000..9f4478e
--- /dev/null
+++ b/fietsboek/templates/403.jinja2
@@ -0,0 +1,16 @@
+{% extends "layout.jinja2" %}
+
+{% block content %}
+<div class="container">
+ <h1>{{ _("403.title") }}</h1>
+ <div style="text-align: center;">
+ <img src="{{ request.static_url('fietsboek:static/NoEntry.svg') }}" style="width: min(100%, 300px); margin: auto;">
+ <p>
+ {{ _("403.no_access") }}
+ </p>
+ <p>
+ {{ _("403.try_log_in") }}
+ </p>
+ </div>
+</div>
+{% endblock content %}
diff --git a/fietsboek/views/errors.py b/fietsboek/views/errors.py
new file mode 100644
index 0000000..39af14e
--- /dev/null
+++ b/fietsboek/views/errors.py
@@ -0,0 +1,32 @@
+"""Error views."""
+
+from pyramid.view import forbidden_view_config, notfound_view_config
+
+
+@notfound_view_config(renderer="fietsboek:templates/404.jinja2")
+def notfound_view(request):
+ """Renders the 404 response.
+
+ :param request: The Pyramid request.
+ :type request: pyramid.request.Request
+ :return: The HTTP response.
+ :rtype: pyramid.response.Response
+ """
+ request.response.status = 404
+ return {}
+
+
+@forbidden_view_config(renderer="fietsboek:templates/403.jinja2")
+def forbidden_view(request):
+ """Renders the 403 response.
+
+ :param request: The Pyramid request.
+ :type request: pyramid.request.Request
+ :return: The HTTP response.
+ :rtype: pyramid.response.Response
+ """
+ request.response.status = 403
+ return {}
+
+
+__all__ = ["notfound_view", "forbidden_view"]
diff --git a/fietsboek/views/notfound.py b/fietsboek/views/notfound.py
deleted file mode 100644
index 2ec6c6c..0000000
--- a/fietsboek/views/notfound.py
+++ /dev/null
@@ -1,19 +0,0 @@
-"""Error views."""
-
-from pyramid.view import notfound_view_config
-
-
-@notfound_view_config(renderer="fietsboek:templates/404.jinja2")
-def notfound_view(request):
- """Renders the 404 response.
-
- :param request: The Pyramid request.
- :type request: pyramid.request.Request
- :return: The HTTP response.
- :rtype: pyramid.response.Response
- """
- request.response.status = 404
- return {}
-
-
-__all__ = ["notfound_view"]