From bdfa7b731ca22b4c5c4b76ea6d61fdbf7a9538ad Mon Sep 17 00:00:00 2001
From: Gabriel Augendre
Date: Tue, 18 Aug 2020 20:44:51 +0200
Subject: [PATCH] Implement messages framework
---
articles/static/style.css | 55 ++++++++++++++++---
.../templates/articles/article_detail.html | 8 ++-
articles/templates/articles/base.html | 2 +-
articles/views/html.py | 8 ++-
4 files changed, 60 insertions(+), 13 deletions(-)
diff --git a/articles/static/style.css b/articles/static/style.css
index 82bb89d..b14f2de 100644
--- a/articles/static/style.css
+++ b/articles/static/style.css
@@ -6,6 +6,12 @@
--background: #ffffff;
--background2: #f7f7f7;
--background3: #d0d0d0;
+ --success-background: #d4edda;
+ --success-text: #155724;
+ --error-background: #f8d7da;
+ --error-text: #721c24;
+ --warning-background: #fff3cd;
+ --warning-text: #856404;
}
html {
@@ -40,12 +46,6 @@ a {
border-bottom: .3ex solid var(--accent);
}
-a:hover, a:focus {
- text-decoration: none;
- background-color: var(--accent);
- color: var(--background);
-}
-
.article-list h2 a {
border-color: transparent;
}
@@ -140,8 +140,12 @@ tr:hover {
vertical-align: 15%;
}
-form .helptext {
+.helptext {
+ color: var(--main3);
font-size: 80%;
+}
+
+.helptext a {
color: var(--main3);
}
@@ -173,8 +177,9 @@ form button[type=submit] {
cursor: pointer;
}
-form table tr.error, .errorlist {
- color: red;
+form table tr.error, form table tr.error .helptext, .errorlist {
+ color: var(--error-text);
+ background-color: var(--error-background);
}
.errorlist {
@@ -205,6 +210,32 @@ form table tr.error, .errorlist {
color: var(--main3);
}
+.messages p {
+ background-color: var(--background2);
+ padding: .5ex 1ex;
+}
+
+.messages .error {
+ background-color: var(--error-background);
+ color: var(--error-text);
+}
+
+.messages .success {
+ background-color: var(--success-background);
+ color: var(--success-text);
+}
+
+.messages .warning {
+ background-color: var(--warning-background);
+ color: var(--warning-text);
+}
+
+a:hover, a:focus {
+ text-decoration: none;
+ background-color: var(--accent);
+ color: var(--background);
+}
+
@media (prefers-color-scheme: dark) {
:root {
--accent: #226997;
@@ -213,6 +244,12 @@ form table tr.error, .errorlist {
--main3: #b1b1b1;
--background: #111111;
--background2: #282828;
+ --success-background: #155724;
+ --success-text: #d4edda;
+ --error-background: #721c24;
+ --error-text: #f8d7da;
+ --warning-background: #856404;
+ --warning-text: #fff3cd;
}
img {
diff --git a/articles/templates/articles/article_detail.html b/articles/templates/articles/article_detail.html
index 9b0f2d5..38e28fc 100644
--- a/articles/templates/articles/article_detail.html
+++ b/articles/templates/articles/article_detail.html
@@ -19,7 +19,8 @@
{{ comment.username }} |
{{ comment.created_at|date:"DATETIME_FORMAT" }}
- {% include "articles/admin_link_snippet.html" with article=comment %}
+
+ {% include "articles/admin_link_snippet.html" with article=comment %}
{{ comment.content|linebreaksbr }}
@@ -34,6 +35,11 @@
{{ form.as_table }}
Submit
+
+ Your comment may be removed if it's not respectful, on topic or spammy.
+ If you feel I've made a mistake with your comment, please
+ send me a message !
+
{% endblock %}
diff --git a/articles/templates/articles/base.html b/articles/templates/articles/base.html
index a5fa43a..40a7850 100644
--- a/articles/templates/articles/base.html
+++ b/articles/templates/articles/base.html
@@ -31,7 +31,7 @@
{% if messages %}
{% for message in messages %}
-
{{ message }}
+
{{ message|safe }}
{% endfor %}
{% endif %}
diff --git a/articles/views/html.py b/articles/views/html.py
index 49497d4..d392682 100644
--- a/articles/views/html.py
+++ b/articles/views/html.py
@@ -75,7 +75,8 @@ class ArticleDetailView(FormMixin, generic.DetailView):
def form_invalid(self, form):
messages.error(
- self.request, "Your comment couldn't be saved, see the form below."
+ self.request,
+ 'Your comment couldn\'t be saved, see the form below .',
)
return super().form_invalid(form)
@@ -83,7 +84,10 @@ class ArticleDetailView(FormMixin, generic.DetailView):
comment = form.save(commit=False)
comment.article = self.object
comment.save()
- messages.success(self.request, "Comment successfully saved.")
+ messages.success(
+ self.request,
+ f'Comment successfully saved, you can check it below .',
+ )
return super().form_valid(form)
def get_success_url(self):