ba_spree_loyalty_points 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +688 -1
- data/README.md +1 -1
- data/app/controllers/spree/admin/loyalty_points_transactions_controller.rb +5 -1
- data/app/controllers/spree/admin/resource_controller_decorator.rb +4 -0
- data/app/controllers/spree/admin/return_authorizations_controller_decorator.rb +10 -2
- data/app/controllers/spree/loyalty_points_controller.rb +1 -1
- data/app/controllers/spree_loyalty_points/checkout_controller_decorator.rb +23 -0
- data/app/models/concerns/spree/loyalty_points.rb +3 -3
- data/app/models/concerns/spree/order/loyalty_points.rb +1 -1
- data/app/models/concerns/spree/payment/loyalty_points.rb +27 -27
- data/app/models/spree/loyalty_points_transaction.rb +12 -1
- data/app/models/spree_loyalty_points/order_decorator.rb +33 -0
- data/app/models/spree_loyalty_points/payment_decorator.rb +41 -0
- data/app/models/spree_loyalty_points/payment_method_decorator.rb +16 -0
- data/app/models/spree_loyalty_points/store_decorator.rb +13 -0
- data/app/overrides/add_loyalty_points_debiting_to_return_authorization_page.rb +6 -6
- data/app/overrides/add_loyalty_points_to_account_nav.rb +13 -0
- data/app/overrides/add_loyalty_points_to_admin_user_show_page.rb +12 -10
- data/app/overrides/add_loyalty_points_to_cart_page.rb +9 -5
- data/app/overrides/add_loyalty_points_to_order_checkout_page.rb +11 -7
- data/app/overrides/add_loyalty_points_to_return_authorization_index_page.rb +24 -10
- data/app/overrides/add_loyalty_points_transaction_table_to_return_authorization_form.rb +13 -3
- data/app/overrides/spree/admin/stores/add_loyalty_points_settings.rb +5 -2
- data/app/views/spree/admin/loyalty_points_transactions/new.html.erb +6 -10
- data/app/views/spree/admin/stores/_loyalty_points_settings.html.erb +21 -21
- data/app/views/spree/checkout/payment/_loyaltypoints.html.erb +3 -3
- data/app/views/spree/loyalty_points/_transaction_table.html.erb +2 -2
- data/db/migrate/20140116090042_add_loyalty_points_balance_to_spree_user.rb +1 -1
- data/db/migrate/20140116110437_create_loyalty_points_transactions.rb +1 -1
- data/db/migrate/20140117062720_add_timestamps_to_loyalty_points_transaction.rb +1 -1
- data/db/migrate/20140117065314_add_fields_to_spree_loyalty_points_transaction.rb +1 -1
- data/db/migrate/20140122084005_add_comment_to_spree_loyalty_points_transaction.rb +1 -1
- data/db/migrate/20140123092709_add_paid_at_to_spree_order.rb +1 -1
- data/db/migrate/20140123120355_add_loyalty_points_to_spree_return_authorization.rb +1 -1
- data/db/migrate/20140124121728_add_loyalty_points_awarded_to_spree_order.rb +1 -1
- data/db/migrate/20140130131957_rename_fields_in_spree_loyalty_points_transaction.rb +1 -1
- data/db/migrate/20140131072702_remove_loyalty_points_awarded_from_spree_order.rb +1 -1
- data/db/migrate/20140203063433_add_indexing_to_spree_loyalty_points_transaction.rb +1 -1
- data/db/migrate/20140205111553_add_transaction_id_to_spree_loyalty_points_transactions.rb +1 -1
- data/db/migrate/20140207055836_add_lock_version_to_spree_user.rb +1 -1
- data/db/migrate/20251210070500_remove_lock_version_from_spree_user.rb +11 -0
- data/lib/ba_spree_loyalty_points.rb +1 -0
- data/lib/spree_loyalty_points/engine.rb +3 -2
- data/lib/spree_loyalty_points/version.rb +1 -1
- metadata +64 -16
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
<%- lp_balance = spree_current_user
|
|
2
|
-
<%- equivalent_currency_balance = spree_current_user
|
|
1
|
+
<%- lp_balance = spree_current_user&.loyalty_points_balance %>
|
|
2
|
+
<%- equivalent_currency_balance = spree_current_user&.loyalty_points_equivalent_currency %>
|
|
3
3
|
Loyalty Points Balance: <%= lp_balance %><%= "($" + equivalent_currency_balance.to_s + ")" %>
|
|
4
4
|
<%- lp_needed = @order.loyalty_points_for(@order.total, 'redeem') %>
|
|
5
5
|
<br/>Loyalty Points Needed: <%= lp_needed %>
|
|
6
|
-
<% if lp_needed > lp_balance %>
|
|
6
|
+
<% if lp_balance.nil? || lp_needed > lp_balance %>
|
|
7
7
|
<br/><b>Insufficient Balance!</b>
|
|
8
8
|
<% end %>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<%= paginate @loyalty_points_transactions %>
|
|
1
|
+
<%= paginate @loyalty_points_transactions if @loyalty_points_transactions.respond_to?(:total_pages) %>
|
|
2
2
|
|
|
3
3
|
<% if @loyalty_points_transactions.present? %>
|
|
4
4
|
<table class="loyalty-points-summary table table-striped table-hover">
|
|
@@ -41,4 +41,4 @@
|
|
|
41
41
|
<p><%= Spree.t(:you_have_not_earned_any_loyalty_points_yet) %></p>
|
|
42
42
|
<% end %>
|
|
43
43
|
|
|
44
|
-
<%= paginate @loyalty_points_transactions %>
|
|
44
|
+
<%= paginate @loyalty_points_transactions if @loyalty_points_transactions.respond_to?(:total_pages) %>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddLoyaltyPointsBalanceToSpreeUser < ActiveRecord::Migration[
|
|
1
|
+
class AddLoyaltyPointsBalanceToSpreeUser < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
users_table_name = Spree.user_class.present? ? Spree.user_class.table_name : :spree_users
|
|
4
4
|
add_column users_table_name, :loyalty_points_balance, :integer, default: 0, null: false
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddFieldsToSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[
|
|
1
|
+
class AddFieldsToSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
add_column :spree_loyalty_points_transactions, :source_type, :string
|
|
4
4
|
rename_column :spree_loyalty_points_transactions, :order_id, :source_id
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddLoyaltyPointsToSpreeReturnAuthorization < ActiveRecord::Migration[
|
|
1
|
+
class AddLoyaltyPointsToSpreeReturnAuthorization < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
add_column :spree_return_authorizations, :loyalty_points, :integer, default: 0, null: false
|
|
4
4
|
add_column :spree_return_authorizations, :loyalty_points_transaction_type, :string
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class RenameFieldsInSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[
|
|
1
|
+
class RenameFieldsInSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
rename_column :spree_loyalty_points_transactions, :updated_balance, :balance
|
|
4
4
|
rename_column :spree_loyalty_points_transactions, :transaction_type, :type
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddIndexingToSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[
|
|
1
|
+
class AddIndexingToSpreeLoyaltyPointsTransaction < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
add_index :spree_loyalty_points_transactions, [:source_type, :source_id], name: 'by_source'
|
|
4
4
|
add_index :spree_loyalty_points_transactions, :user_id
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddLockVersionToSpreeUser < ActiveRecord::Migration[
|
|
1
|
+
class AddLockVersionToSpreeUser < ActiveRecord::Migration[8.0]
|
|
2
2
|
def change
|
|
3
3
|
users_table_name = Spree.user_class.present? ? Spree.user_class.table_name : :spree_users
|
|
4
4
|
add_column users_table_name, :lock_version, :integer, default: 0, null: false unless column_exists?(users_table_name, :lock_version)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
class RemoveLockVersionFromSpreeUser < ActiveRecord::Migration[8.0]
|
|
2
|
+
def change
|
|
3
|
+
# Remove lock_version column that was added by 20140207055836_add_lock_version_to_spree_user.rb
|
|
4
|
+
# This column is not actually used by the loyalty points engine and causes
|
|
5
|
+
# ActiveRecord::StaleObjectError when User is touched by related models
|
|
6
|
+
users_table_name = Spree.user_class.present? ? Spree.user_class.table_name : :spree_users
|
|
7
|
+
if table_exists?(users_table_name) && column_exists?(users_table_name, :lock_version)
|
|
8
|
+
remove_column users_table_name, :lock_version, :integer, default: 0, null: false
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -15,6 +15,7 @@ module SpreeLoyaltyPoints
|
|
|
15
15
|
Dir.glob(File.join(File.dirname(__FILE__), '../../app/**/*_decorator*.rb')) do |c|
|
|
16
16
|
Rails.configuration.cache_classes ? require(c) : load(c)
|
|
17
17
|
end
|
|
18
|
+
Rails.application.config.paths["app/views"].unshift([Spree::Storefront::Engine.root, 'app/views/themes/default'].join('/'))
|
|
18
19
|
|
|
19
20
|
Spree.user_class.class_eval do
|
|
20
21
|
validates :loyalty_points_balance, numericality: { only_integer: true, greater_than_or_equal_to: 0 }
|
|
@@ -26,7 +27,7 @@ module SpreeLoyaltyPoints
|
|
|
26
27
|
end
|
|
27
28
|
|
|
28
29
|
def loyalty_points_balance_sufficient?
|
|
29
|
-
loyalty_points_balance >= Spree::Store.default.
|
|
30
|
+
loyalty_points_balance >= Spree::Store.default.preferred_loyalty_points_redeeming_balance
|
|
30
31
|
end
|
|
31
32
|
|
|
32
33
|
def has_sufficient_loyalty_points?(order)
|
|
@@ -34,7 +35,7 @@ module SpreeLoyaltyPoints
|
|
|
34
35
|
end
|
|
35
36
|
|
|
36
37
|
def loyalty_points_equivalent_currency
|
|
37
|
-
loyalty_points_balance * Spree::Store.default.
|
|
38
|
+
loyalty_points_balance * Spree::Store.default.preferred_loyalty_points_conversion_rate
|
|
38
39
|
end
|
|
39
40
|
|
|
40
41
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ba_spree_loyalty_points
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- be agile Co., Ltd.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-08-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: spree_core
|
|
@@ -16,42 +16,56 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version:
|
|
19
|
+
version: 5.3.0
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version:
|
|
26
|
+
version: 5.3.0
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
|
-
name:
|
|
28
|
+
name: spree_admin
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- -
|
|
31
|
+
- - '='
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version:
|
|
33
|
+
version: 5.3.6
|
|
34
34
|
type: :runtime
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- -
|
|
38
|
+
- - '='
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version:
|
|
40
|
+
version: 5.3.6
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
|
-
name:
|
|
42
|
+
name: spree_storefront
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - '='
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: 5.3.6
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - '='
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: 5.3.6
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: deface
|
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
|
44
58
|
requirements:
|
|
45
59
|
- - ">="
|
|
46
60
|
- !ruby/object:Gem::Version
|
|
47
|
-
version:
|
|
61
|
+
version: '0'
|
|
48
62
|
type: :runtime
|
|
49
63
|
prerelease: false
|
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
65
|
requirements:
|
|
52
66
|
- - ">="
|
|
53
67
|
- !ruby/object:Gem::Version
|
|
54
|
-
version:
|
|
68
|
+
version: '0'
|
|
55
69
|
- !ruby/object:Gem::Dependency
|
|
56
70
|
name: capybara
|
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -170,14 +184,14 @@ dependencies:
|
|
|
170
184
|
requirements:
|
|
171
185
|
- - "~>"
|
|
172
186
|
- !ruby/object:Gem::Version
|
|
173
|
-
version: 5.
|
|
187
|
+
version: 5.1.1
|
|
174
188
|
type: :development
|
|
175
189
|
prerelease: false
|
|
176
190
|
version_requirements: !ruby/object:Gem::Requirement
|
|
177
191
|
requirements:
|
|
178
192
|
- - "~>"
|
|
179
193
|
- !ruby/object:Gem::Version
|
|
180
|
-
version: 5.
|
|
194
|
+
version: 5.1.1
|
|
181
195
|
- !ruby/object:Gem::Dependency
|
|
182
196
|
name: selenium-webdriver
|
|
183
197
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -220,6 +234,34 @@ dependencies:
|
|
|
220
234
|
- - "~>"
|
|
221
235
|
- !ruby/object:Gem::Version
|
|
222
236
|
version: 1.3.13
|
|
237
|
+
- !ruby/object:Gem::Dependency
|
|
238
|
+
name: rails-controller-testing
|
|
239
|
+
requirement: !ruby/object:Gem::Requirement
|
|
240
|
+
requirements:
|
|
241
|
+
- - "~>"
|
|
242
|
+
- !ruby/object:Gem::Version
|
|
243
|
+
version: 1.0.1
|
|
244
|
+
type: :development
|
|
245
|
+
prerelease: false
|
|
246
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
247
|
+
requirements:
|
|
248
|
+
- - "~>"
|
|
249
|
+
- !ruby/object:Gem::Version
|
|
250
|
+
version: 1.0.1
|
|
251
|
+
- !ruby/object:Gem::Dependency
|
|
252
|
+
name: gem_override_marker
|
|
253
|
+
requirement: !ruby/object:Gem::Requirement
|
|
254
|
+
requirements:
|
|
255
|
+
- - ">="
|
|
256
|
+
- !ruby/object:Gem::Version
|
|
257
|
+
version: '0'
|
|
258
|
+
type: :development
|
|
259
|
+
prerelease: false
|
|
260
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
261
|
+
requirements:
|
|
262
|
+
- - ">="
|
|
263
|
+
- !ruby/object:Gem::Version
|
|
264
|
+
version: '0'
|
|
223
265
|
description: To award loyalty points and add loyalty points payment method to spree. Compatible
|
|
224
266
|
with Ruby 3.1, Rails 7.1 and Spree 4.10.
|
|
225
267
|
email: develop@be-agile.jp
|
|
@@ -238,6 +280,7 @@ files:
|
|
|
238
280
|
- app/controllers/spree/admin/return_authorizations_controller_decorator.rb
|
|
239
281
|
- app/controllers/spree/checkout_controller_decorator.rb
|
|
240
282
|
- app/controllers/spree/loyalty_points_controller.rb
|
|
283
|
+
- app/controllers/spree_loyalty_points/checkout_controller_decorator.rb
|
|
241
284
|
- app/models/concerns/spree/loyalty_points.rb
|
|
242
285
|
- app/models/concerns/spree/order/loyalty_points.rb
|
|
243
286
|
- app/models/concerns/spree/payment/loyalty_points.rb
|
|
@@ -251,9 +294,14 @@ files:
|
|
|
251
294
|
- app/models/spree/payment_method_decorator.rb
|
|
252
295
|
- app/models/spree/return_authorization_decorator.rb
|
|
253
296
|
- app/models/spree/store_decorator.rb
|
|
297
|
+
- app/models/spree_loyalty_points/order_decorator.rb
|
|
298
|
+
- app/models/spree_loyalty_points/payment_decorator.rb
|
|
299
|
+
- app/models/spree_loyalty_points/payment_method_decorator.rb
|
|
300
|
+
- app/models/spree_loyalty_points/store_decorator.rb
|
|
254
301
|
- app/overrides/add_condition_to_amount_on_return_authorization_page.rb
|
|
255
302
|
- app/overrides/add_loyalty_points_balance_to_account_page.rb
|
|
256
303
|
- app/overrides/add_loyalty_points_debiting_to_return_authorization_page.rb
|
|
304
|
+
- app/overrides/add_loyalty_points_to_account_nav.rb
|
|
257
305
|
- app/overrides/add_loyalty_points_to_admin_user_show_page.rb
|
|
258
306
|
- app/overrides/add_loyalty_points_to_cart_page.rb
|
|
259
307
|
- app/overrides/add_loyalty_points_to_order_checkout_page.rb
|
|
@@ -286,6 +334,7 @@ files:
|
|
|
286
334
|
- db/migrate/20140203063433_add_indexing_to_spree_loyalty_points_transaction.rb
|
|
287
335
|
- db/migrate/20140205111553_add_transaction_id_to_spree_loyalty_points_transactions.rb
|
|
288
336
|
- db/migrate/20140207055836_add_lock_version_to_spree_user.rb
|
|
337
|
+
- db/migrate/20251210070500_remove_lock_version_from_spree_user.rb
|
|
289
338
|
- lib/ba_spree_loyalty_points.rb
|
|
290
339
|
- lib/generators/spree_loyalty_points/install/install_generator.rb
|
|
291
340
|
- lib/spree_loyalty_points/engine.rb
|
|
@@ -295,7 +344,6 @@ files:
|
|
|
295
344
|
homepage: https://github.com/be-agile/ba_spree_loyalty_points
|
|
296
345
|
licenses:
|
|
297
346
|
- AGPL-3.0-or-later
|
|
298
|
-
- BSD-3-Clause
|
|
299
347
|
metadata: {}
|
|
300
348
|
post_install_message:
|
|
301
349
|
rdoc_options: []
|
|
@@ -313,7 +361,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
313
361
|
version: '0'
|
|
314
362
|
requirements:
|
|
315
363
|
- none
|
|
316
|
-
rubygems_version: 3.
|
|
364
|
+
rubygems_version: 3.4.9
|
|
317
365
|
signing_key:
|
|
318
366
|
specification_version: 4
|
|
319
367
|
summary: Add loyalty points to spree (be agile fork)
|