Add registration to the TwAPI controller.
[akkoma] / lib / pleroma / web / router.ex
index 83e4253ce9e532204ccc7e28e5e627a5f58c8a66..2749be5e90bfe0965cdf4a4c158e28417fbc6df8 100644 (file)
@@ -9,17 +9,41 @@ defmodule Pleroma.Web.Router do
 
   pipeline :api do
     plug :accepts, ["json"]
+    plug :fetch_session
+    plug Pleroma.Plugs.AuthenticationPlug, %{fetcher: &Pleroma.Web.Router.user_fetcher/1, optional: true}
   end
 
   pipeline :authenticated_api do
     plug :accepts, ["json"]
     plug :fetch_session
-    plug Pleroma.Plugs.AuthenticationPlug, fetcher: &Pleroma.Web.Router.user_fetcher/1
+    plug Pleroma.Plugs.AuthenticationPlug, %{fetcher: &Pleroma.Web.Router.user_fetcher/1}
+  end
+
+  scope "/api", Pleroma.Web do
+    pipe_through :api
+    get "/statuses/public_timeline", TwitterAPI.Controller, :public_timeline
+    get "/statuses/public_and_external_timeline", TwitterAPI.Controller, :public_timeline
+    get "/statuses/show/:id", TwitterAPI.Controller, :fetch_status
+    get "/statusnet/conversation/:id", TwitterAPI.Controller, :fetch_conversation
+    get "/statusnet/config", TwitterAPI.Controller, :config
+    post "/account/register", TwitterAPI.Controller, :register
   end
 
   scope "/api", Pleroma.Web do
     pipe_through :authenticated_api
 
-    post "/account/verify_credentials.json", TwitterAPI.Controller, :verify_credentials
+    get "/account/verify_credentials", TwitterAPI.Controller, :verify_credentials
+    post "/account/verify_credentials", TwitterAPI.Controller, :verify_credentials
+    post "/statuses/update", TwitterAPI.Controller, :status_update
+    get "/statuses/home_timeline", TwitterAPI.Controller, :friends_timeline
+    get "/statuses/friends_timeline", TwitterAPI.Controller, :friends_timeline
+    post "/friendships/create", TwitterAPI.Controller, :follow
+    post "/friendships/destroy", TwitterAPI.Controller, :unfollow
+    post "/statusnet/media/upload", TwitterAPI.Controller, :upload
+    post "/media/upload", TwitterAPI.Controller, :upload_json
+    post "/favorites/create/:id", TwitterAPI.Controller, :favorite
+    post "/favorites/create", TwitterAPI.Controller, :favorite
+    post "/favorites/destroy/:id", TwitterAPI.Controller, :unfavorite
+    post "/statuses/retweet/:id", TwitterAPI.Controller, :retweet
   end
 end