Sha256: e861b0d7fd53c5d6f91a4d4b985eacadb0cf3bb3a2af0f0d49fca2d28eb21779

Contents?: true

Size: 649 Bytes

Versions: 39

Compression:

Stored size: 649 Bytes

Contents

# frozen_string_literal: true

def create_states(subregions, country)
  subregions.each do |subregion|
    Spree::State.where(abbr: subregion.code, country: country).first_or_create!(
      name: subregion.name
    )
  end
end

ActiveRecord::Base.transaction do
  Spree::Country.all.find_each do |country|
    carmen_country = Carmen::Country.coded(country.iso)
    next unless carmen_country.subregions?

    if Spree::Config[:countries_that_use_nested_subregions].include? country.iso
      create_states(carmen_country.subregions.flat_map(&:subregions), country)
    else
      create_states(carmen_country.subregions, country)
    end
  end
end

Version data entries

39 entries across 39 versions & 2 rubygems

Version Path
solidus_core-4.3.6 db/default/spree/states.rb
solidus_core-4.2.5 db/default/spree/states.rb
solidus_core-4.1.6 db/default/spree/states.rb
solidus_brazilian_adaptations-1.5.0 db/spree_br/states.rb
solidus_brazilian_adaptations-1.4.1 db/spree_br/states.rb
solidus_brazilian_adaptations-1.4.0 db/spree_br/states.rb
solidus_brazilian_adaptations-1.3.3 db/spree_br/states.rb
solidus_brazilian_adaptations-1.3.2 db/spree_br/states.rb
solidus_brazilian_adaptations-1.3.1 db/spree_br/states.rb
solidus_brazilian_adaptations-1.3.0 db/spree_br/states.rb
solidus_brazilian_adaptations-1.2.0 db/spree_br/states.rb
solidus_brazilian_adaptations-1.1.10 db/spree_br/states.rb
solidus_brazilian_adaptations-1.1.9 db/spree_br/states.rb
solidus_brazilian_adaptations-1.1.8 db/spree_br/states.rb
solidus_core-4.3.4 db/default/spree/states.rb
solidus_core-4.2.4 db/default/spree/states.rb
solidus_core-4.1.5 db/default/spree/states.rb
solidus_brazilian_adaptations-1.1.7 db/spree_br/states.rb
solidus_brazilian_adaptations-1.1.6 db/spree_br/states.rb
solidus_core-4.3.3 db/default/spree/states.rb