% Group.requireGroupNum 0;
@header [("title", ["Balance management"])];
ref showNormal = true;
if $"cmd" = "Create" then
if not (Balance.validBalanceName ($"name")) then %>
Invalid balance name
<% else switch Balance.balanceNameToId ($"name") of
SOME _ => %>
Balance name already in use
<% | NONE =>
val id = Balance.addBalance ($"name") %>
Balance added
<% end
end
elseif $"mod" <> "" then
showNormal := false;
val balance = Balance.lookupBalance (Web.stoi ($"mod")) %>
Modify balance record
<% elseif $"cmd" = "Save" then
val balance = Balance.lookupBalance (Web.stoi ($"id"));
Balance.modBalance {balance with name = $"name"} %>
Balance record saved.
<% elseif $"del" <> "" then
showNormal := false;
val balance = Balance.lookupBalance (Web.stoi ($"del")) %>
Are you sure you want to delete balance <% #name balance %>?
">Yes, delete <% #name balance %>!
<% elseif $"del2" <> "" then
val balance = Balance.lookupBalance (Web.stoi ($"del2"));
Balance.deleteBalance (Web.stoi ($"del2")) %>
<% #name balance %> deleted!
<% end %>
<% if showNormal then %>
New balance
Manage current balances
<% foreach balance in Balance.listBalances () do %>
<% Web.html (#name balance) %> | <% #amount balance %> | [Modify] [Delete] |
<% end %>
<% end %>
<% @footer [] %>