diff --git a/app.py b/app.py
index 7b023bd..1d0c600 100644
--- a/app.py
+++ b/app.py
@@ -1267,17 +1267,38 @@ def favicon():
@app.route("/")
def main_page():
now = datetime.now(timezone.utc)
- month_str = request.args.get("month") or now.strftime("%Y-%m")
+
+ month_param = request.args.get("month", None) # surowy parametr z URL
start = end = None
- if month_str:
+ if month_param in (None, ""):
+ # brak wyboru -> domyślnie aktualny miesiąc
+ month_str = now.strftime("%Y-%m")
+ start = datetime(now.year, now.month, 1, tzinfo=timezone.utc)
+ end = (start + timedelta(days=31)).replace(day=1)
+
+ elif month_param == "all":
+ month_str = "all"
+ start = end = None
+
+ else:
+ month_str = month_param
try:
year, month = map(int, month_str.split("-"))
start = datetime(year, month, 1, tzinfo=timezone.utc)
end = (start + timedelta(days=31)).replace(day=1)
- except:
+ except ValueError:
start = end = None
+ # dalej normalnie używasz date_filter:
+ def date_filter(query):
+ if start and end:
+ query = query.filter(
+ ShoppingList.created_at >= start,
+ ShoppingList.created_at < end
+ )
+ return query
+
def date_filter(query):
if start and end:
query = query.filter(
diff --git a/templates/main.html b/templates/main.html
index 12193a4..b1dc50c 100644
--- a/templates/main.html
+++ b/templates/main.html
@@ -47,7 +47,9 @@
{{ month_names[month|int - 1] }} {{ year }}
{% endfor %}
-
+
@@ -235,7 +237,8 @@
{{ month_names[month|int - 1] }} {{ year }}
{% endfor %}
-
+
📋 Wyświetl wszystkie