Sha256: 8e03d0c7e871d19ec3ce270e4e1b49be6c9cb805dd689d2d1bd59a49999e2d63

Contents?: true

Size: 827 Bytes

Versions: 7

Compression:

Stored size: 827 Bytes

Contents

class AssignCreditcardTxnsToPayment < ActiveRecord::Migration
  def up
    add_column :creditcard_txns, :payment_id, :integer

    # Temporarily set back to creditcards
    Spree::CreditCard.table_name = 'creditcards'

    ActiveRecord::Base.connection.select_all('SELECT * FROM creditcard_txns').each do |txn_attrs|
      if credit_card = Spree::CreditCard.find_by_id(txn_attrs['creditcard_id']) && credit_card.payments.first
        execute "UPDATE creditcard_txns SET payment_id = #{credit_card.payments.first.id} WHERE id = #{txn_attrs['id']}"
      end
    end

    Spree::CreditCard.table_name = 'spree_creditcards'

    remove_column :creditcard_txns, :creditcard_payment_id
  end

  def down
    remove_column :creditcard_txns, :payment_id
    add_column    :creditcard_txns, :creditcard_payment_id, :integer
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
spree_core-1.2.5 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.4 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.3 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.2 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.0 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.0.rc2 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb
spree_core-1.2.0.rc1 db/migrate/20100214212536_assign_creditcard_txns_to_payment.rb