From d6fd40798b1a698c1156e8deb0b6106b98d8371a Mon Sep 17 00:00:00 2001
From: Mart van Santen <mart@greenhost.nl>
Date: Thu, 9 Dec 2021 09:09:08 +0100
Subject: [PATCH] Rewrite recovery URL

---
 login/kratos.py | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/login/kratos.py b/login/kratos.py
index 12a7585..37a1994 100644
--- a/login/kratos.py
+++ b/login/kratos.py
@@ -242,6 +242,11 @@ class KratosUser():
             # be able to catch the cookies.
             opener = urllib.request.build_opener(RedirectFilter)
             print(f"Opening: {recovery_url}")
+            search = re.match(r'.*\?flow=(.*)', url)
+            search = re.match(r'.*(self-service.recovery.flow.*)$', recovery_url)
+            if search:
+                recovery_url = api_url + "/" . search.group(1)
+            print(f"Opening: {recovery_url}")
             opener.open(recovery_url)
         # If we do not have a 2xx status, urllib throws an error, as we "stopped"
         # at our redirect, we expect a 3xx status
-- 
GitLab