Compare commits
No commits in common. "05749b493a2ed8f181b9fa40cac68d195c623be5" and "b54f3f32b5f4aeabb65933b5bc84142cea674721" have entirely different histories.
05749b493a
...
b54f3f32b5
@ -298,6 +298,8 @@ func (h *Handlers) VerifyPin(ctx context.Context, sym string, input []byte) (res
|
|||||||
if !ok {
|
if !ok {
|
||||||
return res, fmt.Errorf("missing session")
|
return res, fmt.Errorf("missing session")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//AccountPin, _ := utils.ReadEntry(ctx, h.userdataStore, sessionId, utils.DATA_ACCOUNT_PIN)
|
||||||
store := h.userdataStore
|
store := h.userdataStore
|
||||||
AccountPin, err := store.ReadEntry(ctx, sessionId, utils.DATA_ACCOUNT_PIN)
|
AccountPin, err := store.ReadEntry(ctx, sessionId, utils.DATA_ACCOUNT_PIN)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -334,12 +336,6 @@ func (h *Handlers) SaveFirstname(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")
|
|
||||||
|
|
||||||
res.FlagReset = append(res.FlagReset, flag_allow_update)
|
|
||||||
res.FlagSet = append(res.FlagSet, flag_single_edit)
|
|
||||||
|
|
||||||
if len(input) > 0 {
|
if len(input) > 0 {
|
||||||
firstName := string(input)
|
firstName := string(input)
|
||||||
store := h.userdataStore
|
store := h.userdataStore
|
||||||
@ -382,6 +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
|
||||||
@ -402,6 +407,17 @@ func (h *Handlers) SaveLocation(ctx context.Context, sym string, input []byte) (
|
|||||||
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_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
|
||||||
@ -422,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)
|
||||||
|
24
internal/utils/navigationmatcher.go
Normal file
24
internal/utils/navigationmatcher.go
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
package utils
|
||||||
|
|
||||||
|
func MatchNavigationPath(a, b []string) bool {
|
||||||
|
|
||||||
|
if len(a) != len(b) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
//Check if the navigation path matches with single edit
|
||||||
|
for i := range a {
|
||||||
|
if a[i] != b[i] {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetSingleEditExecutionPath(key string) []string {
|
||||||
|
paths := make(map[string][]string)
|
||||||
|
paths["select_gender"] = []string{"root", "main", "my_account", "edit_profile", "select_gender"}
|
||||||
|
paths["save_location"] = []string{"root", "main", "my_account", "edit_profile", "enter_location"}
|
||||||
|
paths["save_yob"] = []string{"root", "main", "my_account", "edit_profile", "enter_yob"}
|
||||||
|
return paths[key]
|
||||||
|
}
|
@ -5,5 +5,5 @@ MOUT back 0
|
|||||||
HALT
|
HALT
|
||||||
INCMP _ 0
|
INCMP _ 0
|
||||||
LOAD save_location 0
|
LOAD save_location 0
|
||||||
CATCH pin_entry flag_single_edit 0
|
CATCH pin_entry flag_single_edit 1
|
||||||
INCMP enter_offerings *
|
INCMP enter_offerings *
|
||||||
|
@ -5,5 +5,5 @@ HALT
|
|||||||
INCMP _ 0
|
INCMP _ 0
|
||||||
LOAD verify_yob 8
|
LOAD verify_yob 8
|
||||||
LOAD save_yob 0
|
LOAD save_yob 0
|
||||||
CATCH pin_entry flag_single_edit 0
|
CATCH pin_entry flag_single_edit 1
|
||||||
INCMP enter_location *
|
INCMP enter_location *
|
||||||
|
@ -6,7 +6,7 @@ MOUT unspecified 3
|
|||||||
MOUT back 0
|
MOUT back 0
|
||||||
HALT
|
HALT
|
||||||
LOAD save_gender 0
|
LOAD save_gender 0
|
||||||
CATCH pin_entry flag_single_edit 0
|
CATCH pin_entry flag_single_edit 1
|
||||||
INCMP _ 0
|
INCMP _ 0
|
||||||
INCMP enter_yob 1
|
INCMP enter_yob 1
|
||||||
INCMP enter_yob 2
|
INCMP enter_yob 2
|
||||||
|
Loading…
Reference in New Issue
Block a user