Sha256: bc25abfa91a009ca700ecc170bc3954863dec61194364190860eda88b39b9adc
Contents?: true
Size: 717 Bytes
Versions: 1
Compression:
Stored size: 717 Bytes
Contents
# frozen_string_literal: true class Autopublisher class << self def run! if due_pages.any? PagesCore::CacheSweeper.once do due_pages.each do |p| p.update(autopublish: false) end end end queue! end def queue! return unless queued_pages.any? PagesCore::AutopublishJob .set(wait_until: queued_pages.first.published_at) .perform_later end protected def queued_pages Page.where(autopublish: true) .order("published_at ASC") .in_locale(I18n.default_locale) end def due_pages queued_pages.where(published_at: ...(Time.now.utc + 2.minutes)) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pages_core-3.15.5 | app/models/autopublisher.rb |