Module: ConcurrentDraft::SiteControllerExtensions

Defined in:
lib/concurrent_draft/site_controller_extensions.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



2
3
4
5
6
# File 'lib/concurrent_draft/site_controller_extensions.rb', line 2

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

Instance Method Details

#publish_if_scheduledObject



8
9
10
11
12
13
14
15
# File 'lib/concurrent_draft/site_controller_extensions.rb', line 8

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