manage user pending of moderation - #877
This commit is contained in:
@@ -206,6 +206,7 @@ defmodule Mobilizon.GraphQL.Schema.UserType do
|
||||
value(:administrator, description: "Administrator role")
|
||||
value(:moderator, description: "Moderator role")
|
||||
value(:user, description: "User role")
|
||||
value(:pending, description: "Pending role")
|
||||
end
|
||||
|
||||
@desc "Token"
|
||||
|
||||
@@ -15,7 +15,7 @@ defmodule Mobilizon.Users do
|
||||
alias Mobilizon.Storage.{Page, Repo}
|
||||
alias Mobilizon.Users.{ActivitySetting, PushSubscription, Setting, User}
|
||||
|
||||
defenum(UserRole, :user_role, [:administrator, :moderator, :user])
|
||||
defenum(UserRole, :user_role, [:administrator, :moderator, :user, :pending])
|
||||
|
||||
defenum(NotificationPendingNotificationDelay,
|
||||
none: 0,
|
||||
|
||||
@@ -70,7 +70,13 @@ defmodule Mobilizon.Web.Email.User do
|
||||
confirmed_at: DateTime.utc_now() |> DateTime.truncate(:second),
|
||||
confirmation_sent_at: nil,
|
||||
confirmation_token: nil,
|
||||
email: user.unconfirmed_email || user.email
|
||||
email: user.unconfirmed_email || user.email,
|
||||
role:
|
||||
if Config.instance_registrations_moderation?() do
|
||||
:pending
|
||||
else
|
||||
user.role
|
||||
end
|
||||
}) do
|
||||
{:ok, %User{} = user} ->
|
||||
Logger.info("User #{user.email} has been confirmed")
|
||||
|
||||
Reference in New Issue
Block a user