commit 902c1652768b839bf5cd5cf55e355e82deac18e9
parent 9b2a1b303958f0520c701b1df8950bd551e782a9
Author: srfsh <dev@srf.sh>
Date: Thu, 28 Jul 2022 13:45:10 +0300
Zenflows.Keypairoom: implement Andrea's idea
Diffstat:
3 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/src/zenflows/keypairoom/domain.ex b/src/zenflows/keypairoom/domain.ex
@@ -22,8 +22,17 @@ tasks.
"""
alias Zenflows.Restroom
+alias Zenflows.VF.Person
-def keypairoom_server(data) do
- Restroom.keypairoom_server(data)
+def keypairoom_server(false, email) do
+ if Person.Domain.exists_email(email),
+ do: Restroom.keypairoom_server(email),
+ else: {:error, "email doesn't exists"}
+end
+
+def keypairoom_server(true, email) do
+ if Person.Domain.exists_email(email),
+ do: {:error, "email exists"},
+ else: Restroom.keypairoom_server(email)
end
end
diff --git a/src/zenflows/keypairoom/resolv.ex b/src/zenflows/keypairoom/resolv.ex
@@ -22,14 +22,13 @@ require Logger
alias Zenflows.Keypairoom.Domain
-def keypairoom_server(%{user_data: data}, _) do
- case Domain.keypairoom_server(data) do
+def keypairoom_server(%{first_registration: first?, email: email}, _) do
+ case Domain.keypairoom_server(first?, email) do
{:ok, value} ->
{:ok, value}
{:error, reason} ->
- Logger.debug(reason)
- {:error, "something went wrong"}
+ {:error, reason}
end
end
end
diff --git a/src/zenflows/keypairoom/type.ex b/src/zenflows/keypairoom/type.ex
@@ -26,8 +26,8 @@ object :mutation_keypairoom do
field :keypairoom_server, non_null(:string) do
meta only_guest?: true
- @desc "A JSON object encoded as Base64 string."
- arg :user_data, non_null(:string)
+ arg :first_registration, non_null(:boolean)
+ arg :email, non_null(:string)
resolve &Resolv.keypairoom_server/2
end
end