From cd1936c12f0f4093e8b4d1b67c4f866ac15fa3f1 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 14:17:29 +0300 Subject: [PATCH 01/12] require accounts to be authorized to access the alias node --- services/registration/my_account_alias.vis | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/registration/my_account_alias.vis b/services/registration/my_account_alias.vis index c44cce1..1ba19c3 100644 --- a/services/registration/my_account_alias.vis +++ b/services/registration/my_account_alias.vis @@ -1,3 +1,7 @@ +LOAD reset_account_authorized 0 +LOAD reset_incorrect_pin 0 +CATCH incorrect_pin flag_incorrect_pin 1 +CATCH pin_entry flag_account_authorized 0 LOAD get_current_profile_info 0 MAP get_current_profile_info MOUT back 0 From ebb4581c2719a83be8df136d9f5494efa92d49af Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 14:41:46 +0300 Subject: [PATCH 02/12] renamed the update_alias to alias_updated --- services/registration/{update_alias => alias_updated} | 0 services/registration/{update_alias.vis => alias_updated.vis} | 0 services/registration/{update_alias_swa => alias_updated_swa} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename services/registration/{update_alias => alias_updated} (100%) rename services/registration/{update_alias.vis => alias_updated.vis} (100%) rename services/registration/{update_alias_swa => alias_updated_swa} (100%) diff --git a/services/registration/update_alias b/services/registration/alias_updated similarity index 100% rename from services/registration/update_alias rename to services/registration/alias_updated diff --git a/services/registration/update_alias.vis b/services/registration/alias_updated.vis similarity index 100% rename from services/registration/update_alias.vis rename to services/registration/alias_updated.vis diff --git a/services/registration/update_alias_swa b/services/registration/alias_updated_swa similarity index 100% rename from services/registration/update_alias_swa rename to services/registration/alias_updated_swa From 682785fc3f217ad399ff6f44860c9cee71058a2f Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:40:06 +0300 Subject: [PATCH 03/12] add a new flag_alias_unavailable flag --- services/registration/pp.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/registration/pp.csv b/services/registration/pp.csv index fa67938..1e476c1 100644 --- a/services/registration/pp.csv +++ b/services/registration/pp.csv @@ -34,4 +34,4 @@ flag,flag_alias_set,40,this is set when an account alias has been assigned to a flag,flag_account_pin_reset,41,this is set on an account when an admin triggers a PIN reset for themflag,flag_incorrect_pool,39,this is set when the user selects an invalid pool flag,flag_incorrect_pool,42,this is set when the user selects an invalid pool flag,flag_low_swap_amount,43,this is set when the swap max limit is less than 0.1 - +flag,flag_alias_unavailable,44,this is set when the preferred alias is not available From 92a122732de99511c67585a9933cf2787eeab628 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:41:56 +0300 Subject: [PATCH 04/12] add the home menu option --- services/registration/home_menu | 1 + services/registration/home_menu_swa | 1 + 2 files changed, 2 insertions(+) create mode 100644 services/registration/home_menu create mode 100644 services/registration/home_menu_swa diff --git a/services/registration/home_menu b/services/registration/home_menu new file mode 100644 index 0000000..357dd48 --- /dev/null +++ b/services/registration/home_menu @@ -0,0 +1 @@ +Home \ No newline at end of file diff --git a/services/registration/home_menu_swa b/services/registration/home_menu_swa new file mode 100644 index 0000000..88dc089 --- /dev/null +++ b/services/registration/home_menu_swa @@ -0,0 +1 @@ +Mwanzo \ No newline at end of file From a3ab91f6a38f41a28426d7604e65e482afa2ddc9 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:43:04 +0300 Subject: [PATCH 05/12] handle alias registration and updates on the single RequestCustomAlias function --- handlers/application/menuhandler.go | 39 +++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 5 deletions(-) diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index e8f899b..3a459ed 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -2585,6 +2585,7 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input } flag_api_error, _ := h.flagManager.GetFlag("flag_api_call_error") + flag_alias_unavailable, _ := h.flagManager.GetFlag("flag_alias_unavailable") store := h.userdataStore aliasHint, err := store.ReadEntry(ctx, sessionId, storedb.DATA_TEMPORARY_VALUE) @@ -2608,9 +2609,22 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input } sanitizedInput := sanitizeAliasHint(string(input)) // Check if an alias already exists - existingAlias, err := store.ReadEntry(ctx, sessionId, storedb.DATA_SUGGESTED_ALIAS) + existingAlias, err := store.ReadEntry(ctx, sessionId, storedb.DATA_ACCOUNT_ALIAS) if err == nil && len(existingAlias) > 0 { logg.InfoCtxf(ctx, "Current alias", "alias", string(existingAlias)) + + // Call the alias resolver to check if the preferred alias is available + fqdn := fmt.Sprintf("%s.%s", sanitizedInput, "sarafu.eth") + logg.InfoCtxf(ctx, "Checking if the fqdn alias is taken", "fqdn", fqdn) + AliasAddress, err := h.accountService.CheckAliasAddress(ctx, fqdn) + if err == nil && len(AliasAddress.Address) > 0 { // if the alias exists / is not available + res.FlagSet = append(res.FlagSet, flag_alias_unavailable) + res.FlagReset = append(res.FlagReset, flag_api_error) + return res, nil + } + + res.FlagReset = append(res.FlagReset, flag_alias_unavailable) + // Update existing alias aliasResult, err := h.accountService.UpdateAlias(ctx, sanitizedInput, string(publicKey)) if err != nil { @@ -2622,6 +2636,19 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input logg.InfoCtxf(ctx, "Updated alias", "alias", alias) } else { logg.InfoCtxf(ctx, "Registering a new alias", "err", err) + + // Call the alias resolver to check if the preferred alias is available + fqdn := fmt.Sprintf("%s.%s", sanitizedInput, "sarafu.eth") + logg.InfoCtxf(ctx, "Checking if the fqdn alias is taken", "fqdn", fqdn) + _, err = h.accountService.CheckAliasAddress(ctx, fqdn) + if err == nil { // if the alias exists / is not available + res.FlagSet = append(res.FlagSet, flag_alias_unavailable) + res.FlagReset = append(res.FlagReset, flag_api_error) + return res, nil + } + + res.FlagReset = append(res.FlagReset, flag_alias_unavailable) + // Register a new alias aliasResult, err := h.accountService.RequestAlias(ctx, string(publicKey), sanitizedInput) if err != nil { @@ -2634,14 +2661,16 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input alias = aliasResult.Alias logg.InfoCtxf(ctx, "Suggested alias", "alias", alias) } - //Store the returned alias,wait for user to confirm it as new account alias - logg.InfoCtxf(ctx, "Final suggested alias", "alias", alias) - err = store.WriteEntry(ctx, sessionId, storedb.DATA_SUGGESTED_ALIAS, []byte(alias)) + + //Store the new account alias + logg.InfoCtxf(ctx, "Final registered alias", "alias", alias) + err = store.WriteEntry(ctx, sessionId, storedb.DATA_ACCOUNT_ALIAS, []byte(alias)) if err != nil { - logg.ErrorCtxf(ctx, "failed to write suggested alias", "key", storedb.DATA_SUGGESTED_ALIAS, "value", alias, "error", err) + logg.ErrorCtxf(ctx, "failed to write account alias", "key", storedb.DATA_ACCOUNT_ALIAS, "value", alias, "error", err) return res, err } } + return res, nil } From 55afbedd1ec5f3c79e12165e61b1db7ce9b97af9 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:46:25 +0300 Subject: [PATCH 06/12] have a node to CATCH aliases that are not available (already registered aliases) --- services/registration/unavailable_alias | 1 + services/registration/unavailable_alias.vis | 8 ++++++++ services/registration/unavailable_alias_swa | 1 + 3 files changed, 10 insertions(+) create mode 100644 services/registration/unavailable_alias create mode 100644 services/registration/unavailable_alias.vis create mode 100644 services/registration/unavailable_alias_swa diff --git a/services/registration/unavailable_alias b/services/registration/unavailable_alias new file mode 100644 index 0000000..6f1efd9 --- /dev/null +++ b/services/registration/unavailable_alias @@ -0,0 +1 @@ +The alias {{.request_custom_alias}} isn't available \ No newline at end of file diff --git a/services/registration/unavailable_alias.vis b/services/registration/unavailable_alias.vis new file mode 100644 index 0000000..e2f8831 --- /dev/null +++ b/services/registration/unavailable_alias.vis @@ -0,0 +1,8 @@ +MAP request_custom_alias +MOUT back 0 +MOUT home 9 +MOUT quit 99 +HALT +INCMP _ 0 +INCMP ^ 9 +INCMP quit 99 diff --git a/services/registration/unavailable_alias_swa b/services/registration/unavailable_alias_swa new file mode 100644 index 0000000..8119c46 --- /dev/null +++ b/services/registration/unavailable_alias_swa @@ -0,0 +1 @@ +Lakabu ulilochagua {{.request_custom_alias}} halipatikani \ No newline at end of file From e9988242b1c5628b9e3970aa0d6708239afdd1e6 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:47:18 +0300 Subject: [PATCH 07/12] CATCH unavailable aliases and navigate to the alias_updated node --- services/registration/my_account_alias.vis | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/services/registration/my_account_alias.vis b/services/registration/my_account_alias.vis index 1ba19c3..f4b18d9 100644 --- a/services/registration/my_account_alias.vis +++ b/services/registration/my_account_alias.vis @@ -9,5 +9,7 @@ HALT INCMP _ 0 LOAD request_custom_alias 0 RELOAD request_custom_alias +MAP request_custom_alias +CATCH unavailable_alias flag_alias_unavailable 1 CATCH api_failure flag_api_call_error 1 -INCMP confirm_new_alias * +INCMP alias_updated * From efa29b087efaed516a3c7d3ba4376a737340d437 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:51:45 +0300 Subject: [PATCH 08/12] remove unused node and function confirm_new_alias --- handlers/application/menuhandler.go | 32 --------------------- handlers/local.go | 1 - services/registration/alias_updated.vis | 2 -- services/registration/confirm_new_alias | 2 -- services/registration/confirm_new_alias.vis | 12 -------- services/registration/confirm_new_alias_swa | 2 -- 6 files changed, 51 deletions(-) delete mode 100644 services/registration/confirm_new_alias delete mode 100644 services/registration/confirm_new_alias.vis delete mode 100644 services/registration/confirm_new_alias_swa diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index 3a459ed..23563ed 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -2703,38 +2703,6 @@ func (h *MenuHandlers) GetSuggestedAlias(ctx context.Context, sym string, input return res, nil } -// ConfirmNewAlias reads the suggested alias from the [DATA_SUGGECTED_ALIAS] key and confirms it as the new account alias. -func (h *MenuHandlers) ConfirmNewAlias(ctx context.Context, sym string, input []byte) (resource.Result, error) { - var res resource.Result - store := h.userdataStore - logdb := h.logDb - - flag_alias_set, _ := h.flagManager.GetFlag("flag_alias_set") - - sessionId, ok := ctx.Value("SessionId").(string) - if !ok { - return res, fmt.Errorf("missing session") - } - newAlias, err := store.ReadEntry(ctx, sessionId, storedb.DATA_SUGGESTED_ALIAS) - if err != nil { - return res, nil - } - logg.InfoCtxf(ctx, "Confirming new alias", "alias", string(newAlias)) - err = store.WriteEntry(ctx, sessionId, storedb.DATA_ACCOUNT_ALIAS, []byte(string(newAlias))) - if err != nil { - logg.ErrorCtxf(ctx, "failed to clear DATA_ACCOUNT_ALIAS_VALUE entry with", "key", storedb.DATA_ACCOUNT_ALIAS, "value", "empty", "error", err) - return res, err - } - - err = logdb.WriteLogEntry(ctx, sessionId, storedb.DATA_ACCOUNT_ALIAS, []byte(newAlias)) - if err != nil { - logg.DebugCtxf(ctx, "Failed to write account alias db log entry", "key", storedb.DATA_ACCOUNT_ALIAS, "value", newAlias) - } - - res.FlagSet = append(res.FlagSet, flag_alias_set) - return res, nil -} - // ClearTemporaryValue empties the DATA_TEMPORARY_VALUE at the main menu to prevent // previously stored data from being accessed func (h *MenuHandlers) ClearTemporaryValue(ctx context.Context, sym string, input []byte) (resource.Result, error) { diff --git a/handlers/local.go b/handlers/local.go index 4ff1e13..2abf001 100644 --- a/handlers/local.go +++ b/handlers/local.go @@ -131,7 +131,6 @@ func (ls *LocalHandlerService) GetHandler(accountService remote.AccountService) ls.DbRs.AddLocalFunc("reset_invalid_pin", appHandlers.ResetInvalidPIN) ls.DbRs.AddLocalFunc("request_custom_alias", appHandlers.RequestCustomAlias) ls.DbRs.AddLocalFunc("get_suggested_alias", appHandlers.GetSuggestedAlias) - ls.DbRs.AddLocalFunc("confirm_new_alias", appHandlers.ConfirmNewAlias) ls.DbRs.AddLocalFunc("check_account_created", appHandlers.CheckAccountCreated) ls.DbRs.AddLocalFunc("reset_api_call_failure", appHandlers.ResetApiCallFailure) ls.DbRs.AddLocalFunc("swap_to_list", appHandlers.LoadSwapToList) diff --git a/services/registration/alias_updated.vis b/services/registration/alias_updated.vis index fcbfc17..832ef22 100644 --- a/services/registration/alias_updated.vis +++ b/services/registration/alias_updated.vis @@ -1,5 +1,3 @@ -LOAD confirm_new_alias 0 -RELOAD confirm_new_alias MOUT back 0 MOUT quit 9 HALT diff --git a/services/registration/confirm_new_alias b/services/registration/confirm_new_alias deleted file mode 100644 index 6cc2cc3..0000000 --- a/services/registration/confirm_new_alias +++ /dev/null @@ -1,2 +0,0 @@ -Your full alias will be: {{.get_suggested_alias}} -Please enter your PIN to confirm: diff --git a/services/registration/confirm_new_alias.vis b/services/registration/confirm_new_alias.vis deleted file mode 100644 index ea79412..0000000 --- a/services/registration/confirm_new_alias.vis +++ /dev/null @@ -1,12 +0,0 @@ -LOAD reset_invalid_pin 6 -RELOAD reset_invalid_pin -LOAD get_suggested_alias 0 -RELOAD get_suggested_alias -MAP get_suggested_alias -MOUT back 0 -HALT -INCMP _ 0 -RELOAD authorize_account -CATCH incorrect_pin flag_incorrect_pin 1 -CATCH invalid_pin flag_invalid_pin 1 -CATCH update_alias flag_allow_update 1 diff --git a/services/registration/confirm_new_alias_swa b/services/registration/confirm_new_alias_swa deleted file mode 100644 index e622e9c..0000000 --- a/services/registration/confirm_new_alias_swa +++ /dev/null @@ -1,2 +0,0 @@ -Lakabu yako kamili itakuwa: {{.get_suggested_alias}} -Tafadhali weka PIN yako ili kuthibitisha: From 619edc39f8c0424b0dffe8c86e08f9189b7368f4 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 17:52:59 +0300 Subject: [PATCH 09/12] remove unused function GetSuggestedAlias --- handlers/application/menuhandler.go | 18 ------------------ handlers/local.go | 1 - 2 files changed, 19 deletions(-) diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index 23563ed..b2673cf 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -2685,24 +2685,6 @@ func sanitizeAliasHint(input string) string { return input } -// GetSuggestedAlias loads and displays the suggested alias name from the temporary value -func (h *MenuHandlers) GetSuggestedAlias(ctx context.Context, sym string, input []byte) (resource.Result, error) { - var res resource.Result - store := h.userdataStore - - sessionId, ok := ctx.Value("SessionId").(string) - if !ok { - return res, fmt.Errorf("missing session") - } - suggestedAlias, err := store.ReadEntry(ctx, sessionId, storedb.DATA_SUGGESTED_ALIAS) - if err != nil && len(suggestedAlias) <= 0 { - logg.ErrorCtxf(ctx, "failed to read suggested alias", "key", storedb.DATA_SUGGESTED_ALIAS, "error", err) - return res, nil - } - res.Content = string(suggestedAlias) - return res, nil -} - // ClearTemporaryValue empties the DATA_TEMPORARY_VALUE at the main menu to prevent // previously stored data from being accessed func (h *MenuHandlers) ClearTemporaryValue(ctx context.Context, sym string, input []byte) (resource.Result, error) { diff --git a/handlers/local.go b/handlers/local.go index 2abf001..ed64020 100644 --- a/handlers/local.go +++ b/handlers/local.go @@ -130,7 +130,6 @@ func (ls *LocalHandlerService) GetHandler(accountService remote.AccountService) ls.DbRs.AddLocalFunc("clear_temporary_value", appHandlers.ClearTemporaryValue) ls.DbRs.AddLocalFunc("reset_invalid_pin", appHandlers.ResetInvalidPIN) ls.DbRs.AddLocalFunc("request_custom_alias", appHandlers.RequestCustomAlias) - ls.DbRs.AddLocalFunc("get_suggested_alias", appHandlers.GetSuggestedAlias) ls.DbRs.AddLocalFunc("check_account_created", appHandlers.CheckAccountCreated) ls.DbRs.AddLocalFunc("reset_api_call_failure", appHandlers.ResetApiCallFailure) ls.DbRs.AddLocalFunc("swap_to_list", appHandlers.LoadSwapToList) From b1eb4609888a1ca7bcfd8649abe1eea6aa77edbf Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 18:55:17 +0300 Subject: [PATCH 10/12] add a isAliasUnavailable helper function --- handlers/application/menuhandler.go | 31 +++++++++++++++++++---------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index b2673cf..7b0a8ad 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -2613,11 +2613,8 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input if err == nil && len(existingAlias) > 0 { logg.InfoCtxf(ctx, "Current alias", "alias", string(existingAlias)) - // Call the alias resolver to check if the preferred alias is available - fqdn := fmt.Sprintf("%s.%s", sanitizedInput, "sarafu.eth") - logg.InfoCtxf(ctx, "Checking if the fqdn alias is taken", "fqdn", fqdn) - AliasAddress, err := h.accountService.CheckAliasAddress(ctx, fqdn) - if err == nil && len(AliasAddress.Address) > 0 { // if the alias exists / is not available + unavailable, err := h.isAliasUnavailable(ctx, sanitizedInput) + if err == nil && unavailable { res.FlagSet = append(res.FlagSet, flag_alias_unavailable) res.FlagReset = append(res.FlagReset, flag_api_error) return res, nil @@ -2637,11 +2634,8 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input } else { logg.InfoCtxf(ctx, "Registering a new alias", "err", err) - // Call the alias resolver to check if the preferred alias is available - fqdn := fmt.Sprintf("%s.%s", sanitizedInput, "sarafu.eth") - logg.InfoCtxf(ctx, "Checking if the fqdn alias is taken", "fqdn", fqdn) - _, err = h.accountService.CheckAliasAddress(ctx, fqdn) - if err == nil { // if the alias exists / is not available + unavailable, err := h.isAliasUnavailable(ctx, sanitizedInput) + if err == nil && unavailable { res.FlagSet = append(res.FlagSet, flag_alias_unavailable) res.FlagReset = append(res.FlagReset, flag_api_error) return res, nil @@ -2659,7 +2653,7 @@ func (h *MenuHandlers) RequestCustomAlias(ctx context.Context, sym string, input res.FlagReset = append(res.FlagReset, flag_api_error) alias = aliasResult.Alias - logg.InfoCtxf(ctx, "Suggested alias", "alias", alias) + logg.InfoCtxf(ctx, "Registered alias", "alias", alias) } //Store the new account alias @@ -2685,6 +2679,21 @@ func sanitizeAliasHint(input string) string { return input } +func (h *MenuHandlers) isAliasUnavailable(ctx context.Context, alias string) (bool, error) { + fqdn := fmt.Sprintf("%s.%s", alias, "sarafu.eth") + logg.InfoCtxf(ctx, "Checking if the fqdn alias is taken", "fqdn", fqdn) + + aliasAddress, err := h.accountService.CheckAliasAddress(ctx, fqdn) + if err != nil { + return false, err + } + if len(aliasAddress.Address) > 0 { + return true, nil + } + + return false, nil +} + // ClearTemporaryValue empties the DATA_TEMPORARY_VALUE at the main menu to prevent // previously stored data from being accessed func (h *MenuHandlers) ClearTemporaryValue(ctx context.Context, sym string, input []byte) (resource.Result, error) { From 559b67a3e637881c05e94a07f84379018d62a819 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 21:24:16 +0300 Subject: [PATCH 11/12] display the full alias on its own line --- handlers/application/menuhandler.go | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index 7b0a8ad..05f6742 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -1495,7 +1495,7 @@ func (h *MenuHandlers) ShowBlockedAccount(ctx context.Context, sym string, input return res, nil } -// loadUserContent loads the main user content in the main menu: the alias,balance associated with active voucher +// loadUserContent loads the main user content in the main menu: the alias, balance and active symbol associated with active voucher func loadUserContent(ctx context.Context, activeSym string, balance string, alias string) (string, error) { var content string @@ -1512,7 +1512,7 @@ func loadUserContent(ctx context.Context, activeSym string, balance string, alia // format the final output balStr := fmt.Sprintf("%s %s", formattedAmount, activeSym) if alias != "" { - content = l.Get("%s balance: %s\n", alias, balStr) + content = l.Get("%s\n Balance: %s\n", alias, balStr) } else { content = l.Get("Balance: %s\n", balStr) } @@ -1525,7 +1525,6 @@ func (h *MenuHandlers) CheckBalance(ctx context.Context, sym string, input []byt var ( res resource.Result err error - alias string content string ) @@ -1560,11 +1559,8 @@ func (h *MenuHandlers) CheckBalance(ctx context.Context, sym string, input []byt logg.ErrorCtxf(ctx, "failed to read account alias entry with", "key", storedb.DATA_ACCOUNT_ALIAS, "error", err) return res, err } - } else { - alias = strings.Split(string(accAlias), ".")[0] } - - content, err = loadUserContent(ctx, string(activeSym), string(activeBal), alias) + content, err = loadUserContent(ctx, string(activeSym), string(activeBal), string(accAlias)) if err != nil { return res, err } From 44673ef61bbaf851390c862b033a6abe0425be68 Mon Sep 17 00:00:00 2001 From: alfred-mk Date: Mon, 7 Jul 2025 21:25:29 +0300 Subject: [PATCH 12/12] remove extra whitespace --- handlers/application/menuhandler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/handlers/application/menuhandler.go b/handlers/application/menuhandler.go index 05f6742..7db218c 100644 --- a/handlers/application/menuhandler.go +++ b/handlers/application/menuhandler.go @@ -1512,7 +1512,7 @@ func loadUserContent(ctx context.Context, activeSym string, balance string, alia // format the final output balStr := fmt.Sprintf("%s %s", formattedAmount, activeSym) if alias != "" { - content = l.Get("%s\n Balance: %s\n", alias, balStr) + content = l.Get("%s\nBalance: %s\n", alias, balStr) } else { content = l.Get("Balance: %s\n", balStr) }