spree_core 2.3.12 → 2.3.13
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/app/models/concerns/spree/ransackable_attributes.rb +19 -0
- data/app/models/spree/address.rb +3 -0
- data/app/models/spree/base.rb +3 -0
- data/app/models/spree/line_item.rb +3 -0
- data/app/models/spree/option_value.rb +2 -0
- data/app/models/spree/order.rb +3 -0
- data/app/models/spree/price.rb +2 -0
- data/app/models/spree/product.rb +3 -0
- data/app/models/spree/product_property.rb +2 -0
- data/app/models/spree/promotion.rb +2 -0
- data/app/models/spree/property.rb +2 -0
- data/app/models/spree/return_authorization.rb +6 -0
- data/app/models/spree/shipment.rb +2 -0
- data/app/models/spree/stock_item.rb +2 -0
- data/app/models/spree/stock_movement.rb +2 -0
- data/app/models/spree/stock_transfer.rb +2 -0
- data/app/models/spree/variant.rb +3 -0
- data/app/models/spree/zone.rb +2 -0
- data/config/initializers/user_class_extensions.rb +8 -0
- data/lib/spree/core/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01725f9ca0e549175b6eff9da2061ad94f0e24c6
|
4
|
+
data.tar.gz: 812d8b5e508a5ccbd8e0a53728335a5d43a25b30
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a56c3a3d6b44d2b584668fbeebace2bcb389d2962a8959345fa84f676b315417eeedf61b56152e6a3b42ede1c0173efcb401715a5c244d0c99a27370cf93aa34
|
7
|
+
data.tar.gz: 0c4f145ce06584f368f388c3c7a1825a7f5458109abb68ba2c297b748428b7ff04e897568deb072fb55ccfaee5a3fa6e7badf6eda55014dd3a69fdeac0480ea2
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Spree::RansackableAttributes
|
2
|
+
extend ActiveSupport::Concern
|
3
|
+
included do
|
4
|
+
class_attribute :whitelisted_ransackable_associations
|
5
|
+
class_attribute :whitelisted_ransackable_attributes
|
6
|
+
|
7
|
+
class_attribute :default_ransackable_attributes
|
8
|
+
self.default_ransackable_attributes = %w[id name]
|
9
|
+
|
10
|
+
def self.ransackable_associations(*args)
|
11
|
+
self.whitelisted_ransackable_associations || []
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.ransackable_attributes(*args)
|
15
|
+
self.default_ransackable_attributes | (self.whitelisted_ransackable_attributes || [])
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
data/app/models/spree/address.rb
CHANGED
@@ -14,6 +14,9 @@ module Spree
|
|
14
14
|
alias_attribute :first_name, :firstname
|
15
15
|
alias_attribute :last_name, :lastname
|
16
16
|
|
17
|
+
|
18
|
+
self.whitelisted_ransackable_attributes = %w[firstname lastname]
|
19
|
+
|
17
20
|
def self.build_default
|
18
21
|
country = Spree::Country.find(Spree::Config[:default_country_id]) rescue Spree::Country.first
|
19
22
|
new(country: country)
|
data/app/models/spree/base.rb
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
class Spree::Base < ActiveRecord::Base
|
2
2
|
include Spree::Preferences::Preferable
|
3
3
|
serialize :preferences, Hash
|
4
|
+
|
5
|
+
include Spree::RansackableAttributes
|
6
|
+
|
4
7
|
after_initialize do
|
5
8
|
self.preferences = default_preferences.merge(preferences) if has_attribute?(:preferences)
|
6
9
|
end
|
data/app/models/spree/order.rb
CHANGED
@@ -15,6 +15,9 @@ module Spree
|
|
15
15
|
remove_transition from: :delivery, to: :confirm
|
16
16
|
end
|
17
17
|
|
18
|
+
self.whitelisted_ransackable_associations = %w[shipments user promotions bill_address ship_address line_items]
|
19
|
+
self.whitelisted_ransackable_attributes = %w[completed_at created_at email number state payment_state shipment_state total considered_risky]
|
20
|
+
|
18
21
|
attr_reader :coupon_code
|
19
22
|
attr_accessor :temporary_address
|
20
23
|
|
data/app/models/spree/price.rb
CHANGED
data/app/models/spree/product.rb
CHANGED
@@ -97,6 +97,9 @@ module Spree
|
|
97
97
|
|
98
98
|
alias :options :product_option_types
|
99
99
|
|
100
|
+
self.whitelisted_ransackable_associations = %w[stores variants_including_master master variants]
|
101
|
+
self.whitelisted_ransackable_attributes = %w[slug]
|
102
|
+
|
100
103
|
# the master variant is not a member of the variants array
|
101
104
|
def has_variants?
|
102
105
|
variants.any?
|
@@ -25,6 +25,8 @@ module Spree
|
|
25
25
|
scope :coupons, ->{ where("#{table_name}.code IS NOT NULL") }
|
26
26
|
scope :applied, -> { joins(:orders).uniq }
|
27
27
|
|
28
|
+
self.whitelisted_ransackable_attributes = ['code', 'path', 'promotion_category_id']
|
29
|
+
|
28
30
|
def self.advertised
|
29
31
|
where(advertise: true)
|
30
32
|
end
|
@@ -93,6 +93,8 @@ module Spree
|
|
93
93
|
selected_shipping_rate.try(:shipping_method) || shipping_rates.first.try(:shipping_method)
|
94
94
|
end
|
95
95
|
|
96
|
+
self.whitelisted_ransackable_attributes = ['number']
|
97
|
+
|
96
98
|
def add_shipping_method(shipping_method, selected = false)
|
97
99
|
shipping_rates.create(shipping_method: shipping_method, selected: selected, cost: cost)
|
98
100
|
end
|
@@ -19,6 +19,8 @@ module Spree
|
|
19
19
|
after_save :conditional_variant_touch, if: :changed?
|
20
20
|
after_touch { variant.touch }
|
21
21
|
|
22
|
+
self.whitelisted_ransackable_attributes = ['count_on_hand', 'stock_location_id']
|
23
|
+
|
22
24
|
def backordered_inventory_units
|
23
25
|
Spree::InventoryUnit.backordered_for_stock_item(self)
|
24
26
|
end
|
data/app/models/spree/variant.rb
CHANGED
@@ -49,6 +49,9 @@ module Spree
|
|
49
49
|
|
50
50
|
after_touch :clear_in_stock_cache
|
51
51
|
|
52
|
+
self.whitelisted_ransackable_associations = %w[option_values product prices default_price]
|
53
|
+
self.whitelisted_ransackable_attributes = %w[weight sku]
|
54
|
+
|
52
55
|
def self.active(currency = nil)
|
53
56
|
joins(:prices).where(deleted_at: nil).where('spree_prices.currency' => currency || Spree::Config[:currency]).where('spree_prices.amount IS NOT NULL')
|
54
57
|
end
|
data/app/models/spree/zone.rb
CHANGED
@@ -11,6 +11,8 @@ module Spree
|
|
11
11
|
alias :members :zone_members
|
12
12
|
accepts_nested_attributes_for :zone_members, allow_destroy: true, reject_if: proc { |a| a['zoneable_id'].blank? }
|
13
13
|
|
14
|
+
self.whitelisted_ransackable_attributes = ['description']
|
15
|
+
|
14
16
|
def self.default_tax
|
15
17
|
where(default_tax: true).first
|
16
18
|
end
|
@@ -15,6 +15,14 @@ Spree::Core::Engine.config.to_prepare do
|
|
15
15
|
belongs_to :ship_address, class_name: 'Spree::Address'
|
16
16
|
belongs_to :bill_address, class_name: 'Spree::Address'
|
17
17
|
|
18
|
+
def self.ransackable_associations(auth_object=nil)
|
19
|
+
%w[bill_address ship_address]
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.ransackable_attributes(auth_object=nil)
|
23
|
+
%w[id email]
|
24
|
+
end
|
25
|
+
|
18
26
|
# has_spree_role? simply needs to return true or false whether a user has a role or not.
|
19
27
|
def has_spree_role?(role_in_question)
|
20
28
|
spree_roles.where(name: role_in_question.to_s).any?
|
data/lib/spree/core/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-08-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemerchant
|
@@ -334,6 +334,7 @@ files:
|
|
334
334
|
- app/mailers/spree/order_mailer.rb
|
335
335
|
- app/mailers/spree/shipment_mailer.rb
|
336
336
|
- app/mailers/spree/test_mailer.rb
|
337
|
+
- app/models/concerns/spree/ransackable_attributes.rb
|
337
338
|
- app/models/concerns/spree/user_api_authentication.rb
|
338
339
|
- app/models/concerns/spree/user_reporting.rb
|
339
340
|
- app/models/spree/ability.rb
|