diff --git a/fet2020/posts/managers.py b/fet2020/posts/managers.py index eb0e0f46..a8577d4d 100644 --- a/fet2020/posts/managers.py +++ b/fet2020/posts/managers.py @@ -10,7 +10,8 @@ class PostManager(models.Manager): def get_visible_articles(self): return self.get_queryset().filter(is_hidden=False) - + def all_post_with_date(self): + return self.get_queryset().filter(Q(event_start__isnull=False) & Q(event_end__isnull=False)).order_by('-event_start') class ArticleManager(models.Manager): """ Provide a query set only for "Article" diff --git a/fet2020/posts/views.py b/fet2020/posts/views.py index 88ca943e..4356ad41 100644 --- a/fet2020/posts/views.py +++ b/fet2020/posts/views.py @@ -8,7 +8,7 @@ from django_filters.rest_framework import DjangoFilterBackend from rest_framework import viewsets from taggit.models import Tag -from .models import Post, FetMeeting +from .models import Post, FetMeeting, Event from .serializers import PostSerializer from documents.api import get_pad_link from documents.etherpadlib import add_ep_cookie @@ -33,8 +33,9 @@ def index(request): return render(request, 'posts/index.html', {"posts": posts, "tags_list": t}) def calendar(request): - events=deque(Post.objects.get_visible_articles().order_by('-public_date')) + events=deque(Post.objects.all_post_with_date().all()) return render(request, 'posts/fet_calendar.ics', {"events": events},content_type='text/calendar') + def tags(request, tag=""): posts = deque(Post.objects.get_visible_articles().filter(tags__name=tag)) featured_post = Post.objects.get_visible_articles().filter(slug=tag).first()