Class: Spree::Admin::PromotionsController

Inherits:
ResourceController show all
Defined in:
app/controllers/spree/admin/promotions_controller.rb

Instance Method Summary collapse

Methods inherited from ResourceController

belongs_to, #create, #destroy, #edit, #new, #update, #update_positions

Instance Method Details

#cloneObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'app/controllers/spree/admin/promotions_controller.rb', line 8

def clone
  promotion = Spree::Promotion.find(params[:id])
  duplicator = Spree::PromotionHandler::PromotionDuplicator.new(promotion)

  @new_promo = duplicator.duplicate

  if @new_promo.errors.empty?
    flash[:success] = Spree.t('promotion_cloned')
    redirect_to edit_admin_promotion_url(@new_promo)
  else
    flash[:error] = Spree.t('promotion_not_cloned', error: @new_promo.errors.full_messages.to_sentence)
    redirect_to admin_promotions_url(@new_promo)
  end
end