def index(request): events_page = get_page(request, Event.objects.filter(active=True).order_by('-create_date')) event_contents = list(EventContent.objects.filter(event__in=list(events_page.object_list), lang=get_language()[:2])) t_dict = {} for event in events_page.object_list: t_dict[event.id] = {'event': event} for event_content in event_contents: t_dict[event_content.event_id]['event'].event_content = event_content return render(request, 'events/frontend/list.html', { 'events_list': events_page.object_list, 'events_page': events_page, })
def favorit_events(request): fav_events_page = get_page(request, FavoriteEvent.objects.filter(user=request.user)) events = [] for fav_event in fav_events_page.object_list: events.append(fav_event.event_id) events = Event.objects.filter(id__in=events) event_contents = list(EventContent.objects.filter(event__in=list(events), lang=get_language()[:2])) t_dict = {} for event in events: t_dict[event.id] = {'event': event} for event_content in event_contents: t_dict[event_content.event_id]['event'].event_content = event_content return render(request, 'events/frontend/favorites_list.html', { 'events_list': events, 'events_page': fav_events_page, })
def filer_by_date(request, day='', month='', year=''): # start_date = datetime.datetime(year=int(year), month=int(month), day=int(day), hour=0, minute=0, second=0) # events_page = get_page(request, Event.objects.filter(active=True, start_date__lte=start_date, end_date__gte=start_date).order_by('-create_date')) day_datetime = datetime.datetime(int(year), int(month), int(day), 0, 0, 0) end_day_datetime = datetime.datetime(int(year), int(month), int(day), 23, 59, 59) q = Q(active=True) & Q(start_date__lte=end_day_datetime) & Q(end_date__gte=day_datetime) events_page = get_page(request, Event.objects.filter(q).order_by('-start_date')) event_contents = list(EventContent.objects.filter(event__in=list(events_page.object_list), lang=get_language()[:2])) t_dict = {} for event in events_page.object_list: t_dict[event.id] = {'event': event} for event_content in event_contents: t_dict[event_content.event_id]['event'].event_content = event_content return render(request, 'events/frontend/list.html', { 'events_list': events_page.object_list, 'events_page': events_page, 'start_date': day_datetime })
def events_list(request): now = timezone.now() if not request.user.has_module_perms("events"): return HttpResponseForbidden() if request.GET.get("filter", "") == "on": filter_form = EventFilterForm(request.GET) else: filter_form = EventFilterForm() sorting = "create_date" order = "-" q = Q() if request.GET.get("filter", "") == "on": if filter_form.is_valid(): filter_sort = filter_form.cleaned_data["sort"] if filter_sort: sorting = filter_sort filter_order = filter_form.cleaned_data["order"] if filter_order: if filter_order == "asc": order = "" elif filter_order == "desc": order = "-" filter_active = filter_form.cleaned_data["active"] q &= Q(active=bool(filter_active)) filter_ended = filter_form.cleaned_data["ended"] if filter_ended: q &= Q(end_date__lt=now) filter_start_date = filter_form.cleaned_data["start_date"] filter_end_date = filter_form.cleaned_data["end_date"] if filter_start_date: q &= Q(start_date__gte=filter_start_date) if filter_end_date: q &= Q(end_date__lte=filter_end_date) events_page = get_page(request, Event.objects.filter(q).order_by(order + sorting), 10) event_contents = list(EventContent.objects.filter(event__in=list(events_page.object_list), lang=get_language()[:2])) t_dict = {} for event in events_page.object_list: t_dict[event.id] = {"event": event} for event_content in event_contents: t_dict[event_content.event_id]["event"].event_content = event_content return render( request, "events/administration/events_list.html", {"events_list": events_page.object_list, "events_page": events_page, "filter_form": filter_form}, )