check for back option
This commit is contained in:
		
							parent
							
								
									eaac771722
								
							
						
					
					
						commit
						e05dbb4885
					
				@ -27,6 +27,7 @@ var (
 | 
			
		||||
	logg           = logging.NewVanilla().WithDomain("ussdmenuhandler")
 | 
			
		||||
	scriptDir      = path.Join("services", "registration")
 | 
			
		||||
	translationDir = path.Join(scriptDir, "locale")
 | 
			
		||||
	backOption     = []byte("0")
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// FlagManager handles centralized flag management
 | 
			
		||||
@ -326,6 +327,9 @@ func (h *Handlers) SaveFirstname(ctx context.Context, sym string, input []byte)
 | 
			
		||||
		return res, fmt.Errorf("missing session")
 | 
			
		||||
	}
 | 
			
		||||
	if len(input) > 0 {
 | 
			
		||||
		if bytes.Equal(input, backOption) {
 | 
			
		||||
			return res, nil
 | 
			
		||||
		}
 | 
			
		||||
		firstName := string(input)
 | 
			
		||||
		store := h.userdataStore
 | 
			
		||||
		err = store.WriteEntry(ctx, sessionId, utils.DATA_FIRST_NAME, []byte(firstName))
 | 
			
		||||
@ -345,8 +349,10 @@ func (h *Handlers) SaveFamilyname(ctx context.Context, sym string, input []byte)
 | 
			
		||||
	if !ok {
 | 
			
		||||
		return res, fmt.Errorf("missing session")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if len(input) > 0 {
 | 
			
		||||
		if bytes.Equal(input, backOption) {
 | 
			
		||||
			return res, nil
 | 
			
		||||
		}
 | 
			
		||||
		familyName := string(input)
 | 
			
		||||
		store := h.userdataStore
 | 
			
		||||
		err = store.WriteEntry(ctx, sessionId, utils.DATA_FAMILY_NAME, []byte(familyName))
 | 
			
		||||
@ -389,8 +395,10 @@ func (h *Handlers) SaveLocation(ctx context.Context, sym string, input []byte) (
 | 
			
		||||
	if !ok {
 | 
			
		||||
		return res, fmt.Errorf("missing session")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if len(input) > 0 {
 | 
			
		||||
		if bytes.Equal(input, backOption) {
 | 
			
		||||
			return res, nil
 | 
			
		||||
		}
 | 
			
		||||
		location := string(input)
 | 
			
		||||
		store := h.userdataStore
 | 
			
		||||
		err = store.WriteEntry(ctx, sessionId, utils.DATA_LOCATION, []byte(location))
 | 
			
		||||
@ -411,7 +419,9 @@ func (h *Handlers) SaveGender(ctx context.Context, sym string, input []byte) (re
 | 
			
		||||
	if !ok {
 | 
			
		||||
		return res, fmt.Errorf("missing session")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if bytes.Equal(input, backOption) {
 | 
			
		||||
		return res, nil
 | 
			
		||||
	}
 | 
			
		||||
	gender := strings.Split(symbol, "_")[1]
 | 
			
		||||
	store := h.userdataStore
 | 
			
		||||
	err = store.WriteEntry(ctx, sessionId, utils.DATA_GENDER, []byte(gender))
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user