From 108d5bdc3eb9a151113263c6ff8b1db7a15fb512 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Tue, 17 Feb 2026 16:08:22 +0300 Subject: [PATCH] added a node for credit voucher selection --- handlers/local.go | 1 + services/registration/credit_send.vis | 5 ++++- services/registration/credit_vouchers | 1 + services/registration/credit_vouchers.vis | 15 +++++++++++++++ 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 services/registration/credit_vouchers create mode 100644 services/registration/credit_vouchers.vis diff --git a/handlers/local.go b/handlers/local.go index e19fc20..7deb9f1 100644 --- a/handlers/local.go +++ b/handlers/local.go @@ -154,6 +154,7 @@ func (ls *LocalHandlerService) GetHandler(accountService remote.AccountService) ls.DbRs.AddLocalFunc("pool_deposit_max_amount", appHandlers.PoolDepositMaxAmount) ls.DbRs.AddLocalFunc("confirm_pool_deposit", appHandlers.ConfirmPoolDeposit) ls.DbRs.AddLocalFunc("initiate_pool_deposit", appHandlers.InitiatePoolDeposit) + ls.DbRs.AddLocalFunc("validate_credit_voucher", appHandlers.ValidateCreditVoucher) ls.first = appHandlers.Init diff --git a/services/registration/credit_send.vis b/services/registration/credit_send.vis index 35db249..a1c5669 100644 --- a/services/registration/credit_send.vis +++ b/services/registration/credit_send.vis @@ -3,10 +3,13 @@ RELOAD transaction_reset CATCH no_voucher flag_no_active_voucher 1 MOUT back 0 HALT +LOAD clear_trans_type_flag 6 +RELOAD clear_trans_type_flag LOAD validate_recipient 50 RELOAD validate_recipient -CATCH api_failure flag_api_call_error 1 +CATCH api_failure flag_api_call_error 1 CATCH invalid_recipient flag_invalid_recipient 1 CATCH invite_recipient flag_invalid_recipient_with_invite 1 +CATCH credit_vouchers flag_multiple_voucher 1 INCMP _ 0 INCMP credit_amount * diff --git a/services/registration/credit_vouchers b/services/registration/credit_vouchers new file mode 100644 index 0000000..90039ed --- /dev/null +++ b/services/registration/credit_vouchers @@ -0,0 +1 @@ +{{.get_ordered_vouchers}} \ No newline at end of file diff --git a/services/registration/credit_vouchers.vis b/services/registration/credit_vouchers.vis new file mode 100644 index 0000000..fa08202 --- /dev/null +++ b/services/registration/credit_vouchers.vis @@ -0,0 +1,15 @@ +LOAD get_ordered_vouchers 0 +MAP get_ordered_vouchers +MOUT back 0 +MOUT quit 99 +MNEXT next 88 +MPREV prev 98 +HALT +INCMP > 88 +INCMP < 98 +INCMP _ 0 +INCMP quit 99 +LOAD validate_credit_voucher 67 +RELOAD validate_credit_voucher +CATCH . flag_incorrect_voucher 1 +INCMP credit_amount *