From ff6473dddc56e533e5beb5b1217d1552a551803e Mon Sep 17 00:00:00 2001 From: andis Date: Mon, 24 Aug 2020 06:32:03 +0000 Subject: [PATCH] view fixes --- fet2020/fet2020/views.py | 9 ++-- fet2020/members/views.py | 4 ++ fet2020/posts/admin.py | 7 ++- fet2020/posts/models.py | 4 +- fet2020/templates/home.html | 53 ++++--------------- fet2020/templates/members/show_member.html | 0 .../posts/partials/_article_row.html | 15 ++++++ .../templates/posts/partials/_date_box.html | 10 ++++ .../templates/posts/partials/_posts_hero.html | 10 ++-- 9 files changed, 57 insertions(+), 55 deletions(-) create mode 100644 fet2020/templates/members/show_member.html create mode 100644 fet2020/templates/posts/partials/_article_row.html create mode 100644 fet2020/templates/posts/partials/_date_box.html diff --git a/fet2020/fet2020/views.py b/fet2020/fet2020/views.py index ce495b72..2ae8c34d 100644 --- a/fet2020/fet2020/views.py +++ b/fet2020/fet2020/views.py @@ -1,12 +1,13 @@ from django.shortcuts import render # from django.http import HttpResponse from collections import deque -from posts.models import Post - +from posts.models import Post, FetMeeting, Event +from django.utils import timezone +from django.db.models import Q def index(request): posts = deque(Post.article_objects.all()) - + date_today = timezone.now().date() def get_tags(lst): for p in lst: for t in list(p.tags.names()): @@ -20,7 +21,9 @@ def index(request): context = { 'posts': posts, + 'events': Post.objects.filter(is_event=True).filter(Q(event_start__gt=date_today)).order_by('-public_date').all(), 'featured_post': featured_post, + 'featured_post2': FetMeeting.objects.first(), 'tags_list': ", ".join(t) } diff --git a/fet2020/members/views.py b/fet2020/members/views.py index 5a892b76..2b5ec8d8 100644 --- a/fet2020/members/views.py +++ b/fet2020/members/views.py @@ -30,6 +30,10 @@ def show_job(request, slug=None): job=Job.objects.get(slug=slug) return render(request, 'members/show_job.html', {"job": job}) +def show_member(request, slug=None): + member=Member.objects.get() + return render(request, 'members/show_member.html', {"member": member}) + def list(request, filter=None): """ View for a list of members filtered or not diff --git a/fet2020/posts/admin.py b/fet2020/posts/admin.py index db3a3d74..f646487a 100644 --- a/fet2020/posts/admin.py +++ b/fet2020/posts/admin.py @@ -11,6 +11,9 @@ admin.site.unregister(auth.models.User) admin.site.unregister(auth.models.Group) admin.site.unregister(taggit.models.Tag) +def make_fetmeeting(modeladmin, request, queryset): + queryset.update(post_type ='F') +make_fetmeeting.short_description = "In eine Fachschaftssitzung konvertieren" class MyPostAdmin(admin.ModelAdmin): form = MyPostForm @@ -38,7 +41,7 @@ class MyEventAdmin(MyPostAdmin): form = MyEventForm model = Event list_display = ['title', 'subtitle', 'slug', 'event_start', 'public_date'] - + actions=[make_fetmeeting] admin.site.register(Event, MyEventAdmin) @@ -46,7 +49,7 @@ admin.site.register(Event, MyEventAdmin) class MyNewsAdmin(MyPostAdmin): form = MyNewsForm model = News - + admin.site.register(News, MyNewsAdmin) diff --git a/fet2020/posts/models.py b/fet2020/posts/models.py index fa4e5023..f4e87b09 100644 --- a/fet2020/posts/models.py +++ b/fet2020/posts/models.py @@ -34,7 +34,7 @@ class ArticleManager(models.Manager): regular fet meetings should not be contained in the news stream """ def get_queryset(self): - return super().get_queryset().filter(Q(post_type='E') | Q(post_type='N')) + return super().get_queryset().filter(Q(post_type='E') | Q(post_type='N')).order_by('-public_date') class NewsManager(models.Manager): @@ -48,7 +48,7 @@ class EventManager(models.Manager): regular fet meetings should not be contained in the news stream """ def get_queryset(self): - return super().get_queryset().filter(Q(is_event=True) & Q(post_type='E')) + return super().get_queryset().filter(Q(is_event=True) & ~Q(post_type='F')).order_by('-public_date') class FetMeetingManager(models.Manager): diff --git a/fet2020/templates/home.html b/fet2020/templates/home.html index 7343862e..049e80cf 100644 --- a/fet2020/templates/home.html +++ b/fet2020/templates/home.html @@ -32,36 +32,11 @@
{% with post=featured_post %} - - -
- -
-

{{post.title}}

- -

{{post.subtitle}}

- - - -
-
- -
+ {% include 'posts/partials/_article_row.html' %} + {% endwith %} + {% with post=featured_post2 %} + {% include 'posts/partials/_article_row.html' %} {% endwith %} - - -
- -
-

Nächste Fachschaftssitzung

- -

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Labore accusamus sint quas, odit, enim architecto officiis culpa!

- - - -
-
-
@@ -74,27 +49,19 @@
-
+
{% for post in posts %} {% include 'posts/partials/_posts_hero.html' %} {% endfor %}
-
-
- - - 16 - Apr - - Title - -
+
+ {% for post in events %} + {% include 'posts/partials/_date_box.html' %} + {% endfor %} +
-
- - {% endblock %} \ No newline at end of file diff --git a/fet2020/templates/members/show_member.html b/fet2020/templates/members/show_member.html new file mode 100644 index 00000000..e69de29b diff --git a/fet2020/templates/posts/partials/_article_row.html b/fet2020/templates/posts/partials/_article_row.html new file mode 100644 index 00000000..d6cf5ce3 --- /dev/null +++ b/fet2020/templates/posts/partials/_article_row.html @@ -0,0 +1,15 @@ + + +
+ +
+

{{post.title}}

+ +

{{post.subtitle}}

+ + + +
+
+ +
\ No newline at end of file diff --git a/fet2020/templates/posts/partials/_date_box.html b/fet2020/templates/posts/partials/_date_box.html new file mode 100644 index 00000000..4b3bc547 --- /dev/null +++ b/fet2020/templates/posts/partials/_date_box.html @@ -0,0 +1,10 @@ + +
+ + + 16 + Apr + + {{post.title}} + +
\ No newline at end of file diff --git a/fet2020/templates/posts/partials/_posts_hero.html b/fet2020/templates/posts/partials/_posts_hero.html index 8df42692..fa2d7843 100644 --- a/fet2020/templates/posts/partials/_posts_hero.html +++ b/fet2020/templates/posts/partials/_posts_hero.html @@ -1,8 +1,8 @@ -