Compare commits
No commits in common. "f7de79f51aec0e2d3d792b44aed437f35b3e118c" and "cbe5b211d8829bb486e8ea010e6d13bcc7c4657f" have entirely different histories.
f7de79f51a
...
cbe5b211d8
@ -106,7 +106,7 @@ func (h *MenuHandlers) GetMpesaMaxLimit(ctx context.Context, sym string, input [
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Resolve active pool address
|
// Resolve active pool address
|
||||||
activePoolAddress, _, err := h.resolveActivePoolDetails(ctx, sessionId)
|
activePoolAddress, err := h.resolveActivePoolAddress(ctx, sessionId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
|
|||||||
@ -345,7 +345,7 @@ func (h *MenuHandlers) MaxAmount(ctx context.Context, sym string, input []byte)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Resolve active pool address
|
// Resolve active pool address
|
||||||
activePoolAddress, _, err := h.resolveActivePoolDetails(ctx, sessionId)
|
activePoolAddress, err := h.resolveActivePoolAddress(ctx, sessionId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return res, err
|
return res, err
|
||||||
}
|
}
|
||||||
@ -479,53 +479,22 @@ func (h *MenuHandlers) getRecipientData(ctx context.Context, sessionId string) (
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (h *MenuHandlers) resolveActivePoolDetails(ctx context.Context, sessionId string) (defaultPoolAddress, defaultPoolName []byte, err error) {
|
func (h *MenuHandlers) resolveActivePoolAddress(ctx context.Context, sessionId string) ([]byte, error) {
|
||||||
store := h.userdataStore
|
store := h.userdataStore
|
||||||
|
addr, err := store.ReadEntry(ctx, sessionId, storedb.DATA_ACTIVE_POOL_ADDRESS)
|
||||||
// Try read address
|
if err == nil {
|
||||||
defaultPoolAddress, err = store.ReadEntry(ctx, sessionId, storedb.DATA_ACTIVE_POOL_ADDRESS)
|
return addr, nil
|
||||||
if err != nil && !db.IsNotFound(err) {
|
|
||||||
logg.ErrorCtxf(ctx, "failed to read active pool address", "error", err)
|
|
||||||
return nil, nil, err
|
|
||||||
}
|
}
|
||||||
|
if db.IsNotFound(err) {
|
||||||
// Try read name
|
defaultAddr := []byte(config.DefaultPoolAddress())
|
||||||
defaultPoolName, err = store.ReadEntry(ctx, sessionId, storedb.DATA_ACTIVE_POOL_NAME)
|
if err := store.WriteEntry(ctx, sessionId, storedb.DATA_ACTIVE_POOL_ADDRESS, defaultAddr); err != nil {
|
||||||
if err != nil && !db.IsNotFound(err) {
|
logg.ErrorCtxf(ctx, "failed to write default pool address", "error", err)
|
||||||
logg.ErrorCtxf(ctx, "failed to read active pool name", "error", err)
|
return nil, err
|
||||||
return nil, nil, err
|
}
|
||||||
|
return defaultAddr, nil
|
||||||
}
|
}
|
||||||
|
logg.ErrorCtxf(ctx, "failed to read active pool address", "error", err)
|
||||||
// If both exist, return them
|
return nil, err
|
||||||
if defaultPoolAddress != nil && defaultPoolName != nil {
|
|
||||||
return defaultPoolAddress, defaultPoolName, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// Fallback to config defaults
|
|
||||||
defaultPoolAddress = []byte(config.DefaultPoolAddress())
|
|
||||||
defaultPoolName = []byte(config.DefaultPoolName())
|
|
||||||
|
|
||||||
if err := store.WriteEntry(
|
|
||||||
ctx,
|
|
||||||
sessionId,
|
|
||||||
storedb.DATA_ACTIVE_POOL_ADDRESS,
|
|
||||||
defaultPoolAddress,
|
|
||||||
); err != nil {
|
|
||||||
logg.ErrorCtxf(ctx, "failed to write default pool address", "error", err)
|
|
||||||
return nil, nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
if err := store.WriteEntry(
|
|
||||||
ctx,
|
|
||||||
sessionId,
|
|
||||||
storedb.DATA_ACTIVE_POOL_NAME,
|
|
||||||
defaultPoolName,
|
|
||||||
); err != nil {
|
|
||||||
logg.ErrorCtxf(ctx, "failed to write default pool name", "error", err)
|
|
||||||
return nil, nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return defaultPoolAddress, defaultPoolName, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (h *MenuHandlers) calculateSendCreditLimits(ctx context.Context, poolAddress, fromAddress, toAddress, publicKey, fromDecimal, toDecimal []byte) (string, string, error) {
|
func (h *MenuHandlers) calculateSendCreditLimits(ctx context.Context, poolAddress, fromAddress, toAddress, publicKey, fromDecimal, toDecimal []byte) (string, string, error) {
|
||||||
|
|||||||
@ -3,5 +3,4 @@ RELOAD calculate_pay_debt
|
|||||||
MAP calculate_pay_debt
|
MAP calculate_pay_debt
|
||||||
MOUT back 0
|
MOUT back 0
|
||||||
HALT
|
HALT
|
||||||
INCMP _ 0
|
|
||||||
INCMP confirm_debt_removal *
|
INCMP confirm_debt_removal *
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user