Add recent news header to boards and posts

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
2022-07-19 18:59:25 -07:00
parent d15816fdc4
commit b2cb1536c1
5 changed files with 38 additions and 3 deletions

View File

@@ -165,6 +165,10 @@ th {
font-size: small; font-size: small;
} }
.news_recent {
font-size: smaller;
}
/* Misc */ /* Misc */
a:link { a:link {

View File

@@ -16,6 +16,18 @@
<div class="column">&nbsp;</div> <div class="column">&nbsp;</div>
</div> </div>
<hr /> <hr />
{# recent news #}
<div class="row">
<div class="column">&nbsp;</div>
<div class="column news_recent">
<h3 style="text-align: center;">Recent news</h3>
<hr />
{% include "board/news_snippet.html" %}
<hr />
</div>
<div class="column">&nbsp;</div>
</div>
<hr />
{# post creation form #} {# post creation form #}
<div class="row"> <div class="row">
<div class="column">&nbsp;</div> <div class="column">&nbsp;</div>

View File

@@ -17,7 +17,7 @@
<div class="column">&nbsp;</div> <div class="column">&nbsp;</div>
<div class="column"> <div class="column">
{% for post in object_list %} {% for post in object_list %}
<div class="row"> <div id="{{post.id}}" class="row">
<section> <section>
<h3>{{post.title}}</h3> <h3>{{post.title}}</h3>
<header class="news_header"> <header class="news_header">

View File

@@ -19,6 +19,18 @@
<div class="column">&nbsp;</div> <div class="column">&nbsp;</div>
</div> </div>
<hr /> <hr />
{# recent news #}
<div class="row">
<div class="column">&nbsp;</div>
<div class="column news_recent">
<h3 style="text-align: center;">Recent news</h3>
<hr />
{% include "board/news_snippet.html" %}
<hr />
</div>
<div class="column">&nbsp;</div>
</div>
<hr />
{# post creation form #} {# post creation form #}
<div class="row"> <div class="row">
<div class="column">&nbsp;</div> <div class="column">&nbsp;</div>

View File

@@ -83,6 +83,13 @@ class BoardMixin:
return get_object_or_404(Board, url=self.kwargs["url"]) # type: ignore return get_object_or_404(Board, url=self.kwargs["url"]) # type: ignore
class NewsSnippetMixin:
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context["news"] = NewsPost.objects.order_by("-id")[:3]
return context
class CreateView(BoardMixin, edit.CreateView): class CreateView(BoardMixin, edit.CreateView):
""" """
Helper class that sets a few variables for posts and check against bans. Helper class that sets a few variables for posts and check against bans.
@@ -107,7 +114,7 @@ class CreateView(BoardMixin, edit.CreateView):
return super(CreateView, self).dispatch(request, *args, **kwargs) return super(CreateView, self).dispatch(request, *args, **kwargs)
class BoardView(BoardMixin, TemplateView): class BoardView(NewsSnippetMixin, BoardMixin, TemplateView):
template_name = "board/board_detail.html" template_name = "board/board_detail.html"
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
@@ -234,7 +241,7 @@ class ReplyCreateView(CreateView):
return reverse("board:post_success") + "?" + query.urlencode() return reverse("board:post_success") + "?" + query.urlencode()
class PostView(TemplateView): class PostView(NewsSnippetMixin, TemplateView):
template_name = "board/post_detail.html" template_name = "board/post_detail.html"
def get_context_data(self, **kwargs): def get_context_data(self, **kwargs):