use a single set_language function for setting and changing language
This commit is contained in:
		
							parent
							
								
									dc14480519
								
							
						
					
					
						commit
						065c8e5c1d
					
				@ -84,7 +84,7 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	rs.AddLocalFunc("select_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("set_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("create_account", ussdHandlers.CreateAccount)
 | 
			
		||||
	rs.AddLocalFunc("save_pin", ussdHandlers.SavePin)
 | 
			
		||||
	rs.AddLocalFunc("verify_pin", ussdHandlers.VerifyPin)
 | 
			
		||||
@ -116,7 +116,6 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	rs.AddLocalFunc("reset_incorrect_date_format", ussdHandlers.ResetIncorrectYob)
 | 
			
		||||
	rs.AddLocalFunc("set_reset_single_edit", ussdHandlers.SetResetSingleEdit)
 | 
			
		||||
	rs.AddLocalFunc("initiate_transaction", ussdHandlers.InitiateTransaction)
 | 
			
		||||
	rs.AddLocalFunc("set_new_language", ussdHandlers.SetNewLanguage)
 | 
			
		||||
 | 
			
		||||
	return ussdHandlers, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -54,7 +54,7 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	rs.AddLocalFunc("select_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("set_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("create_account", ussdHandlers.CreateAccount)
 | 
			
		||||
	rs.AddLocalFunc("save_pin", ussdHandlers.SavePin)
 | 
			
		||||
	rs.AddLocalFunc("verify_pin", ussdHandlers.VerifyPin)
 | 
			
		||||
@ -86,7 +86,6 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	rs.AddLocalFunc("reset_incorrect_date_format", ussdHandlers.ResetIncorrectYob)
 | 
			
		||||
	rs.AddLocalFunc("set_reset_single_edit", ussdHandlers.SetResetSingleEdit)
 | 
			
		||||
	rs.AddLocalFunc("initiate_transaction", ussdHandlers.InitiateTransaction)
 | 
			
		||||
	rs.AddLocalFunc("set_new_language", ussdHandlers.SetNewLanguage)
 | 
			
		||||
 | 
			
		||||
	return ussdHandlers, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -44,7 +44,7 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	rs.AddLocalFunc("select_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("set_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("create_account", ussdHandlers.CreateAccount)
 | 
			
		||||
	rs.AddLocalFunc("save_pin", ussdHandlers.SavePin)
 | 
			
		||||
	rs.AddLocalFunc("verify_pin", ussdHandlers.VerifyPin)
 | 
			
		||||
@ -76,7 +76,6 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, userdataStore
 | 
			
		||||
	rs.AddLocalFunc("reset_incorrect_date_format", ussdHandlers.ResetIncorrectYob)
 | 
			
		||||
	rs.AddLocalFunc("set_reset_single_edit", ussdHandlers.SetResetSingleEdit)
 | 
			
		||||
	rs.AddLocalFunc("initiate_transaction", ussdHandlers.InitiateTransaction)
 | 
			
		||||
	rs.AddLocalFunc("set_new_language", ussdHandlers.SetNewLanguage)
 | 
			
		||||
 | 
			
		||||
	return ussdHandlers, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -39,7 +39,7 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, pe *persist.P
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	ussdHandlers = ussdHandlers.WithPersister(pe)
 | 
			
		||||
	rs.AddLocalFunc("select_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("set_language", ussdHandlers.SetLanguage)
 | 
			
		||||
	rs.AddLocalFunc("create_account", ussdHandlers.CreateAccount)
 | 
			
		||||
	rs.AddLocalFunc("save_pin", ussdHandlers.SavePin)
 | 
			
		||||
	rs.AddLocalFunc("verify_pin", ussdHandlers.VerifyPin)
 | 
			
		||||
@ -75,7 +75,6 @@ func getHandler(appFlags *asm.FlagParser, rs *resource.DbResource, pe *persist.P
 | 
			
		||||
	rs.AddLocalFunc("verify_new_pin", ussdHandlers.VerifyNewPin)
 | 
			
		||||
	rs.AddLocalFunc("confirm_pin_change", ussdHandlers.ConfirmPinChange)
 | 
			
		||||
	rs.AddLocalFunc("quit_with_help",ussdHandlers.QuitWithHelp)
 | 
			
		||||
	rs.AddLocalFunc("set_new_language", ussdHandlers.SetNewLanguage)
 | 
			
		||||
 | 
			
		||||
	return ussdHandlers, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -121,15 +121,15 @@ func (h *Handlers) Init(ctx context.Context, sym string, input []byte) (resource
 | 
			
		||||
// SetLanguage sets the language across the menu
 | 
			
		||||
func (h *Handlers) SetLanguage(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
			
		||||
	var res resource.Result
 | 
			
		||||
	var err error
 | 
			
		||||
 | 
			
		||||
	inputStr := string(input)
 | 
			
		||||
	switch inputStr {
 | 
			
		||||
	case "0":
 | 
			
		||||
		res.FlagSet = []uint32{state.FLAG_LANG}
 | 
			
		||||
	sym, _ = h.st.Where()
 | 
			
		||||
 | 
			
		||||
	switch sym {
 | 
			
		||||
	case "set_default":
 | 
			
		||||
		res.FlagSet = append(res.FlagSet, state.FLAG_LANG)
 | 
			
		||||
		res.Content = "eng"
 | 
			
		||||
	case "1":
 | 
			
		||||
		res.FlagSet = []uint32{state.FLAG_LANG}
 | 
			
		||||
	case "set_swa":
 | 
			
		||||
		res.FlagSet = append(res.FlagSet, state.FLAG_LANG)
 | 
			
		||||
		res.Content = "swa"
 | 
			
		||||
	default:
 | 
			
		||||
	}
 | 
			
		||||
@ -1045,22 +1045,3 @@ func (h *Handlers) GetProfileInfo(ctx context.Context, sym string, input []byte)
 | 
			
		||||
 | 
			
		||||
	return res, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// SetNewLanguage sets the new language based on user input
 | 
			
		||||
func (h *Handlers) SetNewLanguage(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
			
		||||
	var res resource.Result
 | 
			
		||||
 | 
			
		||||
	inputStr := string(input)
 | 
			
		||||
 | 
			
		||||
	switch inputStr {
 | 
			
		||||
	case "0":
 | 
			
		||||
		res.FlagSet = append(res.FlagSet, state.FLAG_LANG)
 | 
			
		||||
		res.Content = "eng"
 | 
			
		||||
	case "1":
 | 
			
		||||
		res.FlagSet = append(res.FlagSet, state.FLAG_LANG)
 | 
			
		||||
		res.Content = "swa"
 | 
			
		||||
	default:
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	return res, nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user