aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMaksim Pechnikov <parallel588@gmail.com>2019-12-04 21:18:05 +0300
committerMaksim Pechnikov <parallel588@gmail.com>2019-12-04 21:18:05 +0300
commit3c3bba0b7c65187b3270ef3402442cf870a55198 (patch)
tree1727e2999f8e957fc96a8fbd6e4bd1dd7676884a /lib
parentc0d572d0bf842fae08c609aa58c82554bee3a263 (diff)
downloadpleroma-3c3bba0b7c65187b3270ef3402442cf870a55198.tar.gz
fix ScheduledActivity
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/scheduled_activity.ex17
1 files changed, 12 insertions, 5 deletions
diff --git a/lib/pleroma/scheduled_activity.ex b/lib/pleroma/scheduled_activity.ex
index ea78dce6a..d01100702 100644
--- a/lib/pleroma/scheduled_activity.ex
+++ b/lib/pleroma/scheduled_activity.ex
@@ -119,11 +119,7 @@ defmodule Pleroma.ScheduledActivity do
def create(%User{} = user, attrs) do
Multi.new()
|> Multi.insert(:scheduled_activity, new(user, attrs))
- |> Multi.run(:scheduled_activity_job, fn _repo, %{scheduled_activity: activity} ->
- %{activity_id: activity.id}
- |> ScheduledActivityWorker.new(scheduled_at: activity.scheduled_at)
- |> Oban.insert()
- end)
+ |> maybe_add_jobs(Config.get([ScheduledActivity, :enabled]))
|> Repo.transaction()
|> case do
{:ok, %{scheduled_activity: scheduled_activity}} ->
@@ -134,6 +130,17 @@ defmodule Pleroma.ScheduledActivity do
end
end
+ defp maybe_add_jobs(multi, true) do
+ multi
+ |> Multi.run(:scheduled_activity_job, fn _repo, %{scheduled_activity: activity} ->
+ %{activity_id: activity.id}
+ |> ScheduledActivityWorker.new(scheduled_at: activity.scheduled_at)
+ |> Oban.insert()
+ end)
+ end
+
+ defp maybe_add_jobs(multi, _), do: multi
+
def get(%User{} = user, scheduled_activity_id) do
ScheduledActivity
|> where(user_id: ^user.id)