piggybak 0.4.31 → 0.4.32

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.31
1
+ 0.4.32
@@ -109,22 +109,24 @@ module Piggybak
109
109
 
110
110
  def cancel
111
111
  order = Order.find(params[:id])
112
- order.recorded_changer = current_user.id
113
112
 
114
113
  if can?(:cancel, order)
114
+ order.recorded_changer = current_user.id
115
+ order.disable_order_notes = true
116
+
115
117
  order.line_items.each do |line_item|
116
- line_item.destroy
118
+ line_item.mark_for_destruction
117
119
  end
118
120
  order.shipments.each do |shipment|
119
- shipment.destroy
121
+ shipment.mark_for_destruction
120
122
  end
121
123
  order.update_attribute(:tax_charge, 0.00)
122
124
  order.update_attribute(:total, 0.00)
123
125
  order.update_attribute(:to_be_cancelled, true)
124
126
 
125
- OrderNote.create(:order_id => order.id, :note => "Order cancelled.", :user_id => current_user.id)
127
+ OrderNote.create(:order_id => order.id, :note => "Order set to cancelled. Line items, shipments, tax removed.", :user_id => current_user.id)
126
128
 
127
- flash[:notice] = "Order #{order.id} cancelled"
129
+ flash[:notice] = "Order #{order.id} set to cancelled. Order is now in unbalanced state."
128
130
  end
129
131
 
130
132
  redirect_to rails_admin.edit_path('Piggybak::Order', order.id)
@@ -21,12 +21,12 @@ module Piggybak
21
21
  attr_accessor :recorded_changes
22
22
  attr_accessor :recorded_changer
23
23
  attr_accessor :was_new_record
24
- attr_accessor :refund_amt
24
+ attr_accessor :disable_order_notes
25
25
 
26
26
  validates_presence_of :status, :email, :phone, :total, :total_due, :tax_charge, :created_at, :ip_address, :user_agent
27
27
 
28
28
  after_initialize :initialize_nested, :initialize_request
29
- before_validation :set_defaults, :manage_adjustments
29
+ before_validation :set_defaults
30
30
  after_validation :update_totals
31
31
  before_save :process_payments, :update_status, :set_new_record
32
32
  after_save :record_order_note
@@ -57,15 +57,6 @@ module Piggybak
57
57
  end
58
58
  end
59
59
 
60
- def manage_adjustments
61
- if self.refund_amt.present?
62
- self.adjustments << Piggybak::Adjustment.new(:total => -1*self.refund_amt.to_f,
63
- :note => "Refund recorded.",
64
- :source_id => self.recorded_changer,
65
- :source_type => "User")
66
- end
67
- end
68
-
69
60
  def process_payments
70
61
  has_errors = false
71
62
 
@@ -89,13 +80,11 @@ module Piggybak
89
80
  end
90
81
 
91
82
  def record_order_note
92
- if self.changed?
93
- if !self.was_new_record
94
- self.recorded_changes << self.formatted_changes
95
- end
83
+ if self.changed? && !self.was_new_record
84
+ self.recorded_changes << self.formatted_changes
96
85
  end
97
86
 
98
- if self.recorded_changes.any?
87
+ if self.recorded_changes.any? && !self.disable_order_notes
99
88
  OrderNote.create(:order_id => self.id, :note => self.recorded_changes.join("<br />"), :user_id => self.recorded_changer.to_i)
100
89
  end
101
90
  end
@@ -118,6 +107,9 @@ module Piggybak
118
107
  self.total = 0
119
108
  self.total_due = 0
120
109
  self.tax_charge = 0
110
+ self.disable_order_notes = false
111
+
112
+ return if self.to_be_cancelled
121
113
 
122
114
  self.line_items.each do |line_item|
123
115
  if self.status != "shipped"
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "piggybak"
8
- s.version = "0.4.31"
8
+ s.version = "0.4.32"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Steph Skardal", "Brian Buchalter"]
12
- s.date = "2012-08-15"
12
+ s.date = "2012-08-16"
13
13
  s.description = "Mountable ecommerce"
14
14
  s.email = "steph@endpoint.com"
15
15
  s.extra_rdoc_files = [
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: piggybak
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.31
4
+ version: 0.4.32
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-08-15 00:00:00.000000000 Z
13
+ date: 2012-08-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: countries
17
- requirement: &16323540 !ruby/object:Gem::Requirement
17
+ requirement: &25437000 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *16323540
25
+ version_requirements: *25437000
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: bundler
28
- requirement: &16321940 !ruby/object:Gem::Requirement
28
+ requirement: &25435540 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 1.0.0
34
34
  type: :development
35
35
  prerelease: false
36
- version_requirements: *16321940
36
+ version_requirements: *25435540
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: jeweler
39
- requirement: &16320800 !ruby/object:Gem::Requirement
39
+ requirement: &25450800 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: 1.6.4
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *16320800
47
+ version_requirements: *25450800
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rspec
50
- requirement: &16336400 !ruby/object:Gem::Requirement
50
+ requirement: &25448020 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *16336400
58
+ version_requirements: *25448020
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: rspec-rails
61
- requirement: &16334740 !ruby/object:Gem::Requirement
61
+ requirement: &25444940 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ~>
@@ -66,10 +66,10 @@ dependencies:
66
66
  version: 2.7.0
67
67
  type: :development
68
68
  prerelease: false
69
- version_requirements: *16334740
69
+ version_requirements: *25444940
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: factory_girl
72
- requirement: &16334100 !ruby/object:Gem::Requirement
72
+ requirement: &25459580 !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ! '>='
@@ -77,10 +77,10 @@ dependencies:
77
77
  version: '0'
78
78
  type: :development
79
79
  prerelease: false
80
- version_requirements: *16334100
80
+ version_requirements: *25459580
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: diff-lcs
83
- requirement: &16333480 !ruby/object:Gem::Requirement
83
+ requirement: &25455620 !ruby/object:Gem::Requirement
84
84
  none: false
85
85
  requirements:
86
86
  - - ! '>='
@@ -88,10 +88,10 @@ dependencies:
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
- version_requirements: *16333480
91
+ version_requirements: *25455620
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: shoulda
94
- requirement: &16332640 !ruby/object:Gem::Requirement
94
+ requirement: &25467980 !ruby/object:Gem::Requirement
95
95
  none: false
96
96
  requirements:
97
97
  - - ! '>='
@@ -99,10 +99,10 @@ dependencies:
99
99
  version: '0'
100
100
  type: :development
101
101
  prerelease: false
102
- version_requirements: *16332640
102
+ version_requirements: *25467980
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: simplecov
105
- requirement: &16330860 !ruby/object:Gem::Requirement
105
+ requirement: &25466640 !ruby/object:Gem::Requirement
106
106
  none: false
107
107
  requirements:
108
108
  - - ! '>='
@@ -110,10 +110,10 @@ dependencies:
110
110
  version: '0'
111
111
  type: :development
112
112
  prerelease: false
113
- version_requirements: *16330860
113
+ version_requirements: *25466640
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: tzinfo
116
- requirement: &16329640 !ruby/object:Gem::Requirement
116
+ requirement: &25465280 !ruby/object:Gem::Requirement
117
117
  none: false
118
118
  requirements:
119
119
  - - ! '>='
@@ -121,10 +121,10 @@ dependencies:
121
121
  version: '0'
122
122
  type: :development
123
123
  prerelease: false
124
- version_requirements: *16329640
124
+ version_requirements: *25465280
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: devise
127
- requirement: &16344700 !ruby/object:Gem::Requirement
127
+ requirement: &25464140 !ruby/object:Gem::Requirement
128
128
  none: false
129
129
  requirements:
130
130
  - - ! '>='
@@ -132,10 +132,10 @@ dependencies:
132
132
  version: '0'
133
133
  type: :development
134
134
  prerelease: false
135
- version_requirements: *16344700
135
+ version_requirements: *25464140
136
136
  - !ruby/object:Gem::Dependency
137
137
  name: rails_admin
138
- requirement: &16342700 !ruby/object:Gem::Requirement
138
+ requirement: &25462140 !ruby/object:Gem::Requirement
139
139
  none: false
140
140
  requirements:
141
141
  - - ! '>='
@@ -143,10 +143,10 @@ dependencies:
143
143
  version: '0'
144
144
  type: :runtime
145
145
  prerelease: false
146
- version_requirements: *16342700
146
+ version_requirements: *25462140
147
147
  - !ruby/object:Gem::Dependency
148
148
  name: devise
149
- requirement: &16341220 !ruby/object:Gem::Requirement
149
+ requirement: &25476060 !ruby/object:Gem::Requirement
150
150
  none: false
151
151
  requirements:
152
152
  - - ! '>='
@@ -154,10 +154,10 @@ dependencies:
154
154
  version: '0'
155
155
  type: :runtime
156
156
  prerelease: false
157
- version_requirements: *16341220
157
+ version_requirements: *25476060
158
158
  - !ruby/object:Gem::Dependency
159
159
  name: activemerchant
160
- requirement: &16340040 !ruby/object:Gem::Requirement
160
+ requirement: &25472460 !ruby/object:Gem::Requirement
161
161
  none: false
162
162
  requirements:
163
163
  - - ! '>='
@@ -165,10 +165,10 @@ dependencies:
165
165
  version: '0'
166
166
  type: :runtime
167
167
  prerelease: false
168
- version_requirements: *16340040
168
+ version_requirements: *25472460
169
169
  - !ruby/object:Gem::Dependency
170
170
  name: countries
171
- requirement: &16339480 !ruby/object:Gem::Requirement
171
+ requirement: &25470520 !ruby/object:Gem::Requirement
172
172
  none: false
173
173
  requirements:
174
174
  - - ! '>='
@@ -176,10 +176,10 @@ dependencies:
176
176
  version: '0'
177
177
  type: :runtime
178
178
  prerelease: false
179
- version_requirements: *16339480
179
+ version_requirements: *25470520
180
180
  - !ruby/object:Gem::Dependency
181
181
  name: rspec
182
- requirement: &16338940 !ruby/object:Gem::Requirement
182
+ requirement: &25469740 !ruby/object:Gem::Requirement
183
183
  none: false
184
184
  requirements:
185
185
  - - ! '>='
@@ -187,10 +187,10 @@ dependencies:
187
187
  version: '0'
188
188
  type: :development
189
189
  prerelease: false
190
- version_requirements: *16338940
190
+ version_requirements: *25469740
191
191
  - !ruby/object:Gem::Dependency
192
192
  name: rspec-rails
193
- requirement: &16338380 !ruby/object:Gem::Requirement
193
+ requirement: &25484600 !ruby/object:Gem::Requirement
194
194
  none: false
195
195
  requirements:
196
196
  - - ! '>='
@@ -198,10 +198,10 @@ dependencies:
198
198
  version: '0'
199
199
  type: :development
200
200
  prerelease: false
201
- version_requirements: *16338380
201
+ version_requirements: *25484600
202
202
  - !ruby/object:Gem::Dependency
203
203
  name: diff-lcs
204
- requirement: &16337680 !ruby/object:Gem::Requirement
204
+ requirement: &25482820 !ruby/object:Gem::Requirement
205
205
  none: false
206
206
  requirements:
207
207
  - - ! '>='
@@ -209,10 +209,10 @@ dependencies:
209
209
  version: '0'
210
210
  type: :development
211
211
  prerelease: false
212
- version_requirements: *16337680
212
+ version_requirements: *25482820
213
213
  - !ruby/object:Gem::Dependency
214
214
  name: factory_girl
215
- requirement: &16336980 !ruby/object:Gem::Requirement
215
+ requirement: &25481440 !ruby/object:Gem::Requirement
216
216
  none: false
217
217
  requirements:
218
218
  - - ! '>='
@@ -220,10 +220,10 @@ dependencies:
220
220
  version: '0'
221
221
  type: :development
222
222
  prerelease: false
223
- version_requirements: *16336980
223
+ version_requirements: *25481440
224
224
  - !ruby/object:Gem::Dependency
225
225
  name: shoulda
226
- requirement: &16352220 !ruby/object:Gem::Requirement
226
+ requirement: &25480680 !ruby/object:Gem::Requirement
227
227
  none: false
228
228
  requirements:
229
229
  - - ! '>='
@@ -231,7 +231,7 @@ dependencies:
231
231
  version: '0'
232
232
  type: :development
233
233
  prerelease: false
234
- version_requirements: *16352220
234
+ version_requirements: *25480680
235
235
  description: Mountable ecommerce
236
236
  email: steph@endpoint.com
237
237
  executables: []
@@ -401,7 +401,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
401
401
  version: '0'
402
402
  segments:
403
403
  - 0
404
- hash: -1745694921164564524
404
+ hash: 4589883472526104963
405
405
  required_rubygems_version: !ruby/object:Gem::Requirement
406
406
  none: false
407
407
  requirements: