aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/twitter_api/twitter_api.ex
diff options
context:
space:
mode:
authorEgor Kislitsyn <egor@kislitsyn.com>2019-03-04 19:55:11 +0700
committerEgor Kislitsyn <egor@kislitsyn.com>2019-03-04 19:55:11 +0700
commiteb84de01439c4ee25f59390e5be4ffa7f36e01b8 (patch)
tree63c935841bf4063278baff298e00724a2db46794 /lib/pleroma/web/twitter_api/twitter_api.ex
parentdd5865535eb16f535ff996eb3dec5e947a905268 (diff)
downloadpleroma-eb84de01439c4ee25f59390e5be4ffa7f36e01b8.tar.gz
allow users to disable their own account
Diffstat (limited to 'lib/pleroma/web/twitter_api/twitter_api.ex')
-rw-r--r--lib/pleroma/web/twitter_api/twitter_api.ex20
1 files changed, 13 insertions, 7 deletions
diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex
index ab6470d78..615a34be9 100644
--- a/lib/pleroma/web/twitter_api/twitter_api.ex
+++ b/lib/pleroma/web/twitter_api/twitter_api.ex
@@ -21,7 +21,7 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
end
def delete(%User{} = user, id) do
- with %Activity{data: %{"type" => _type}} <- Repo.get(Activity, id),
+ with %Activity{data: %{"type" => _type}} <- Activity.get_by_id(id),
{:ok, activity} <- CommonAPI.delete(id, user) do
{:ok, activity}
end
@@ -232,21 +232,27 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
def get_user(user \\ nil, params) do
case params do
%{"user_id" => user_id} ->
- case target = User.get_cached_by_nickname_or_id(user_id) do
+ case User.get_cached_by_nickname_or_id(user_id) do
nil ->
{:error, "No user with such user_id"}
- _ ->
- {:ok, target}
+ %User{info: %{disabled: true}} ->
+ {:error, "User has been disabled"}
+
+ user ->
+ {:ok, user}
end
%{"screen_name" => nickname} ->
- case target = Repo.get_by(User, nickname: nickname) do
+ case User.get_by_nickname(nickname) do
nil ->
{:error, "No user with such screen_name"}
- _ ->
- {:ok, target}
+ %User{info: %{disabled: true}} ->
+ {:error, "User has been disabled"}
+
+ user ->
+ {:ok, user}
end
_ ->