X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fuploaders%2Flocal.ex;h=d96481c8d48707cc7afd808c01bbf5a2df737a1f;hb=48b95a9b954b6d9e1b6f98097b35fcca4172c8a0;hp=7e5d7a59bf746d1c278522b0c0288ec7ed9370bf;hpb=709816a0f891d6c26c43b54577a3b727c1fe4af6;p=akkoma diff --git a/lib/pleroma/uploaders/local.ex b/lib/pleroma/uploaders/local.ex index 7e5d7a59b..d96481c8d 100644 --- a/lib/pleroma/uploaders/local.ex +++ b/lib/pleroma/uploaders/local.ex @@ -1,7 +1,10 @@ defmodule Pleroma.Uploaders.Local do - def put_file(name, uuid, file, content_type) do + @behaviour Pleroma.Uploaders.Uploader - upload_path = get_upload_path(uuid, should_dedupe) + alias Pleroma.Web + + def put_file(name, uuid, tmpfile, _content_type, should_dedupe) do + upload_folder = get_upload_path(uuid, should_dedupe) url_path = get_url(name, uuid, should_dedupe) File.mkdir_p!(upload_folder) @@ -9,12 +12,12 @@ defmodule Pleroma.Uploaders.Local do result_file = Path.join(upload_folder, name) if File.exists?(result_file) do - File.rm!(file.path) + File.rm!(tmpfile) else - File.cp!(file.path, result_file) + File.cp!(tmpfile, result_file) end - url_path + {:ok, url_path} end def upload_path do @@ -39,6 +42,10 @@ defmodule Pleroma.Uploaders.Local do end defp url_for(file) do - "#{Web.base_url()}/media/#{file}" + settings = Application.get_env(:pleroma, Pleroma.Uploaders.Local) + + Keyword.get(settings, :uploads_url) + |> String.replace("{{file}}", file) + |> String.replace("{{base_url}}", Web.base_url()) end end