/datum/admins/proc/EconomyPanel(action, hrefs)
if(!check_rights(R_FUN))
return
var/dat= "
Economy Tools"
var/datum/money_account/detailed_account_view
var/creating_new_account
if(hrefs["econ_panel"] != "open")
switch(hrefs["econ_panel"])
if("create_account")
creating_new_account = 1
if("finalise_create_account")
var/account_name = hrefs["holder_name"]
var/starting_funds = max(text2num(hrefs["starting_funds"]), 0)
var/staring_payout = max(text2num(hrefs["staring_payout"]), 0)
var/hidden = (hrefs["hidden"] == "hidden")
create_account(account_name, starting_funds, null, staring_payout, 0, hidden)
creating_new_account = 0
if("view_account_detail")
var/index = text2num(hrefs["account_index"])
if(index && index <= all_money_accounts.len)
detailed_account_view = all_money_accounts[index]
if("view_accounts_list")
detailed_account_view = null
creating_new_account = 0
if("edit_balance")
var/acc_num = text2num(hrefs["account_num"])
var/datum/money_account/acc = get_money_account_global(acc_num)
if(acc)
var/new_balance = input(usr, "Select a new balance for this account", "New balance", acc.money) as null|num
if(new_balance && new_balance >= 0)
acc.money = new_balance
detailed_account_view = acc
if("edit_wage_payout")
var/acc_num = text2num(hrefs["account_num"])
var/datum/money_account/acc = get_money_account_global(acc_num)
if(acc)
var/new_payout = input(usr, "Select a new payout for this account", "New payout", acc.wage_gain) as null|num
if(new_payout && new_payout >= 0)
acc.wage_gain = new_payout
detailed_account_view = acc
if(creating_new_account)
dat += {"
Return to accounts list
"}
else
if(detailed_account_view)
dat += {"
Return to accounts list
Account number: #[detailed_account_view.account_number]
Account pin: #[detailed_account_view.remote_access_pin]
Account holder: [detailed_account_view.owner_name]
Account balance: $[detailed_account_view.money] Edit
Assigned wage payout: $[detailed_account_view.wage_gain] Edit
| Date |
Time |
Target |
Purpose |
Value |
Source terminal ID |
"}
for(var/datum/transaction/T in detailed_account_view.transaction_log)
dat += {"
| [T.date] |
[T.time] |
[T.target_name] |
[T.purpose] |
$[T.amount] |
[T.source_terminal] |
"}
dat += "
"
else
dat += {"Create new account
"}
for(var/i=1, i<=all_money_accounts.len, i++)
var/datum/money_account/D = all_money_accounts[i]
dat += {"
| #[D.account_number] |
[D.owner_name] |
$[D.money] |
View in detail |
"}
dat += "
"
usr << browse(dat, "window=econ_panel")