Sha256: d4232d38d106d38abfefe872cce5cca0a8e4716bc2a715b3d14df12644b11f4d
Contents?: true
Size: 1.09 KB
Versions: 26
Compression:
Stored size: 1.09 KB
Contents
module Spree module Addresses module Helper private attr_accessor :country def fill_country_and_state_ids(params) replace_country_iso_with_id(params) fill_state_id(params) end def replace_country_iso_with_id(params) iso = params[:country_iso] return params unless iso.present? country = Spree::Country.by_iso(iso) params[:country_id] = country&.id params.delete(:country_iso) params end def fill_state_id(params) state_name = params[:state_name] return params unless state_name.present? country ||= Spree::Country.find(params[:country_id]) if params[:country_id].present? return params unless country params[:state_id] = country.states.find_by(name: state_name)&.id params end def assign_to_user_as_default(user:, address_id:) if user.addresses.pluck(:id) == [address_id] # check if it's user first address user.update(bill_address_id: address_id, ship_address_id: address_id) end end end end end
Version data entries
26 entries across 26 versions & 1 rubygems