Class: Spree::Admin::OrdersController
Instance Attribute Summary
#title
Instance Method Summary
collapse
#access_forbidden, included
Instance Method Details
#edit ⇒ Object
44
45
46
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 44
def edit
respond_with(@order)
end
|
#fire ⇒ Object
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 75
def fire
event = params[:e]
if @order.send("#{event}")
flash.notice = t(:order_updated)
else
flash[:error] = t(:cannot_perform_operation)
end
rescue Spree::Core::GatewayError => ge
flash[:error] = "#{ge.message}"
ensure
respond_with(@order) { |format| format.html { redirect_to :back } }
end
|
#index ⇒ Object
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 11
def index
params[:q] ||= {}
params[:q][:completed_at_not_null] ||= '1' if Spree::Config[:show_only_complete_orders_by_default]
@show_only_completed = params[:q][:completed_at_not_null].present?
params[:q][:s] ||= @show_only_completed ? 'completed_at desc' : 'created_at desc'
if !params[:q][:created_at_gt].blank?
params[:q][:created_at_gt] = Time.zone.parse(params[:q][:created_at_gt]).beginning_of_day rescue ""
end
if !params[:q][:created_at_lt].blank?
params[:q][:created_at_lt] = Time.zone.parse(params[:q][:created_at_lt]).end_of_day rescue ""
end
if @show_only_completed
params[:q][:completed_at_gt] = params[:q].delete(:created_at_gt)
params[:q][:completed_at_lt] = params[:q].delete(:created_at_lt)
end
@search = Order.ransack(params[:q])
@orders = @search.result.includes([:user, :shipments, :payments]).page(params[:page]).per(Spree::Config[:orders_per_page])
respond_with(@orders)
end
|
#new ⇒ Object
39
40
41
42
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 39
def new
@order = Order.create
respond_with(@order)
end
|
#resend ⇒ Object
90
91
92
93
94
95
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 90
def resend
OrderMailer.confirm_email(@order, true).deliver
flash.notice = t(:order_email_resent)
respond_with(@order) { |format| format.html { redirect_to :back } }
end
|
#show ⇒ Object
35
36
37
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 35
def show
respond_with(@order)
end
|
#update ⇒ Object
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'app/controllers/spree/admin/orders_controller.rb', line 48
def update
return_path = nil
if @order.update_attributes(params[:order]) && @order.line_items.present?
@order.update!
unless @order.complete?
return_path = admin_order_customer_path(@order)
else
return_path = admin_order_path(@order)
end
else
@order.errors.add(:line_items, t('errors.messages.blank')) if @order.line_items.empty?
end
respond_with(@order) do |format|
format.html do
if return_path
redirect_to return_path
else
render :action => :edit
end
end
end
end
|