aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2018-04-25 16:10:18 +0200
committerlain <lain@soykaf.club>2018-04-25 16:11:07 +0200
commita7eb148d6100d20e19a33cb1c1132657b8a9ada1 (patch)
treec22d3365e29213cd1c3c8decddd2ca51de952bbd /lib
parent279b1d19f0bf90b76f37256ef20993f821e3024f (diff)
downloadpleroma-a7eb148d6100d20e19a33cb1c1132657b8a9ada1.tar.gz
Optionally deactivate public timelines.
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/web/router.ex32
1 files changed, 20 insertions, 12 deletions
diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex
index 8f63fdc70..cecf5527c 100644
--- a/lib/pleroma/web/router.ex
+++ b/lib/pleroma/web/router.ex
@@ -5,6 +5,8 @@ defmodule Pleroma.Web.Router do
@instance Application.get_env(:pleroma, :instance)
@federating Keyword.get(@instance, :federating)
+ @public Keyword.get(@instance, :public)
+ @registrations_open Keyword.get(@instance, :registrations_open)
def user_fetcher(username) do
{:ok, Repo.get_by(User, %{nickname: username})}
@@ -160,21 +162,9 @@ defmodule Pleroma.Web.Router do
get("/statusnet/version", TwitterAPI.UtilController, :version)
end
- @instance Application.get_env(:pleroma, :instance)
- @registrations_open Keyword.get(@instance, :registrations_open)
-
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_and_external_timeline
- )
-
- get("/statuses/networkpublic_timeline", TwitterAPI.Controller, :public_and_external_timeline)
get("/statuses/user_timeline", TwitterAPI.Controller, :user_timeline)
get("/qvitter/statuses/user_timeline", TwitterAPI.Controller, :user_timeline)
get("/users/show", TwitterAPI.Controller, :show_user)
@@ -193,6 +183,24 @@ defmodule Pleroma.Web.Router do
end
scope "/api", Pleroma.Web do
+ if @public do
+ pipe_through(:api)
+ else
+ pipe_through(:authenticated_api)
+ end
+
+ get("/statuses/public_timeline", TwitterAPI.Controller, :public_timeline)
+
+ get(
+ "/statuses/public_and_external_timeline",
+ TwitterAPI.Controller,
+ :public_and_external_timeline
+ )
+
+ get("/statuses/networkpublic_timeline", TwitterAPI.Controller, :public_and_external_timeline)
+ end
+
+ scope "/api", Pleroma.Web do
pipe_through(:authenticated_api)
get("/account/verify_credentials", TwitterAPI.Controller, :verify_credentials)