spree_core 6.0.0.beta4 → 6.0.0.rc2
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/README.md +5 -5
- data/app/helpers/spree/images_helper.rb +0 -57
- data/app/jobs/spree/base_job.rb +21 -0
- data/app/jobs/spree/carts/reap_expired_job.rb +2 -2
- data/app/jobs/spree/collections/regenerate_time_based_job.rb +6 -3
- data/app/jobs/spree/orders/finalize_stale_drafts_job.rb +8 -5
- data/app/jobs/spree/payments/cancel_unused_sessions_job.rb +61 -0
- data/app/jobs/spree/search_provider/index_job.rb +4 -0
- data/app/jobs/spree/seller_payouts/sweep_seller_job.rb +2 -0
- data/app/jobs/spree/uploads/purge_unattached_job.rb +49 -0
- data/app/mailers/spree/admin_user_mailer.rb +4 -19
- data/app/mailers/spree/base_mailer.rb +97 -13
- data/app/mailers/spree/email_template_mailer.rb +27 -0
- data/app/mailers/spree/export_mailer.rb +3 -4
- data/app/mailers/spree/import_mailer.rb +3 -4
- data/app/mailers/spree/invitation_mailer.rb +24 -7
- data/app/mailers/spree/seller_user_mailer.rb +4 -16
- data/app/mailers/spree/webhook_mailer.rb +2 -2
- data/app/models/concerns/spree/acted_by.rb +1 -1
- data/app/models/concerns/spree/admin_user_methods.rb +15 -1
- data/app/models/concerns/spree/api_typed.rb +91 -0
- data/app/models/concerns/spree/calculated_adjustments.rb +41 -13
- data/app/models/concerns/spree/calculator/currency_amounts.rb +1 -1
- data/app/models/concerns/spree/calculator/tiers.rb +63 -0
- data/app/models/concerns/spree/canonical_decimals.rb +61 -0
- data/app/models/concerns/spree/customer_methods.rb +23 -18
- data/app/models/concerns/spree/derived_number.rb +11 -13
- data/app/models/concerns/spree/email_template_identity.rb +52 -0
- data/app/models/concerns/spree/parameterizable_name.rb +2 -0
- data/app/models/concerns/spree/payment_session_transitions.rb +8 -2
- data/app/models/concerns/spree/post_sale/taxation.rb +54 -0
- data/app/models/concerns/spree/post_sale/taxed_line.rb +51 -0
- data/app/models/concerns/spree/preference_schema/json_schema.rb +139 -0
- data/app/models/concerns/spree/preference_schema.rb +62 -32
- data/app/models/concerns/spree/product_scopes.rb +16 -2
- data/app/models/concerns/spree/provider_listing.rb +41 -0
- data/app/models/concerns/spree/publishable.rb +82 -14
- data/app/models/concerns/spree/purchase/addresses.rb +23 -10
- data/app/models/concerns/spree/purchase/currency.rb +1 -1
- data/app/models/concerns/spree/purchase/deprecated_aliases.rb +87 -0
- data/app/models/concerns/spree/purchase/gift_cards.rb +10 -4
- data/app/models/concerns/spree/purchase/locale.rb +1 -1
- data/app/models/concerns/spree/purchase/payment_processing.rb +8 -4
- data/app/models/concerns/spree/purchase/purchase_order.rb +9 -4
- data/app/models/concerns/spree/purchase/store_credits.rb +36 -1
- data/app/models/concerns/spree/purchase/totals.rb +49 -8
- data/app/models/concerns/spree/ransackable_attributes.rb +46 -0
- data/app/models/concerns/spree/receivable.rb +1 -1
- data/app/models/concerns/spree/searchable.rb +0 -4
- data/app/models/concerns/spree/secret_preferences.rb +59 -0
- data/app/models/concerns/spree/signed_id_attachments.rb +54 -0
- data/app/models/concerns/spree/single_store_resource.rb +1 -1
- data/app/models/concerns/spree/stores/email_branding.rb +32 -0
- data/app/models/concerns/spree/stores/markets.rb +5 -2
- data/app/models/concerns/spree/type_labels.rb +38 -0
- data/app/models/concerns/spree/typed_adjustment_line.rb +5 -6
- data/app/models/concerns/spree/typed_associations.rb +12 -18
- data/app/models/concerns/spree/vat_price_calculation.rb +5 -6
- data/app/models/spree/address.rb +12 -2
- data/app/models/spree/adjusters/largest_remainder.rb +14 -1
- data/app/models/spree/adjusters/promotion.rb +4 -19
- data/app/models/spree/allowed_origin.rb +3 -1
- data/app/models/spree/api_key.rb +5 -6
- data/app/models/spree/authentication/strategies/oidc_strategy.rb +5 -5
- data/app/models/spree/base.rb +99 -22
- data/app/models/spree/calculator/flat_percent_item_total.rb +2 -4
- data/app/models/spree/calculator/flat_rate.rb +3 -5
- data/app/models/spree/calculator/flexi_rate.rb +4 -6
- data/app/models/spree/calculator/percent_on_line_item.rb +2 -2
- data/app/models/spree/calculator/price_sack.rb +5 -7
- data/app/models/spree/calculator/shipping/digital_delivery.rb +3 -5
- data/app/models/spree/calculator/shipping/flat_percent_item_total.rb +7 -7
- data/app/models/spree/calculator/shipping/flat_rate.rb +5 -7
- data/app/models/spree/calculator/shipping/flexi_rate.rb +4 -6
- data/app/models/spree/calculator/shipping/per_item.rb +3 -5
- data/app/models/spree/calculator/shipping/price_sack.rb +5 -7
- data/app/models/spree/calculator/tiered_flat_rate.rb +7 -24
- data/app/models/spree/calculator/tiered_percent.rb +7 -25
- data/app/models/spree/cart.rb +78 -18
- data/app/models/spree/catalog.rb +1 -0
- data/app/models/spree/catalog_price.rb +0 -7
- data/app/models/spree/catalog_price_tier.rb +0 -8
- data/app/models/spree/category.rb +3 -1
- data/app/models/spree/channel/gating.rb +3 -2
- data/app/models/spree/channel.rb +6 -4
- data/app/models/spree/claim.rb +22 -1
- data/app/models/spree/claim_line_item.rb +41 -6
- data/app/models/spree/collection.rb +2 -1
- data/app/models/spree/collection_rule.rb +5 -21
- data/app/models/spree/commission_line.rb +1 -1
- data/app/models/spree/commission_rate.rb +7 -4
- data/app/models/spree/commission_rate_value.rb +1 -1
- data/app/models/spree/commission_rule.rb +4 -11
- data/app/models/spree/commission_rules/category_rule.rb +2 -5
- data/app/models/spree/commission_rules/item_total_rule.rb +2 -2
- data/app/models/spree/commission_rules/product_rule.rb +1 -1
- data/app/models/spree/commission_rules/seller_rule.rb +2 -5
- data/app/models/spree/company.rb +1 -0
- data/app/models/spree/company_invitation.rb +1 -0
- data/app/models/spree/consent_record.rb +0 -1
- data/app/models/spree/credit_card.rb +1 -1
- data/app/models/spree/current.rb +23 -0
- data/app/models/spree/custom_field.rb +2 -2
- data/app/models/spree/custom_field_definition.rb +20 -35
- data/app/models/spree/custom_fields/boolean.rb +1 -1
- data/app/models/spree/custom_fields/json.rb +1 -1
- data/app/models/spree/customer_group.rb +1 -0
- data/app/models/spree/data_feed/google.rb +0 -2
- data/app/models/spree/data_request.rb +2 -1
- data/app/models/spree/delivery_method.rb +36 -14
- data/app/models/spree/delivery_method_rule.rb +4 -11
- data/app/models/spree/delivery_method_rules/channel_rule.rb +2 -5
- data/app/models/spree/delivery_method_rules/item_total_rule.rb +2 -2
- data/app/models/spree/delivery_profile.rb +1 -0
- data/app/models/spree/delivery_rate.rb +7 -8
- data/app/models/spree/delivery_rate_provider/base.rb +1 -0
- data/app/models/spree/delivery_zone.rb +1 -2
- data/app/models/spree/delivery_zone_member.rb +4 -4
- data/app/models/spree/digital_asset.rb +7 -0
- data/app/models/spree/digital_asset_provider/base.rb +2 -0
- data/app/models/spree/digital_link.rb +2 -5
- data/app/models/spree/discount.rb +1 -1
- data/app/models/spree/email_template.rb +25 -0
- data/app/models/spree/email_template_draft.rb +13 -0
- data/app/models/spree/email_template_revision.rb +17 -0
- data/app/models/spree/email_templates/entry.rb +118 -0
- data/app/models/spree/email_templates/sample_record.rb +16 -0
- data/app/models/spree/emails/branding.rb +80 -0
- data/app/models/spree/exchange.rb +16 -1
- data/app/models/spree/exchange_line_item.rb +121 -5
- data/app/models/spree/export.rb +0 -1
- data/app/models/spree/exports/products.rb +10 -1
- data/app/models/spree/exports/report.rb +3 -3
- data/app/models/spree/fee.rb +4 -2
- data/app/models/spree/file_upload.rb +155 -0
- data/app/models/spree/fulfillment.rb +66 -30
- data/app/models/spree/fulfillment_changer.rb +2 -2
- data/app/models/spree/fulfillment_group.rb +6 -1
- data/app/models/spree/fulfillment_item.rb +0 -4
- data/app/models/spree/fulfillment_provider/base.rb +1 -0
- data/app/models/spree/gateway/bogus.rb +6 -0
- data/app/models/spree/gateway/custom_payment_source_method.rb +5 -0
- data/app/models/spree/gateway.rb +6 -2
- data/app/models/spree/gift_card.rb +18 -8
- data/app/models/spree/gift_card_batch.rb +3 -5
- data/app/models/spree/import.rb +5 -7
- data/app/models/spree/import_mapping.rb +1 -2
- data/app/models/spree/import_row.rb +2 -2
- data/app/models/spree/import_schemas/products.rb +1 -0
- data/app/models/spree/integration.rb +9 -19
- data/app/models/spree/invitation.rb +5 -5
- data/app/models/spree/line_item.rb +15 -4
- data/app/models/spree/locale.rb +11 -8
- data/app/models/spree/market.rb +8 -2
- data/app/models/spree/media.rb +1 -9
- data/app/models/spree/newsletter_subscriber.rb +4 -0
- data/app/models/spree/option_type.rb +2 -1
- data/app/models/spree/option_value.rb +2 -1
- data/app/models/spree/order.rb +60 -142
- data/app/models/spree/order_group.rb +18 -4
- data/app/models/spree/order_inventory.rb +10 -5
- data/app/models/spree/order_promotion.rb +1 -1
- data/app/models/spree/order_routing/has_strategy_preference.rb +1 -1
- data/app/models/spree/order_routing/strategy/base.rb +4 -2
- data/app/models/spree/order_routing/strategy/rules.rb +1 -1
- data/app/models/spree/order_routing_rule.rb +6 -22
- data/app/models/spree/package_type.rb +2 -2
- data/app/models/spree/payment/gateway_options.rb +15 -53
- data/app/models/spree/payment/processing.rb +2 -4
- data/app/models/spree/payment.rb +21 -13
- data/app/models/spree/payment_method/check.rb +2 -0
- data/app/models/spree/payment_method/session_instrumentation.rb +1 -0
- data/app/models/spree/payment_method/store_credit.rb +15 -13
- data/app/models/spree/payment_method.rb +78 -6
- data/app/models/spree/payment_session.rb +5 -1
- data/app/models/spree/payment_setup_session.rb +1 -0
- data/app/models/spree/payout_provider/base.rb +3 -1
- data/app/models/spree/pickup_point_provider/base.rb +2 -0
- data/app/models/spree/policy.rb +1 -0
- data/app/models/spree/price.rb +17 -14
- data/app/models/spree/price_adjustment_tier.rb +4 -0
- data/app/models/spree/price_list.rb +14 -9
- data/app/models/spree/price_rules/channel_rule.rb +3 -6
- data/app/models/spree/price_rules/customer_group_rule.rb +3 -6
- data/app/models/spree/price_rules/market_rule.rb +2 -5
- data/app/models/spree/price_rules/user_rule.rb +1 -3
- data/app/models/spree/product/channels.rb +9 -2
- data/app/models/spree/product.rb +54 -30
- data/app/models/spree/product_submission.rb +0 -12
- data/app/models/spree/product_type.rb +1 -1
- data/app/models/spree/promotion/actions/create_line_items.rb +28 -18
- data/app/models/spree/promotion/rules/category.rb +1 -5
- data/app/models/spree/promotion/rules/channel.rb +2 -9
- data/app/models/spree/promotion/rules/country.rb +3 -8
- data/app/models/spree/promotion/rules/currency.rb +1 -5
- data/app/models/spree/promotion/rules/customer_group.rb +2 -9
- data/app/models/spree/promotion/rules/first_order.rb +0 -4
- data/app/models/spree/promotion/rules/item_total.rb +6 -10
- data/app/models/spree/promotion/rules/market.rb +2 -9
- data/app/models/spree/promotion/rules/one_use_per_user.rb +0 -4
- data/app/models/spree/promotion/rules/option_value.rb +2 -6
- data/app/models/spree/promotion/rules/product.rb +1 -5
- data/app/models/spree/promotion/rules/user.rb +0 -4
- data/app/models/spree/promotion/rules/user_logged_in.rb +0 -4
- data/app/models/spree/promotion.rb +36 -6
- data/app/models/spree/promotion_action.rb +7 -14
- data/app/models/spree/promotion_action_line_item.rb +1 -1
- data/app/models/spree/promotion_handler/coupon.rb +59 -27
- data/app/models/spree/promotion_rule.rb +7 -14
- data/app/models/spree/purchase_order.rb +3 -0
- data/app/models/spree/quantity_rule.rb +1 -1
- data/app/models/spree/refund.rb +41 -18
- data/app/models/spree/return.rb +31 -2
- data/app/models/spree/return_line_item.rb +65 -14
- data/app/models/spree/role.rb +7 -7
- data/app/models/spree/saved_report.rb +2 -1
- data/app/models/spree/search_provider/base.rb +4 -0
- data/app/models/spree/seller.rb +10 -2
- data/app/models/spree/seller_payout.rb +8 -0
- data/app/models/spree/seller_requirement.rb +5 -12
- data/app/models/spree/seller_requirement_custom_field.rb +1 -2
- data/app/models/spree/seller_requirement_submission.rb +3 -2
- data/app/models/spree/seller_requirements/accept_terms.rb +2 -3
- data/app/models/spree/seller_transfer.rb +6 -0
- data/app/models/spree/shipping_label.rb +2 -0
- data/app/models/spree/stock/availability_validator.rb +2 -2
- data/app/models/spree/stock/estimator.rb +1 -1
- data/app/models/spree/stock/inventory_unit_builder.rb +1 -1
- data/app/models/spree/stock/packer.rb +2 -2
- data/app/models/spree/stock/splitter/weight.rb +1 -1
- data/app/models/spree/stock_level/custom_events.rb +6 -0
- data/app/models/spree/stock_level.rb +3 -1
- data/app/models/spree/stock_location.rb +1 -0
- data/app/models/spree/stock_movement.rb +1 -1
- data/app/models/spree/stock_receipt_item.rb +1 -1
- data/app/models/spree/stock_reservation.rb +2 -2
- data/app/models/spree/stock_transfer.rb +6 -2
- data/app/models/spree/store.rb +70 -19
- data/app/models/spree/store_credit.rb +13 -13
- data/app/models/spree/store_credit_event.rb +5 -5
- data/app/models/spree/supplier.rb +1 -0
- data/app/models/spree/tax_category.rb +1 -0
- data/app/models/spree/tax_exemption_certificate.rb +3 -0
- data/app/models/spree/tax_identifier.rb +3 -1
- data/app/models/spree/tax_line.rb +53 -3
- data/app/models/spree/tax_provider/base.rb +71 -14
- data/app/models/spree/tax_provider/internal.rb +70 -41
- data/app/models/spree/tax_provider/recorded_share.rb +114 -0
- data/app/models/spree/tax_rate.rb +30 -8
- data/app/models/spree/taxon.rb +1 -1
- data/app/models/spree/taxonomy.rb +0 -1
- data/app/models/spree/update_status.rb +25 -0
- data/app/models/spree/variant.rb +10 -12
- data/app/models/spree/variant_media.rb +1 -1
- data/app/models/spree/webhook_delivery.rb +1 -0
- data/app/models/spree/webhook_endpoint.rb +46 -13
- data/app/models/spree/wishlist.rb +1 -6
- data/app/models/spree/wishlist_item/custom_events.rb +6 -0
- data/app/presenters/spree/csv/customer_presenter.rb +1 -1
- data/app/presenters/spree/csv/newsletter_subscriber_presenter.rb +1 -1
- data/app/presenters/spree/csv/order_line_item_presenter.rb +10 -6
- data/app/presenters/spree/csv/price_list_price_presenter.rb +3 -8
- data/app/presenters/spree/csv/product_variant_presenter.rb +59 -20
- data/app/presenters/spree/csv/purchase_order_item_presenter.rb +1 -3
- data/app/serializers/spree/emails/base_serializer.rb +14 -0
- data/app/serializers/spree/emails/export_serializer.rb +13 -0
- data/app/serializers/spree/emails/import_serializer.rb +19 -0
- data/app/serializers/spree/emails/invitation_serializer.rb +28 -0
- data/app/serializers/spree/emails/store_serializer.rb +31 -0
- data/app/serializers/spree/emails/user_serializer.rb +12 -0
- data/app/serializers/spree/emails/webhook_endpoint_serializer.rb +16 -0
- data/app/services/spree/carts/create.rb +8 -2
- data/app/services/spree/carts/destroy.rb +2 -2
- data/app/services/spree/carts/remove_out_of_stock_items.rb +2 -2
- data/app/services/spree/carts/split_by_seller.rb +1 -1
- data/app/services/spree/carts/update.rb +22 -8
- data/app/services/spree/catalogs/set_product_terms.rb +1 -1
- data/app/services/spree/categories/add_products.rb +13 -31
- data/app/services/spree/categories/remove_products.rb +12 -51
- data/app/services/spree/checkout/advance.rb +1 -4
- data/app/services/spree/collections/add_products.rb +10 -23
- data/app/services/spree/collections/remove_products.rb +7 -43
- data/app/services/spree/coupon_codes/bulk_generate.rb +8 -14
- data/app/services/spree/data_requests/create.rb +1 -1
- data/app/services/spree/deliveries/destroy.rb +2 -2
- data/app/services/spree/email_templates/check.rb +58 -0
- data/app/services/spree/email_templates/no_sample_record.rb +7 -0
- data/app/services/spree/email_templates/preview.rb +99 -0
- data/app/services/spree/emails/file_system.rb +23 -0
- data/app/services/spree/emails/filters.rb +84 -0
- data/app/services/spree/emails/liquid_context.rb +48 -0
- data/app/services/spree/emails/rendered_email.rb +14 -0
- data/app/services/spree/emails/renderer.rb +125 -0
- data/app/services/spree/emails/template.rb +51 -0
- data/app/services/spree/emails/template_data.rb +23 -0
- data/app/services/spree/emails/template_resolver.rb +109 -0
- data/app/services/spree/emails/text_converter.rb +72 -0
- data/app/services/spree/emails/translation_inliner.rb +134 -0
- data/app/services/spree/imports/row_processors/price_list_price.rb +10 -10
- data/app/services/spree/imports/row_processors/product_variant.rb +77 -34
- data/app/services/spree/imports/row_processors/purchase_order.rb +13 -13
- data/app/services/spree/locales.rb +43 -10
- data/app/services/spree/newsletter/subscribe.rb +8 -12
- data/app/services/spree/orders/build_fulfillments.rb +3 -2
- data/app/services/spree/orders/create.rb +5 -4
- data/app/services/spree/orders/discounts/create.rb +14 -11
- data/app/services/spree/orders/discounts/destroy.rb +1 -0
- data/app/services/spree/orders/discounts/update.rb +1 -0
- data/app/services/spree/orders/fees/create.rb +1 -0
- data/app/services/spree/orders/fees/destroy.rb +1 -0
- data/app/services/spree/orders/fees/update.rb +1 -0
- data/app/services/spree/orders/remove_line_item.rb +13 -3
- data/app/services/spree/orders/update.rb +10 -6
- data/app/services/spree/orders/update_item.rb +6 -3
- data/app/services/spree/orders/update_statuses.rb +3 -1
- data/app/services/spree/prices/bulk_upsert.rb +32 -25
- data/app/services/spree/product_memberships.rb +61 -0
- data/app/services/spree/returns/eligibility_validator.rb +1 -1
- data/app/services/spree/search_provider/custom_field_schema.rb +2 -2
- data/app/services/spree/seeds/commission_rates.rb +1 -1
- data/app/services/spree/seeds/digital_delivery.rb +1 -1
- data/app/services/spree/seeds/payment_methods.rb +2 -2
- data/app/services/spree/seeds/saved_reports.rb +3 -3
- data/app/services/spree/seeds/stores.rb +1 -1
- data/app/services/spree/sellers/requirements.rb +1 -2
- data/app/services/spree/shipping_labels/confirm_refund.rb +1 -1
- data/app/services/spree/shipping_labels/store_file.rb +3 -3
- data/app/services/spree/stock_levels/correct.rb +3 -3
- data/app/services/spree/stock_reservations/reserve.rb +2 -3
- data/app/services/spree/store_credits/apply.rb +15 -13
- data/app/services/spree/stores/provision_defaults.rb +23 -25
- data/app/services/spree/update_check.rb +160 -0
- data/app/services/spree/uploads/assign_stores.rb +92 -0
- data/app/subscribers/spree/seller_onboarding_subscriber.rb +1 -1
- data/app/validators/spree/attachment_content_type_validator.rb +19 -2
- data/app/validators/spree/locale_codes_validator.rb +22 -0
- data/app/views/layouts/spree/base_mailer.html.erb +2 -43
- data/app/views/layouts/spree/base_mailer.liquid +79 -0
- data/app/views/spree/admin_user_mailer/password_reset_email.liquid +14 -0
- data/app/views/spree/export_mailer/export_done.liquid +12 -0
- data/app/views/spree/import_mailer/import_done.liquid +15 -0
- data/app/views/spree/invitation_mailer/invitation_accepted.liquid +9 -0
- data/app/views/spree/invitation_mailer/invitation_email.liquid +13 -0
- data/app/views/spree/seller_user_mailer/password_reset_email.liquid +14 -0
- data/app/views/spree/shared/_mailer_button.html.erb +4 -5
- data/app/views/spree/shared/_mailer_hero.html.erb +6 -5
- data/app/views/spree/shared/_summary_row.liquid +8 -0
- data/app/views/spree/webhook_mailer/endpoint_disabled.liquid +21 -0
- data/app/workflows/spree/carts/add_item.rb +4 -4
- data/app/workflows/spree/carts/complete.rb +13 -3
- data/app/workflows/spree/carts/merge.rb +1 -1
- data/app/workflows/spree/carts/recalculate_totals.rb +5 -0
- data/app/workflows/spree/carts/upsert_items.rb +18 -9
- data/app/workflows/spree/claims/approve.rb +5 -22
- data/app/workflows/spree/claims/cancel.rb +5 -21
- data/app/workflows/spree/claims/create.rb +15 -0
- data/app/workflows/spree/claims/deny.rb +7 -0
- data/app/workflows/spree/claims/resolve.rb +34 -31
- data/app/workflows/spree/customers/anonymize.rb +3 -4
- data/app/workflows/spree/customers/create.rb +1 -1
- data/app/workflows/spree/data_requests/fulfill.rb +2 -2
- data/app/workflows/spree/deliveries/update_tracking.rb +1 -1
- data/app/workflows/spree/email_templates/discard_draft.rb +20 -0
- data/app/workflows/spree/email_templates/publish.rb +70 -0
- data/app/workflows/spree/email_templates/restore_revision.rb +33 -0
- data/app/workflows/spree/email_templates/revert.rb +29 -0
- data/app/workflows/spree/email_templates/save_draft.rb +85 -0
- data/app/workflows/spree/exchanges/approve.rb +5 -22
- data/app/workflows/spree/exchanges/cancel.rb +5 -21
- data/app/workflows/spree/exchanges/create.rb +6 -0
- data/app/workflows/spree/exchanges/fulfill.rb +75 -51
- data/app/workflows/spree/exchanges/receive.rb +6 -65
- data/app/workflows/spree/fulfillments/cancel.rb +1 -1
- data/app/workflows/spree/fulfillments/create.rb +53 -49
- data/app/workflows/spree/fulfillments/fulfill.rb +23 -27
- data/app/workflows/spree/fulfillments/mark_delivered.rb +1 -1
- data/app/workflows/spree/fulfillments/replacements.rb +59 -0
- data/app/workflows/spree/gift_cards/apply.rb +2 -2
- data/app/workflows/spree/orders/add_item.rb +5 -1
- data/app/workflows/spree/orders/cancel.rb +3 -3
- data/app/workflows/spree/orders/complete.rb +16 -8
- data/app/workflows/spree/payments/capture.rb +20 -5
- data/app/workflows/spree/payments/process.rb +5 -3
- data/app/workflows/spree/post_sale/approval.rb +35 -0
- data/app/workflows/spree/post_sale/cancellation.rb +44 -0
- data/app/workflows/spree/post_sale/receipt.rb +92 -0
- data/app/workflows/spree/price_lists/update.rb +4 -4
- data/app/workflows/spree/products/nested_attributes.rb +1 -1
- data/app/workflows/spree/purchase_orders/cancel.rb +1 -1
- data/app/workflows/spree/purchase_orders/close.rb +3 -31
- data/app/workflows/spree/purchase_orders/create.rb +3 -1
- data/app/workflows/spree/purchase_orders/mark_draft.rb +2 -2
- data/app/workflows/spree/purchase_orders/mark_ordered.rb +2 -2
- data/app/workflows/spree/purchase_orders/receive.rb +1 -1
- data/app/workflows/spree/purchase_orders/update.rb +5 -34
- data/app/workflows/spree/receivables/closing_short.rb +46 -0
- data/app/workflows/spree/receivables/draft_editing.rb +48 -0
- data/app/workflows/spree/refunds/create.rb +5 -2
- data/app/workflows/spree/refunds/order_payments.rb +14 -2
- data/app/workflows/spree/refunds/tax_credit.rb +67 -0
- data/app/workflows/spree/returns/approve.rb +5 -22
- data/app/workflows/spree/returns/cancel.rb +5 -22
- data/app/workflows/spree/returns/create.rb +8 -0
- data/app/workflows/spree/returns/receive.rb +5 -76
- data/app/workflows/spree/returns/refund.rb +31 -8
- data/app/workflows/spree/seller_requirement_submissions/create.rb +1 -2
- data/app/workflows/spree/seller_transfers/reverse.rb +28 -1
- data/app/workflows/spree/shipping_labels/purchase.rb +8 -8
- data/app/workflows/spree/shipping_labels/record.rb +7 -7
- data/app/workflows/spree/shipping_labels/refund.rb +2 -2
- data/app/workflows/spree/stock_receipts/recording.rb +4 -4
- data/app/workflows/spree/stock_transfers/cancel.rb +2 -2
- data/app/workflows/spree/stock_transfers/close.rb +3 -30
- data/app/workflows/spree/stock_transfers/create.rb +3 -1
- data/app/workflows/spree/stock_transfers/mark_draft.rb +1 -1
- data/app/workflows/spree/stock_transfers/mark_in_transit.rb +3 -3
- data/app/workflows/spree/stock_transfers/mark_ready.rb +2 -2
- data/app/workflows/spree/stock_transfers/receive.rb +1 -1
- data/app/workflows/spree/stock_transfers/update.rb +5 -33
- data/config/currency_exponents.json +180 -0
- data/config/i18n-tasks.yml +32 -18
- data/config/initializers/alba.rb +7 -0
- data/config/language_names.csv +264 -0
- data/config/locales/ar.yml +811 -0
- data/config/locales/be.yml +855 -0
- data/config/locales/bg.yml +723 -0
- data/config/locales/ca.yml +689 -0
- data/config/locales/content_locales.rb +9 -0
- data/config/locales/cs.yml +855 -0
- data/config/locales/da.yml +771 -0
- data/config/locales/de-CH.yml +248 -0
- data/config/locales/de.yml +835 -0
- data/config/locales/el.yml +769 -0
- data/config/locales/en.yml +47 -505
- data/config/locales/es-CL.yml +301 -0
- data/config/locales/es-EC.yml +186 -0
- data/config/locales/es-MX.yml +334 -0
- data/config/locales/es.yml +831 -0
- data/config/locales/et.yml +644 -0
- data/config/locales/fa.yml +709 -0
- data/config/locales/fi.yml +771 -0
- data/config/locales/fr.yml +830 -0
- data/config/locales/hu.yml +751 -0
- data/config/locales/id.yml +756 -0
- data/config/locales/it.yml +833 -0
- data/config/locales/ja.yml +726 -0
- data/config/locales/km.yml +759 -0
- data/config/locales/ko.yml +575 -0
- data/config/locales/ku.yml +753 -0
- data/config/locales/lt.yml +821 -0
- data/config/locales/lv.yml +685 -0
- data/config/locales/nb.yml +824 -0
- data/config/locales/ne.yml +823 -0
- data/config/locales/nl.yml +826 -0
- data/config/locales/pl.yml +835 -0
- data/config/locales/pt-BR.yml +547 -0
- data/config/locales/pt.yml +636 -0
- data/config/locales/ro.yml +750 -0
- data/config/locales/ru.yml +834 -0
- data/config/locales/sk.yml +680 -0
- data/config/locales/sl-SI.yml +600 -0
- data/config/locales/sv.yml +827 -0
- data/config/locales/th.yml +745 -0
- data/config/locales/tr.yml +777 -0
- data/config/locales/uk.yml +836 -0
- data/config/locales/vi.yml +768 -0
- data/config/locales/zh-CN.yml +786 -0
- data/config/locales/zh-TW.yml +834 -0
- data/db/migrate/20260925000001_add_replacement_to_spree_fulfillment_items.rb +5 -0
- data/db/migrate/20261001000001_add_post_sale_tax.rb +30 -0
- data/db/migrate/20261001000001_convert_preferences_to_json.rb +166 -0
- data/db/migrate/20261001000001_create_spree_email_templates.rb +52 -0
- data/db/migrate/20261009000001_change_money_columns_to_decimal_19_4.rb +116 -0
- data/db/migrate/20261010000001_add_store_id_to_active_storage_blobs.rb +12 -0
- data/lib/generators/spree/dummy/dummy_generator.rb +0 -9
- data/lib/generators/spree/dummy/templates/rails/test.rb +26 -0
- data/lib/spree/checkout/default_requirements.rb +37 -13
- data/lib/spree/core/configuration.rb +19 -1
- data/lib/spree/core/controller_helpers/store.rb +1 -1
- data/lib/spree/core/dependencies.rb +5 -4
- data/lib/spree/core/emails/escaped_output.rb +60 -0
- data/lib/spree/core/engine.rb +72 -165
- data/lib/spree/core/permissions/default_catalog.rb +5 -0
- data/lib/spree/core/preferences/invalid_preferences.rb +18 -0
- data/lib/spree/core/preferences/json_conversion.rb +186 -0
- data/lib/spree/core/preferences/masking.rb +55 -2
- data/lib/spree/core/preferences/preferable.rb +343 -103
- data/lib/spree/core/preferences/preferable_class_methods.rb +188 -136
- data/lib/spree/core/previews/import_preview.rb +10 -0
- data/lib/spree/core/ransack_configuration.rb +13 -2
- data/lib/spree/core/tax/provider_error.rb +37 -0
- data/lib/spree/core/version.rb +1 -1
- data/lib/spree/core.rb +91 -373
- data/lib/spree/emails/editable_templates.rb +82 -0
- data/lib/spree/events/catalog.rb +189 -0
- data/lib/spree/events.rb +21 -1
- data/lib/spree/hooks.rb +0 -17
- data/lib/spree/i18n.rb +32 -15
- data/lib/spree/iso_data.rb +7 -0
- data/lib/spree/localized_number.rb +6 -0
- data/lib/spree/migrations.rb +4 -1
- data/lib/spree/money.rb +196 -15
- data/lib/spree/reporting/adapters/base.rb +7 -6
- data/lib/spree/reporting/adapters/live.rb +6 -6
- data/lib/spree/reporting/default_vocabulary.rb +22 -10
- data/lib/spree/reporting/hydration.rb +1 -1
- data/lib/spree/reporting/query.rb +8 -0
- data/lib/spree/reporting/registry.rb +13 -0
- data/lib/spree/reporting/schema.rb +10 -10
- data/lib/spree/testing_support/editable_email_templates.rb +61 -0
- data/lib/spree/testing_support/emails.rb +22 -0
- data/lib/spree/testing_support/factories/cart_factory.rb +1 -1
- data/lib/spree/testing_support/factories/email_template_factory.rb +28 -0
- data/lib/spree/testing_support/factories/order_factory.rb +2 -2
- data/lib/spree/testing_support/factories/product_factory.rb +9 -0
- data/lib/spree/testing_support/factories/refund_factory.rb +1 -1
- data/lib/spree/testing_support/factories/stock_factory.rb +1 -1
- data/lib/spree/testing_support/factories/variant_factory.rb +1 -1
- data/lib/spree/testing_support/i18n.rb +3 -94
- data/lib/spree/testing_support/lifecycle_events.rb +1 -1
- data/lib/spree/testing_support/order_walkthrough.rb +1 -1
- data/lib/spree/testing_support/preferences.rb +0 -5
- data/lib/spree/testing_support/store.rb +9 -1
- data/lib/spree/upgrades/5_6_to_6_0/manifest.yml +67 -1
- data/lib/spree/uploads.rb +101 -0
- data/lib/tasks/categories_and_collections.rake +3 -3
- data/lib/tasks/core.rake +6 -4
- data/lib/tasks/markets.rake +2 -1
- data/lib/tasks/media.rake +3 -3
- data/lib/tasks/migrate_users_to_customers.rake +23 -18
- data/lib/tasks/money.rake +46 -0
- data/lib/tasks/package_types.rake +1 -1
- data/lib/tasks/preferences_json.rake +101 -0
- data/lib/tasks/seller_sample_data.rake +2 -2
- data/lib/tasks/store_settings.rake +13 -6
- data/lib/tasks/typed_adjustments_migration.rake +1 -1
- data/lib/tasks/uploads.rake +19 -0
- data/spec/fixtures/mailer_views/custom_views_probe_mailer/welcome_email.html.erb +4 -0
- metadata +219 -46
- data/app/jobs/spree/products/touch_categories_job.rb +0 -15
- data/app/jobs/spree/products/touch_taxons_job.rb +0 -13
- data/app/models/acts_as_taggable_on/tag_decorator.rb +0 -10
- data/app/models/concerns/spree/has_image_alt_text.rb +0 -18
- data/app/models/spree/base_analytics_event_handler.rb +0 -54
- data/app/models/spree/invitations/store.rb +0 -6
- data/app/models/spree/preference.rb +0 -14
- data/app/models/spree/promotion_handler/page.rb +0 -25
- data/app/models/spree/promotion_handler/promotion_duplicator.rb +0 -60
- data/app/models/spree/stock/differentiator.rb +0 -45
- data/app/presenters/spree/filters/options_presenter.rb +0 -47
- data/app/services/spree/carts/empty.rb +0 -42
- data/app/services/spree/country_to_timezone.rb +0 -273
- data/app/services/spree/payments/create.rb +0 -92
- data/app/validators/spree/url_validator.rb +0 -23
- data/app/views/active_storage/blobs/_blob.html.erb +0 -14
- data/app/views/spree/admin_user_mailer/password_reset_email.html.erb +0 -8
- data/app/views/spree/export_mailer/export_done.html.erb +0 -7
- data/app/views/spree/import_mailer/import_done.html.erb +0 -12
- data/app/views/spree/invitation_mailer/invitation_accepted.html.erb +0 -4
- data/app/views/spree/invitation_mailer/invitation_email.html.erb +0 -12
- data/app/views/spree/seller_user_mailer/password_reset_email.html.erb +0 -8
- data/app/views/spree/shared/_base_mailer_footer.html.erb +0 -19
- data/app/views/spree/shared/_base_mailer_header.html.erb +0 -8
- data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +0 -399
- data/app/views/spree/shared/_mailer_logo.html.erb +0 -41
- data/app/views/spree/shared/_purchased_items_styles.html.erb +0 -119
- data/app/views/spree/webhook_mailer/endpoint_disabled.html.erb +0 -51
- data/app/views/spree/webhook_mailer/endpoint_disabled.text.erb +0 -10
- data/app/workflows/spree/fulfillments/purchase_label.rb +0 -40
- data/app/workflows/spree/returns/purchase_label.rb +0 -32
- data/lib/spree/analytics.rb +0 -11
- data/lib/spree/core/preferences/scoped_store.rb +0 -34
- data/lib/spree/core/preferences/store.rb +0 -105
- data/lib/spree/translation_migrations.rb +0 -52
|
@@ -0,0 +1,771 @@
|
|
|
1
|
+
---
|
|
2
|
+
fi:
|
|
3
|
+
activemodel:
|
|
4
|
+
errors:
|
|
5
|
+
messages:
|
|
6
|
+
blank: ei voi olla tyhjä
|
|
7
|
+
activerecord:
|
|
8
|
+
attributes:
|
|
9
|
+
spree/address:
|
|
10
|
+
address1: Lähiosoite
|
|
11
|
+
address2: Lähiosoite (jatkuu)
|
|
12
|
+
city: Postitoimipaikka
|
|
13
|
+
company: Yritys
|
|
14
|
+
country: Maa
|
|
15
|
+
label: Osoitteen nimi
|
|
16
|
+
phone: Puhelin
|
|
17
|
+
state: Osavaltio tai maakunta
|
|
18
|
+
spree/country:
|
|
19
|
+
iso: ISO
|
|
20
|
+
iso3: ISO3
|
|
21
|
+
iso_name: ISO-nimi
|
|
22
|
+
name: Nimi
|
|
23
|
+
numcode: ISO-koodi
|
|
24
|
+
spree/credit_card:
|
|
25
|
+
cc_type: Tyyppi
|
|
26
|
+
month: Kuukausi
|
|
27
|
+
number: Numero
|
|
28
|
+
verification_value: Tarkistuskoodi
|
|
29
|
+
year: Vuosi
|
|
30
|
+
spree/customer_group:
|
|
31
|
+
description: Kuvaus
|
|
32
|
+
name: Nimi
|
|
33
|
+
spree/gift_card:
|
|
34
|
+
amount_used: Käytetty määrä
|
|
35
|
+
expires_at: Vanhenee
|
|
36
|
+
spree/import:
|
|
37
|
+
preferred_delimiter: Erotin
|
|
38
|
+
spree/import_mapping:
|
|
39
|
+
file_column: Tiedoston sarake
|
|
40
|
+
schema_field: Skeeman kenttä
|
|
41
|
+
spree/import_row:
|
|
42
|
+
row_number: Numero
|
|
43
|
+
spree/inventory_unit:
|
|
44
|
+
state: Tila
|
|
45
|
+
spree/invitation:
|
|
46
|
+
inviter: Kutsuja
|
|
47
|
+
spree/line_item:
|
|
48
|
+
price: Hinta
|
|
49
|
+
quantity: Määrä
|
|
50
|
+
spree/option_type:
|
|
51
|
+
filterable: Suodatettava
|
|
52
|
+
kind: Tyyppi
|
|
53
|
+
name: Nimi
|
|
54
|
+
spree/option_value:
|
|
55
|
+
color_code: Värikoodi
|
|
56
|
+
image: Värimallin kuva
|
|
57
|
+
spree/order:
|
|
58
|
+
checkout_complete: Tilaus valmis
|
|
59
|
+
completed_at: Valmistui
|
|
60
|
+
considered_risky: Riskialttius
|
|
61
|
+
coupon_code: Kupongin koodi
|
|
62
|
+
created_at: Tilauspäivä
|
|
63
|
+
email: Sähköposti
|
|
64
|
+
internal_note: Sisäinen huomautus
|
|
65
|
+
ip_address: IP-osoite
|
|
66
|
+
item_count: Tuotteet
|
|
67
|
+
item_total: Tuotteet yhteensä
|
|
68
|
+
number: Numero
|
|
69
|
+
payment_state: Maksun tila
|
|
70
|
+
shipment_state: Toimituksen tila
|
|
71
|
+
special_instructions: Erityisohjeet
|
|
72
|
+
state: Tila
|
|
73
|
+
total: Yhteensä
|
|
74
|
+
spree/order/bill_address:
|
|
75
|
+
address1: Maksajan katuosoite
|
|
76
|
+
city: Maksajan postitoimipaikka
|
|
77
|
+
phone: Maksajan puhelinnumero
|
|
78
|
+
state: Maksajan osavaltio tai maakunta
|
|
79
|
+
spree/order/ship_address:
|
|
80
|
+
address1: Vastaanottajan katuosoite
|
|
81
|
+
city: Vastaanottajan postitoimipaikka
|
|
82
|
+
phone: Vastaanottajan puhelinnumero
|
|
83
|
+
state: Vastaanottajan maakunta
|
|
84
|
+
spree/payment:
|
|
85
|
+
amount: Summa
|
|
86
|
+
number: Numero
|
|
87
|
+
spree/payment_method:
|
|
88
|
+
name: Nimi
|
|
89
|
+
spree/policy:
|
|
90
|
+
body: Sisältö
|
|
91
|
+
owner: Käytäntö kohteelle
|
|
92
|
+
spree/price_list:
|
|
93
|
+
description: Kuvaus
|
|
94
|
+
ends_at: Päättyy
|
|
95
|
+
match_policy: Vastaavuussääntö
|
|
96
|
+
name: Nimi
|
|
97
|
+
priority: Prioriteetti
|
|
98
|
+
starts_at: Alkaa
|
|
99
|
+
status: Tila
|
|
100
|
+
spree/price_rule:
|
|
101
|
+
priority: Prioriteetti
|
|
102
|
+
type: Tyyppi
|
|
103
|
+
spree/product:
|
|
104
|
+
available_on: Saatavilla
|
|
105
|
+
cost_currency: Maksuvaluutta
|
|
106
|
+
cost_price: Inventaarihinta
|
|
107
|
+
description: Kuvaus
|
|
108
|
+
discontinue_on: Poistetaan käytöstä
|
|
109
|
+
less_than: Vähemmän kuin
|
|
110
|
+
make_active_at: Aktivoidaan
|
|
111
|
+
master_price: Master-hinta
|
|
112
|
+
more_than: Enemmän kuin
|
|
113
|
+
name: Nimi
|
|
114
|
+
on_hand: Varastossa
|
|
115
|
+
tax_category: Verokanta
|
|
116
|
+
spree/promotion:
|
|
117
|
+
advertise: Mainosta
|
|
118
|
+
code: Koodi
|
|
119
|
+
description: Kuvaus
|
|
120
|
+
event_name: Kampanjan nimi
|
|
121
|
+
expires_at: Viimeistään
|
|
122
|
+
generate_code: Luo alennuskoodi
|
|
123
|
+
name: Nimi
|
|
124
|
+
path: Polku
|
|
125
|
+
promotion_category: Kampanjaluokka
|
|
126
|
+
starts_at: Alkaa
|
|
127
|
+
usage_limit: Käyttöraja
|
|
128
|
+
spree/promotion_category:
|
|
129
|
+
code: Koodi
|
|
130
|
+
name: Kampanjakategoria
|
|
131
|
+
spree/property:
|
|
132
|
+
name: Nimi
|
|
133
|
+
presentation: Julkinen nimi
|
|
134
|
+
spree/role:
|
|
135
|
+
name: Nimi
|
|
136
|
+
spree/shipment:
|
|
137
|
+
number: Numero
|
|
138
|
+
spree/state:
|
|
139
|
+
abbr: Lyhenne
|
|
140
|
+
name: Nimi
|
|
141
|
+
spree/store:
|
|
142
|
+
address: Osoite
|
|
143
|
+
contact_phone: Yhteyspuhelin
|
|
144
|
+
preferred_digital_asset_authorized_clicks: Latausten napsautusten raja
|
|
145
|
+
preferred_digital_asset_authorized_days: Latauspäivien raja
|
|
146
|
+
preferred_limit_digital_download_count: Rajoita digitaalisten linkkien latausmäärää
|
|
147
|
+
preferred_limit_digital_download_days: Rajoita digitaalisten linkkien latauspäiviä
|
|
148
|
+
seo_robots: SEO-robotit
|
|
149
|
+
storefront_custom_code_body_end: Mukautettu koodi ennen sulkevaa body-tunnistetta
|
|
150
|
+
storefront_custom_code_body_start: Mukautettu koodi avaavan body-tunnisteen jälkeen
|
|
151
|
+
storefront_custom_code_head: Mukautettu koodi sivun headissa
|
|
152
|
+
spree/store_credit:
|
|
153
|
+
amount_used: Käytetty määrä
|
|
154
|
+
spree/tax_category:
|
|
155
|
+
description: Kuvaus
|
|
156
|
+
name: Nimi
|
|
157
|
+
spree/tax_rate:
|
|
158
|
+
amount: Aste
|
|
159
|
+
included_in_price: Sisältyy hintaan
|
|
160
|
+
show_rate_in_label: Näytä veroprosentti hinnoissa
|
|
161
|
+
spree/taxon:
|
|
162
|
+
name: Nimi
|
|
163
|
+
permalink: Siisti url
|
|
164
|
+
position: Sijainti
|
|
165
|
+
sort_order: Järjestys
|
|
166
|
+
spree/taxonomy:
|
|
167
|
+
name: Nimi
|
|
168
|
+
spree/user:
|
|
169
|
+
avatar: Profiilikuva
|
|
170
|
+
email: Sähköpostiosoite
|
|
171
|
+
password: Salasana
|
|
172
|
+
password_confirmation: Vahvista salasana
|
|
173
|
+
spree/variant:
|
|
174
|
+
cost_currency: Maksuvaluutta
|
|
175
|
+
cost_price: Inventaarihinta
|
|
176
|
+
depth: Syvyys
|
|
177
|
+
height: Korkeus
|
|
178
|
+
price: Hinta
|
|
179
|
+
sku: SKU
|
|
180
|
+
weight: Paino
|
|
181
|
+
width: Leveys
|
|
182
|
+
spree/zone:
|
|
183
|
+
description: Kuvaus
|
|
184
|
+
name: Nimi
|
|
185
|
+
user:
|
|
186
|
+
current_sign_in: Nykyinen kirjautuminen
|
|
187
|
+
last_sign_in: Viimeisin kirjautuminen
|
|
188
|
+
sign_in_count: Kirjautumisten määrä
|
|
189
|
+
errors:
|
|
190
|
+
messages:
|
|
191
|
+
blank: ei voi olla tyhjä
|
|
192
|
+
models:
|
|
193
|
+
spree/allowed_origin:
|
|
194
|
+
attributes:
|
|
195
|
+
origin:
|
|
196
|
+
must_be_origin_only: on oltava alkuperä (skeema ja isäntä) ilman polkua, kyselyä tai fragmenttia
|
|
197
|
+
spree/credit_card:
|
|
198
|
+
attributes:
|
|
199
|
+
base:
|
|
200
|
+
card_expired: Kortti on vanhentunut
|
|
201
|
+
spree/gift_card:
|
|
202
|
+
attributes:
|
|
203
|
+
base:
|
|
204
|
+
cannot_destroy_used_gift_card: Käytettyä lahjakorttia ei voi poistaa
|
|
205
|
+
spree/import:
|
|
206
|
+
attributes:
|
|
207
|
+
attachment:
|
|
208
|
+
content_type: sisältää sisältötyypin, jota ei sallita
|
|
209
|
+
type:
|
|
210
|
+
inclusion: ei sisälly sallittujen tyyppien luetteloon
|
|
211
|
+
spree/market:
|
|
212
|
+
attributes:
|
|
213
|
+
base:
|
|
214
|
+
cannot_destroy_default_market: Oletusmarkkinaa ei voi poistaa.
|
|
215
|
+
cannot_destroy_last_market: Ainoaa markkinaa ei voi poistaa.
|
|
216
|
+
spree/market_country:
|
|
217
|
+
attributes:
|
|
218
|
+
country:
|
|
219
|
+
already_in_market: on jo määritetty toiselle markkinalle tässä kaupassa
|
|
220
|
+
not_in_shipping_zone: ei kuulu mihinkään toimitusalueeseen. Määritä ensin toimitusalue.
|
|
221
|
+
spree/payment:
|
|
222
|
+
attributes:
|
|
223
|
+
amount:
|
|
224
|
+
greater_than_max_amount: on suurempi kuin sallittu enimmäismäärä %{max_amount}
|
|
225
|
+
spree/price_list:
|
|
226
|
+
attributes:
|
|
227
|
+
ends_at:
|
|
228
|
+
must_be_after_starts_at: on oltava alkamisajan jälkeen
|
|
229
|
+
spree/product:
|
|
230
|
+
attributes:
|
|
231
|
+
base:
|
|
232
|
+
cannot_destroy_if_attached_to_line_items: Tuotteita, jotka on lisätty tehtyihin tilauksiin, ei voi poistaa. Poista ne tällöin käytöstä.
|
|
233
|
+
discontinue_on:
|
|
234
|
+
invalid_date_range: on oltava saatavuuspäivän jälkeen
|
|
235
|
+
spree/product_publication:
|
|
236
|
+
attributes:
|
|
237
|
+
unpublished_at:
|
|
238
|
+
must_be_after_published_at: on oltava julkaisupäivän jälkeen
|
|
239
|
+
spree/promotion:
|
|
240
|
+
attributes:
|
|
241
|
+
expires_at:
|
|
242
|
+
invalid_date_range: on oltava alkamispäivän jälkeen
|
|
243
|
+
spree/store:
|
|
244
|
+
attributes:
|
|
245
|
+
base:
|
|
246
|
+
cannot_destroy_only_store: Ainoaa kauppaa ei voi poistaa.
|
|
247
|
+
spree/store_credit:
|
|
248
|
+
attributes:
|
|
249
|
+
amount_authorized:
|
|
250
|
+
exceeds_total_credits: Ylittää kokonaishyvitykset.
|
|
251
|
+
amount_used:
|
|
252
|
+
cannot_be_greater_than_amount: Ei voi olla suurempi kuin määrä.
|
|
253
|
+
greater_than_zero_restrict_delete: on suurempi kuin nolla. Kauppahyvitystä ei voi poistaa.
|
|
254
|
+
spree/user:
|
|
255
|
+
attributes:
|
|
256
|
+
bill_address_id:
|
|
257
|
+
belongs_to_other_user: kuuluu toiselle käyttäjälle
|
|
258
|
+
deprecated_in_completed_order: vanhentunut valmiissa tilauksessa
|
|
259
|
+
ship_address_id:
|
|
260
|
+
belongs_to_other_user: kuuluu toiselle käyttäjälle
|
|
261
|
+
deprecated_in_completed_order: vanhentunut valmiissa tilauksessa
|
|
262
|
+
spree/variant:
|
|
263
|
+
attributes:
|
|
264
|
+
base:
|
|
265
|
+
cannot_destroy_if_attached_to_line_items: Variantteja, jotka on lisätty tehtyihin tilauksiin, ei voi poistaa. Poista ne tällöin käytöstä.
|
|
266
|
+
spree/webhook_endpoint:
|
|
267
|
+
attributes:
|
|
268
|
+
url:
|
|
269
|
+
internal_address_not_allowed: ei saa osoittaa sisäiseen tai yksityiseen verkko-osoitteeseen
|
|
270
|
+
models:
|
|
271
|
+
spree/address:
|
|
272
|
+
one: Osoite
|
|
273
|
+
other: Osoitteet
|
|
274
|
+
spree/classification:
|
|
275
|
+
one: Luokitus
|
|
276
|
+
other: Luokitukset
|
|
277
|
+
spree/country:
|
|
278
|
+
one: Maa
|
|
279
|
+
other: Maat
|
|
280
|
+
spree/credit_card:
|
|
281
|
+
one: Luottokortti
|
|
282
|
+
other: Luottokortit
|
|
283
|
+
spree/customer_group:
|
|
284
|
+
one: Asiakasryhmä
|
|
285
|
+
other: Asiakasryhmät
|
|
286
|
+
spree/customer_group_user:
|
|
287
|
+
one: Asiakasryhmän käyttäjä
|
|
288
|
+
other: Asiakasryhmän käyttäjät
|
|
289
|
+
spree/export:
|
|
290
|
+
one: Vienti
|
|
291
|
+
other: Viennit
|
|
292
|
+
spree/integration:
|
|
293
|
+
one: Integraatio
|
|
294
|
+
other: Integraatiot
|
|
295
|
+
spree/inventory_unit:
|
|
296
|
+
one: Myyntiyksikkö
|
|
297
|
+
other: Myyntiyksikköä
|
|
298
|
+
spree/line_item:
|
|
299
|
+
one: Tuoterivi
|
|
300
|
+
other: Tuoterivit
|
|
301
|
+
spree/option_type:
|
|
302
|
+
one: Valintatyyppi
|
|
303
|
+
other: Valintatyypit
|
|
304
|
+
spree/option_value:
|
|
305
|
+
one: Valinnan arvo
|
|
306
|
+
other: Valinnan arvot
|
|
307
|
+
spree/order:
|
|
308
|
+
one: Tilaus
|
|
309
|
+
other: Tilaukset
|
|
310
|
+
spree/payment:
|
|
311
|
+
one: Maksu
|
|
312
|
+
other: Maksut
|
|
313
|
+
spree/payment_method:
|
|
314
|
+
one: Maksutapa
|
|
315
|
+
other: Maksutavat
|
|
316
|
+
spree/price:
|
|
317
|
+
one: Hinta
|
|
318
|
+
other: Hinnat
|
|
319
|
+
spree/price_list:
|
|
320
|
+
one: Hinnasto
|
|
321
|
+
other: Hinnastot
|
|
322
|
+
spree/price_rule:
|
|
323
|
+
one: Hintasääntö
|
|
324
|
+
other: Hintasäännöt
|
|
325
|
+
spree/product:
|
|
326
|
+
one: Tuote
|
|
327
|
+
other: Tuotteet
|
|
328
|
+
spree/promotion:
|
|
329
|
+
one: Kampanja
|
|
330
|
+
other: Kampanjat
|
|
331
|
+
spree/promotion_category:
|
|
332
|
+
one: Kampanjakategoria
|
|
333
|
+
other: Kampanjakategoriat
|
|
334
|
+
spree/property:
|
|
335
|
+
one: Ominaisuus
|
|
336
|
+
other: Ominaisuudet
|
|
337
|
+
spree/refund_reason:
|
|
338
|
+
one: Hyvityksen syy
|
|
339
|
+
other: Hyvityksen syyt
|
|
340
|
+
spree/role:
|
|
341
|
+
one: Rooli
|
|
342
|
+
other: Roolit
|
|
343
|
+
spree/shipment:
|
|
344
|
+
one: Toimitus
|
|
345
|
+
other: Toimitukset
|
|
346
|
+
spree/shipping_method:
|
|
347
|
+
one: Toimitustapa
|
|
348
|
+
other: Toimitustavat
|
|
349
|
+
spree/state:
|
|
350
|
+
one: Osavalitio
|
|
351
|
+
other: Osavaltiot
|
|
352
|
+
spree/stock_location:
|
|
353
|
+
one: Varasto
|
|
354
|
+
other: Varastot
|
|
355
|
+
spree/stock_movement:
|
|
356
|
+
one: Varastotapahtuma
|
|
357
|
+
other: Varastotapahtumat
|
|
358
|
+
spree/stock_transfer:
|
|
359
|
+
one: Varastosiirto
|
|
360
|
+
other: Varastosiirrot
|
|
361
|
+
spree/store:
|
|
362
|
+
one: Kauppa
|
|
363
|
+
other: Kaupat
|
|
364
|
+
spree/store_credit:
|
|
365
|
+
one: Kauppahyvitys
|
|
366
|
+
other: Kauppahyvitykset
|
|
367
|
+
spree/tax_category:
|
|
368
|
+
one: Verokanta
|
|
369
|
+
other: Verokannat
|
|
370
|
+
spree/tax_rate:
|
|
371
|
+
one: Veroaste
|
|
372
|
+
other: Veroasteet
|
|
373
|
+
spree/taxon:
|
|
374
|
+
one: Taksoni
|
|
375
|
+
other: Taksonit
|
|
376
|
+
spree/taxonomy:
|
|
377
|
+
one: Taksonomia
|
|
378
|
+
other: Taksonomiat
|
|
379
|
+
spree/user:
|
|
380
|
+
one: Käyttäjä
|
|
381
|
+
other: Käyttäjät
|
|
382
|
+
spree/variant:
|
|
383
|
+
one: Variantti
|
|
384
|
+
other: Variantit
|
|
385
|
+
spree/zone:
|
|
386
|
+
one: Alue
|
|
387
|
+
other: Alueet
|
|
388
|
+
errors:
|
|
389
|
+
messages:
|
|
390
|
+
already_confirmed: on jo vahvistettu
|
|
391
|
+
not_found: ei löytynyt
|
|
392
|
+
not_locked: ei ollut lukittu
|
|
393
|
+
not_saved:
|
|
394
|
+
one: 'Yksi virhe esti kohteen %{resource} tallennuksen:'
|
|
395
|
+
other: "%{count} virhettä estivät kohteen %{resource} tallennuksen:"
|
|
396
|
+
number:
|
|
397
|
+
percentage:
|
|
398
|
+
format:
|
|
399
|
+
precision: 1
|
|
400
|
+
spree:
|
|
401
|
+
accepts_email_marketing: Hyväksyy sähköpostimarkkinoinnin
|
|
402
|
+
account: Tili
|
|
403
|
+
active: Käytössä
|
|
404
|
+
address: Osoite
|
|
405
|
+
address1: Osoite
|
|
406
|
+
address2: Osoite (jatkuu)
|
|
407
|
+
adjustment: Hintamuutos
|
|
408
|
+
adjustment_labels:
|
|
409
|
+
tax_rates:
|
|
410
|
+
excluding_tax: "%{name}%{amount}"
|
|
411
|
+
including_tax: "%{name}%{amount} (sisältyy hintaan)"
|
|
412
|
+
adjustments_deleted: Mukautukset poistettu
|
|
413
|
+
all: Kaikki
|
|
414
|
+
amount: Määrä
|
|
415
|
+
api_key_no_current_key: Mikään API-avain ei todentanut tätä pyyntöä
|
|
416
|
+
api_key_scopes_immutable: ei voi muuttaa avaimen luonnin jälkeen; luo uusi avain tarvitsemillasi käyttöoikeuksilla ja peruuta tämä
|
|
417
|
+
approver: Hyväksyjä
|
|
418
|
+
authorized: Valtuutettu
|
|
419
|
+
availability: saatavuus
|
|
420
|
+
backorderable: Jälkitoimitus sallittu
|
|
421
|
+
backordered: Jälkitoimituksessa
|
|
422
|
+
bill_address: Laskun osoite
|
|
423
|
+
billing_address: Laskutusosoite
|
|
424
|
+
calculator: Laskin
|
|
425
|
+
canceled: Peruutettu
|
|
426
|
+
cannot_be_destroyed: Tilausta ei voi poistaa.
|
|
427
|
+
capture: Kuittaa maksetuksi
|
|
428
|
+
cart: Ostoskori
|
|
429
|
+
cart_already_updated: Ostoskori on jo päivitetty.
|
|
430
|
+
cart_line_item:
|
|
431
|
+
delivery_unavailable: Tuotetta %{li_name} ei voi toimittaa valittuun osoitteeseen
|
|
432
|
+
discontinued: "%{li_name} poistettiin, koska se poistettiin käytöstä"
|
|
433
|
+
out_of_stock: "%{li_name} poistettiin, koska se on loppuunmyyty"
|
|
434
|
+
categories: Kategoriat
|
|
435
|
+
category: Kategoria
|
|
436
|
+
channel: Myyntikanava
|
|
437
|
+
channels: Myyntikanavat
|
|
438
|
+
checkout: Kassa
|
|
439
|
+
checkout_requirements:
|
|
440
|
+
email_required: Sähköpostiosoite vaaditaan
|
|
441
|
+
line_items_required: Lisää vähintään yksi tuote ostoskoriin
|
|
442
|
+
payment_required: Lisää maksutapa
|
|
443
|
+
ship_address_required: Toimitusosoite vaaditaan
|
|
444
|
+
city: Postitoimipaikka
|
|
445
|
+
color_code: Värikoodi
|
|
446
|
+
company: Yritys
|
|
447
|
+
compare_at_amount: Vertailumäärä
|
|
448
|
+
compare_at_price: Vertailuhinta
|
|
449
|
+
complete: valmis
|
|
450
|
+
confirm: Vahvista
|
|
451
|
+
cost_price: Kustannushinta
|
|
452
|
+
count_on_hand: Määrä varastossa
|
|
453
|
+
country: Maa
|
|
454
|
+
coupon_code: Tarjouskoodi
|
|
455
|
+
coupon_code_already_applied: Kampanjakoodi on jo käytössä tällä tilauksella
|
|
456
|
+
coupon_code_applied: Tarjouskoodi lisättiin onnistuneesti tilaukseesi.
|
|
457
|
+
coupon_code_better_exists: Aiemmin aktivoitu kampanjakoodi antaa paremman edun.
|
|
458
|
+
coupon_code_expired: Kampanjakoodi ei ole enää voimassa
|
|
459
|
+
coupon_code_max_usage: Kaikki kampanjakoodit on jo käytetty
|
|
460
|
+
coupon_code_not_eligible: Kampanjakoodi ei ole käytettävissä tälle tilaukselle
|
|
461
|
+
coupon_code_not_found: Näppäilemääsi kampanjakoodia ei löytynyt. Yritä uudelleen.
|
|
462
|
+
coupon_code_used: Antamasi alennuskoodi on jo käytetty. Yritä uudelleen.
|
|
463
|
+
created_at: Luotu
|
|
464
|
+
credit_card: Luottokortti
|
|
465
|
+
currency: Valuutta
|
|
466
|
+
currency_not_supported_by_store: ei ole tämän kaupan tukema
|
|
467
|
+
customer: Asiakas
|
|
468
|
+
customers: Asiakkaat
|
|
469
|
+
default: Oletus
|
|
470
|
+
default_stock_location_name: Myymälän sijainti
|
|
471
|
+
default_wishlist_name: Toivelista
|
|
472
|
+
delivery: Toimitus
|
|
473
|
+
depth: Syvyys
|
|
474
|
+
description: Kuvaus
|
|
475
|
+
destination: Kohde
|
|
476
|
+
destroy: Tuhoa
|
|
477
|
+
details: Tuotetiedot
|
|
478
|
+
digital:
|
|
479
|
+
digital_delivery: Digitaalinen toimitus
|
|
480
|
+
digital_assets: Digitaaliset resurssit
|
|
481
|
+
discontinued: Poistettu käytöstä
|
|
482
|
+
discontinued_variants_present: Joillakin tämän tilauksen riveillä on tuotteita, jotka eivät ole enää saatavilla.
|
|
483
|
+
display_delivery_range: Toimitus %{delivery_range} arkipäivässä
|
|
484
|
+
draft: Luonnos
|
|
485
|
+
eligibility_errors:
|
|
486
|
+
messages:
|
|
487
|
+
no_matching_channel: Tämä kuponkikoodi ei ole voimassa tässä myyntikanavassa.
|
|
488
|
+
no_matching_market: Tämä kuponkikoodi ei ole voimassa markkina-alueellasi.
|
|
489
|
+
wrong_country: Tämä alennuskoodi ei kelpaa maassasi
|
|
490
|
+
email: Sähköposti
|
|
491
|
+
error: virhe
|
|
492
|
+
error_user_destroy_with_orders: Tilauksiin liitettyä käyttäjää ei voi poistaa
|
|
493
|
+
error_user_does_not_have_any_store_credits: Käyttäjällä ei ole käytettävissä olevia kauppahyvityksiä
|
|
494
|
+
errors:
|
|
495
|
+
messages:
|
|
496
|
+
cannot_delete_default_channel: Oletuskanavaa ei voi poistaa. Korota ensin toinen kanava oletukseksi.
|
|
497
|
+
channel_store_mismatch: on kuuluttava samaan kauppaan
|
|
498
|
+
invalid_order_routing_rule: ei ole rekisteröity tilausten reititityssääntö
|
|
499
|
+
invalid_order_routing_strategy: ei ole rekisteröity tilausten reititysstrategia
|
|
500
|
+
store_association_can_not_be_changed: Kaupan liitosta ei voi muuttaa
|
|
501
|
+
store_is_already_set: Kauppa on jo asetettu
|
|
502
|
+
expired: Vanhentunut
|
|
503
|
+
export_mailer:
|
|
504
|
+
export_done:
|
|
505
|
+
message: Hyvää työtä, vientisi on valmis! Käytä alla olevaa linkkiä ladataksesi sen.
|
|
506
|
+
subject: Vientisi %{export_number} käsiteltiin onnistuneesti!
|
|
507
|
+
greeting: Hei %{user_name},
|
|
508
|
+
field: Kenttä
|
|
509
|
+
first_name: Etunimi
|
|
510
|
+
flat_percent: Kiinteä prosentti
|
|
511
|
+
flat_rate_per_order: Kiinteä hinta (per tilaus)
|
|
512
|
+
flexible_rate: Joustava hinta
|
|
513
|
+
free: Ilmainen
|
|
514
|
+
gateway: Yhdyskäytävä
|
|
515
|
+
gateway_error: Virhe yhdyskäytävässä
|
|
516
|
+
gift_card: Lahjakortti
|
|
517
|
+
gift_card_already_redeemed: Lahjakortti on jo lunastettu.
|
|
518
|
+
gift_card_applied: Lahjakortti lisättiin onnistuneesti tilaukseesi!
|
|
519
|
+
gift_card_customer_not_logged_in: Lahjakorttia ei voi käyttää vieraskäyttäjänä.
|
|
520
|
+
gift_card_expired: Lahjakortti on vanhentunut.
|
|
521
|
+
gift_card_mismatched_currency: Lahjakorttia ei voi käyttää nykyisellä valuutalla.
|
|
522
|
+
gift_card_mismatched_customer: Tämä lahjakortti on liitetty toiseen käyttäjään.
|
|
523
|
+
gift_card_not_found: Lahjakorttia ei löytynyt.
|
|
524
|
+
gift_card_removed: Lahjakortti poistettiin onnistuneesti tilauksestasi
|
|
525
|
+
gift_card_using_store_credit_error: Lahjakorttia ei voi käyttää sen jälkeen, kun kauppahyvitys on otettu käyttöön.
|
|
526
|
+
height: Korkeus
|
|
527
|
+
i18n:
|
|
528
|
+
this_file_language: Suomi (FI)
|
|
529
|
+
idempotency_key_reused: Tätä Idempotency-Key-avainta on jo käytetty eri pyyntöparametreilla.
|
|
530
|
+
image: Kuva
|
|
531
|
+
import: Tuo
|
|
532
|
+
in_stock: Varastossa
|
|
533
|
+
internal_note: Sisäinen huomautus
|
|
534
|
+
inventory: Varasto
|
|
535
|
+
invitation_mailer:
|
|
536
|
+
greeting: Hei %{user_name},
|
|
537
|
+
invitation_accepted:
|
|
538
|
+
body: "%{invitee_name} on hyväksynyt kutsusi liittyä kohteeseen %{resource_name}"
|
|
539
|
+
subject: "%{invitee_name} on hyväksynyt kutsusi liittyä kohteeseen %{resource_name}"
|
|
540
|
+
invitation_email:
|
|
541
|
+
body: "%{inviter_name} on kutsunut sinut liittymään kohteeseen %{resource_name}"
|
|
542
|
+
link_description: 'Hyväksy tämä kutsu napsauttamalla alla olevaa linkkiä:'
|
|
543
|
+
subject: Kutsu liittyä kohteeseen %{resource_name}
|
|
544
|
+
iso: ISO Alpha-2
|
|
545
|
+
item: Tuote
|
|
546
|
+
items_cannot_be_shipped: Toimituskulujen laskeminen näille tuotteille ei onnistunut.
|
|
547
|
+
key: Avain
|
|
548
|
+
kind: Tyyppi
|
|
549
|
+
label: Nimike
|
|
550
|
+
last_name: Sukunimi
|
|
551
|
+
line_item: Rivituote
|
|
552
|
+
line_items: Rivituotteet
|
|
553
|
+
link: Linkki
|
|
554
|
+
locale: Kieliasetus
|
|
555
|
+
locale_not_supported_by_store: ei ole tämän kaupan tukema
|
|
556
|
+
manual: Manuaalinen
|
|
557
|
+
market: Markkina
|
|
558
|
+
me_no_current_user: Mikään hallintakäyttäjä ei todentanut tätä pyyntöä
|
|
559
|
+
media: Media
|
|
560
|
+
meta_description: Meta-kuvaus
|
|
561
|
+
meta_keywords: Meta-avainsanat
|
|
562
|
+
metadata: Metadata
|
|
563
|
+
min_quantity: Vähimmäismäärä
|
|
564
|
+
month: Kuukausi
|
|
565
|
+
name: Nimi
|
|
566
|
+
new_variant: Uusi variantti
|
|
567
|
+
no_cc_type: Ei saatavilla
|
|
568
|
+
no_payment_found: Virhe. Maksua ei löytynyt.
|
|
569
|
+
none: Ei yhtäkään
|
|
570
|
+
number: Numero
|
|
571
|
+
on_hand: Saatavilla
|
|
572
|
+
only_active_products_can_be_added_to_cart: Luonnos- ja arkistoituja tuotteita ei voi lisätä ostoskoriin, merkitse tuote ensin aktiiviseksi.
|
|
573
|
+
open: Avaa
|
|
574
|
+
option_name: Valinnan nimi
|
|
575
|
+
option_type: Valintatyyppi
|
|
576
|
+
option_value: Valinta-arvo
|
|
577
|
+
options: Valinnat
|
|
578
|
+
or: tai
|
|
579
|
+
order: Tilaus
|
|
580
|
+
order_routing:
|
|
581
|
+
strategies:
|
|
582
|
+
legacy: Perinteinen
|
|
583
|
+
rules: Säännöt (järjestyksessä)
|
|
584
|
+
order_summary: Tilauksen yhteenveto
|
|
585
|
+
orders: Tilaukset
|
|
586
|
+
out_of_stock: Ei saatavilla
|
|
587
|
+
password: Salasana
|
|
588
|
+
path: Polku
|
|
589
|
+
payment: Maksu
|
|
590
|
+
payment_method: Maksutapa
|
|
591
|
+
payment_method_not_supported: Tätä maksutapaa ei voida hyväksyä. Valitse joku toinen maksutapa.
|
|
592
|
+
payment_methods: Maksutavat
|
|
593
|
+
payment_processing_failed: Maksua ei voitu käsitellä, ole hyvä ja tarkista antamasi tiedot
|
|
594
|
+
payment_source: Maksulähde
|
|
595
|
+
percent: Prosentti
|
|
596
|
+
percent_per_item: Prosenttia per rivi
|
|
597
|
+
phone: Puhelin
|
|
598
|
+
price: Hinta
|
|
599
|
+
price_range: Price Range
|
|
600
|
+
price_rules:
|
|
601
|
+
channel_rule:
|
|
602
|
+
description: Käytä hinnoittelua myyntikanavan perusteella
|
|
603
|
+
customer_group_rule:
|
|
604
|
+
description: Sovella hinnoittelua tiettyihin asiakasryhmiin
|
|
605
|
+
price_sack: Price Sack
|
|
606
|
+
prices: Hinnat
|
|
607
|
+
privacy_policy: Tietosuojaseloste
|
|
608
|
+
processing: Käsitellään
|
|
609
|
+
product: Tuote
|
|
610
|
+
product_translations: Tuotteen käännökset
|
|
611
|
+
products: Tuotteet
|
|
612
|
+
products_cannot_be_shipped: Emme voi tällä hetkellä toimittaa tuotteita %{product_names} nykyiseen sijaintiisi. Vaihda toimitusosoitettasi tai poista %{product_names} ostoskoristasi.
|
|
613
|
+
promotion: Kampanja
|
|
614
|
+
promotion_action_types:
|
|
615
|
+
create_adjustment:
|
|
616
|
+
description: Luo tilaukselle hintamuutoksen kampanjan avulla
|
|
617
|
+
name: Uusi tilauskohtainen hintamuutos
|
|
618
|
+
create_item_adjustments:
|
|
619
|
+
description: Luo tilausriville hintamuutos kampanjan avulla
|
|
620
|
+
name: Uusi rivikohtainen hintamuutos
|
|
621
|
+
create_line_items:
|
|
622
|
+
description: Lisää ostoskoriin variantteja
|
|
623
|
+
name: Lisää tuote
|
|
624
|
+
free_shipping:
|
|
625
|
+
description: Kaikki toimitukset tilaukselle ovat ilmaisia
|
|
626
|
+
name: Ilmainen toimitus
|
|
627
|
+
promotion_actions: Toiminnot
|
|
628
|
+
promotion_already_used: Et voi poistaa kampanjaa, joka on jo otettu käyttöön
|
|
629
|
+
promotion_label: Kampanja (%{name})
|
|
630
|
+
promotion_rule_types:
|
|
631
|
+
category:
|
|
632
|
+
description: Tilaus sisältää tuotteita määritetyistä luokista
|
|
633
|
+
name: Luokat
|
|
634
|
+
channel:
|
|
635
|
+
description: Rajaa määritettyjen myyntikanavien kautta tehtyihin tilauksiin
|
|
636
|
+
name: Myyntikanavat
|
|
637
|
+
country:
|
|
638
|
+
description: Rajoita tilauksiin, joiden toimitusosoite on tietyssä maassa
|
|
639
|
+
name: Maa
|
|
640
|
+
currency:
|
|
641
|
+
description: Rajoita tilauksiin tietyssä valuutassa
|
|
642
|
+
name: Valuutta
|
|
643
|
+
customer:
|
|
644
|
+
description: Saatavilla vain määritetyille asiakkaille
|
|
645
|
+
name: Asiakkaat
|
|
646
|
+
customer_group:
|
|
647
|
+
description: Saatavilla vain määritettyihin asiakasryhmiin kuuluville asiakkaille
|
|
648
|
+
name: Asiakasryhmä(t)
|
|
649
|
+
customer_logged_in:
|
|
650
|
+
description: Saatavilla vain kirjautuneille asiakkaille
|
|
651
|
+
name: Vain kirjautuneet asiakkaat
|
|
652
|
+
first_order:
|
|
653
|
+
description: Täytyy olla asiakkaan ensimmäinen tilaus
|
|
654
|
+
name: Ensimmäinen tilaus
|
|
655
|
+
item_total:
|
|
656
|
+
description: Tilaus täyttää nämä kriteerit
|
|
657
|
+
name: Tilaus yhteensä
|
|
658
|
+
market:
|
|
659
|
+
description: Rajaa määritetyillä markkina-alueilla tehtyihin tilauksiin
|
|
660
|
+
name: Markkina-alueet
|
|
661
|
+
one_use_per_user:
|
|
662
|
+
description: Käyttäjäkohtainen kerta-alennus
|
|
663
|
+
name: Käyttäjäkohtainen kerta-alennus
|
|
664
|
+
option_value:
|
|
665
|
+
description: Tilaus sisältää tietyn tuotteen valintatyypillä
|
|
666
|
+
name: Valintatyyppi
|
|
667
|
+
product:
|
|
668
|
+
description: Tilaus sisältää määritellyt tuotteet
|
|
669
|
+
name: Tuotteet
|
|
670
|
+
promotions: Kampanjat
|
|
671
|
+
quantity: Määrä
|
|
672
|
+
query: Kysely
|
|
673
|
+
reason: Syy
|
|
674
|
+
received: Vastaanotettu
|
|
675
|
+
reference: Viite
|
|
676
|
+
refund: Hyvitä
|
|
677
|
+
refund_amount: Hyvityksen määrä
|
|
678
|
+
registration: Rekisteröityminen
|
|
679
|
+
remove: Poista
|
|
680
|
+
remove_gift_card_on_completed_order_error: Et voi poistaa lahjakorttia sen jälkeen, kun tilaus on tehty
|
|
681
|
+
resellable: Jälleenmyytävissä
|
|
682
|
+
resend: Lähetä uudelleen
|
|
683
|
+
response_code: Vastauskoodi
|
|
684
|
+
return: palaa
|
|
685
|
+
returned: Palattu
|
|
686
|
+
returns_policy: Palautuskäytäntö
|
|
687
|
+
row: Rivi
|
|
688
|
+
rules: Säännöt
|
|
689
|
+
say_no: Ei
|
|
690
|
+
say_yes: Kyllä
|
|
691
|
+
scope: Laajuus
|
|
692
|
+
selected_quantity_not_available: valitulle tuotteelle %{item} ei ole saatavissa
|
|
693
|
+
ship: toimita
|
|
694
|
+
ship_address: Toimitusosoite
|
|
695
|
+
shipment: Toimitus
|
|
696
|
+
shipped: Toimitettu
|
|
697
|
+
shipping: Toimitus
|
|
698
|
+
shipping_address: Toimitusosoite
|
|
699
|
+
shipping_flat_rate_per_item: Kiinteä hinta per pakattu tuote
|
|
700
|
+
shipping_flat_rate_per_order: Kiinteä hinta
|
|
701
|
+
shipping_flexible_rate: Joustava hinnoittelu per tuote
|
|
702
|
+
shipping_policy: Toimituskäytäntö
|
|
703
|
+
shipping_price_sack: Hintasäkki
|
|
704
|
+
shipping_rates:
|
|
705
|
+
display_price:
|
|
706
|
+
excluding_tax: "%{price} (+ %{tax_amount} %{tax_rate_name})"
|
|
707
|
+
including_tax: "%{price} (sis. %{tax_amount} %{tax_rate_name})"
|
|
708
|
+
sku: SKU
|
|
709
|
+
source: Lähde
|
|
710
|
+
status: Tila
|
|
711
|
+
stock_location: Varaston sijainti
|
|
712
|
+
stock_locations: Varastot
|
|
713
|
+
stock_transfer:
|
|
714
|
+
errors:
|
|
715
|
+
must_have_variant: Sinun on lisättävä vähintään yksi variantti
|
|
716
|
+
same_location: ei voi olla sama kuin kohdesijainti
|
|
717
|
+
variants_unavailable: Jotkin variantit eivät ole saatavilla sijainnissa %{stock}
|
|
718
|
+
store: Kauppa
|
|
719
|
+
store_credit:
|
|
720
|
+
allocated: Lisätty
|
|
721
|
+
authorized: Valtuutettu
|
|
722
|
+
captured: Käytetty
|
|
723
|
+
credit: Hyvitys
|
|
724
|
+
eligible: Kelvollinen
|
|
725
|
+
store_credit_name: Kauppahyvitys
|
|
726
|
+
store_credit_payment_method:
|
|
727
|
+
currency_mismatch: Kauppahyvityksen valuutta ei vastaa tilauksen valuuttaa
|
|
728
|
+
insufficient_authorized_amount: Valtuutettua määrää enempää ei voi veloittaa
|
|
729
|
+
insufficient_funds: Jäljellä oleva kauppahyvityksen määrä ei riitä
|
|
730
|
+
successful_action: Onnistunut kauppahyvitys %{action}
|
|
731
|
+
unable_to_credit: 'Koodia ei voi hyvittää: %{auth_code}'
|
|
732
|
+
unable_to_find: Kauppahyvitystä ei löytynyt
|
|
733
|
+
unable_to_find_for_action: 'Kauppahyvitystä ei löytynyt valtuutuskoodille: %{auth_code} toiminnolle: %{action}'
|
|
734
|
+
unable_to_void: 'Koodia ei voi mitätöidä: %{auth_code}'
|
|
735
|
+
tags: Tunnisteet
|
|
736
|
+
tax: Vero
|
|
737
|
+
tax_category: Verokategoria
|
|
738
|
+
terms_of_service: Käyttöehdot
|
|
739
|
+
there_are_no_items_for_this_order: Tilaus ei sisällä yhtään tuotetta. Lisää tuote jatkaaksesi tästä eteenpäin.
|
|
740
|
+
total: Yhteensä
|
|
741
|
+
track_inventory: Seuraa saldoa
|
|
742
|
+
tracking: Seuranta
|
|
743
|
+
tracking_number: Seurantatunnus
|
|
744
|
+
tracking_url: Seurantaosoite
|
|
745
|
+
type: Tyyppi
|
|
746
|
+
unable_to_connect_to_gateway: Ei saatu yhteyttä yhdyskäytävään
|
|
747
|
+
updated_at: Päivitetty
|
|
748
|
+
url: URL
|
|
749
|
+
user: Käyttäjä
|
|
750
|
+
validation:
|
|
751
|
+
must_be_int: täytyy olla kokonaisluku
|
|
752
|
+
value: Arvo
|
|
753
|
+
variant: Variantti
|
|
754
|
+
variants: Variantit
|
|
755
|
+
verified: Vahvistettu
|
|
756
|
+
void: Hylkää
|
|
757
|
+
webhook_mailer:
|
|
758
|
+
endpoint_disabled:
|
|
759
|
+
disabled_at_label: Poistettu käytöstä
|
|
760
|
+
heading: Webhook-päätepiste poistettu käytöstä
|
|
761
|
+
instructions: Tarkista päätepisteen URL ja palvelu, ja ota se sitten uudelleen käyttöön kohdassa Asetukset → Kehittäjät → Webhookit.
|
|
762
|
+
message: Webhook-päätepiste "%{endpoint_name}" on poistettu automaattisesti käytöstä toistuvien toimitusvirheiden jälkeen.
|
|
763
|
+
name_label: Nimi
|
|
764
|
+
reason_label: Syy
|
|
765
|
+
subject: 'Webhook-päätepiste poistettu käytöstä: %{endpoint_name}'
|
|
766
|
+
url_label: URL
|
|
767
|
+
weight: Paino
|
|
768
|
+
weight_unit: Painoyksikkö
|
|
769
|
+
width: Leveys
|
|
770
|
+
year: Vuosi
|
|
771
|
+
zip: Postinumero
|