2017-04-20 17:47:33 +02:00
|
|
|
defmodule Pleroma.Web.Websub.WebsubController do
|
|
|
|
use Pleroma.Web, :controller
|
2017-04-22 13:44:21 +02:00
|
|
|
alias Pleroma.User
|
2017-04-22 12:05:48 +02:00
|
|
|
alias Pleroma.Web.Websub
|
2017-04-22 13:44:21 +02:00
|
|
|
|
2017-04-20 17:47:33 +02:00
|
|
|
def websub_subscription_request(conn, %{"nickname" => nickname} = params) do
|
|
|
|
user = User.get_cached_by_nickname(nickname)
|
|
|
|
|
2017-04-22 13:44:21 +02:00
|
|
|
with {:ok, _websub} <- Websub.incoming_subscription_request(user, params)
|
2017-04-20 17:47:33 +02:00
|
|
|
do
|
|
|
|
conn
|
|
|
|
|> send_resp(202, "Accepted")
|
|
|
|
else {:error, reason} ->
|
|
|
|
conn
|
|
|
|
|> send_resp(500, reason)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|