have different syms to customize the final output when one has a single voucher
This commit is contained in:
parent
6e426bf6a0
commit
f198ecd913
@ -17,8 +17,8 @@ import (
|
|||||||
|
|
||||||
// ManageVouchers retrieves the token holdings from the API using the "PublicKey" and
|
// ManageVouchers retrieves the token holdings from the API using the "PublicKey" and
|
||||||
// 1. sets the first as the default voucher if no active voucher is set.
|
// 1. sets the first as the default voucher if no active voucher is set.
|
||||||
// 2. Stores list of vouchers
|
// 2. Stores list of filtered ordered vouchers (exclude the active voucher)
|
||||||
// 3. Stores list of filtered stable vouchers
|
// 3. Stores list of ordered vouchers (all vouchers)
|
||||||
// 4. updates the balance of the active voucher
|
// 4. updates the balance of the active voucher
|
||||||
func (h *MenuHandlers) ManageVouchers(ctx context.Context, sym string, input []byte) (resource.Result, error) {
|
func (h *MenuHandlers) ManageVouchers(ctx context.Context, sym string, input []byte) (resource.Result, error) {
|
||||||
var res resource.Result
|
var res resource.Result
|
||||||
@ -32,7 +32,6 @@ func (h *MenuHandlers) ManageVouchers(ctx context.Context, sym string, input []b
|
|||||||
|
|
||||||
flag_no_active_voucher, _ := h.flagManager.GetFlag("flag_no_active_voucher")
|
flag_no_active_voucher, _ := h.flagManager.GetFlag("flag_no_active_voucher")
|
||||||
flag_api_error, _ := h.flagManager.GetFlag("flag_api_call_error")
|
flag_api_error, _ := h.flagManager.GetFlag("flag_api_call_error")
|
||||||
flag_no_stable_vouchers, _ := h.flagManager.GetFlag("flag_no_stable_vouchers")
|
|
||||||
flag_multiple_voucher, _ := h.flagManager.GetFlag("flag_multiple_voucher")
|
flag_multiple_voucher, _ := h.flagManager.GetFlag("flag_multiple_voucher")
|
||||||
|
|
||||||
publicKey, err := userStore.ReadEntry(ctx, sessionId, storedb.DATA_PUBLIC_KEY)
|
publicKey, err := userStore.ReadEntry(ctx, sessionId, storedb.DATA_PUBLIC_KEY)
|
||||||
@ -216,21 +215,6 @@ func (h *MenuHandlers) ManageVouchers(ctx context.Context, sym string, input []b
|
|||||||
// Order all vouchers
|
// Order all vouchers
|
||||||
orderedVouchers := orderVouchers(vouchersResp)
|
orderedVouchers := orderVouchers(vouchersResp)
|
||||||
|
|
||||||
// Stable voucher presence flag (based on full list)
|
|
||||||
hasStable := false
|
|
||||||
for _, v := range orderedVouchers {
|
|
||||||
if isStableVoucher(v.TokenAddress) {
|
|
||||||
hasStable = true
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if !hasStable {
|
|
||||||
res.FlagSet = append(res.FlagSet, flag_no_stable_vouchers)
|
|
||||||
} else {
|
|
||||||
res.FlagReset = append(res.FlagReset, flag_no_stable_vouchers)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Process ALL vouchers (stable first)
|
// Process ALL vouchers (stable first)
|
||||||
orderedVoucherData := store.ProcessVouchers(orderedVouchers)
|
orderedVoucherData := store.ProcessVouchers(orderedVouchers)
|
||||||
|
|
||||||
@ -253,6 +237,7 @@ func (h *MenuHandlers) ManageVouchers(ctx context.Context, sym string, input []b
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GetVoucherList fetches the list of vouchers from the store and formats them.
|
// GetVoucherList fetches the list of vouchers from the store and formats them.
|
||||||
|
// does not include the active voucher and is used in select_voucher and pay_debt
|
||||||
func (h *MenuHandlers) GetVoucherList(ctx context.Context, sym string, input []byte) (resource.Result, error) {
|
func (h *MenuHandlers) GetVoucherList(ctx context.Context, sym string, input []byte) (resource.Result, error) {
|
||||||
var res resource.Result
|
var res resource.Result
|
||||||
sessionId, ok := ctx.Value("SessionId").(string)
|
sessionId, ok := ctx.Value("SessionId").(string)
|
||||||
@ -281,7 +266,12 @@ func (h *MenuHandlers) GetVoucherList(ctx context.Context, sym string, input []b
|
|||||||
}
|
}
|
||||||
|
|
||||||
if len(voucherData) == 0 {
|
if len(voucherData) == 0 {
|
||||||
|
if sym == "get_paydebt_voucher_list" {
|
||||||
|
res.Content = l.Get("You need another voucher to proceed. Only found %s", string(activeSym))
|
||||||
|
} else {
|
||||||
res.Content = l.Get("Your active voucher %s is already set", string(activeSym))
|
res.Content = l.Get("Your active voucher %s is already set", string(activeSym))
|
||||||
|
}
|
||||||
|
|
||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -111,7 +111,8 @@ func (ls *LocalHandlerService) GetHandler(accountService remote.AccountService)
|
|||||||
ls.DbRs.AddLocalFunc("quit_with_help", appHandlers.QuitWithHelp)
|
ls.DbRs.AddLocalFunc("quit_with_help", appHandlers.QuitWithHelp)
|
||||||
ls.DbRs.AddLocalFunc("fetch_community_balance", appHandlers.FetchCommunityBalance)
|
ls.DbRs.AddLocalFunc("fetch_community_balance", appHandlers.FetchCommunityBalance)
|
||||||
ls.DbRs.AddLocalFunc("manage_vouchers", appHandlers.ManageVouchers)
|
ls.DbRs.AddLocalFunc("manage_vouchers", appHandlers.ManageVouchers)
|
||||||
ls.DbRs.AddLocalFunc("get_vouchers", appHandlers.GetVoucherList)
|
ls.DbRs.AddLocalFunc("get_voucher_list", appHandlers.GetVoucherList)
|
||||||
|
ls.DbRs.AddLocalFunc("get_paydebt_voucher_list", appHandlers.GetVoucherList)
|
||||||
ls.DbRs.AddLocalFunc("view_voucher", appHandlers.ViewVoucher)
|
ls.DbRs.AddLocalFunc("view_voucher", appHandlers.ViewVoucher)
|
||||||
ls.DbRs.AddLocalFunc("set_voucher", appHandlers.SetVoucher)
|
ls.DbRs.AddLocalFunc("set_voucher", appHandlers.SetVoucher)
|
||||||
ls.DbRs.AddLocalFunc("get_voucher_details", appHandlers.GetVoucherDetails)
|
ls.DbRs.AddLocalFunc("get_voucher_details", appHandlers.GetVoucherDetails)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user