sortowanie_w_mass_add #10

Merged
gru merged 90 commits from sortowanie_w_mass_add into master 2025-09-02 17:08:55 +02:00
Showing only changes of commit 824e5bde0d - Show all commits

24
app.py
View File

@@ -442,18 +442,28 @@ def get_total_expense_for_list(list_id, start_date=None, end_date=None):
return query.scalar() or 0
def update_list_categories_from_form(shopping_list, form):
cat = form.get("categories")
shopping_list.categories.clear()
if cat:
raw_vals = form.getlist("categories")
candidate_ids = set()
for v in raw_vals:
if not v:
continue
v = v.strip()
try:
cid = int(cat)
cats = Category.query.filter(Category.id == cid).all()
shopping_list.categories.extend(cats)
candidate_ids.add(int(v))
continue
except ValueError:
pass
cat = Category.query.filter(func.lower(Category.name) == v.lower()).first()
if cat:
candidate_ids.add(cat.id)
shopping_list.categories.clear()
if candidate_ids:
cats = Category.query.filter(Category.id.in_(candidate_ids)).all()
shopping_list.categories.extend(cats)
def generate_share_token(length=8):
return secrets.token_hex(length // 2)