Disable NewUsersDigestEmail by default
This commit is contained in:
parent
df0b8f1d08
commit
aa0f0d4edd
3 changed files with 41 additions and 35 deletions
|
@ -581,6 +581,8 @@
|
||||||
text_muted_color: "#b9b9ba"
|
text_muted_color: "#b9b9ba"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
config :pleroma, Pleroma.Emails.NewUsersDigestEmail, enabled: false
|
||||||
|
|
||||||
config :prometheus, Pleroma.Web.Endpoint.MetricsExporter, path: "/api/pleroma/app_metrics"
|
config :prometheus, Pleroma.Web.Endpoint.MetricsExporter, path: "/api/pleroma/app_metrics"
|
||||||
|
|
||||||
config :pleroma, Pleroma.ScheduledActivity,
|
config :pleroma, Pleroma.ScheduledActivity,
|
||||||
|
|
|
@ -97,6 +97,8 @@
|
||||||
|
|
||||||
config :pleroma, :modules, runtime_dir: "test/fixtures/modules"
|
config :pleroma, :modules, runtime_dir: "test/fixtures/modules"
|
||||||
|
|
||||||
|
config :pleroma, Pleroma.Emails.NewUsersDigestEmail, enabled: true
|
||||||
|
|
||||||
if File.exists?("./config/test.secret.exs") do
|
if File.exists?("./config/test.secret.exs") do
|
||||||
import_config "test.secret.exs"
|
import_config "test.secret.exs"
|
||||||
else
|
else
|
||||||
|
|
|
@ -13,44 +13,46 @@ defmodule Pleroma.Workers.NewUsersDigestWorker do
|
||||||
|
|
||||||
@impl Oban.Worker
|
@impl Oban.Worker
|
||||||
def perform(_args, _job) do
|
def perform(_args, _job) do
|
||||||
today = NaiveDateTime.utc_now() |> Timex.beginning_of_day()
|
if Pleroma.Config.get([Pleroma.Emails.NewUsersDigestEmail, :enabled]) do
|
||||||
|
today = NaiveDateTime.utc_now() |> Timex.beginning_of_day()
|
||||||
|
|
||||||
a_day_ago =
|
a_day_ago =
|
||||||
today
|
today
|
||||||
|> Timex.shift(days: -1)
|
|> Timex.shift(days: -1)
|
||||||
|> Timex.beginning_of_day()
|
|> Timex.beginning_of_day()
|
||||||
|
|
||||||
users_and_statuses =
|
users_and_statuses =
|
||||||
%{
|
%{
|
||||||
local: true,
|
local: true,
|
||||||
order_by: :inserted_at
|
order_by: :inserted_at
|
||||||
}
|
}
|
||||||
|
|> User.Query.build()
|
||||||
|
|> where([u], u.inserted_at >= ^a_day_ago and u.inserted_at < ^today)
|
||||||
|
|> Repo.all()
|
||||||
|
|> Enum.map(fn user ->
|
||||||
|
latest_status =
|
||||||
|
Activity
|
||||||
|
|> Activity.Queries.by_actor(user.ap_id)
|
||||||
|
|> Activity.Queries.by_type("Create")
|
||||||
|
|> Activity.with_preloaded_object()
|
||||||
|
|> order_by(desc: :inserted_at)
|
||||||
|
|> limit(1)
|
||||||
|
|> Repo.one()
|
||||||
|
|
||||||
|
total_statuses =
|
||||||
|
Activity
|
||||||
|
|> Activity.Queries.by_actor(user.ap_id)
|
||||||
|
|> Activity.Queries.by_type("Create")
|
||||||
|
|> Repo.aggregate(:count, :id)
|
||||||
|
|
||||||
|
{user, total_statuses, latest_status}
|
||||||
|
end)
|
||||||
|
|
||||||
|
%{is_admin: true}
|
||||||
|> User.Query.build()
|
|> User.Query.build()
|
||||||
|> where([u], u.inserted_at >= ^a_day_ago and u.inserted_at < ^today)
|
|
||||||
|> Repo.all()
|
|> Repo.all()
|
||||||
|> Enum.map(fn user ->
|
|> Enum.map(&Pleroma.Emails.NewUsersDigestEmail.new_users(&1, users_and_statuses))
|
||||||
latest_status =
|
|> Enum.each(&Pleroma.Emails.Mailer.deliver/1)
|
||||||
Activity
|
end
|
||||||
|> Activity.Queries.by_actor(user.ap_id)
|
|
||||||
|> Activity.Queries.by_type("Create")
|
|
||||||
|> Activity.with_preloaded_object()
|
|
||||||
|> order_by(desc: :inserted_at)
|
|
||||||
|> limit(1)
|
|
||||||
|> Repo.one()
|
|
||||||
|
|
||||||
total_statuses =
|
|
||||||
Activity
|
|
||||||
|> Activity.Queries.by_actor(user.ap_id)
|
|
||||||
|> Activity.Queries.by_type("Create")
|
|
||||||
|> Repo.aggregate(:count, :id)
|
|
||||||
|
|
||||||
{user, total_statuses, latest_status}
|
|
||||||
end)
|
|
||||||
|
|
||||||
%{is_admin: true}
|
|
||||||
|> User.Query.build()
|
|
||||||
|> Repo.all()
|
|
||||||
|> Enum.map(&Pleroma.Emails.NewUsersDigestEmail.new_users(&1, users_and_statuses))
|
|
||||||
|> Enum.each(&Pleroma.Emails.Mailer.deliver/1)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue