diff --git a/cmd/main.go b/cmd/main.go index 9222c13..57656bf 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -71,6 +71,7 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, pe *persist.P rs.AddLocalFunc("reset_incorrect_date_format", ussdHandlers.ResetIncorrectYob) rs.AddLocalFunc("set_reset_single_edit", ussdHandlers.SetResetSingleEdit) rs.AddLocalFunc("initiate_transaction", ussdHandlers.InitiateTransaction) + rs.AddLocalFunc("quit_with_help",ussdHandlers.QuitWithHelp) return ussdHandlers, nil } diff --git a/internal/handlers/ussd/menuhandler.go b/internal/handlers/ussd/menuhandler.go index 3eef63d..384f784 100644 --- a/internal/handlers/ussd/menuhandler.go +++ b/internal/handlers/ussd/menuhandler.go @@ -569,6 +569,22 @@ func (h *Handlers) Quit(ctx context.Context, sym string, input []byte) (resource return res, nil } +// QuitWithHelp displays helpline information then exits the menu +func (h *Handlers) QuitWithHelp(ctx context.Context, sym string, input []byte) (resource.Result, error) { + var res resource.Result + + flag_account_authorized, _ := h.flagManager.GetFlag("flag_account_authorized") + + code := codeFromCtx(ctx) + l := gotext.NewLocale(translationDir, code) + l.AddDomain("default") + + res.Content = l.Get("For more help,please call: 0757628885") + res.FlagReset = append(res.FlagReset, flag_account_authorized) + return res, nil +} + + // VerifyYob verifies the length of the given input func (h *Handlers) VerifyYob(ctx context.Context, sym string, input []byte) (resource.Result, error) { var res resource.Result diff --git a/services/registration/help.vis b/services/registration/help.vis new file mode 100644 index 0000000..6244d4d --- /dev/null +++ b/services/registration/help.vis @@ -0,0 +1,2 @@ +LOAD quit_with_help 0 +HALT diff --git a/services/registration/main.vis b/services/registration/main.vis index ede8296..d883dca 100644 --- a/services/registration/main.vis +++ b/services/registration/main.vis @@ -10,6 +10,6 @@ HALT INCMP send 1 INCMP quit 2 INCMP my_account 3 -INCMP quit 4 +INCMP help 4 INCMP quit 9 INCMP . *