diff --git a/lib/spree/core/product_duplicator.rb b/lib/spree/core/product_duplicator.rb index 486faacbce..15c999cf70 100644 --- a/lib/spree/core/product_duplicator.rb +++ b/lib/spree/core/product_duplicator.rb @@ -28,6 +28,7 @@ module Spree new_product.updated_at = nil new_product.product_properties = reset_properties new_product.master = duplicate_master + new_product.variants = duplicate_variants end end @@ -36,6 +37,12 @@ module Spree duplicate_variant(master) end + def duplicate_variants + product.variants.map do |variant| + duplicate_variant(variant) + end + end + def duplicate_variant(variant) variant.dup.tap do |new_variant| new_variant.sku = ""