ListController: DRY up stuff.
authorlain <lain@soykaf.club>
Wed, 2 Sep 2020 16:32:00 +0000 (18:32 +0200)
committerlain <lain@soykaf.club>
Wed, 2 Sep 2020 16:32:00 +0000 (18:32 +0200)
lib/pleroma/web/mastodon_api/controllers/list_controller.ex

index 4df13cb8100a0095d6a106f82b073f0a2f7b90c8..5daeaa78002ab47fe45363d4e28fe362f27b4988 100644 (file)
@@ -74,7 +74,7 @@ defmodule Pleroma.Web.MastodonAPI.ListController do
 
   # DELETE /api/v1/lists/:id/accounts
   def remove_from_list(
-        %{assigns: %{list: list}, body_params: %{account_ids: account_ids}} = conn,
+        %{assigns: %{list: list}, params: %{account_ids: account_ids}} = conn,
         _
       ) do
     Enum.each(account_ids, fn account_id ->
@@ -86,17 +86,8 @@ defmodule Pleroma.Web.MastodonAPI.ListController do
     json(conn, %{})
   end
 
-  def remove_from_list(
-        %{assigns: %{list: list}, params: %{account_ids: account_ids}} = conn,
-        _
-      ) do
-    Enum.each(account_ids, fn account_id ->
-      with %User{} = followed <- User.get_cached_by_id(account_id) do
-        Pleroma.List.unfollow(list, followed)
-      end
-    end)
-
-    json(conn, %{})
+  def remove_from_list(%{body_params: params} = conn, _) do
+    remove_from_list(%{conn | params: params}, %{})
   end
 
   defp list_by_id_and_user(%{assigns: %{user: user}, params: %{id: id}} = conn, _) do