diff options
author | William Pitcock <nenolod@dereferenced.org> | 2018-05-27 10:03:53 +0000 |
---|---|---|
committer | William Pitcock <nenolod@dereferenced.org> | 2018-06-11 22:15:53 +0000 |
commit | a2c4a5a75bc22653553fdf2f3ec25e2c9dd7c66a (patch) | |
tree | d999910b3ba2d6af6d6641827a49bf829ffd938b | |
parent | ad7188fe920c5eaa21c38b5f7781a7ba22173b91 (diff) | |
download | pleroma-a2c4a5a75bc22653553fdf2f3ec25e2c9dd7c66a.tar.gz |
mastodon api: allow setting an account locked or not
-rw-r--r-- | lib/pleroma/web/mastodon_api/mastodon_api_controller.ex | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex index cae81c43d..caff4ad86 100644 --- a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex +++ b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex @@ -72,6 +72,20 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do user end + user = + if locked = params["locked"] do + with locked <- locked == "true", + new_info <- Map.put(user.info, "locked", locked), + change <- User.info_changeset(user, %{info: new_info}), + {:ok, user} <- User.update_and_set_cache(change) do + user + else + _e -> user + end + else + user + end + with changeset <- User.update_changeset(user, params), {:ok, user} <- User.update_and_set_cache(changeset) do if original_user != user do |