From 241d9ff3c295bfc7b4017969ec08937fc557800b Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Thu, 13 Apr 2023 17:14:15 +0200 Subject: [PATCH 1/3] api: Introduce a new method to retrieve a complete Provider --- happydomain/api.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/happydomain/api.py b/happydomain/api.py index e521221..cff195e 100644 --- a/happydomain/api.py +++ b/happydomain/api.py @@ -74,6 +74,16 @@ class HappyDomain: return ret + def provider_get(self, id): + r = self.session.get( + self.baseurl + "/api/providers/" + quote_plus(id), + ) + + if r.status_code != 200: + raise HappyError(r.status_code, **r.json()) + + return Provider(self, **r.json()) + def provider_add(self, type, name, data): r = self.session.post( self.baseurl + "/api/providers", From 5bef97dedfdd826b4a25e402886651580a9276eb Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Thu, 13 Apr 2023 17:14:35 +0200 Subject: [PATCH 2/3] provider: Fix property retrieval --- happydomain/provider.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/happydomain/provider.py b/happydomain/provider.py index 12174e2..05066bc 100644 --- a/happydomain/provider.py +++ b/happydomain/provider.py @@ -6,14 +6,14 @@ from .domain import Domain class Provider: - def __init__(self, _session, _srctype, _id, _ownerid, _comment, **kwargs): + def __init__(self, _session, _srctype, _id, _ownerid, _comment, Provider={}): self._session = _session self._srctype = _srctype self._id = _id self._ownerid = _ownerid self._comment = _comment - self.args = kwargs + self.args = Provider def _dumps(self): return json.dumps({ From 7735e6b4ac641057b5fc4218ebd37a8f92f77efa Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Thu, 13 Apr 2023 17:14:57 +0200 Subject: [PATCH 3/3] admin: Return the user after creation --- happydomain/admin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/happydomain/admin.py b/happydomain/admin.py index 513fd97..dec5e32 100644 --- a/happydomain/admin.py +++ b/happydomain/admin.py @@ -39,7 +39,7 @@ class Admin: u = AuthUser(self, **r.json()) u.Password = u.ResetPassword(password) - return + return u def authuser_delete(self, Id): r = self.session.delete("http+unix://" + self.socket_path + "/api/auth/" + quote_plus(Id))