diff options
| author | Benedict Börger <benedict@0xb8000.de> | 2019-04-14 21:16:56 +0200 |
|---|---|---|
| committer | Benedict Börger <benedict@0xb8000.de> | 2019-04-14 21:16:56 +0200 |
| commit | 018bdad58aaacd0cb729b12bbabdab01ce4dc31d (patch) | |
| tree | 385198b14f98a9d2f217481f5916c5601230ddcb /src/web_frontend | |
| parent | 6712b19dbd2d21e5e89ac7a8d748369ea0a4612f (diff) | |
[web-fronted][transactions] add semantic for date parameters
Diffstat (limited to 'src/web_frontend')
| -rw-r--r-- | src/web_frontend/transactions.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/web_frontend/transactions.rs b/src/web_frontend/transactions.rs index 1b6d22c..d17f50d 100644 --- a/src/web_frontend/transactions.rs +++ b/src/web_frontend/transactions.rs @@ -67,12 +67,19 @@ pub fn transaction_handler(start : Option<&RawStr>, end : Option<&RawStr>, let t = acc.transactions; // apply parameters // apply date filters + let date_range = crate::web_frontend::util::DateRange::new(date_start, date_end); + let mut t_filtered = Vec::new(); + for date in date_range { + let tc = t.clone(); + let mut tmp : Vec<_> = tc.into_iter().filter(|x| x.date.month() == date.month() && x.date.year() == date.year()).collect(); + t_filtered.append(&mut tmp); + } - // apply filter - let ft = apply_transaction_filter(transaction_filter, t); + // apply filter + let ft = apply_transaction_filter(transaction_filter.clone(), t_filtered); let context = TransactionContext { transactions: ft, account_name : String::from("Girokonto"), - filter : String::from(""), date_start : date_start.to_string()[0..7].to_string(), + filter : transaction_filter, date_start : date_start.to_string()[0..7].to_string(), date_end : date_end.to_string()[0..7].to_string()}; Template::render("transaction", context) } |
