spree_core 2.2.13 → 2.2.14
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/spree/address.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 +4 -1
- 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.rb +1 -0
- data/lib/spree/core/ransackable_attributes.rb +15 -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: 9abfcb6e2a1a2ca7ab2c85a969e20adf636c1d99
|
4
|
+
data.tar.gz: bc242bb55726abd8ade2e39ab0c916b8f55dcc0b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a647ec37f24df8c6263501ef76128452751fb2afc06c5734b36fcb37732f4cbfe6bea13ae6f5ad3d4c33d1fcbe72aeb330252c8d412b9e6e816d045ec341f70
|
7
|
+
data.tar.gz: 8c39cb145273c64b9c6fc7f6f01b6222f3b6c235d151e85e2937bb217eab3861a4ec41bc7cebab3b1533eb03bfd89fe826f2096ea5df2ae93259fc3e2d2d59e4
|
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/order.rb
CHANGED
@@ -17,6 +17,9 @@ module Spree
|
|
17
17
|
|
18
18
|
token_resource
|
19
19
|
|
20
|
+
self.whitelisted_ransackable_associations = %w[shipments user promotions bill_address ship_address line_items]
|
21
|
+
self.whitelisted_ransackable_attributes = %w[completed_at created_at email number state payment_state shipment_state total]
|
22
|
+
|
20
23
|
attr_reader :coupon_code
|
21
24
|
|
22
25
|
if Spree.user_class
|
data/app/models/spree/price.rb
CHANGED
data/app/models/spree/product.rb
CHANGED
@@ -40,7 +40,7 @@ module Spree
|
|
40
40
|
-> { where is_master: true },
|
41
41
|
inverse_of: :product,
|
42
42
|
class_name: 'Spree::Variant'
|
43
|
-
|
43
|
+
|
44
44
|
has_many :variants,
|
45
45
|
-> { where(is_master: false).order("#{::Spree::Variant.quoted_table_name}.position ASC") },
|
46
46
|
inverse_of: :product,
|
@@ -91,6 +91,9 @@ module Spree
|
|
91
91
|
|
92
92
|
after_initialize :ensure_master
|
93
93
|
|
94
|
+
self.whitelisted_ransackable_associations = %w[stores variants_including_master master variants]
|
95
|
+
self.whitelisted_ransackable_attributes = %w[slug]
|
96
|
+
|
94
97
|
def to_param
|
95
98
|
slug
|
96
99
|
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
|
@@ -15,6 +15,8 @@ module Spree
|
|
15
15
|
after_save :conditional_variant_touch, if: :changed?
|
16
16
|
after_touch { variant.touch }
|
17
17
|
|
18
|
+
self.whitelisted_ransackable_attributes = ['count_on_hand', 'stock_location_id']
|
19
|
+
|
18
20
|
def backordered_inventory_units
|
19
21
|
Spree::InventoryUnit.backordered_for_stock_item(self)
|
20
22
|
end
|
data/app/models/spree/variant.rb
CHANGED
@@ -46,6 +46,9 @@ module Spree
|
|
46
46
|
# default variant scope only lists non-deleted variants
|
47
47
|
scope :deleted, lambda { where.not(deleted_at: nil) }
|
48
48
|
|
49
|
+
self.whitelisted_ransackable_associations = %w[option_values product prices default_price]
|
50
|
+
self.whitelisted_ransackable_attributes = %w[weight sku]
|
51
|
+
|
49
52
|
def self.active(currency = nil)
|
50
53
|
joins(:prices).where(deleted_at: nil).where('spree_prices.currency' => currency || Spree::Config[:currency]).where('spree_prices.amount IS NOT NULL')
|
51
54
|
end
|
data/app/models/spree/zone.rb
CHANGED
@@ -12,6 +12,8 @@ module Spree
|
|
12
12
|
alias :members :zone_members
|
13
13
|
accepts_nested_attributes_for :zone_members, allow_destroy: true, reject_if: proc { |a| a['zoneable_id'].blank? }
|
14
14
|
|
15
|
+
self.whitelisted_ransackable_attributes = ['description']
|
16
|
+
|
15
17
|
def self.default_tax
|
16
18
|
where(default_tax: true).first
|
17
19
|
end
|
@@ -14,6 +14,14 @@ Spree::Core::Engine.config.to_prepare do
|
|
14
14
|
belongs_to :ship_address, :class_name => 'Spree::Address'
|
15
15
|
belongs_to :bill_address, :class_name => 'Spree::Address'
|
16
16
|
|
17
|
+
def self.ransackable_associations(auth_object=nil)
|
18
|
+
%w[bill_address ship_address]
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.ransackable_attributes(auth_object=nil)
|
22
|
+
%w[id email]
|
23
|
+
end
|
24
|
+
|
17
25
|
# has_spree_role? simply needs to return true or false whether a user has a role or not.
|
18
26
|
def has_spree_role?(role_in_question)
|
19
27
|
spree_roles.where(:name => role_in_question.to_s).any?
|
data/lib/spree/core.rb
CHANGED
@@ -0,0 +1,15 @@
|
|
1
|
+
ActiveRecord::Base.class_eval do
|
2
|
+
class_attribute :whitelisted_ransackable_associations
|
3
|
+
class_attribute :whitelisted_ransackable_attributes
|
4
|
+
|
5
|
+
class_attribute :default_ransackable_attributes
|
6
|
+
self.default_ransackable_attributes = %w[id name]
|
7
|
+
|
8
|
+
def self.ransackable_associations *arg
|
9
|
+
self.whitelisted_ransackable_associations || []
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.ransackable_attributes *arg
|
13
|
+
self.default_ransackable_attributes | (self.whitelisted_ransackable_attributes || [])
|
14
|
+
end
|
15
|
+
end
|
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.2.
|
4
|
+
version: 2.2.14
|
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
|
@@ -653,6 +653,7 @@ files:
|
|
653
653
|
- lib/spree/core/permalinks.rb
|
654
654
|
- lib/spree/core/product_duplicator.rb
|
655
655
|
- lib/spree/core/product_filters.rb
|
656
|
+
- lib/spree/core/ransackable_attributes.rb
|
656
657
|
- lib/spree/core/routes.rb
|
657
658
|
- lib/spree/core/search/base.rb
|
658
659
|
- lib/spree/core/token_resource.rb
|