diff --git a/shiftregister/app/dynamic_preferences_registry.py b/shiftregister/app/dynamic_preferences_registry.py index 3a34146..d8ac1b3 100644 --- a/shiftregister/app/dynamic_preferences_registry.py +++ b/shiftregister/app/dynamic_preferences_registry.py @@ -78,3 +78,11 @@ class FallbackQuota(types.FloatPreference): section = helper name = "fallback_quota" default = 0.7 + + +@global_preferences_registry.register +class EventStartAt(types.DateTimePreference): + section = helper + name = "event_start_at" + default = datetime.datetime.now() + help_text = "The start date and time of the event. Date navigation will only show days after this time." diff --git a/shiftregister/app/views.py b/shiftregister/app/views.py index fd94fbb..5195316 100644 --- a/shiftregister/app/views.py +++ b/shiftregister/app/views.py @@ -26,7 +26,12 @@ def index(request): days = cache.get("event_days") if not days: - days = Shift.objects.filter(deleted=False).datetimes("start_at", "day").all() + event_start = global_preferences["helper__event_start_at"] + days = ( + Shift.objects.filter(deleted=False, start_at__gte=event_start) + .datetimes("start_at", "day") + .all() + ) cache.set("event_days", days) context = {