Allow users to remove their emails if instance does not need email to register

This commit is contained in:
Tusooa Zhu 2021-09-05 20:56:16 -04:00
commit 198250dcef
No known key found for this signature in database
GPG key ID: 7B467EDE43A08224
5 changed files with 95 additions and 6 deletions

View file

@ -2248,7 +2248,7 @@ defmodule Pleroma.User do
def change_email(user, email) do
user
|> cast(%{email: email}, [:email])
|> validate_required([:email])
|> maybe_validate_required_email(false)
|> unique_constraint(:email)
|> validate_format(:email, @email_regex)
|> update_and_set_cache()

View file

@ -121,7 +121,10 @@ defmodule Pleroma.Web.ApiSpec.TwitterUtilOperation do
type: :object,
required: [:email, :password],
properties: %{
email: %Schema{type: :string, description: "New email"},
email: %Schema{
type: :string,
description: "New email. Set to blank to remove the user's email."
},
password: %Schema{type: :string, description: "Current password"}
}
}