projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
removing unnecessary with
[akkoma]
/
lib
/
pleroma
/
upload
/
filter
/
dedupe.ex
diff --git
a/lib/pleroma/upload/filter/dedupe.ex
b/lib/pleroma/upload/filter/dedupe.ex
index 28091a627229c418c8f0528bfa5117209b13723d..14928c355484165dd06f544fc4ce80a7bbf034c1 100644
(file)
--- a/
lib/pleroma/upload/filter/dedupe.ex
+++ b/
lib/pleroma/upload/filter/dedupe.ex
@@
-1,10
+1,24
@@
+# Pleroma: A lightweight social networking server
+# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# SPDX-License-Identifier: AGPL-3.0-only
+
defmodule Pleroma.Upload.Filter.Dedupe do
@behaviour Pleroma.Upload.Filter
defmodule Pleroma.Upload.Filter.Dedupe do
@behaviour Pleroma.Upload.Filter
+ alias Pleroma.Upload
+
+ def filter(%Upload{name: name, tempfile: tempfile} = upload) do
+ extension =
+ name
+ |> String.split(".")
+ |> List.last()
+
+ shasum =
+ :crypto.hash(:sha256, File.read!(tempfile))
+ |> Base.encode16(case: :lower)
- def filter(upload = %Pleroma.Upload{name: name, tempfile: path}) do
- extension = String.split(name, ".") |> List.last()
- shasum = :crypto.hash(:sha256, File.read!(upload.tempfile)) |> Base.encode16(case: :lower)
filename = shasum <> "." <> extension
filename = shasum <> "." <> extension
- {:ok, %
Pleroma.
Upload{upload | id: shasum, path: filename}}
+ {:ok, %Upload{upload | id: shasum, path: filename}}
end
end
+
+ def filter(_), do: :ok
end
end