diff --git a/aleksis/apps/chronos/util/prev_next.py b/aleksis/apps/chronos/util/prev_next.py index 9f736213968c08f21ba4e952cdb5d7da18db8139..c0a844dc40e728a17c98e6289def5bd69c1dd9b9 100644 --- a/aleksis/apps/chronos/util/prev_next.py +++ b/aleksis/apps/chronos/util/prev_next.py @@ -1,7 +1,8 @@ from datetime import timedelta, date, time -from typing import Optional +from typing import Optional, Tuple from calendarweek import CalendarWeek +from django.urls import reverse from django.utils import timezone from aleksis.apps.chronos.util.min_max import weekday_min_, weekday_max, time_max @@ -34,3 +35,14 @@ def get_next_relevant_day(day: Optional[date] = None, time: Optional[time] = Non return day + +def get_prev_next_by_day(day: date, url: str) -> Tuple[str, str]: + """ Build URLs for previous/next day """ + + day_prev = get_next_relevant_day(day - timedelta(days=1), prev=True) + day_next = get_next_relevant_day(day + timedelta(days=1)) + + url_prev = reverse(url, args=[day_prev.year, day_prev.month, day_prev.day]) + url_next = reverse(url, args=[day_next.year, day_next.month, day_next.day]) + + return url_prev, url_next diff --git a/aleksis/apps/chronos/views.py b/aleksis/apps/chronos/views.py index 64a4f9ea78f4720845ff6f869c850777c3725788..0842903493427dd286b35590975020ae00c8542f 100644 --- a/aleksis/apps/chronos/views.py +++ b/aleksis/apps/chronos/views.py @@ -23,22 +23,10 @@ from .util.min_max import ( weekday_min_, weekday_max ) -from .util.prev_next import get_next_relevant_day +from .util.prev_next import get_next_relevant_day, get_prev_next_by_day from .util.weeks import CalendarWeek, get_weeks_for_year -def get_prev_next_by_day(day: date, url: str) -> Tuple[str, str]: - """ Build URLs for previous/next day """ - - day_prev = get_next_relevant_day(day - timedelta(days=1), prev=True) - day_next = get_next_relevant_day(day + timedelta(days=1)) - - url_prev = reverse(url, args=[day_prev.year, day_prev.month, day_prev.day]) - url_next = reverse(url, args=[day_next.year, day_next.month, day_next.day]) - - return url_prev, url_next - - @login_required def all(request: HttpRequest) -> HttpResponse: context = {}