aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorhref <href@random.sh>2018-12-07 14:07:11 +0100
committerhref <href@random.sh>2018-12-07 14:07:11 +0100
commit3b27f61ffa737dd6f4f9ec3a50c248d9077ddb51 (patch)
tree3a4fe0af9e109eb1ffa1137c7d301e48f2413549 /lib
parent8764f646900f577add5cc606b433870633b2e4d5 (diff)
downloadpleroma-3b27f61ffa737dd6f4f9ec3a50c248d9077ddb51.tar.gz
AnonymizeFilename: allow for a pre-defined text instead of random string
Improve docs
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/upload/filter/anonymize_filename.ex19
1 files changed, 16 insertions, 3 deletions
diff --git a/lib/pleroma/upload/filter/anonymize_filename.ex b/lib/pleroma/upload/filter/anonymize_filename.ex
index a83e764e5..39eed7af3 100644
--- a/lib/pleroma/upload/filter/anonymize_filename.ex
+++ b/lib/pleroma/upload/filter/anonymize_filename.ex
@@ -1,10 +1,23 @@
defmodule Pleroma.Upload.Filter.AnonymizeFilename do
- @moduledoc "Replaces the original filename with a randomly generated string."
+ @moduledoc """
+ Replaces the original filename with a pre-defined text or randomly generated string.
+
+ Should be used after `Pleroma.Upload.Filter.Dedupe`.
+ """
@behaviour Pleroma.Upload.Filter
def filter(upload) do
extension = List.last(String.split(upload.name, "."))
- string = Base.url_encode64(:crypto.strong_rand_bytes(10), padding: false)
- {:ok, %Pleroma.Upload{upload | name: string <> "." <> extension}}
+ name = Pleroma.Config.get([__MODULE__, :text], random(extension))
+ {:ok, %Pleroma.Upload{upload | name: name}}
+ end
+
+ defp random(extension) do
+ string =
+ 10
+ |> :crypto.strong_rand_bytes()
+ |> Base.url_encode64(padding: false)
+
+ string <> "." <> extension
end
end