diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pleroma/web/admin_api/admin_api_controller.ex | 20 | ||||
| -rw-r--r-- | lib/pleroma/web/router.ex | 4 | 
2 files changed, 24 insertions, 0 deletions
diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex index b3a09e49e..84d0aabaf 100644 --- a/lib/pleroma/web/admin_api/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/admin_api_controller.ex @@ -25,6 +25,26 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do      |> json(nickname)    end +  def user_follow(conn, %{"follower" => follower_nick, "followed" => followed_nick}) do +    with %User{} = follower <- Repo.get_by(User, %{nickname: follower_nick}), +         %User{} = followed <- Repo.get_by(User, %{nickname: followed_nick}) do +      User.follow(follower, followed) +    end + +    conn +    |> json("ok") +  end + +  def user_unfollow(conn, %{"follower" => follower_nick, "followed" => followed_nick}) do +    with %User{} = follower <- Repo.get_by(User, %{nickname: follower_nick}), +         %User{} = followed <- Repo.get_by(User, %{nickname: followed_nick}) do +      User.unfollow(follower, followed) +    end + +    conn +    |> json("ok") +  end +    def user_create(          conn,          %{"nickname" => nickname, "email" => email, "password" => password} diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex index 605a327fc..1c752e44c 100644 --- a/lib/pleroma/web/router.ex +++ b/lib/pleroma/web/router.ex @@ -140,8 +140,12 @@ defmodule Pleroma.Web.Router do    scope "/api/pleroma/admin", Pleroma.Web.AdminAPI do      pipe_through([:admin_api, :oauth_write]) +    post("/user/follow", AdminAPIController, :user_follow) +    post("/user/unfollow", AdminAPIController, :user_unfollow) +      get("/users", AdminAPIController, :list_users)      get("/users/:nickname", AdminAPIController, :user_show) +      delete("/user", AdminAPIController, :user_delete)      patch("/users/:nickname/toggle_activation", AdminAPIController, :user_toggle_activation)      post("/user", AdminAPIController, :user_create)  | 
