Sha256: 83a67e8c19e13011a4c9745dbad9f1fa80a250bdf3ceb366bfa874993228b627

Contents?: true

Size: 472 Bytes

Versions: 4

Compression:

Stored size: 472 Bytes

Contents

module ConcurrentDraft::SiteControllerExtensions
  def self.included(base)
    base.class_eval do
      before_filter :publish_if_scheduled, :only => :show_page
    end
  end

  def publish_if_scheduled
    url = Array === params[:url] ? params[:url].join('/') : params[:url]
    page = Page.find_by_url(url, false)
    if page && !page.published? && page.draft_should_be_promoted?
      page.update_attribute('status_id', Status[:published].id)
    end
    true
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
radiant-concurrent_draft-extension-1.0.3 lib/concurrent_draft/site_controller_extensions.rb
radiant-concurrent_draft-extension-1.0.2 lib/concurrent_draft/site_controller_extensions.rb
radiant-concurrent_draft-extension-1.0.1 lib/concurrent_draft/site_controller_extensions.rb
radiant-concurrent_draft-extension-1.0.0 lib/concurrent_draft/site_controller_extensions.rb