Sha256: 224bca827dba06161a06bb247d52ed1d49268705b67cbd7ad66ac4f9d25771fc

Contents?: true

Size: 873 Bytes

Versions: 6

Compression:

Stored size: 873 Bytes

Contents

module Workarea
  decorate Admin::CatalogVariantsController, with: :product_additional_details do

    def update
      @variant = @product.variants.find(params[:id])
      set_details
      set_additional_details

      if @variant.update_attributes(params[:variant])
        flash[:success] = t('workarea.admin.catalog_variants.flash_messages.saved')
        redirect_to catalog_product_variants_path(@product)
      else
        flash[:error] = t('workarea.admin.catalog_variants.flash_messages.changes_error')
        render :edit
      end
    end

    def set_additional_details
      @variant.additional_details = HashUpdate.new(
        original: @variant.additional_details,
        adds: params[:new_additional_details],
        updates: params[:additional_details],
        removes: params[:additional_details_to_remove]
      ).result_grouped
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
workarea-product_additional_details-2.0.37 app/controllers/workarea/admin/catalog_variants_controller.decorator
workarea-product_additional_details-2.0.36 app/controllers/workarea/admin/catalog_variants_controller.decorator
workarea-product_additional_details-2.0.35 app/controllers/workarea/admin/catalog_variants_controller.decorator
workarea-product_additional_details-2.0.34 app/controllers/workarea/admin/catalog_variants_controller.decorator
workarea-product_additional_details-2.0.33 app/controllers/workarea/admin/catalog_variants_controller.decorator
workarea-product_additional_details-2.0.32 app/controllers/workarea/admin/catalog_variants_controller.decorator