Sha256: 64e6c534839125b9f4c74c47a9cfe5e0a02bd496ad76b31fd770c54c11c9b654

Contents?: true

Size: 1.47 KB

Versions: 138

Compression:

Stored size: 1.47 KB

Contents

# frozen_string_literal: true

class AddAvailableToColumnsAndRemoveDisplayOnFromPaymentMethods < ActiveRecord::Migration[5.0]
  def up
    add_column(:spree_payment_methods, :available_to_users, :boolean, default: true)
    add_column(:spree_payment_methods, :available_to_admin, :boolean, default: true)
    execute("UPDATE spree_payment_methods "\
             "SET available_to_users=#{quoted_false} "\
             "WHERE NOT (display_on='front_end' OR display_on='' OR display_on IS NULL)")
    execute("UPDATE spree_payment_methods "\
             "SET available_to_admin=#{quoted_false} "\
             "WHERE NOT (display_on='back_end' OR display_on='' OR display_on IS NULL)")
    remove_column(:spree_payment_methods, :display_on)
  end

  def down
    add_column(:spree_payment_methods, :display_on, :string)
    execute("UPDATE spree_payment_methods "\
            "SET display_on='' "\
            "WHERE (available_to_users=#{quoted_true} AND available_to_admin=#{quoted_true})")
    execute("UPDATE spree_payment_methods "\
            "SET display_on='front_end' "\
            "WHERE (available_to_users=#{quoted_true} AND NOT available_to_admin=#{quoted_true})")
    execute("UPDATE spree_payment_methods "\
            "SET display_on='back_end' "\
            "WHERE (available_to_admin=#{quoted_true} AND NOT available_to_users=#{quoted_true})")
    remove_column(:spree_payment_methods, :available_to_users)
    remove_column(:spree_payment_methods, :available_to_admin)
  end
end

Version data entries

138 entries across 138 versions & 2 rubygems

Version Path
solidus_core-4.5.1 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.5.0 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.6 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.2.5 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.1.6 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.4.2 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.4.1 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.4.0 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.4 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.2.4 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.1.5 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.3 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.2 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.1.4 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.1 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.3.0 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.2.3 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.1.3 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-4.0.4 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
solidus_core-3.4.6 db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb