Sha256: 0161d44f9ac82bc329d68a24ef6888f60a0a9e78ef197846d0c939c6d045467f

Contents?: true

Size: 1.5 KB

Versions: 21

Compression:

Stored size: 1.5 KB

Contents

class CreateStoreFromPreferences < ActiveRecord::Migration[4.2]
  class Store < ActiveRecord::Base
    self.table_name = 'spree_stores'
  end
  def change
    preference_store = Spree::Preferences::Store.instance
    if store = Store.where(default: true).first
      store.meta_description = preference_store.get('spree/app_configuration/default_meta_description') {}
      store.meta_keywords    = preference_store.get('spree/app_configuration/default_meta_keywords') {}
      store.seo_title        = preference_store.get('spree/app_configuration/default_seo_title') {}
      store.save!
    else
      # we set defaults for the things we now require
      Store.new do |s|
        s.name = preference_store.get 'spree/app_configuration/site_name' do
          'Sample Store'
        end
        s.url = preference_store.get 'spree/app_configuration/site_url' do
          'example.com'
        end
        s.mail_from_address = preference_store.get 'spree/app_configuration/mails_from' do
          'store@example.com'
        end

        s.meta_description = preference_store.get('spree/app_configuration/default_meta_description') {}
        s.meta_keywords    = preference_store.get('spree/app_configuration/default_meta_keywords') {}
        s.seo_title        = preference_store.get('spree/app_configuration/default_seo_title') {}
        s.default_currency = preference_store.get('spree/app_configuration/currency') {}
        s.code             = 'spree'
        s.default          = true
      end.save!
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
solidus_core-2.3.1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.2.2 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.1.1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.0.3 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.3.0 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.3.0.rc3 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.3.0.rc2 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.3.0.rc1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.3.0.beta1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.0.2 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.2.1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.2.0 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.2.0.rc1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.2.0.beta1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.1.0 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.1.0.rc1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.0.1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.1.0.beta1 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.0.0 db/migrate/20140309033438_create_store_from_preferences.rb
solidus_core-2.0.0.rc1 db/migrate/20140309033438_create_store_from_preferences.rb