add searching for posts by date

This commit is contained in:
2021-05-07 11:01:21 +00:00
parent d6de6218c3
commit b314611cdb
6 changed files with 224 additions and 22 deletions

View File

@@ -2,6 +2,7 @@ import logging
from collections import deque
from django.conf import settings
from django.contrib import messages
from django.http import HttpResponse, JsonResponse, HttpResponseServerError
from django.shortcuts import render
from django.template.loader import render_to_string
@@ -13,6 +14,7 @@ from documents.api import get_pad_link
from documents.etherpadlib import add_ep_cookie
from members.models import Member, JobMember
from .forms import PostSearchForm
from .models import Post, FetMeeting, FileUpload
from .utils import render_to_pdf
@@ -26,13 +28,55 @@ logger = logging.getLogger(__name__)
def index(request):
"Index von aktuellen Posts"
posts = deque(Post.objects.get_date_sorted_list())
posts = None
taglist = None
taglist = map(lambda post: post.tags, posts)
compact_view = None
fet_meeting_only = None
return render(request, "posts/index.html", {"posts": posts, "tags_list": taglist})
if request.method == "POST":
if "btn_input" in request.POST:
form = PostSearchForm(request.POST)
if "compact_view" in request.POST.getlist("checkbox"):
compact_view = True
if "fet_meeting_only" in request.POST.getlist("checkbox"):
fet_meeting_only = True
if form.is_valid():
month = form.cleaned_data["month"]
year = form.cleaned_data["year"]
if month == "":
month = None
if year == "":
year = None
if not year and month:
messages.info(
request,
"Es kann nicht nur nach einem Monat gesucht werden."
)
posts = deque(Post.objects.get_date_filtered_list(year, month, fet_meeting_only))
else:
form = PostSearchForm()
posts = deque(Post.objects.get_date_sorted_list())
if posts:
taglist = map(lambda post: post.tags, posts)
context = {
"formset": form,
"compact_view": compact_view,
"fet_meeting_only": fet_meeting_only,
"posts": posts,
"tags_list": taglist,
}
return render(request, "posts/index.html", context)
def calendar(request):
"Kalender Ansicht ICS zur Verknüpfung mit Outlook"