diff options
Diffstat (limited to 'src/web_frontend/transactions.rs')
| -rw-r--r-- | src/web_frontend/transactions.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/web_frontend/transactions.rs b/src/web_frontend/transactions.rs index d17f50d..54aacf9 100644 --- a/src/web_frontend/transactions.rs +++ b/src/web_frontend/transactions.rs @@ -37,9 +37,10 @@ fn apply_transaction_filter(filter : String, transactions : Vec<crate::banking:: } -#[get("/transactions?<start>&<end>&<filter>")] -pub fn transaction_handler(start : Option<&RawStr>, end : Option<&RawStr>, +#[get("/transactions/<account>?<start>&<end>&<filter>")] +pub fn transaction_handler(account : &RawStr, start : Option<&RawStr>, end : Option<&RawStr>, filter : Option<&RawStr>) -> rocket_contrib::templates::Template { + let account_name = account.to_string(); let date_start = match start { Some(s) => { let mut tmp = s.to_string(); tmp.push_str("-01"); @@ -58,7 +59,7 @@ pub fn transaction_handler(start : Option<&RawStr>, end : Option<&RawStr>, }; let asset_ini = "data/asset.ini"; let asset : Asset = crate::banking::asset::Asset::from_ini_file(asset_ini); - let transactions = asset.get_account_by_name("Girokonto"); + let transactions = asset.get_account_by_name(&account_name); let acc; match transactions { Some(trans) => acc = trans, @@ -78,7 +79,7 @@ pub fn transaction_handler(start : Option<&RawStr>, end : Option<&RawStr>, // apply filter let ft = apply_transaction_filter(transaction_filter.clone(), t_filtered); - let context = TransactionContext { transactions: ft, account_name : String::from("Girokonto"), + let context = TransactionContext { transactions: ft, account_name : account_name, 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) |
