Merge remote-tracking branch 'remotes/origin/develop' into 2168-media-preview-proxy
[akkoma] / lib / pleroma / workers / cron / digest_emails_worker.ex
index 0a00129df86ac8e4e162b91c79f5354c54166f28..ee646229f22a727f538e427f89a305e224bab1cf 100644 (file)
@@ -1,5 +1,5 @@
 # Pleroma: A lightweight social networking server
-# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
 # SPDX-License-Identifier: AGPL-3.0-only
 
 defmodule Pleroma.Workers.Cron.DigestEmailsWorker do
@@ -19,7 +19,7 @@ defmodule Pleroma.Workers.Cron.DigestEmailsWorker do
   require Logger
 
   @impl Oban.Worker
-  def perform(_opts, _job) do
+  def perform(_job) do
     config = Config.get([:email_notifications, :digest])
 
     if config[:active] do
@@ -31,11 +31,14 @@ defmodule Pleroma.Workers.Cron.DigestEmailsWorker do
 
       from(u in inactive_users_query,
         where: fragment(~s(? ->'digest' @> 'true'), u.email_notifications),
+        where: not is_nil(u.email),
         where: u.last_digest_emailed_at < datetime_add(^now, ^negative_interval, "day"),
         select: u
       )
       |> Repo.all()
       |> send_emails
+    else
+      :ok
     end
   end