Sha256: ae5f35d7582978dcf5e00cb8267ee9a0081e785b7833f9cf31d8c67f459a8636

Contents?: true

Size: 1.79 KB

Versions: 9

Compression:

Stored size: 1.79 KB

Contents

class Admin::LineItemsController < Admin::BaseController

  before_filter :load_order
  before_filter :load_line_item, :only => [:destroy, :update]

  respond_to :html, :js

  def create
    variant = Variant.find(params[:line_item][:variant_id])
    @line_item = @order.add_variant(variant, params[:line_item][:quantity].to_i)

    if @order.save
      respond_with(@line_item) do |format| 
        format.html { render :partial => "admin/orders/form", :locals => {:order => @order.reload}, :layout => false }
      end
    else
      respond_with(@line_item) do |format| 
        format.js { render :action => 'create', :locals => {:order => @order.reload}, :layout => false }
      end
    end
  end

  def destroy
    if @line_item.destroy
      respond_with(@line_item) do |format| 
        format.html { render :partial => "admin/orders/form", :locals => {:order => @order.reload}, :layout => false }
      end
    else
      respond_with(@line_item) do |format| 
        format.html { render :partial => "admin/orders/form", :locals => {:order => @order.reload}, :layout => false }
      end
    end
  end

  def new
    respond_with do |format| 
      format.html { render :action => :new, :layout => false }
    end
  end

  def update
    if @line_item.update_attributes(params[:line_item])
      respond_with(@line_item) do |format| 
        format.html { render :partial => "admin/orders/form", :locals => {:order => @order.reload}, :layout => false}
      end
    else
      respond_with(@line_item) do |format| 
        format.html { render :partial => "admin/orders/form", :locals => {:order => @order.reload}, :layout => false}
      end
    end
  end


  def load_order
    @order = Order.find_by_number! params[:order_id]
  end

  def load_line_item
    @line_item = @order.line_items.find params[:id]
  end

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
spree_core-0.70.7 app/controllers/admin/line_items_controller.rb
spree_core-0.70.6 app/controllers/admin/line_items_controller.rb
spree_core-0.70.5 app/controllers/admin/line_items_controller.rb
spree_core-0.70.4 app/controllers/admin/line_items_controller.rb
spree_core-0.70.3 app/controllers/admin/line_items_controller.rb
spree_core-0.70.2 app/controllers/admin/line_items_controller.rb
spree_core-0.70.1 app/controllers/admin/line_items_controller.rb
spree_core-0.70.0 app/controllers/admin/line_items_controller.rb
spree_core-0.70.0.rc2 app/controllers/admin/line_items_controller.rb