spree_core 3.7.14.1 → 4.0.0.beta
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/Gemfile +1 -1
- data/app/controllers/spree/base_controller.rb +0 -1
- data/app/finders/spree/taxons/find.rb +6 -5
- data/app/helpers/spree/base_helper.rb +0 -9
- data/app/helpers/spree/products_helper.rb +1 -1
- data/app/models/concerns/spree/product_scopes.rb +254 -0
- data/app/models/concerns/spree/user_address.rb +5 -2
- data/app/models/friendly_id/slug_decorator.rb +8 -2
- data/app/models/spree/ability.rb +21 -22
- data/app/models/spree/address.rb +37 -24
- data/app/models/spree/adjustment.rb +0 -10
- data/app/models/spree/app_dependencies.rb +2 -2
- data/app/models/spree/asset.rb +1 -12
- data/app/models/spree/country.rb +2 -2
- data/app/models/spree/credit_card.rb +4 -5
- data/app/models/spree/gateway/bogus.rb +1 -1
- data/app/models/spree/image.rb +8 -1
- data/app/models/spree/image/configuration/active_storage.rb +0 -2
- data/app/models/spree/order.rb +13 -78
- data/app/models/spree/order/address_book.rb +86 -0
- data/app/models/spree/order/checkout.rb +4 -22
- data/app/models/spree/order/currency_updater.rb +1 -1
- data/app/models/spree/order/store_credit.rb +0 -18
- data/app/models/spree/order_merger.rb +1 -0
- data/app/models/spree/payment.rb +4 -2
- data/app/models/spree/payment/gateway_options.rb +1 -1
- data/app/models/spree/payment/processing.rb +2 -0
- data/app/models/spree/preferences/configuration.rb +1 -1
- data/app/models/spree/preferences/preferable.rb +1 -1
- data/app/models/spree/product.rb +2 -3
- data/app/models/spree/promotion_handler/coupon.rb +2 -1
- data/app/models/spree/reimbursement_tax_calculator.rb +1 -1
- data/app/models/spree/return_item.rb +1 -1
- data/app/models/spree/return_item/eligibility_validator/default.rb +2 -0
- data/app/models/spree/return_item/eligibility_validator/{rma_required.rb → r_m_a_required.rb} +0 -0
- data/app/models/spree/shipment.rb +1 -1
- data/app/models/spree/store_credit.rb +4 -5
- data/app/models/spree/taxon_image.rb +1 -1
- data/app/models/spree/taxonomy.rb +1 -1
- data/app/services/spree/cart/add_item.rb +3 -1
- data/app/services/spree/cart/update.rb +1 -1
- data/config/locales/en.yml +15 -0
- data/db/default/spree/stores.rb +1 -0
- data/db/default/spree/zones.rb +16 -0
- data/db/migrate/20140806144901_add_type_to_reimbursement_type.rb +1 -1
- data/db/migrate/20141101231208_fix_adjustment_order_presence.rb +2 -2
- data/db/migrate/20170323151450_add_missing_unique_indexes_for_unique_attributes.rb +1 -1
- data/db/migrate/20190305121659_add_iso_and_iso3_validation_on_presence_and_uniqueness.rb +18 -0
- data/db/migrate/20190523092729_add_user_id_and_deleted_at_to_spree_addresses.rb +12 -0
- data/lib/generators/spree/dummy/dummy_generator.rb +3 -1
- data/lib/spree/core.rb +0 -2
- data/lib/spree/core/importer/order.rb +64 -103
- data/lib/spree/core/importer/product.rb +2 -2
- data/lib/spree/core/product_duplicator.rb +1 -5
- data/lib/spree/core/version.rb +1 -3
- data/lib/spree/permitted_attributes.rb +3 -1
- data/lib/spree/testing_support/ability_helpers.rb +3 -11
- data/lib/spree/testing_support/capybara_config.rb +4 -1
- data/lib/spree/testing_support/capybara_ext.rb +22 -98
- data/lib/spree/testing_support/controller_requests.rb +36 -26
- data/lib/spree/testing_support/factories/image_factory.rb +2 -6
- data/lib/spree/testing_support/factories/return_item_factory.rb +2 -2
- data/lib/spree/testing_support/factories/taxon_factory.rb +1 -1
- data/lib/spree/testing_support/i18n.rb +6 -8
- data/lib/spree/testing_support/image_helpers.rb +5 -11
- data/lib/tasks/exchanges.rake +35 -37
- data/spree_core.gemspec +11 -14
- metadata +63 -103
- data/app/models/concerns/spree/acts_as_taggable.rb +0 -11
- data/app/models/spree/image/configuration/paperclip.rb +0 -64
- data/app/models/spree/order_contents.rb +0 -54
- data/app/models/spree/product/scopes.rb +0 -250
- data/app/models/spree/tag.rb +0 -4
- data/app/models/spree/taxon_image/configuration/paperclip.rb +0 -27
- data/config/initializers/acts_as_taggable_on.rb +0 -9
- data/config/initializers/use_paperclip.rb +0 -3
- data/db/migrate/20160511071954_acts_as_taggable_on_spree_migration.rb +0 -40
- data/db/migrate/20160511072249_change_collation_for_spree_tag_names.rb +0 -9
- data/db/migrate/20160511072335_add_missing_indexes_to_spree_taggings.rb +0 -14
- data/lib/spree/core/controller_helpers/respond_with.rb +0 -67
- data/lib/spree/responder.rb +0 -44
- data/lib/spree/testing_support/factories/tag_factory.rb +0 -5
@@ -1,9 +0,0 @@
|
|
1
|
-
# This migration is added to circumvent issue #623 and have special characters
|
2
|
-
# work properly
|
3
|
-
class ChangeCollationForSpreeTagNames < ActiveRecord::Migration[4.2]
|
4
|
-
def up
|
5
|
-
if defined?(ActsAsTaggableOn) && ActsAsTaggableOn::Utils.using_mysql?
|
6
|
-
execute("ALTER TABLE spree_tags MODIFY name varchar(255) CHARACTER SET utf8 COLLATE utf8_bin;")
|
7
|
-
end
|
8
|
-
end
|
9
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
class AddMissingIndexesToSpreeTaggings < ActiveRecord::Migration[4.2]
|
2
|
-
def change
|
3
|
-
add_index :spree_taggings, :tag_id
|
4
|
-
add_index :spree_taggings, :taggable_id
|
5
|
-
add_index :spree_taggings, :taggable_type
|
6
|
-
add_index :spree_taggings, :tagger_id
|
7
|
-
add_index :spree_taggings, :context
|
8
|
-
|
9
|
-
add_index :spree_taggings, [:tagger_id, :tagger_type]
|
10
|
-
add_index :spree_taggings,
|
11
|
-
[:taggable_id, :taggable_type, :tagger_id, :context],
|
12
|
-
name: "spree_taggings_idy"
|
13
|
-
end
|
14
|
-
end
|
@@ -1,67 +0,0 @@
|
|
1
|
-
require 'spree/responder'
|
2
|
-
|
3
|
-
module ActionController
|
4
|
-
class Base
|
5
|
-
def respond_with(*resources, &block)
|
6
|
-
if Spree::BaseController.spree_responders.key?(self.class.to_s.to_sym)
|
7
|
-
# Checkout AS Array#extract_options! and original respond_with
|
8
|
-
# implementation for a better picture of this hack
|
9
|
-
if resources.last.is_a? Hash
|
10
|
-
resources.last[:action_name] = action_name.to_sym
|
11
|
-
else
|
12
|
-
resources.push action_name: action_name.to_sym
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
super
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
21
|
-
module Spree
|
22
|
-
module Core
|
23
|
-
module ControllerHelpers
|
24
|
-
module RespondWith
|
25
|
-
extend ActiveSupport::Concern
|
26
|
-
|
27
|
-
included do
|
28
|
-
cattr_accessor :spree_responders
|
29
|
-
self.spree_responders = {}
|
30
|
-
self.responder = Spree::Responder
|
31
|
-
end
|
32
|
-
|
33
|
-
module ClassMethods
|
34
|
-
def clear_overrides!
|
35
|
-
self.spree_responders = {}
|
36
|
-
end
|
37
|
-
|
38
|
-
def respond_override(options = {})
|
39
|
-
ActiveSupport::Deprecation.warn 'ControllerHelpers::RespondWith is deprecated and will be removed in Spree 4.0.'
|
40
|
-
|
41
|
-
unless options.blank?
|
42
|
-
action_name = options.keys.first
|
43
|
-
action_value = options.values.first
|
44
|
-
|
45
|
-
if action_name.blank? || action_value.blank?
|
46
|
-
raise ArgumentError, "invalid values supplied #{options.inspect}"
|
47
|
-
end
|
48
|
-
|
49
|
-
format_name = action_value.keys.first
|
50
|
-
format_value = action_value.values.first
|
51
|
-
|
52
|
-
if format_name.blank? || format_value.blank?
|
53
|
-
raise ArgumentError, "invalid values supplied #{options.inspect}"
|
54
|
-
end
|
55
|
-
|
56
|
-
if format_value.is_a?(Proc)
|
57
|
-
options = { action_name.to_sym => { format_name.to_sym => { success: format_value } } }
|
58
|
-
end
|
59
|
-
|
60
|
-
spree_responders.deep_merge!(name.to_sym => options)
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
data/lib/spree/responder.rb
DELETED
@@ -1,44 +0,0 @@
|
|
1
|
-
module Spree
|
2
|
-
class Responder < ::ActionController::Responder #:nodoc:
|
3
|
-
attr_accessor :on_success, :on_failure
|
4
|
-
|
5
|
-
def initialize(controller, resources, options = {})
|
6
|
-
super
|
7
|
-
|
8
|
-
class_name = controller.class.name.to_sym
|
9
|
-
action_name = options.delete(:action_name)
|
10
|
-
|
11
|
-
if result = Spree::BaseController.spree_responders[class_name].try(:[], action_name).try(:[], format.to_sym)
|
12
|
-
self.on_success = handler(controller, result, :success)
|
13
|
-
self.on_failure = handler(controller, result, :failure)
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
def to_html
|
18
|
-
super && return unless on_success || on_failure
|
19
|
-
has_errors? ? controller.instance_exec(&on_failure) : controller.instance_exec(&on_success)
|
20
|
-
end
|
21
|
-
|
22
|
-
def to_format
|
23
|
-
super && return unless on_success || on_failure
|
24
|
-
has_errors? ? controller.instance_exec(&on_failure) : controller.instance_exec(&on_success)
|
25
|
-
end
|
26
|
-
|
27
|
-
private
|
28
|
-
|
29
|
-
def handler(controller, result, status)
|
30
|
-
return result if result.respond_to? :call
|
31
|
-
|
32
|
-
case result
|
33
|
-
when Hash
|
34
|
-
if result[status].is_a? Symbol
|
35
|
-
controller.method(result[status])
|
36
|
-
else
|
37
|
-
result[status]
|
38
|
-
end
|
39
|
-
when Symbol
|
40
|
-
controller.method(result)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|