aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/router.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/web/router.ex')
-rw-r--r--lib/pleroma/web/router.ex36
1 files changed, 22 insertions, 14 deletions
diff --git a/lib/pleroma/web/router.ex b/lib/pleroma/web/router.ex
index 8d93e1ea6..520ac4a8c 100644
--- a/lib/pleroma/web/router.ex
+++ b/lib/pleroma/web/router.ex
@@ -3,6 +3,9 @@ defmodule Pleroma.Web.Router do
alias Pleroma.{Repo, User, Web.Router}
+ @instance Application.get_env(:pleroma, :instance)
+ @federating Keyword.get(@instance, :federating)
+
def user_fetcher(username) do
{:ok, Repo.get_by(User, %{nickname: username})}
end
@@ -228,13 +231,16 @@ defmodule Pleroma.Web.Router do
get "/objects/:uuid", OStatus.OStatusController, :object
get "/activities/:uuid", OStatus.OStatusController, :activity
get "/notice/:id", OStatus.OStatusController, :notice
-
get "/users/:nickname/feed", OStatus.OStatusController, :feed
get "/users/:nickname", OStatus.OStatusController, :feed_redirect
- post "/users/:nickname/salmon", OStatus.OStatusController, :salmon_incoming
- post "/push/hub/:nickname", Websub.WebsubController, :websub_subscription_request
- get "/push/subscriptions/:id", Websub.WebsubController, :websub_subscription_confirmation
- post "/push/subscriptions/:id", Websub.WebsubController, :websub_incoming
+
+ if @federating do
+ post "/users/:nickname/salmon", OStatus.OStatusController, :salmon_incoming
+ post "/push/hub/:nickname", Websub.WebsubController, :websub_subscription_request
+ get "/push/subscriptions/:id", Websub.WebsubController, :websub_subscription_confirmation
+ post "/push/subscriptions/:id", Websub.WebsubController, :websub_incoming
+ end
+
end
pipeline :activitypub do
@@ -242,17 +248,19 @@ defmodule Pleroma.Web.Router do
plug Pleroma.Web.Plugs.HTTPSignaturePlug
end
- scope "/", Pleroma.Web.ActivityPub do
- pipe_through :activitypub
- post "/users/:nickname/inbox", ActivityPubController, :inbox
- post "/inbox", ActivityPubController, :inbox
- end
+ if @federating do
+ scope "/", Pleroma.Web.ActivityPub do
+ pipe_through :activitypub
+ post "/users/:nickname/inbox", ActivityPubController, :inbox
+ post "/inbox", ActivityPubController, :inbox
+ end
- scope "/.well-known", Pleroma.Web do
- pipe_through :well_known
+ scope "/.well-known", Pleroma.Web do
+ pipe_through :well_known
- get "/host-meta", WebFinger.WebFingerController, :host_meta
- get "/webfinger", WebFinger.WebFingerController, :webfinger
+ get "/host-meta", WebFinger.WebFingerController, :host_meta
+ get "/webfinger", WebFinger.WebFingerController, :webfinger
+ end
end
scope "/", Pleroma.Web.MastodonAPI do