Sha256: b39746cee560fc6debd23ea145b7b20fc9cbd3dd68d1d3684780eaac3a755bad
Contents?: true
Size: 1.73 KB
Versions: 3
Compression:
Stored size: 1.73 KB
Contents
module Spree module Admin class LineItemsController < Spree::Admin::BaseController layout nil, :only => [:create, :destroy, :update] 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 => 'spree/admin/orders/form', :locals => { :order => @order.reload } } end else respond_with(@line_item) do |format| format.js { render :action => 'create', :locals => { :order => @order.reload } } end end end def destroy @line_item.destroy respond_with(@line_item) do |format| format.html { redirect_to edit_admin_order_path(@order) } format.js { @order.reload } end end def update if @line_item.update_attributes(params[:line_item]) respond_with(@line_item) do |format| format.html { render :partial => 'spree/admin/orders/form', :locals => { :order => @order.reload } } end else respond_with(@line_item) do |format| format.html { render :partial => 'spree/admin/orders/form', :locals => { :order => @order.reload } } end end end private def load_order @order = Order.find_by_number!(params[:order_id]) authorize! action, @order end def load_line_item @line_item = @order.line_items.find(params[:id]) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems