Sha256: 61232eabb8b90ca33b78da142e63db8747cfd27556322ce31f3d883bc87bcfa7
Contents?: true
Size: 635 Bytes
Versions: 54
Compression:
Stored size: 635 Bytes
Contents
# frozen_string_literal: true module Decidim module Admin # Delivers the newsletter to its recipients. class DeliverNewsletter < Rectify::Command # Initializes the command. # # newsletter - The newsletter to deliver. def initialize(newsletter) @newsletter = newsletter end def call @newsletter.with_lock do return broadcast(:invalid) if @newsletter.sent? send_newsletter! end broadcast(:ok, @newsletter) end private def send_newsletter! NewsletterJob.perform_later(@newsletter) end end end end
Version data entries
54 entries across 54 versions & 2 rubygems