Class: Spree::AppConfiguration
- Inherits:
-
Preferences::Configuration
- Object
- Preferences::Configuration
- Spree::AppConfiguration
- Defined in:
- lib/spree/app_configuration.rb
Instance Attribute Summary collapse
-
#add_payment_sources_to_wallet_class ⇒ Class
Allows providing your own class for adding payment sources to a user's “wallet” after an order moves to the complete state.
-
#address_requires_phone ⇒ Boolean
Should phone number be required (default:
true
). -
#address_requires_state ⇒ Boolean
Should state/state_name be required (default:
true
). -
#admin_interface_logo ⇒ String
URL of logo used in admin (default: 'logo/solidus.svg').
-
#admin_products_per_page ⇒ Integer
Number of products to display in admin (default:
10
). -
#admin_variants_per_page ⇒ Integer
Number of variants to display in admin (default:
20
). -
#admin_vat_country_iso ⇒ String?
Set this if you want to enter prices in the backend including value added tax.
-
#allow_checkout_on_gateway_error ⇒ Boolean
Allow checkout to complete after a failed payment (default:
false
). -
#allow_guest_checkout ⇒ Boolean
When false, customers must create an account to complete an order (default:
true
). -
#allow_promotions_any_match_policy ⇒ Boolean
When false, admins cannot create promotions with an “any” match policy (default:
false
) Create individual, separate promotions for each of your rules instead. -
#allow_return_item_amount_editing ⇒ Boolean
Determines whether an admin is allowed to change a return item's pre-calculated amount (default:
false
). -
#allowed_image_mime_types ⇒ Array
Defines which MIME types are allowed for images `%w(image/jpeg image/jpg image/png image/gif).freeze` is the default.
-
#alternative_billing_phone ⇒ Boolean
Request an extra phone number for bill address (default:
false
). -
#alternative_shipping_phone ⇒ Boolean
Request an extra phone number for shipping address (default:
false
). -
#always_put_site_name_in_title ⇒ Boolean
When true, site name is always appended to titles on the frontend (default:
true
). -
#auto_capture ⇒ Boolean
Automatically capture the credit card (as opposed to just authorize and capture later) (default:
false
). -
#auto_capture_exchanges ⇒ Boolean
Automatically capture the credit card (as opposed to just authorize and capture later) (default:
false
). -
#automatic_default_address ⇒ Boolean
The default value of true preserves existing backwards compatible feature of treating the most recently used address in checkout as the user's default address.
-
#available_currencies ⇒ Array
An array of available currencies from Money::Currency.all.
-
#billing_address_required ⇒ Boolean
Controls whether billing address is required or not in the checkout process by default, can be overridden at order level.
-
#can_restrict_stock_management ⇒ Boolean
Indicates if stock management can be restricted by location.
-
#carton_shipped_email_class ⇒ ActionMailer::Base
Allows providing your own Mailer for shipped cartons.
-
#checkout_zone ⇒ String
Name of a Zone, which limits available countries to those included in that zone.
-
#company ⇒ Boolean
Request company field for billing and shipping addresses.
-
#completable_order_created_cutoff ⇒ Integer
The number of days to look back for updated orders which get returned to the user as last completed.
-
#countries_that_use_nested_subregions ⇒ Array
of the default subregions that come with Carmen.
-
#credit_to_new_allocation ⇒ Boolean
Creates a new allocation anytime StoreCredit#credit is called.
-
#currency ⇒ String
Currency to use by default when not defined on the site (default: “USD”).
-
#current_store_selector_class ⇒ Class
Allows providing your own class for choosing which store to use.
-
#customer_returns_per_page ⇒ Integer
Customer returns to show per-page in the admin (default:
15
). -
#default_country_iso ⇒ String
Default customer country ISO code.
-
#default_email_regexp ⇒ Regexp
Regex to be used in email validations, for example in Spree::EmailValidator.
-
#default_payment_builder_class ⇒ Class
Allows providing your own class for adding default payments to a user's order from their “wallet”.
-
#generate_api_key_for_all_roles ⇒ Boolean
at role_user creation for all roles.
-
#guest_token_cookie_options ⇒ Hash
Add additional guest_token cookie options here (ie. domain or path).
-
#image_attachment_module ⇒ Module
Allows switching attachment library for Image.
-
#inventory_cache_threshold ⇒ Integer
Only invalidate product caches when the count on hand for a stock item falls below or rises about the inventory_cache_threshold.
-
#layout ⇒ String
Template to use for layout on the frontend (default: “spree/layouts/spree_application”).
-
#log_entry_allow_aliases ⇒ Boolean
Whether YAML aliases are allowed when loading serialized data in LogEntry.
-
#log_entry_permitted_classes ⇒ Array<String>
An array of extra classes that are allowed to be loaded from a serialized YAML as details in LogEntry (defaults to a non-frozen empty array, so that extensions can add their own classes).
-
#logo ⇒ String
URL of logo used on frontend (default: 'logo/solidus.svg').
-
#mails_from ⇒ String
deprecated
Deprecated.
Spree::Store#mail_from_address is used instead
-
#max_level_in_taxons_menu ⇒ Integer
Maximum nesting level in taxons menu (default:
1
). -
#migration_path ⇒ Pathname
Configures the absolute path that contains the Solidus engine migrations.
-
#order_bill_address_used ⇒ Boolean
bill addresses on payment sources.
-
#order_cancellations_class ⇒ Class
Allows providing your own class for managing the inventory units of a completed order.
-
#order_capturing_time_window ⇒ Integer
The number of days to look back for fully-shipped/cancelled orders in order to charge for them.
-
#order_contents_class ⇒ Class
Allows providing your own class for managing the contents of an order.
-
#order_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for order mailer.
-
#order_merger_class ⇒ Class
Allows providing your own class for merging two orders.
-
#order_mutex_max_age ⇒ Integer
Max age of OrderMutex in seconds (default: 2 minutes).
-
#order_number_generator ⇒ Class
Allows providing your own class instance for generating order numbers.
-
#order_shipping_class ⇒ Class
Allows providing your own class for shipping an order.
-
#orders_per_page ⇒ Integer
Orders to show per-page in the admin (default:
15
). -
#payment_canceller ⇒ Class
Allows providing your own class for canceling payments.
-
#product_gallery_class ⇒ Class
Allows providing your own class for image galleries on Products.
-
#product_image_style_default ⇒ Symbol
Defines which style to default to when style is not provided :product is the default.
-
#product_image_styles ⇒ Hash
Defines image styles/sizes hash for styles `{ mini: '48x48>', small: '400x400>', product: '680x680>', large: '1200x1200>' } is the default.
-
#products_per_page ⇒ Integer
Products to show per-page in the frontend (default:
12
). -
#promotion_code_batch_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for promotion code batch mailer.
-
#promotions_per_page ⇒ Integer
Promotions to show per-page in the admin (default:
15
). -
#properties_per_page ⇒ Integer
Properties to show per-page in the admin (default:
15
). -
#reimbursement_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for reimbursement mailer.
-
#require_master_price ⇒ Boolean
Require a price on the master variant of a product (default:
true
). -
#require_payment_to_ship ⇒ Boolean
Allows shipments to be ready to ship regardless of the order being paid if false (default:
true
). -
#return_eligibility_number_of_days ⇒ Integer
Default: 365.
-
#roles_for_auto_api_key ⇒ Array
at role_user creation is desired when user has one of these roles.
-
#send_core_emails ⇒ Boolean
Whether to send transactional emails (default: true).
-
#shipping_instructions ⇒ Boolean
Request instructions/info for shipping (default:
false
). -
#shipping_rate_tax_calculator_class ⇒ Class
Allows providing your own class for calculating taxes on a shipping rate.
-
#show_only_complete_orders_by_default ⇒ Boolean
Only show completed orders by default in the admin (default:
true
). -
#show_products_without_price ⇒ Boolean
Whether products without a price are visible in the frontend (default:
false
). -
#show_raw_product_description ⇒ Boolean
Don't escape HTML of product descriptions.
-
#show_variant_full_price ⇒ Boolean
Displays variant full price or difference with product price.
-
#store_credit_prioritizer_class ⇒ Class
Allows providing your own class for prioritizing store credit application to an order.
-
#tax_adjuster_class ⇒ Class
Allows providing your own class for calculating taxes on an order.
-
#tax_calculator_class ⇒ Class
Allows providing your own class for calculating taxes on an order.
-
#tax_using_ship_address ⇒ Boolean
Use the shipping address rather than the billing address to determine tax (default:
true
). -
#taxon_attachment_module ⇒ Module
Allows switching attachment library for Taxon.
-
#taxon_image_style_default ⇒ Symbol
Defines which style to default to when style is not provided :mini is the default.
-
#taxon_styles ⇒ Hash
Defines taxon styles/sizes hash for styles `{ mini: '48x48>', small: '400x400>', product: '680x680>', large: '1200x1200>' } is the default.
-
#taxon_url_parametizer_class ⇒ Class
Allows providing your own class for creating urls on taxons.
-
#track_inventory_levels ⇒ Object
Determines whether to track on_hand values for variants / products.
-
#use_legacy_events ⇒ Boolean
Before v3.2, Solidus used a custom pub/sub implementation based on ActiveSupport::Notifications.
-
#variant_gallery_class ⇒ Class
Allows providing your own class for image galleries on Variants.
-
#variant_price_selector_class ⇒ Class
Allows implementing custom pricing for variants.
-
#variant_vat_prices_generator_class ⇒ Class
Allows implementing custom vat prices generation.
Attributes inherited from Preferences::Configuration
#load_defaults_called, #loaded_defaults, #preference_store
Instance Method Summary collapse
-
#admin_vat_location ⇒ Spree::Tax::TaxLocation
Default admin VAT location.
-
#default_pricing_options ⇒ variant_price_selector_class
Shortcut for the default pricing options.
- #environment ⇒ Object
- #events ⇒ Object
-
#pricing_options_class ⇒ Class
Shortcut for getting the variant price selector's pricing options class.
- #roles ⇒ Object
- #state_machines ⇒ Object
- #static_model_preferences ⇒ Object
- #stock ⇒ Object
- #user_last_url_storer_rules ⇒ Object
Methods inherited from Preferences::Configuration
#check_load_defaults_called, class_name_attribute, #configure, inherited, #initialize, #load_defaults, preference, #reset, #set, #use_legacy_db_preferences!, #use_static_preferences!, versioned_preference
Methods included from Preferences::Preferable
#admin_form_preference_names, #default_preferences, #defined_preferences, #get_preference, #has_preference!, #has_preference?, #preference_default, #preference_type, #set_preference
Constructor Details
This class inherits a constructor from Spree::Preferences::Configuration
Instance Attribute Details
#add_payment_sources_to_wallet_class ⇒ Class
Allows providing your own class for adding payment sources to a user's “wallet” after an order moves to the complete state.
460 |
# File 'lib/spree/app_configuration.rb', line 460 class_name_attribute :add_payment_sources_to_wallet_class, default: 'Spree::Wallet::AddPaymentSourcesToWallet' |
#address_requires_phone ⇒ Boolean
Returns should phone number be required (default: true
).
32 |
# File 'lib/spree/app_configuration.rb', line 32 preference :address_requires_phone, :boolean, default: true |
#address_requires_state ⇒ Boolean
Returns should state/state_name be required (default: true
).
36 |
# File 'lib/spree/app_configuration.rb', line 36 preference :address_requires_state, :boolean, default: true |
#admin_interface_logo ⇒ String
Returns URL of logo used in admin (default: 'logo/solidus.svg').
40 |
# File 'lib/spree/app_configuration.rb', line 40 preference :admin_interface_logo, :string, default: 'logo/solidus.svg' |
#admin_products_per_page ⇒ Integer
Returns Number of products to display in admin (default: 10
).
44 |
# File 'lib/spree/app_configuration.rb', line 44 preference :admin_products_per_page, :integer, default: 10 |
#admin_variants_per_page ⇒ Integer
Returns Number of variants to display in admin (default: 20
).
48 |
# File 'lib/spree/app_configuration.rb', line 48 preference :admin_variants_per_page, :integer, default: 20 |
#admin_vat_country_iso ⇒ String?
Set this if you want to enter prices in the backend including value added tax.
54 |
# File 'lib/spree/app_configuration.rb', line 54 preference :admin_vat_country_iso, :string, default: nil |
#allow_checkout_on_gateway_error ⇒ Boolean
Returns Allow checkout to complete after a failed payment (default: false
).
58 |
# File 'lib/spree/app_configuration.rb', line 58 preference :allow_checkout_on_gateway_error, :boolean, default: false |
#allow_guest_checkout ⇒ Boolean
Returns When false, customers must create an account to complete an order (default: true
).
62 |
# File 'lib/spree/app_configuration.rb', line 62 preference :allow_guest_checkout, :boolean, default: true |
#allow_promotions_any_match_policy ⇒ Boolean
Returns When false, admins cannot create promotions with an “any” match policy (default: false
) Create individual, separate promotions for each of your rules instead.
67 |
# File 'lib/spree/app_configuration.rb', line 67 preference :allow_promotions_any_match_policy, :boolean, default: false |
#allow_return_item_amount_editing ⇒ Boolean
Returns Determines whether an admin is allowed to change a return item's pre-calculated amount (default: false
).
75 |
# File 'lib/spree/app_configuration.rb', line 75 preference :allow_return_item_amount_editing, :boolean, default: false |
#allowed_image_mime_types ⇒ Array
Defines which MIME types are allowed for images `%w(image/jpeg image/jpg image/png image/gif).freeze` is the default.
522 |
# File 'lib/spree/app_configuration.rb', line 522 class_name_attribute :allowed_image_mime_types, default: %w(image/jpeg image/jpg image/png image/gif).freeze |
#alternative_billing_phone ⇒ Boolean
Returns Request an extra phone number for bill address (default: false
).
79 |
# File 'lib/spree/app_configuration.rb', line 79 preference :alternative_billing_phone, :boolean, default: false |
#alternative_shipping_phone ⇒ Boolean
Returns Request an extra phone number for shipping address (default: false
).
83 |
# File 'lib/spree/app_configuration.rb', line 83 preference :alternative_shipping_phone, :boolean, default: false |
#always_put_site_name_in_title ⇒ Boolean
Returns When true, site name is always appended to titles on the frontend (default: true
).
87 |
# File 'lib/spree/app_configuration.rb', line 87 preference :always_put_site_name_in_title, :boolean, default: true |
#auto_capture ⇒ Boolean
Setting this to true is not recommended. Performing an authorize and later capture has far superior error handing. VISA and MasterCard also require that shipments are sent within a certain time of the card being charged.
Returns Automatically capture the credit card (as opposed to just authorize and capture later) (default: false
).
95 |
# File 'lib/spree/app_configuration.rb', line 95 preference :auto_capture, :boolean, default: false |
#auto_capture_exchanges ⇒ Boolean
Returns Automatically capture the credit card (as opposed to just authorize and capture later) (default: false
).
99 |
# File 'lib/spree/app_configuration.rb', line 99 preference :auto_capture_exchanges, :boolean, default: false |
#automatic_default_address ⇒ Boolean
The default value of true preserves existing backwards compatible feature of treating the most recently used address in checkout as the user's default address. Setting to false means that the user should manage their own default via some custom UI that uses AddressBookController.
107 |
# File 'lib/spree/app_configuration.rb', line 107 preference :automatic_default_address, :boolean, default: true |
#available_currencies ⇒ Array
Returns An array of available currencies from Money::Currency.all.
316 |
# File 'lib/spree/app_configuration.rb', line 316 attr_writer :available_currencies |
#billing_address_required ⇒ Boolean
Controls whether billing address is required or not in the checkout process by default, can be overridden at order level. (default: false
)
114 |
# File 'lib/spree/app_configuration.rb', line 114 preference :billing_address_required, :boolean, default: false |
#can_restrict_stock_management ⇒ Boolean
Returns Indicates if stock management can be restricted by location.
118 |
# File 'lib/spree/app_configuration.rb', line 118 preference :can_restrict_stock_management, :boolean, default: false |
#carton_shipped_email_class ⇒ ActionMailer::Base
Allows providing your own Mailer for shipped cartons.
404 |
# File 'lib/spree/app_configuration.rb', line 404 class_name_attribute :carton_shipped_email_class, default: 'Spree::CartonMailer' |
#checkout_zone ⇒ String
Returns Name of a Zone, which limits available countries to those included in that zone. (default: nil
).
122 |
# File 'lib/spree/app_configuration.rb', line 122 preference :checkout_zone, :string, default: nil |
#company ⇒ Boolean
Returns Request company field for billing and shipping addresses. (default: false
).
126 |
# File 'lib/spree/app_configuration.rb', line 126 preference :company, :boolean, default: false |
#completable_order_created_cutoff ⇒ Integer
Returns the number of days to look back for updated orders which get returned to the user as last completed.
130 |
# File 'lib/spree/app_configuration.rb', line 130 preference :completable_order_created_cutoff_days, :integer, default: nil |
#countries_that_use_nested_subregions ⇒ Array
of the default subregions that come with Carmen. Will be used on store creation to ensure the correct states are generated, and when running the states regenerate rake task. (default: ['IT'])
265 |
# File 'lib/spree/app_configuration.rb', line 265 preference :countries_that_use_nested_subregions, :array, default: ['IT'] |
#credit_to_new_allocation ⇒ Boolean
Returns Creates a new allocation anytime StoreCredit#credit is called.
138 |
# File 'lib/spree/app_configuration.rb', line 138 preference :credit_to_new_allocation, :boolean, default: false |
#currency ⇒ String
Currency to use by default when not defined on the site (default: “USD”)
143 |
# File 'lib/spree/app_configuration.rb', line 143 preference :currency, :string, default: "USD" |
#current_store_selector_class ⇒ Class
Allows providing your own class for choosing which store to use.
483 |
# File 'lib/spree/app_configuration.rb', line 483 class_name_attribute :current_store_selector_class, default: 'Spree::StoreSelector::ByServerName' |
#customer_returns_per_page ⇒ Integer
Returns Customer returns to show per-page in the admin (default: 15
).
147 |
# File 'lib/spree/app_configuration.rb', line 147 preference :customer_returns_per_page, :integer, default: 15 |
#default_country_iso ⇒ String
Default customer country ISO code
152 |
# File 'lib/spree/app_configuration.rb', line 152 preference :default_country_iso, :string, default: 'US' |
#default_email_regexp ⇒ Regexp
Returns Regex to be used in email validations, for example in Spree::EmailValidator.
156 |
# File 'lib/spree/app_configuration.rb', line 156 preference :default_email_regexp, :regexp, default: URI::MailTo::EMAIL_REGEXP |
#default_payment_builder_class ⇒ Class
Allows providing your own class for adding default payments to a user's order from their “wallet”.
419 |
# File 'lib/spree/app_configuration.rb', line 419 class_name_attribute :default_payment_builder_class, default: 'Spree::Wallet::DefaultPaymentBuilder' |
#generate_api_key_for_all_roles ⇒ Boolean
at role_user creation for all roles. (default: false
)
161 |
# File 'lib/spree/app_configuration.rb', line 161 preference :generate_api_key_for_all_roles, :boolean, default: false |
#guest_token_cookie_options ⇒ Hash
Returns Add additional guest_token cookie options here (ie. domain or path).
71 |
# File 'lib/spree/app_configuration.rb', line 71 preference :guest_token_cookie_options, :hash, default: {} |
#image_attachment_module ⇒ Module
Allows switching attachment library for Image
`Spree::Image::ActiveStorageAttachment` is the default and provides the Active Storage implementation.
Enumerable of images adhering to the present_image_class interface
514 |
# File 'lib/spree/app_configuration.rb', line 514 class_name_attribute :image_attachment_module, default: Spree::RailsCompatibility. |
#inventory_cache_threshold ⇒ Integer
Only invalidate product caches when the count on hand for a stock item falls below or rises about the inventory_cache_threshold. When undefined, the product caches will be invalidated anytime the count on hand is changed.
168 |
# File 'lib/spree/app_configuration.rb', line 168 preference :inventory_cache_threshold, :integer |
#layout ⇒ String
Returns template to use for layout on the frontend (default: “spree/layouts/spree_application”).
172 |
# File 'lib/spree/app_configuration.rb', line 172 preference :layout, :string, default: 'spree/layouts/spree_application' |
#log_entry_allow_aliases ⇒ Boolean
Returns Whether YAML aliases are allowed when loading serialized data in LogEntry. It defaults to true. Depending on the source of your data, you may consider disabling it to prevent entity expansion attacks.
192 |
# File 'lib/spree/app_configuration.rb', line 192 preference :log_entry_allow_aliases, :boolean, default: true |
#log_entry_permitted_classes ⇒ Array<String>
Returns An array of extra classes that are allowed to be loaded from a serialized YAML as details in LogEntry (defaults to a non-frozen empty array, so that extensions can add their own classes).
185 |
# File 'lib/spree/app_configuration.rb', line 185 preference :log_entry_permitted_classes, :array, default: [] |
#logo ⇒ String
Returns URL of logo used on frontend (default: 'logo/solidus.svg').
176 |
# File 'lib/spree/app_configuration.rb', line 176 preference :logo, :string, default: 'logo/solidus.svg' |
#mails_from ⇒ String
Spree::Store#mail_from_address is used instead
Returns Email address used as From:
field in transactional emails.
197 |
# File 'lib/spree/app_configuration.rb', line 197 preference :mails_from, :string, default: '[email protected]' |
#max_level_in_taxons_menu ⇒ Integer
Returns maximum nesting level in taxons menu (default: 1
).
210 |
# File 'lib/spree/app_configuration.rb', line 210 preference :max_level_in_taxons_menu, :integer, default: 1 |
#migration_path ⇒ Pathname
Configures the absolute path that contains the Solidus engine migrations. This will be checked at app boot to confirm that all Solidus migrations are installed.
589 |
# File 'lib/spree/app_configuration.rb', line 589 attr_writer :migration_path |
#order_bill_address_used ⇒ Boolean
bill addresses on payment sources. (default: true
)
215 |
# File 'lib/spree/app_configuration.rb', line 215 preference :order_bill_address_used, :boolean, default: true |
#order_cancellations_class ⇒ Class
Allows providing your own class for managing the inventory units of a completed order.
441 |
# File 'lib/spree/app_configuration.rb', line 441 class_name_attribute :order_cancellations_class, default: 'Spree::OrderCancellations' |
#order_capturing_time_window ⇒ Integer
Returns the number of days to look back for fully-shipped/cancelled orders in order to charge for them.
219 |
# File 'lib/spree/app_configuration.rb', line 219 preference :order_capturing_time_window, :integer, default: 14 |
#order_contents_class ⇒ Class
Allows providing your own class for managing the contents of an order.
426 |
# File 'lib/spree/app_configuration.rb', line 426 class_name_attribute :order_contents_class, default: 'Spree::OrderContents' |
#order_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for order mailer.
379 |
# File 'lib/spree/app_configuration.rb', line 379 class_name_attribute :order_mailer_class, default: 'Spree::OrderMailer' |
#order_merger_class ⇒ Class
Allows providing your own class for merging two orders.
411 |
# File 'lib/spree/app_configuration.rb', line 411 class_name_attribute :order_merger_class, default: 'Spree::OrderMerger' |
#order_mutex_max_age ⇒ Integer
Returns Max age of OrderMutex in seconds (default: 2 minutes).
223 |
# File 'lib/spree/app_configuration.rb', line 223 preference :order_mutex_max_age, :integer, default: 120 |
#order_number_generator ⇒ Class
Allows providing your own class instance for generating order numbers.
600 |
# File 'lib/spree/app_configuration.rb', line 600 attr_writer :order_number_generator |
#order_shipping_class ⇒ Class
Allows providing your own class for shipping an order.
433 |
# File 'lib/spree/app_configuration.rb', line 433 class_name_attribute :order_shipping_class, default: 'Spree::OrderShipping' |
#orders_per_page ⇒ Integer
Returns Orders to show per-page in the admin (default: 15
).
227 |
# File 'lib/spree/app_configuration.rb', line 227 preference :orders_per_page, :integer, default: 15 |
#payment_canceller ⇒ Class
Allows providing your own class for canceling payments.
447 |
# File 'lib/spree/app_configuration.rb', line 447 attr_writer :payment_canceller |
#product_gallery_class ⇒ Class
Allows providing your own class for image galleries on Products
Enumerable of images adhering to the present_image_class interface
504 |
# File 'lib/spree/app_configuration.rb', line 504 class_name_attribute :product_gallery_class, default: 'Spree::Gallery::ProductGallery' |
#product_image_style_default ⇒ Symbol
Defines which style to default to when style is not provided :product is the default.
530 |
# File 'lib/spree/app_configuration.rb', line 530 class_name_attribute :product_image_style_default, default: :product |
#product_image_styles ⇒ Hash
Defines image styles/sizes hash for styles `{ mini: '48x48>',
small: '400x400>',
product: '680x680>',
large: '1200x1200>' } is the default.
541 542 543 544 |
# File 'lib/spree/app_configuration.rb', line 541 class_name_attribute :product_image_styles, default: { mini: '48x48>', small: '400x400>', product: '680x680>', large: '1200x1200>' } |
#products_per_page ⇒ Integer
Returns Products to show per-page in the frontend (default: 12
).
235 |
# File 'lib/spree/app_configuration.rb', line 235 preference :products_per_page, :integer, default: 12 |
#promotion_code_batch_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for promotion code batch mailer.
388 |
# File 'lib/spree/app_configuration.rb', line 388 class_name_attribute :promotion_code_batch_mailer_class, default: 'Spree::PromotionCodeBatchMailer' |
#promotions_per_page ⇒ Integer
Returns Promotions to show per-page in the admin (default: 15
).
239 |
# File 'lib/spree/app_configuration.rb', line 239 preference :promotions_per_page, :integer, default: 15 |
#properties_per_page ⇒ Integer
Returns Properties to show per-page in the admin (default: 15
).
231 |
# File 'lib/spree/app_configuration.rb', line 231 preference :properties_per_page, :integer, default: 15 |
#reimbursement_mailer_class ⇒ ActionMailer::Base
Allows providing your own Mailer for reimbursement mailer.
396 |
# File 'lib/spree/app_configuration.rb', line 396 class_name_attribute :reimbursement_mailer_class, default: 'Spree::ReimbursementMailer' |
#require_master_price ⇒ Boolean
Returns Require a price on the master variant of a product (default: true
).
243 |
# File 'lib/spree/app_configuration.rb', line 243 preference :require_master_price, :boolean, default: true |
#require_payment_to_ship ⇒ Boolean
Returns Allows shipments to be ready to ship regardless of the order being paid if false (default: true
).
247 |
# File 'lib/spree/app_configuration.rb', line 247 preference :require_payment_to_ship, :boolean, default: true |
#return_eligibility_number_of_days ⇒ Integer
Returns default: 365.
251 |
# File 'lib/spree/app_configuration.rb', line 251 preference :return_eligibility_number_of_days, :integer, default: 365 |
#roles_for_auto_api_key ⇒ Array
at role_user creation is desired when user has one of these roles. (default: ['admin'])
257 |
# File 'lib/spree/app_configuration.rb', line 257 preference :roles_for_auto_api_key, :array, default: ['admin'] |
#send_core_emails ⇒ Boolean
Returns Whether to send transactional emails (default: true).
269 |
# File 'lib/spree/app_configuration.rb', line 269 preference :send_core_emails, :boolean, default: true |
#shipping_instructions ⇒ Boolean
Returns Request instructions/info for shipping (default: false
).
273 |
# File 'lib/spree/app_configuration.rb', line 273 preference :shipping_instructions, :boolean, default: false |
#shipping_rate_tax_calculator_class ⇒ Class
Allows providing your own class for calculating taxes on a shipping rate.
370 |
# File 'lib/spree/app_configuration.rb', line 370 class_name_attribute :shipping_rate_tax_calculator_class, default: 'Spree::TaxCalculator::ShippingRate' |
#show_only_complete_orders_by_default ⇒ Boolean
Returns Only show completed orders by default in the admin (default: true
).
277 |
# File 'lib/spree/app_configuration.rb', line 277 preference :show_only_complete_orders_by_default, :boolean, default: true |
#show_products_without_price ⇒ Boolean
Returns Whether products without a price are visible in the frontend (default: false
).
285 |
# File 'lib/spree/app_configuration.rb', line 285 preference :show_products_without_price, :boolean, default: false |
#show_raw_product_description ⇒ Boolean
Returns Don't escape HTML of product descriptions. (default: false
).
289 |
# File 'lib/spree/app_configuration.rb', line 289 preference :show_raw_product_description, :boolean, default: false |
#show_variant_full_price ⇒ Boolean
Returns Displays variant full price or difference with product price. (default: false
).
281 |
# File 'lib/spree/app_configuration.rb', line 281 preference :show_variant_full_price, :boolean, default: false |
#store_credit_prioritizer_class ⇒ Class
Allows providing your own class for prioritizing store credit application to an order.
552 |
# File 'lib/spree/app_configuration.rb', line 552 class_name_attribute :store_credit_prioritizer_class, default: 'Spree::StoreCreditPrioritizer' |
#tax_adjuster_class ⇒ Class
Allows providing your own class for calculating taxes on an order.
This extension point is under development and may change in a future minor release.
469 |
# File 'lib/spree/app_configuration.rb', line 469 class_name_attribute :tax_adjuster_class, default: 'Spree::Tax::OrderAdjuster' |
#tax_calculator_class ⇒ Class
Allows providing your own class for calculating taxes on an order.
476 |
# File 'lib/spree/app_configuration.rb', line 476 class_name_attribute :tax_calculator_class, default: 'Spree::TaxCalculator::Default' |
#tax_using_ship_address ⇒ Boolean
Returns Use the shipping address rather than the billing address to determine tax (default: true
).
293 |
# File 'lib/spree/app_configuration.rb', line 293 preference :tax_using_ship_address, :boolean, default: true |
#taxon_attachment_module ⇒ Module
Allows switching attachment library for Taxon
`Spree::Taxon::ActiveStorageAttachment` is the default and provides the Active Storage implementation.
Enumerable of taxons adhering to the present_taxon_class interface
581 |
# File 'lib/spree/app_configuration.rb', line 581 class_name_attribute :taxon_attachment_module, default: Spree::RailsCompatibility. |
#taxon_image_style_default ⇒ Symbol
Defines which style to default to when style is not provided :mini is the default.
560 |
# File 'lib/spree/app_configuration.rb', line 560 class_name_attribute :taxon_image_style_default, default: :mini |
#taxon_styles ⇒ Hash
Defines taxon styles/sizes hash for styles `{ mini: '48x48>',
small: '400x400>',
product: '680x680>',
large: '1200x1200>' } is the default.
571 |
# File 'lib/spree/app_configuration.rb', line 571 class_name_attribute :taxon_image_styles, default: { mini: '32x32>', normal: '128x128>' } |
#taxon_url_parametizer_class ⇒ Class
Allows providing your own class for creating urls on taxons
returns a String
490 |
# File 'lib/spree/app_configuration.rb', line 490 class_name_attribute :taxon_url_parametizer_class, default: 'ActiveSupport::Inflector' |
#track_inventory_levels ⇒ Object
Determines whether to track on_hand values for variants / products. If you do not track inventory, or have effectively unlimited inventory for all products you can turn this on.
300 |
# File 'lib/spree/app_configuration.rb', line 300 preference :track_inventory_levels, :boolean, default: true |
#use_legacy_events ⇒ Boolean
Before v3.2, Solidus used a custom pub/sub implementation based on ActiveSupport::Notifications. Now, we internally use and recommend [Omnes](github.com/nebulab/omnes). This preference allows falling back to the old system.
308 |
# File 'lib/spree/app_configuration.rb', line 308 versioned_preference :use_legacy_events, :boolean, initial_value: true, boundaries: { "3.2.0.alpha" => false } |
#variant_gallery_class ⇒ Class
Allows providing your own class for image galleries on Variants
Enumerable of images adhering to the present_image_class interface
497 |
# File 'lib/spree/app_configuration.rb', line 497 class_name_attribute :variant_gallery_class, default: 'Spree::Gallery::VariantGallery' |
#variant_price_selector_class ⇒ Class
Allows implementing custom pricing for variants
329 |
# File 'lib/spree/app_configuration.rb', line 329 class_name_attribute :variant_price_selector_class, default: 'Spree::Variant::PriceSelector' |
#variant_vat_prices_generator_class ⇒ Class
Allows implementing custom vat prices generation
351 |
# File 'lib/spree/app_configuration.rb', line 351 class_name_attribute :variant_vat_prices_generator_class, default: 'Spree::Variant::VatPriceGenerator' |
Instance Method Details
#admin_vat_location ⇒ Spree::Tax::TaxLocation
Default admin VAT location
An object that responds to :state_id and :country_id so it can double as a Spree::Address in Spree::Zone.for_address. Takes the `admin_vat_country_iso` as input.
717 718 719 720 721 |
# File 'lib/spree/app_configuration.rb', line 717 def admin_vat_location @default_tax_location ||= Spree::Tax::TaxLocation.new( country: Spree::Country.find_by(iso: admin_vat_country_iso) ) end |
#default_pricing_options ⇒ variant_price_selector_class
Shortcut for the default pricing options
339 340 341 |
# File 'lib/spree/app_configuration.rb', line 339 def .new end |
#environment ⇒ Object
634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 |
# File 'lib/spree/app_configuration.rb', line 634 def environment @environment ||= Spree::Core::Environment.new(self).tap do |env| env.calculators.promotion_actions_create_adjustments = %w[ Spree::Calculator::FlatPercentItemTotal Spree::Calculator::FlatRate Spree::Calculator::FlexiRate Spree::Calculator::TieredPercent Spree::Calculator::TieredFlatRate ] env.calculators.promotion_actions_create_item_adjustments = %w[ Spree::Calculator::DistributedAmount Spree::Calculator::FlatRate Spree::Calculator::FlexiRate Spree::Calculator::PercentOnLineItem Spree::Calculator::TieredPercent ] env.calculators.promotion_actions_create_quantity_adjustments = %w[ Spree::Calculator::PercentOnLineItem Spree::Calculator::FlatRate ] env.calculators.shipping_methods = %w[ Spree::Calculator::Shipping::FlatPercentItemTotal Spree::Calculator::Shipping::FlatRate Spree::Calculator::Shipping::FlexiRate Spree::Calculator::Shipping::PerItem Spree::Calculator::Shipping::PriceSack ] env.calculators.tax_rates = %w[ Spree::Calculator::DefaultTax Spree::Calculator::FlatFee ] env.payment_methods = %w[ Spree::PaymentMethod::BogusCreditCard Spree::PaymentMethod::SimpleBogusCreditCard Spree::PaymentMethod::StoreCredit Spree::PaymentMethod::Check ] env.promotions.rules = %w[ Spree::Promotion::Rules::ItemTotal Spree::Promotion::Rules::Product Spree::Promotion::Rules::User Spree::Promotion::Rules::FirstOrder Spree::Promotion::Rules::UserLoggedIn Spree::Promotion::Rules::OneUsePerUser Spree::Promotion::Rules::Taxon Spree::Promotion::Rules::NthOrder Spree::Promotion::Rules::OptionValue Spree::Promotion::Rules::FirstRepeatPurchaseSince Spree::Promotion::Rules::UserRole Spree::Promotion::Rules::Store ] env.promotions.actions = %w[ Spree::Promotion::Actions::CreateAdjustment Spree::Promotion::Actions::CreateItemAdjustments Spree::Promotion::Actions::CreateQuantityAdjustments Spree::Promotion::Actions::FreeShipping ] env.promotions.shipping_actions = %w[ Spree::Promotion::Actions::FreeShipping ] env.stock_splitters = %w[ Spree::Stock::Splitter::ShippingCategory Spree::Stock::Splitter::Backordered ] end end |
#events ⇒ Object
624 625 626 |
# File 'lib/spree/app_configuration.rb', line 624 def events @events_configuration ||= Spree::Event::Configuration.new end |
#pricing_options_class ⇒ Class
Shortcut for getting the variant price selector's pricing options class
334 |
# File 'lib/spree/app_configuration.rb', line 334 delegate :pricing_options_class, to: :variant_price_selector_class |
#roles ⇒ Object
617 618 619 620 621 622 |
# File 'lib/spree/app_configuration.rb', line 617 def roles @roles ||= Spree::RoleConfiguration.new.tap do |roles| roles. :default, ['Spree::PermissionSets::DefaultCustomer'] roles. :admin, ['Spree::PermissionSets::SuperUser'] end end |
#state_machines ⇒ Object
605 606 607 |
# File 'lib/spree/app_configuration.rb', line 605 def state_machines @state_machines ||= Spree::Core::StateMachines.new end |
#static_model_preferences ⇒ Object
609 610 611 |
# File 'lib/spree/app_configuration.rb', line 609 def static_model_preferences @static_model_preferences ||= Spree::Preferences::StaticModelPreferences.new end |
#stock ⇒ Object
613 614 615 |
# File 'lib/spree/app_configuration.rb', line 613 def stock @stock_configuration ||= Spree::Core::StockConfiguration.new end |
#user_last_url_storer_rules ⇒ Object
628 629 630 631 632 |
# File 'lib/spree/app_configuration.rb', line 628 def user_last_url_storer_rules @user_last_url_storer_rules ||= ::Spree::Core::ClassConstantizer::Set.new.tap do |set| set << 'Spree::UserLastUrlStorer::Rules::AuthenticationRule' end end |