62522439c2674e9bfb3c1c8182b172ad3173a7ab
[akkoma] / lib / pleroma / web / mastodon_api / mastodon_api_controller.ex
1 defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do
2 use Pleroma.Web, :controller
3 alias Pleroma.{Repo}
4 alias Pleroma.Web.OAuth.App
5 alias Pleroma.Web
6 alias Pleroma.Web.MastodonAPI.AccountView
7
8 def create_app(conn, params) do
9 with cs <- App.register_changeset(%App{}, params) |> IO.inspect,
10 {:ok, app} <- Repo.insert(cs) |> IO.inspect do
11 res = %{
12 id: app.id,
13 client_id: app.client_id,
14 client_secret: app.client_secret
15 }
16
17 json(conn, res)
18 end
19 end
20
21 def verify_credentials(%{assigns: %{user: user}} = conn, params) do
22 account = AccountView.render("account.json", %{user: user})
23 json(conn, account)
24 end
25
26 def masto_instance(conn, _params) do
27 response = %{
28 uri: Web.base_url,
29 title: Web.base_url,
30 description: "A Pleroma instance, an alternative fediverse server",
31 version: "Pleroma Dev"
32 }
33
34 json(conn, response)
35 end
36 end