Add optional date parameter for weekend.

This commit is contained in:
Edward Betts 2025-01-24 20:34:06 +00:00
parent fd09faea38
commit f6fba93a54

View file

@ -223,12 +223,19 @@ async def gaps_page() -> str:
@app.route("/weekends") @app.route("/weekends")
async def weekends() -> str: async def weekends() -> str:
"""List of available gaps.""" """List of available weekends using an optional date parameter."""
today = date.today() today = datetime.now().date()
date_str = flask.request.args.get("date")
if date_str:
try:
start = datetime.strptime(date_str, "%Y-%m-%d").date()
except ValueError:
return flask.abort(400, description="Invalid date format. Use YYYY-MM-DD.")
else:
start = date(today.year, 1, 1)
current_week_number = today.isocalendar().week current_week_number = today.isocalendar().week
start = date(today.year, 1, 1)
trip_list = agenda.trip.build_trip_list() trip_list = agenda.trip.build_trip_list()
busy_events = agenda.busy.get_busy_events(start, app.config, trip_list) busy_events = agenda.busy.get_busy_events(start, app.config, trip_list)
weekends = agenda.busy.weekends(start, busy_events) weekends = agenda.busy.weekends(start, busy_events)