diff options
-rw-r--r-- | config/config.exs | 3 | ||||
-rw-r--r-- | lib/pleroma/user.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/web/router.ex | 32 |
3 files changed, 23 insertions, 14 deletions
diff --git a/config/config.exs b/config/config.exs index b0f4578d5..d3f9cf6e4 100644 --- a/config/config.exs +++ b/config/config.exs @@ -53,7 +53,8 @@ config :pleroma, :instance, upload_limit: 16_000_000, registrations_open: true, federating: true, - rewrite_policy: Pleroma.Web.ActivityPub.MRF.NoOpPolicy + rewrite_policy: Pleroma.Web.ActivityPub.MRF.NoOpPolicy, + public: true config :pleroma, :mrf_simple, media_removal: [], diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index e9196ae03..207674999 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -104,7 +104,7 @@ defmodule Pleroma.User do |> cast(params, [:bio, :name]) |> unique_constraint(:nickname) |> validate_format(:nickname, ~r/^[a-zA-Z\d]+$/) - |> validate_length(:bio, max: 1000) + |> validate_length(:bio, max: 5000) |> validate_length(:name, min: 1, max: 100) end 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) |