Sha256: 762d64d2aebcb761843e4191750b13c8809eef42f2a7dccf58c0fd42f74abde4

Contents?: true

Size: 1.03 KB

Versions: 19

Compression:

Stored size: 1.03 KB

Contents

class IntegrateWorkflowIntoCmsPages < ActiveRecord::Migration
  class Cms::PageWorkflow < ActiveRecord::Base
    self.table_name = 'cms_page_workflows'
    belongs_to :page, :class_name => 'Comfy::Cms::Page', :foreign_key => 'cms_page_id'
  end

  def change

    add_column :comfy_cms_pages, :aasm_state, :string, default: 'new'
    add_column :comfy_cms_pages, :published_date, :date

    Comfy::Cms::Page.reset_column_information

    Cms::PageWorkflow.all.each do |workflow|
      page = Comfy::Cms::Page.where(id: workflow.cms_page_id).first
      if page
        page.aasm_state = case workflow.status_id.to_i
          when 0
            'drafted'
          when 1
            'reviewed'
          when 2
            'scheduled'
          when 3
            'published'
          else
            'drafted'
          end
        page.published_date = workflow.published_date
        page.save!
      end
    end

    # TODO: Just to make it safe workflow table will be removed on the 5th patch release
    # drop_table :cms_page_workflows
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
cms-fortress-1.3.15 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.14 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.13 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.12 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.11 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.10 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.9 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.8 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.7 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.6 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.5 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.4 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.3 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.2 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.1 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.0 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.0.rc3 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.0.rc2 db/migrate/07_integrate_workflow_into_cms_pages.rb
cms-fortress-1.3.0.rc1 db/migrate/07_integrate_workflow_into_cms_pages.rb