summaryrefslogtreecommitdiff
path: root/lib/pleroma/upload.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pleroma/upload.ex')
-rw-r--r--lib/pleroma/upload.ex12
1 files changed, 7 insertions, 5 deletions
diff --git a/lib/pleroma/upload.ex b/lib/pleroma/upload.ex
index 3aabf8157..9275eff87 100644
--- a/lib/pleroma/upload.ex
+++ b/lib/pleroma/upload.ex
@@ -1,6 +1,8 @@
defmodule Pleroma.Upload do
+ alias Ecto.UUID
+ alias Pleroma.Web
def store(%Plug.Upload{} = file) do
- uuid = Ecto.UUID.generate
+ uuid = UUID.generate
upload_folder = Path.join(upload_path(), uuid)
File.mkdir_p!(upload_folder)
result_file = Path.join(upload_folder, file.filename)
@@ -21,7 +23,7 @@ defmodule Pleroma.Upload do
def store(%{"img" => "data:image/" <> image_data}) do
parsed = Regex.named_captures(~r/(?<filetype>jpeg|png|gif);base64,(?<data>.*)/, image_data)
data = Base.decode64!(parsed["data"])
- uuid = Ecto.UUID.generate
+ uuid = UUID.generate
upload_folder = Path.join(upload_path(), uuid)
File.mkdir_p!(upload_folder)
filename = Base.encode16(:crypto.hash(:sha256, data)) <> ".#{parsed["filetype"]}"
@@ -44,11 +46,11 @@ defmodule Pleroma.Upload do
end
defp upload_path do
- Application.get_env(:pleroma, Pleroma.Upload)
- |> Keyword.fetch!(:uploads)
+ settings = Application.get_env(:pleroma, Pleroma.Upload)
+ Keyword.fetch!(settings, :uploads)
end
defp url_for(file) do
- "#{Pleroma.Web.base_url()}/media/#{file}"
+ "#{Web.base_url()}/media/#{file}"
end
end