From 07bd79edae6d8b6fac6308d6f2f1ff570e7c7fd4 Mon Sep 17 00:00:00 2001 From: AndiEcker Date: Thu, 4 Jan 2024 15:37:02 +0000 Subject: [PATCH] V0.3.99: hide old and unconfirmed announcements M kairos/__init__.py M mbr_announcements/views.py --- kairos/__init__.py | 2 +- mbr_announcements/views.py | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/kairos/__init__.py b/kairos/__init__.py index beb25ab..bafa497 100644 --- a/kairos/__init__.py +++ b/kairos/__init__.py @@ -63,4 +63,4 @@ TODO: """ -__version__ = '0.3.98' +__version__ = '0.3.99' diff --git a/mbr_announcements/views.py b/mbr_announcements/views.py index ce99349..666ef87 100644 --- a/mbr_announcements/views.py +++ b/mbr_announcements/views.py @@ -7,6 +7,7 @@ from django.contrib.auth.models import User # type: from django.db.models import Q # type: ignore from django.http import HttpResponseRedirect # type: ignore from django.urls import reverse # type: ignore +from django.utils import timezone # type: ignore from django.utils.text import slugify # type: ignore from django.utils.translation import gettext as _, override # type: ignore from django.views.generic import ListView # type: ignore @@ -84,6 +85,10 @@ def get_queryset(request): elif not current_user.is_staff: # only admins are seeing records added/owned by other users obj_list = obj_list.exclude(Q(ma_description__contains=EXC_ADD_MARKER) & ~Q(ma_user=current_user)) + # hide announcements of members that either were not logged in within the last year or were never logged in + last_year_datetime = timezone.now() - datetime.timedelta(days=365) + obj_list = obj_list.exclude(Q(ma_user__last_login=None) | Q(ma_user__last_login__lt=last_year_datetime)) + return obj_list.order_by("ma_announce_category__ac_name", "ma_action", "-ma_last_updated") -- GitLab