diff options
author | lain <lain@soykaf.club> | 2020-04-09 10:42:43 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-04-09 10:42:43 +0000 |
commit | b87b798ca1660224a3192c32b035c19b18e11587 (patch) | |
tree | da57a1de061f640bea071e820c670d25644ff99a /lib | |
parent | d2e21fbc968fbbeb98e9860e1dce77443f4b4cd4 (diff) | |
parent | f20a19de853e8834f7774ee0098a14213bc7427f (diff) | |
download | pleroma-b87b798ca1660224a3192c32b035c19b18e11587.tar.gz |
Merge branch 'fix/1658-invite-send' into 'develop'
Error improvement for email_invite endpoint
See merge request pleroma/pleroma!2344
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/admin_api/admin_api_controller.ex | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index ca5439920..fdbd24acb 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -576,9 +576,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do @doc "Sends registration invite via email" def email_invite(%{assigns: %{user: user}} = conn, %{"email" => email} = params) do - with true <- - Config.get([:instance, :invites_enabled]) && - !Config.get([:instance, :registrations_open]), + with {_, false} <- {:registrations_open, Config.get([:instance, :registrations_open])}, + {_, true} <- {:invites_enabled, Config.get([:instance, :invites_enabled])}, {:ok, invite_token} <- UserInviteToken.create_invite(), email <- Pleroma.Emails.UserEmail.user_invitation_email( @@ -589,6 +588,18 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do ), {:ok, _} <- Pleroma.Emails.Mailer.deliver(email) do json_response(conn, :no_content, "") + else + {:registrations_open, _} -> + errors( + conn, + {:error, "To send invites you need to set the `registrations_open` option to false."} + ) + + {:invites_enabled, _} -> + errors( + conn, + {:error, "To send invites you need to set the `invites_enabled` option to true."} + ) end end |