Sha256: 0967e3c791ef1175d1a9c9f7c2063b1a9af1c97ec19736644f250a7384e0af15

Contents?: true

Size: 890 Bytes

Versions: 8

Compression:

Stored size: 890 Bytes

Contents

# -*- encoding : utf-8 -*-

class User < Cardio::Record
end

class UserDataToCards < Cardio::Migration::Core
  def up
    puts "importing all user details (for those not in trash) into +*account attributes"
    User.all.each do |user|
      base = Card[user.card_id]
      next unless base && !base.trash

      puts "~ importing details for #{base.name}"
      date_args = { created_at: user.created_at, updated_at: user.updated_at }
      %i[email salt password status].each do |field|
        cardname = [base.name, :account, field].cardname
        user_field = (field == :password ? :crypted_password : field)
        next unless (content = user.send(user_field))

        begin
          Card.create! date_args.merge(name: cardname, content: content)
        rescue StandardError => e
          puts "error importing #{cardname}: #{e.message}"
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
card-1.105.6 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.5 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.4 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.3 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.2.pre1 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.2 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.1 db/migrate_core_cards/20140307231621_user_data_to_cards.rb
card-1.105.0 db/migrate_core_cards/20140307231621_user_data_to_cards.rb