From 890bd51a506fdb468e5569daea8b6a24009e86d3 Mon Sep 17 00:00:00 2001
From: Johan de Klerk <johan@shiplogic.com>
Date: Mon, 8 May 2023 13:26:58 +0200
Subject: [PATCH] Absa: Check for password change screen

---
 bank_transactions/absa_bank_transactions.go | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/bank_transactions/absa_bank_transactions.go b/bank_transactions/absa_bank_transactions.go
index 8152342..1f2400b 100644
--- a/bank_transactions/absa_bank_transactions.go
+++ b/bank_transactions/absa_bank_transactions.go
@@ -23,6 +23,8 @@ type AbsaLoginInfo struct {
 	IsDebug           bool
 }
 
+var ErrPasswordChange = errors.Error("Absa CIB requires a password change")
+
 const (
 	sleepTime = time.Second * 2
 )
@@ -194,6 +196,10 @@ func login(client *resty.Client, loginInfo AbsaLoginInfo) error {
 		}
 	}
 
+	if strings.Contains(string(responseBytes), "New Password") {
+		return ErrPasswordChange
+	}
+
 	return nil
 }
 
-- 
GitLab