Add port if specified.

This commit is contained in:
Roger Braun 2017-03-30 14:32:36 +02:00
parent e7dc39e40c
commit d18473f0c3
3 changed files with 21 additions and 15 deletions

View File

@ -20,13 +20,6 @@ defmodule Pleroma.Upload do
end
defp url_for(file) do
host =
Application.get_env(:pleroma, Pleroma.Web.Endpoint)
|> Keyword.fetch!(:url)
|> Keyword.fetch!(:host)
protocol = Application.get_env(:pleroma, Pleroma.Web.Endpoint) |> Keyword.fetch!(:protocol)
"#{protocol}://#{host}/media/#{file}"
"#{Pleroma.Web.base_url()}/media/#{file}"
end
end

View File

@ -29,13 +29,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
end
def generate_id(type) do
host =
Application.get_env(:pleroma, Pleroma.Web.Endpoint)
|> Keyword.fetch!(:url)
|> Keyword.fetch!(:host)
protocol = Application.get_env(:pleroma, Pleroma.Web.Endpoint) |> Keyword.fetch!(:protocol)
"#{protocol}://#{host}/#{type}/#{Ecto.UUID.generate}"
"#{Pleroma.Web.base_url()}/#{type}/#{Ecto.UUID.generate}"
end
def fetch_public_activities(opts \\ %{}) do

View File

@ -60,4 +60,23 @@ defmodule Pleroma.Web do
defmacro __using__(which) when is_atom(which) do
apply(__MODULE__, which, [])
end
def base_url do
settings = Application.get_env(:pleroma, Pleroma.Web.Endpoint)
host =
settings
|> Keyword.fetch!(:url)
|> Keyword.fetch!(:host)
protocol = settings |> Keyword.fetch!(:protocol)
port_fragment = with {:ok, protocol_info} <- settings |> Keyword.fetch(String.to_atom(protocol)),
{:ok, port} <- protocol_info |> Keyword.fetch(:port)
do
":#{port}"
else _e ->
""
end
"#{protocol}://#{host}#{port_fragment}"
end
end