Sha256: 84f459f4153d4136f9d697394aaa0ab623b63e32e903dd89cf233c5efd76bbc6

Contents?: true

Size: 965 Bytes

Versions: 38

Compression:

Stored size: 965 Bytes

Contents

# frozen_string_literal: true

require "alchemy/upgrader"

module Alchemy::Upgrader::Tasks
  class AddPageVersions < Thor
    include Thor::Actions

    no_tasks do
      def create_public_page_versions
        Alchemy::Deprecation.silence do
          Alchemy::Page.where.not(legacy_public_on: nil).find_each do |page|
            next if page.versions.published.any?

            Alchemy::Page.transaction do
              page.versions.create!(
                public_on: page.legacy_public_on,
                public_until: page.legacy_public_until
              ).tap do |version|
                # We must not use .find_each here to not mess up the order of elements
                page.draft_version.elements.not_nested.available.each do |element|
                  Alchemy::Element.copy(element, page_version_id: version.id)
                end
              end
            end

            print "."
          end
        end
      end
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
alchemy_cms-6.1.10 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.9 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.8 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.7 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.6 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.5 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.14 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.4 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.13 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.3 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.2 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.1.1 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.12 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.11 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.10 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.9 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.8 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.7 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.6 lib/alchemy/upgrader/tasks/add_page_versions.rb
alchemy_cms-6.0.5 lib/alchemy/upgrader/tasks/add_page_versions.rb