forked from grassrootseconomics/visedriver
		
	use navigation path matching for case selection
This commit is contained in:
		
							parent
							
								
									df260c2288
								
							
						
					
					
						commit
						b54f3f32b5
					
				@ -117,8 +117,8 @@ func (h *Handlers) Init(ctx context.Context, sym string, input []byte) (resource
 | 
				
			|||||||
func (h *Handlers) SetLanguage(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
					func (h *Handlers) SetLanguage(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
				
			||||||
	var res resource.Result
 | 
						var res resource.Result
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	sym, _ = h.st.Where()
 | 
						symbol, _ := h.st.Where()
 | 
				
			||||||
	code := strings.Split(sym, "_")[1]
 | 
						code := strings.Split(symbol, "_")[1]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if !utils.IsValidISO639(code) {
 | 
						if !utils.IsValidISO639(code) {
 | 
				
			||||||
		return res, nil
 | 
							return res, nil
 | 
				
			||||||
@ -279,26 +279,8 @@ func (h *Handlers) ConfirmPinChange(ctx context.Context, sym string, input []byt
 | 
				
			|||||||
// SetResetSingleEdit sets and resets  flags to allow gradual editing of profile information.
 | 
					// SetResetSingleEdit sets and resets  flags to allow gradual editing of profile information.
 | 
				
			||||||
func (h *Handlers) SetResetSingleEdit(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
					func (h *Handlers) SetResetSingleEdit(ctx context.Context, sym string, input []byte) (resource.Result, error) {
 | 
				
			||||||
	var res resource.Result
 | 
						var res resource.Result
 | 
				
			||||||
 | 
					 | 
				
			||||||
	menuOption := string(input)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	flag_allow_update, _ := h.flagManager.GetFlag("flag_allow_update")
 | 
					 | 
				
			||||||
	flag_single_edit, _ := h.flagManager.GetFlag("flag_single_edit")
 | 
						flag_single_edit, _ := h.flagManager.GetFlag("flag_single_edit")
 | 
				
			||||||
 | 
						res.FlagReset = append(res.FlagReset, flag_single_edit)
 | 
				
			||||||
	switch menuOption {
 | 
					 | 
				
			||||||
	case "2":
 | 
					 | 
				
			||||||
		res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
					 | 
				
			||||||
		res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
					 | 
				
			||||||
	case "3":
 | 
					 | 
				
			||||||
		res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
					 | 
				
			||||||
		res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
					 | 
				
			||||||
	case "4":
 | 
					 | 
				
			||||||
		res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
					 | 
				
			||||||
		res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
					 | 
				
			||||||
	default:
 | 
					 | 
				
			||||||
		res.FlagReset = append(res.FlagReset, flag_single_edit)
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	return res, nil
 | 
						return res, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -374,7 +356,6 @@ func (h *Handlers) SaveFamilyname(ctx context.Context, sym string, input []byte)
 | 
				
			|||||||
	if !ok {
 | 
						if !ok {
 | 
				
			||||||
		return res, fmt.Errorf("missing session")
 | 
							return res, fmt.Errorf("missing session")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					 | 
				
			||||||
	if len(input) > 0 {
 | 
						if len(input) > 0 {
 | 
				
			||||||
		familyName := string(input)
 | 
							familyName := string(input)
 | 
				
			||||||
		store := h.userdataStore
 | 
							store := h.userdataStore
 | 
				
			||||||
@ -397,7 +378,15 @@ func (h *Handlers) SaveYob(ctx context.Context, sym string, input []byte) (resou
 | 
				
			|||||||
	if !ok {
 | 
						if !ok {
 | 
				
			||||||
		return res, fmt.Errorf("missing session")
 | 
							return res, fmt.Errorf("missing session")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						flag_allow_update, _ := h.flagManager.GetFlag("flag_allow_update")
 | 
				
			||||||
 | 
						flag_single_edit, _ := h.flagManager.GetFlag("flag_single_edit")
 | 
				
			||||||
 | 
						execPath := utils.GetSingleEditExecutionPath("save_yob")
 | 
				
			||||||
 | 
						isSingleEdit := utils.MatchNavigationPath(execPath, h.st.ExecPath)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if isSingleEdit {
 | 
				
			||||||
 | 
							res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
				
			||||||
 | 
							res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	if len(input) == 4 {
 | 
						if len(input) == 4 {
 | 
				
			||||||
		yob := string(input)
 | 
							yob := string(input)
 | 
				
			||||||
		store := h.userdataStore
 | 
							store := h.userdataStore
 | 
				
			||||||
@ -419,6 +408,16 @@ func (h *Handlers) SaveLocation(ctx context.Context, sym string, input []byte) (
 | 
				
			|||||||
		return res, fmt.Errorf("missing session")
 | 
							return res, fmt.Errorf("missing session")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						flag_allow_update, _ := h.flagManager.GetFlag("flag_allow_update")
 | 
				
			||||||
 | 
						flag_single_edit, _ := h.flagManager.GetFlag("flag_single_edit")
 | 
				
			||||||
 | 
						execPath := utils.GetSingleEditExecutionPath("save_location")
 | 
				
			||||||
 | 
						isSingleEdit := utils.MatchNavigationPath(execPath, h.st.ExecPath)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if isSingleEdit {
 | 
				
			||||||
 | 
							res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
				
			||||||
 | 
							res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if len(input) > 0 {
 | 
						if len(input) > 0 {
 | 
				
			||||||
		location := string(input)
 | 
							location := string(input)
 | 
				
			||||||
		store := h.userdataStore
 | 
							store := h.userdataStore
 | 
				
			||||||
@ -439,6 +438,15 @@ func (h *Handlers) SaveGender(ctx context.Context, sym string, input []byte) (re
 | 
				
			|||||||
	if !ok {
 | 
						if !ok {
 | 
				
			||||||
		return res, fmt.Errorf("missing session")
 | 
							return res, fmt.Errorf("missing session")
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						flag_allow_update, _ := h.flagManager.GetFlag("flag_allow_update")
 | 
				
			||||||
 | 
						flag_single_edit, _ := h.flagManager.GetFlag("flag_single_edit")
 | 
				
			||||||
 | 
						execPath := utils.GetSingleEditExecutionPath("select_gender")
 | 
				
			||||||
 | 
						isSingleEdit := utils.MatchNavigationPath(execPath, h.st.ExecPath)
 | 
				
			||||||
 | 
						if isSingleEdit {
 | 
				
			||||||
 | 
							res.FlagReset = append(res.FlagReset, flag_allow_update)
 | 
				
			||||||
 | 
							res.FlagSet = append(res.FlagSet, flag_single_edit)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	code := codeFromCtx(ctx)
 | 
						code := codeFromCtx(ctx)
 | 
				
			||||||
	if len(input) > 0 {
 | 
						if len(input) > 0 {
 | 
				
			||||||
		gender := string(input)
 | 
							gender := string(input)
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user