Hotlink logo instead of attachment
This commit is contained in:
parent
6875ccb6bf
commit
50d9fcbe29
5 changed files with 19 additions and 21 deletions
|
@ -488,7 +488,7 @@ config :pleroma, Oban,
|
||||||
{"0 * * * *", Pleroma.Workers.Cron.StatsWorker},
|
{"0 * * * *", Pleroma.Workers.Cron.StatsWorker},
|
||||||
{"* * * * *", Pleroma.Workers.Cron.PurgeExpiredActivitiesWorker},
|
{"* * * * *", Pleroma.Workers.Cron.PurgeExpiredActivitiesWorker},
|
||||||
{"0 0 * * 0", Pleroma.Workers.Cron.DigestEmailsWorker},
|
{"0 0 * * 0", Pleroma.Workers.Cron.DigestEmailsWorker},
|
||||||
{"0 0 * * *", Pleroma.Workers.NewUsersDigestWorker}
|
{"0 0 * * *", Pleroma.Workers.Cron.NewUsersDigestWorker}
|
||||||
]
|
]
|
||||||
|
|
||||||
config :pleroma, :workers,
|
config :pleroma, :workers,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# Pleroma: A lightweight social networking server
|
# 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
|
# SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
|
||||||
defmodule Pleroma.Emails.NewUsersDigestEmail do
|
defmodule Pleroma.Emails.NewUsersDigestEmail do
|
||||||
|
@ -12,14 +12,10 @@ defmodule Pleroma.Emails.NewUsersDigestEmail do
|
||||||
def new_users(to, users_and_statuses) do
|
def new_users(to, users_and_statuses) do
|
||||||
instance_name = Pleroma.Config.get([:instance, :name])
|
instance_name = Pleroma.Config.get([:instance, :name])
|
||||||
styling = Pleroma.Config.get([Pleroma.Emails.UserEmail, :styling])
|
styling = Pleroma.Config.get([Pleroma.Emails.UserEmail, :styling])
|
||||||
logo = Pleroma.Config.get([Pleroma.Emails.UserEmail, :logo])
|
|
||||||
|
|
||||||
logo_path =
|
logo_url =
|
||||||
if is_nil(logo) do
|
Pleroma.Web.Endpoint.url() <>
|
||||||
Path.join(:code.priv_dir(:pleroma), "static/static/logo.png")
|
Pleroma.Config.get([:frontend_configurations, :pleroma_fe, :logo])
|
||||||
else
|
|
||||||
Path.join(Pleroma.Config.get([:instance, :static_dir]), logo)
|
|
||||||
end
|
|
||||||
|
|
||||||
new()
|
new()
|
||||||
|> to({to.name, to.email})
|
|> to({to.name, to.email})
|
||||||
|
@ -29,8 +25,8 @@ defmodule Pleroma.Emails.NewUsersDigestEmail do
|
||||||
title: "New Users",
|
title: "New Users",
|
||||||
users_and_statuses: users_and_statuses,
|
users_and_statuses: users_and_statuses,
|
||||||
instance: instance_name,
|
instance: instance_name,
|
||||||
styling: styling
|
styling: styling,
|
||||||
|
logo_url: logo_url
|
||||||
})
|
})
|
||||||
|> attachment(Swoosh.Attachment.new(logo_path, filename: "logo.png", type: :inline))
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -128,7 +128,7 @@
|
||||||
<div align="center" class="img-container center"
|
<div align="center" class="img-container center"
|
||||||
style="padding-right: 0px;padding-left: 0px;">
|
style="padding-right: 0px;padding-left: 0px;">
|
||||||
<!--[if mso]><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr style="line-height:0px"><td style="padding-right: 0px;padding-left: 0px;" align="center"><![endif]--><img
|
<!--[if mso]><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr style="line-height:0px"><td style="padding-right: 0px;padding-left: 0px;" align="center"><![endif]--><img
|
||||||
align="center" alt="Image" border="0" class="center" src="cid:logo.png"
|
align="center" alt="Image" border="0" class="center" src="<%= @logo_url %>"
|
||||||
style="text-decoration: none; -ms-interpolation-mode: bicubic; border: 0; height: 80px; width: auto; max-height: 80px; display: block;"
|
style="text-decoration: none; -ms-interpolation-mode: bicubic; border: 0; height: 80px; width: auto; max-height: 80px; display: block;"
|
||||||
title="Image" height="80" />
|
title="Image" height="80" />
|
||||||
<!--[if mso]></td></tr></table><![endif]-->
|
<!--[if mso]></td></tr></table><![endif]-->
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
# Pleroma: A lightweight social networking server
|
# 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
|
# SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
|
||||||
defmodule Pleroma.Workers.NewUsersDigestWorker do
|
defmodule Pleroma.Workers.Cron.NewUsersDigestWorker do
|
||||||
alias Pleroma.Activity
|
alias Pleroma.Activity
|
||||||
alias Pleroma.Repo
|
alias Pleroma.Repo
|
||||||
alias Pleroma.User
|
alias Pleroma.User
|
||||||
|
@ -48,11 +48,13 @@ defmodule Pleroma.Workers.NewUsersDigestWorker do
|
||||||
{user, total_statuses, latest_status}
|
{user, total_statuses, latest_status}
|
||||||
end)
|
end)
|
||||||
|
|
||||||
%{is_admin: true}
|
if users_and_statuses != [] do
|
||||||
|> User.Query.build()
|
%{is_admin: true}
|
||||||
|> Repo.all()
|
|> User.Query.build()
|
||||||
|> Enum.map(&Pleroma.Emails.NewUsersDigestEmail.new_users(&1, users_and_statuses))
|
|> Repo.all()
|
||||||
|> Enum.each(&Pleroma.Emails.Mailer.deliver/1)
|
|> Enum.map(&Pleroma.Emails.NewUsersDigestEmail.new_users(&1, users_and_statuses))
|
||||||
|
|> Enum.each(&Pleroma.Emails.Mailer.deliver/1)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
|
@ -1,5 +1,5 @@
|
||||||
# Pleroma: A lightweight social networking server
|
# 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
|
# SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
|
||||||
defmodule Pleroma.Workers.Cron.NewUsersDigestWorkerTest do
|
defmodule Pleroma.Workers.Cron.NewUsersDigestWorkerTest do
|
||||||
|
@ -8,7 +8,7 @@ defmodule Pleroma.Workers.Cron.NewUsersDigestWorkerTest do
|
||||||
|
|
||||||
alias Pleroma.Tests.ObanHelpers
|
alias Pleroma.Tests.ObanHelpers
|
||||||
alias Pleroma.Web.CommonAPI
|
alias Pleroma.Web.CommonAPI
|
||||||
alias Pleroma.Workers.NewUsersDigestWorker
|
alias Pleroma.Workers.Cron.NewUsersDigestWorker
|
||||||
|
|
||||||
test "it sends new users digest emails" do
|
test "it sends new users digest emails" do
|
||||||
yesterday = NaiveDateTime.utc_now() |> Timex.shift(days: -1)
|
yesterday = NaiveDateTime.utc_now() |> Timex.shift(days: -1)
|
||||||
|
|
Loading…
Reference in a new issue