diff options
author | René 'Necoro' Neumann <necoro@necoro.eu> | 2020-01-11 00:13:22 +0100 |
---|---|---|
committer | René 'Necoro' Neumann <necoro@necoro.eu> | 2020-01-11 00:13:22 +0100 |
commit | b45e8f51b047ffa3a02b65f5e338d04c5576b851 (patch) | |
tree | aebe132aa2d6f02e26a5b42f5f861b6a79a5f746 /app | |
parent | 6285f4527e3a3f91ac68377667d7bc54c7dcd949 (diff) | |
download | kosten-b45e8f51b047ffa3a02b65f5e338d04c5576b851.tar.gz kosten-b45e8f51b047ffa3a02b65f5e338d04c5576b851.tar.bz2 kosten-b45e8f51b047ffa3a02b65f5e338d04c5576b851.zip |
/add now remembers the date on reloading
Diffstat (limited to '')
-rw-r--r-- | app/views/expenses.py | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/app/views/expenses.py b/app/views/expenses.py index 8061590..af46446 100644 --- a/app/views/expenses.py +++ b/app/views/expenses.py @@ -80,6 +80,18 @@ def entry_flash(msg, exp): link = "<a href=\"%s\">%s</a>" % (url, exp.description) flash(Markup(msg % link)) +DATE_FORMAT='%Y%m%d' +def parse_date(value): + try: + dt = datetime.datetime.strptime(value, DATE_FORMAT) + except ValueError: + return today() + else: + return dt.date() + +def gen_date(value): + return value.strftime(DATE_FORMAT) + # # Template additions # @@ -167,6 +179,9 @@ def add(): """Add a new expense.""" form = ExpenseForm(description_req=False) + if request.method == 'GET' and 'date' in request.args: + form.date.data = parse_date(request.args['date']) + if form.validate_on_submit(): if not form.description.data.strip(): form.description.data = form.category.data.name @@ -181,7 +196,7 @@ def add(): entry_flash("Neuer Eintrag %s hinzugefügt.", exp) - return redirect('.add') + return redirect('.add', date = gen_date(exp.date)) return { 'form': form } |