From a7cfbce072b4ae992d605e0a4f77aba86b5f6212 Mon Sep 17 00:00:00 2001 From: sebseb7 Date: Wed, 16 Jul 2025 11:31:48 +0200 Subject: [PATCH] more translations --- src/components/LoginComponent.js | 2 +- src/components/profile/AddressForm.js | 21 +++---- src/components/profile/CartTab.js | 8 +-- src/components/profile/CheckoutForm.js | 23 ++++---- src/components/profile/CheckoutValidation.js | 34 ++++++------ .../profile/DeliveryMethodSelector.js | 2 +- src/components/profile/OrderDetailsDialog.js | 28 +++++----- src/components/profile/OrdersTab.js | 38 +++++++------ .../profile/PaymentConfirmationDialog.js | 2 +- .../profile/PaymentMethodSelector.js | 25 +++++---- src/components/profile/SettingsTab.js | 55 ++++++++++--------- src/i18n/locales/ar/checkout.js | 23 +++++++- src/i18n/locales/ar/delivery.js | 9 +-- src/i18n/locales/ar/orders.js | 20 ++++++- src/i18n/locales/ar/payment.js | 15 ++++- src/i18n/locales/bg/checkout.js | 25 ++++++++- src/i18n/locales/bg/delivery.js | 19 ++++--- src/i18n/locales/bg/orders.js | 30 +++++++--- src/i18n/locales/bg/payment.js | 15 ++++- src/i18n/locales/bg/settings.js | 4 +- src/i18n/locales/cs/checkout.js | 27 ++++++++- src/i18n/locales/cs/delivery.js | 17 +++--- src/i18n/locales/cs/orders.js | 18 +++++- src/i18n/locales/cs/payment.js | 17 +++++- src/i18n/locales/cs/settings.js | 2 +- src/i18n/locales/de/checkout.js | 23 +++++++- src/i18n/locales/de/delivery.js | 1 + src/i18n/locales/de/orders.js | 18 +++++- src/i18n/locales/de/payment.js | 15 ++++- src/i18n/locales/el/checkout.js | 27 ++++++++- src/i18n/locales/el/delivery.js | 15 ++--- src/i18n/locales/el/orders.js | 18 +++++- src/i18n/locales/el/payment.js | 15 ++++- src/i18n/locales/en/checkout.js | 25 ++++++++- src/i18n/locales/en/delivery.js | 13 +++-- src/i18n/locales/en/orders.js | 18 +++++- src/i18n/locales/en/payment.js | 17 +++++- src/i18n/locales/es/checkout.js | 25 ++++++++- src/i18n/locales/es/delivery.js | 7 ++- src/i18n/locales/es/orders.js | 18 +++++- src/i18n/locales/es/payment.js | 21 +++++-- src/i18n/locales/fr/checkout.js | 25 ++++++++- src/i18n/locales/fr/delivery.js | 9 +-- src/i18n/locales/fr/orders.js | 18 +++++- src/i18n/locales/fr/payment.js | 15 ++++- src/i18n/locales/fr/settings.js | 2 +- src/i18n/locales/hr/checkout.js | 25 ++++++++- src/i18n/locales/hr/delivery.js | 17 +++--- src/i18n/locales/hr/orders.js | 18 +++++- src/i18n/locales/hr/payment.js | 15 ++++- src/i18n/locales/hu/checkout.js | 25 ++++++++- src/i18n/locales/hu/delivery.js | 19 ++++--- src/i18n/locales/hu/orders.js | 18 +++++- src/i18n/locales/hu/payment.js | 21 +++++-- src/i18n/locales/it/checkout.js | 25 ++++++++- src/i18n/locales/it/delivery.js | 9 +-- src/i18n/locales/it/orders.js | 18 +++++- src/i18n/locales/it/payment.js | 17 +++++- src/i18n/locales/pl/checkout.js | 27 ++++++++- src/i18n/locales/pl/delivery.js | 13 +++-- src/i18n/locales/pl/orders.js | 20 ++++++- src/i18n/locales/pl/payment.js | 15 ++++- src/i18n/locales/ro/checkout.js | 25 ++++++++- src/i18n/locales/ro/delivery.js | 11 ++-- src/i18n/locales/ro/orders.js | 50 +++++++++++------ src/i18n/locales/ro/payment.js | 21 +++++-- src/i18n/locales/ru/checkout.js | 29 ++++++++-- src/i18n/locales/ru/delivery.js | 7 ++- src/i18n/locales/ru/orders.js | 18 +++++- src/i18n/locales/ru/payment.js | 21 +++++-- src/i18n/locales/ru/settings.js | 4 +- src/i18n/locales/sk/checkout.js | 25 ++++++++- src/i18n/locales/sk/delivery.js | 21 +++---- src/i18n/locales/sk/orders.js | 50 +++++++++++------ src/i18n/locales/sk/payment.js | 17 +++++- src/i18n/locales/sk/settings.js | 2 +- src/i18n/locales/sl/checkout.js | 25 ++++++++- src/i18n/locales/sl/delivery.js | 21 +++---- src/i18n/locales/sl/orders.js | 18 +++++- src/i18n/locales/sl/payment.js | 15 ++++- src/i18n/locales/sr/checkout.js | 25 ++++++++- src/i18n/locales/sr/delivery.js | 9 +-- src/i18n/locales/sr/orders.js | 18 +++++- src/i18n/locales/sr/payment.js | 15 ++++- src/i18n/locales/sv/checkout.js | 25 ++++++++- src/i18n/locales/sv/delivery.js | 15 ++--- src/i18n/locales/sv/orders.js | 18 +++++- src/i18n/locales/sv/payment.js | 19 ++++++- src/i18n/locales/tr/checkout.js | 27 ++++++++- src/i18n/locales/tr/delivery.js | 21 +++---- src/i18n/locales/tr/orders.js | 18 +++++- src/i18n/locales/tr/payment.js | 25 +++++++-- src/i18n/locales/uk/checkout.js | 25 ++++++++- src/i18n/locales/uk/delivery.js | 17 +++--- src/i18n/locales/uk/orders.js | 18 +++++- src/i18n/locales/uk/payment.js | 15 ++++- src/i18n/locales/zh/checkout.js | 25 ++++++++- src/i18n/locales/zh/delivery.js | 23 ++++---- src/i18n/locales/zh/orders.js | 20 ++++++- src/i18n/locales/zh/payment.js | 15 ++++- src/i18n/locales/zh/settings.js | 2 +- src/pages/ResetPassword.js | 4 +- 102 files changed, 1492 insertions(+), 413 deletions(-) diff --git a/src/components/LoginComponent.js b/src/components/LoginComponent.js index a8a7ac6..7fa779a 100644 --- a/src/components/LoginComponent.js +++ b/src/components/LoginComponent.js @@ -722,7 +722,7 @@ export class LoginComponent extends Component { {tabValue === 1 && ( { +const AddressForm = ({ title, address, onChange, errors, namePrefix, t }) => { // Helper function to determine if a required field should show error styling const getRequiredFieldError = (fieldName, value) => { const isEmpty = !value || value.trim() === ""; @@ -36,7 +37,7 @@ const AddressForm = ({ title, address, onChange, errors, namePrefix }) => { }} > { }} /> { }} /> { InputLabelProps={{ shrink: true }} /> { }} /> { }} /> { }} /> { }} /> { ); }; -export default AddressForm; +export default withI18n()(AddressForm); diff --git a/src/components/profile/CartTab.js b/src/components/profile/CartTab.js index 6bff990..e748d47 100644 --- a/src/components/profile/CartTab.js +++ b/src/components/profile/CartTab.js @@ -293,7 +293,7 @@ class CartTab extends Component { }; validateAddressForm = () => { - const errors = CheckoutValidation.validateAddressForm(this.state); + const errors = CheckoutValidation.validateAddressForm(this.state, this.props.t); this.setState({ addressFormErrors: errors }); return Object.keys(errors).length === 0; }; @@ -323,7 +323,7 @@ class CartTab extends Component { handleCompleteOrder = () => { this.setState({ completionError: null }); // Clear previous errors - const validationError = CheckoutValidation.getValidationErrorMessage(this.state); + const validationError = CheckoutValidation.getValidationErrorMessage(this.state, false, this.props.t); if (validationError) { this.setState({ completionError: validationError }); this.validateAddressForm(); // To show field-specific errors @@ -440,7 +440,7 @@ class CartTab extends Component { const deliveryCost = this.orderService.getDeliveryCost(); const { isPickupOnly, hasStecklinge } = CheckoutValidation.getCartItemFlags(cartItems); - const preSubmitError = CheckoutValidation.getValidationErrorMessage(this.state); + const preSubmitError = CheckoutValidation.getValidationErrorMessage(this.state, false, this.props.t); const displayError = completionError || preSubmitError; return ( @@ -480,7 +480,7 @@ class CartTab extends Component { {isLoadingStripe ? ( - Zahlungskomponente wird geladen... + {this.props.t ? this.props.t('payment.loadingPaymentComponent') : 'Zahlungskomponente wird geladen...'} ) : showStripePayment && StripeComponent ? ( diff --git a/src/components/profile/CheckoutForm.js b/src/components/profile/CheckoutForm.js index 2ee8e78..8eefb87 100644 --- a/src/components/profile/CheckoutForm.js +++ b/src/components/profile/CheckoutForm.js @@ -4,6 +4,7 @@ import AddressForm from "./AddressForm.js"; import DeliveryMethodSelector from "./DeliveryMethodSelector.js"; import PaymentMethodSelector from "./PaymentMethodSelector.js"; import OrderSummary from "./OrderSummary.js"; +import { withI18n } from "../../i18n/withTranslation.js"; class CheckoutForm extends Component { render() { @@ -40,7 +41,7 @@ class CheckoutForm extends Component { {paymentMethod !== "cash" && ( <> - Für zukünftige Bestellungen speichern + {this.props.t ? this.props.t('checkout.saveForFuture') : 'Für zukünftige Bestellungen speichern'} } sx={{ mb: 2 }} @@ -70,13 +71,12 @@ class CheckoutForm extends Component { variant="body1" sx={{ mb: 2, fontWeight: "bold", color: "#2e7d32" }} > - Für welchen Termin ist die Abholung der Stecklinge - gewünscht? + {this.props.t ? this.props.t('checkout.pickupDate') : 'Für welchen Termin ist die Abholung der Stecklinge gewünscht?'} )} - Lieferadresse ist identisch mit Rechnungsadresse + {this.props.t ? this.props.t('checkout.sameAddress') : 'Lieferadresse ist identisch mit Rechnungsadresse'} } sx={{ mb: 2 }} @@ -116,7 +116,7 @@ class CheckoutForm extends Component { {!useSameAddress && ( - Ich habe die AGBs, die Datenschutzerklärung und die - Bestimmungen zum Widerrufsrecht gelesen + {this.props.t ? this.props.t('checkout.termsAccept') : 'Ich habe die AGBs, die Datenschutzerklärung und die Bestimmungen zum Widerrufsrecht gelesen'} } sx={{ mb: 3, mt: 2 }} @@ -175,12 +174,12 @@ class CheckoutForm extends Component { disabled={isCompletingOrder || !!preSubmitError} > {isCompletingOrder - ? "Bestellung wird verarbeitet..." - : "Bestellung abschließen"} + ? (this.props.t ? this.props.t('checkout.processingOrder') : 'Bestellung wird verarbeitet...') + : (this.props.t ? this.props.t('checkout.completeOrder') : 'Bestellung abschließen')} ); } } -export default CheckoutForm; \ No newline at end of file +export default withI18n()(CheckoutForm); \ No newline at end of file diff --git a/src/components/profile/CheckoutValidation.js b/src/components/profile/CheckoutValidation.js index 6c891aa..ba7de07 100644 --- a/src/components/profile/CheckoutValidation.js +++ b/src/components/profile/CheckoutValidation.js @@ -1,5 +1,5 @@ class CheckoutValidation { - static validateAddressForm(state) { + static validateAddressForm(state, t = null) { const { invoiceAddress, deliveryAddress, @@ -12,15 +12,15 @@ class CheckoutValidation { // Validate invoice address (skip if payment method is "cash") if (paymentMethod !== "cash") { if (!invoiceAddress.firstName) - errors.invoiceFirstName = "Vorname erforderlich"; + errors.invoiceFirstName = t ? t('checkout.validationErrors.firstNameRequired') : "Vorname erforderlich"; if (!invoiceAddress.lastName) - errors.invoiceLastName = "Nachname erforderlich"; - if (!invoiceAddress.street) errors.invoiceStreet = "Straße erforderlich"; + errors.invoiceLastName = t ? t('checkout.validationErrors.lastNameRequired') : "Nachname erforderlich"; + if (!invoiceAddress.street) errors.invoiceStreet = t ? t('checkout.validationErrors.streetRequired') : "Straße erforderlich"; if (!invoiceAddress.houseNumber) - errors.invoiceHouseNumber = "Hausnummer erforderlich"; + errors.invoiceHouseNumber = t ? t('checkout.validationErrors.houseNumberRequired') : "Hausnummer erforderlich"; if (!invoiceAddress.postalCode) - errors.invoicePostalCode = "PLZ erforderlich"; - if (!invoiceAddress.city) errors.invoiceCity = "Stadt erforderlich"; + errors.invoicePostalCode = t ? t('checkout.validationErrors.postalCodeRequired') : "PLZ erforderlich"; + if (!invoiceAddress.city) errors.invoiceCity = t ? t('checkout.validationErrors.cityRequired') : "Stadt erforderlich"; } // Validate delivery address for shipping methods that require it @@ -29,37 +29,37 @@ class CheckoutValidation { (deliveryMethod === "DHL" || deliveryMethod === "DPD") ) { if (!deliveryAddress.firstName) - errors.deliveryFirstName = "Vorname erforderlich"; + errors.deliveryFirstName = t ? t('checkout.validationErrors.firstNameRequired') : "Vorname erforderlich"; if (!deliveryAddress.lastName) - errors.deliveryLastName = "Nachname erforderlich"; + errors.deliveryLastName = t ? t('checkout.validationErrors.lastNameRequired') : "Nachname erforderlich"; if (!deliveryAddress.street) - errors.deliveryStreet = "Straße erforderlich"; + errors.deliveryStreet = t ? t('checkout.validationErrors.streetRequired') : "Straße erforderlich"; if (!deliveryAddress.houseNumber) - errors.deliveryHouseNumber = "Hausnummer erforderlich"; + errors.deliveryHouseNumber = t ? t('checkout.validationErrors.houseNumberRequired') : "Hausnummer erforderlich"; if (!deliveryAddress.postalCode) - errors.deliveryPostalCode = "PLZ erforderlich"; - if (!deliveryAddress.city) errors.deliveryCity = "Stadt erforderlich"; + errors.deliveryPostalCode = t ? t('checkout.validationErrors.postalCodeRequired') : "PLZ erforderlich"; + if (!deliveryAddress.city) errors.deliveryCity = t ? t('checkout.validationErrors.cityRequired') : "Stadt erforderlich"; } return errors; } - static getValidationErrorMessage(state, isAddressOnly = false) { + static getValidationErrorMessage(state, isAddressOnly = false, t = null) { const { termsAccepted } = state; - const addressErrors = this.validateAddressForm(state); + const addressErrors = this.validateAddressForm(state, t); if (isAddressOnly) { return addressErrors; } if (Object.keys(addressErrors).length > 0) { - return "Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern."; + return t ? t('checkout.addressValidationError') : "Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern."; } // Validate terms acceptance if (!termsAccepted) { - return "Bitte akzeptieren Sie die AGBs, Datenschutzerklärung und Widerrufsrecht, um fortzufahren."; + return t ? t('checkout.termsValidationError') : "Bitte akzeptieren Sie die AGBs, Datenschutzerklärung und Widerrufsrecht, um fortzufahren."; } return null; diff --git a/src/components/profile/DeliveryMethodSelector.js b/src/components/profile/DeliveryMethodSelector.js index 4af111b..92c2a3e 100644 --- a/src/components/profile/DeliveryMethodSelector.js +++ b/src/components/profile/DeliveryMethodSelector.js @@ -30,7 +30,7 @@ const DeliveryMethodSelector = ({ deliveryMethod, onChange, isPickupOnly, cartIt }, { id: 'Sperrgut', - name: 'Sperrgut', + name: t ? t('delivery.methods.sperrgutName') : 'Sperrgut', description: t ? t('delivery.descriptions.bulky') : 'Für große und schwere Artikel', price: t ? t('delivery.prices.sperrgut') : '28,99 €', disabled: true, diff --git a/src/components/profile/OrderDetailsDialog.js b/src/components/profile/OrderDetailsDialog.js index 10db854..51c41f4 100644 --- a/src/components/profile/OrderDetailsDialog.js +++ b/src/components/profile/OrderDetailsDialog.js @@ -55,10 +55,10 @@ const OrderDetailsDialog = ({ open, onClose, order }) => { return ( - Bestelldetails: {order.orderId} + {t('orders.details.title', { orderId: order.orderId })} - Lieferadresse + {t('orders.details.deliveryAddress')} {order.shipping_address_name} {order.shipping_address_street} {order.shipping_address_house_number} {order.shipping_address_postal_code} {order.shipping_address_city} @@ -66,7 +66,7 @@ const OrderDetailsDialog = ({ open, onClose, order }) => { - Rechnungsadresse + {t('orders.details.invoiceAddress')} {order.invoice_address_name} {order.invoice_address_street} {order.invoice_address_house_number} {order.invoice_address_postal_code} {order.invoice_address_city} @@ -75,28 +75,28 @@ const OrderDetailsDialog = ({ open, onClose, order }) => { {/* Order Details Section */} - Bestelldetails + {t('orders.details.orderDetails')} - Lieferart: - {order.deliveryMethod || order.delivery_method || 'Nicht angegeben'} + {t('orders.details.deliveryMethod')} + {order.deliveryMethod || order.delivery_method || t('orders.details.notSpecified')} - Zahlungsart: - {order.paymentMethod || order.payment_method || 'Nicht angegeben'} + {t('orders.details.paymentMethod')} + {order.paymentMethod || order.payment_method || t('orders.details.notSpecified')} - Bestellte Artikel + {t('orders.details.orderedItems')} - Artikel - Menge - Preis - Gesamt + {t('orders.details.item')} + {t('orders.details.quantity')} + {t('orders.details.price')} + {t('orders.details.total')} @@ -162,7 +162,7 @@ const OrderDetailsDialog = ({ open, onClose, order }) => { {order.status === 'new' && ( )} diff --git a/src/components/profile/OrdersTab.js b/src/components/profile/OrdersTab.js index ed9608a..c0072ce 100644 --- a/src/components/profile/OrdersTab.js +++ b/src/components/profile/OrdersTab.js @@ -1,5 +1,6 @@ import React, { useState, useEffect, useContext, useCallback } from "react"; import { useNavigate } from "react-router-dom"; +import { withI18n } from "../../i18n/withTranslation.js"; import { Box, Paper, @@ -20,13 +21,16 @@ import SocketContext from "../../contexts/SocketContext.js"; import OrderDetailsDialog from "./OrderDetailsDialog.js"; // Constants -const statusTranslations = { - new: "in Bearbeitung", - pending: "Neu", - processing: "in Bearbeitung", - cancelled: "Storniert", - shipped: "Verschickt", - delivered: "Geliefert", +const getStatusTranslation = (status, t) => { + const statusMap = { + new: t ? t('orders.status.new') : "in Bearbeitung", + pending: t ? t('orders.status.pending') : "Neu", + processing: t ? t('orders.status.processing') : "in Bearbeitung", + cancelled: t ? t('orders.status.cancelled') : "Storniert", + shipped: t ? t('orders.status.shipped') : "Verschickt", + delivered: t ? t('orders.status.delivered') : "Geliefert", + }; + return statusMap[status] || status; }; const statusEmojis = { @@ -61,7 +65,7 @@ const currencyFormatter = new Intl.NumberFormat("de-DE", { }); // Orders Tab Content Component -const OrdersTab = ({ orderIdFromHash }) => { +const OrdersTab = ({ orderIdFromHash, t }) => { const [orders, setOrders] = useState([]); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); @@ -120,7 +124,7 @@ const OrdersTab = ({ orderIdFromHash }) => { }, [orderIdFromHash, orders, handleViewDetails]); const getStatusDisplay = (status) => { - return statusTranslations[status] || status; + return getStatusTranslation(status, t); }; const getStatusEmoji = (status) => { @@ -160,12 +164,12 @@ const OrdersTab = ({ orderIdFromHash }) => {
- Bestellnummer - Datum - Status - Artikel - Summe - Aktionen + {t ? t('orders.table.orderNumber') : 'Bestellnummer'} + {t ? t('orders.table.date') : 'Datum'} + {t ? t('orders.table.status') : 'Status'} + {t ? t('orders.table.items') : 'Artikel'} + {t ? t('orders.table.total') : 'Summe'} + {t ? t('orders.table.actions') : 'Aktionen'} @@ -231,7 +235,7 @@ const OrdersTab = ({ orderIdFromHash }) => { ) : ( - Sie haben noch keine Bestellungen aufgegeben. + {t ? t('orders.noOrders') : 'Sie haben noch keine Bestellungen aufgegeben.'} )} { ); }; -export default OrdersTab; +export default withI18n()(OrdersTab); diff --git a/src/components/profile/PaymentConfirmationDialog.js b/src/components/profile/PaymentConfirmationDialog.js index 5e76bc1..ecd38aa 100644 --- a/src/components/profile/PaymentConfirmationDialog.js +++ b/src/components/profile/PaymentConfirmationDialog.js @@ -54,7 +54,7 @@ class PaymentConfirmationDialog extends Component { {isCompletingOrder && ( - Bestellung wird abgeschlossen... + {this.props.t ? this.props.t('orders.processing') : 'Bestellung wird abgeschlossen...'} )} diff --git a/src/components/profile/PaymentMethodSelector.js b/src/components/profile/PaymentMethodSelector.js index 8aa71cc..3c35ce0 100644 --- a/src/components/profile/PaymentMethodSelector.js +++ b/src/components/profile/PaymentMethodSelector.js @@ -1,7 +1,8 @@ import React, { useEffect, useCallback } from "react"; import { Box, Typography, Radio } from "@mui/material"; +import { withI18n } from "../../i18n/withTranslation.js"; -const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeliveryMethodChange, cartItems = [], deliveryCost = 0 }) => { +const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeliveryMethodChange, cartItems = [], deliveryCost = 0, t }) => { // Calculate total amount const subtotal = cartItems.reduce((total, item) => total + item.price * item.quantity, 0); @@ -38,8 +39,8 @@ const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeli const paymentOptions = [ { id: "wire", - name: "Überweisung", - description: "Bezahlen Sie per Banküberweisung", + name: t ? t('payment.methods.bankTransfer') : "Überweisung", + description: t ? t('payment.methods.bankTransferDescription') : "Bezahlen Sie per Banküberweisung", disabled: totalAmount === 0, }, /*{ @@ -58,10 +59,10 @@ const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeli },*/ { id: "mollie", - name: "Karte, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + name: t ? t('payment.methods.cardPayment') : "Karte, Sofortüberweisung, Apple Pay, Google Pay, PayPal", description: totalAmount < 0.50 && totalAmount > 0 - ? "Bezahlen Sie per Karte oder Sofortüberweisung (Mindestbetrag: 0,50 €)" - : "Bezahlen Sie per Karte oder Sofortüberweisung", + ? (t ? t('payment.methods.cardPaymentMinAmount') : "Bezahlen Sie per Karte oder Sofortüberweisung (Mindestbetrag: 0,50 €)") + : (t ? t('payment.methods.cardPaymentDescription') : "Bezahlen Sie per Karte oder Sofortüberweisung"), disabled: totalAmount < 0.50 || (deliveryMethod !== "DHL" && deliveryMethod !== "DPD" && deliveryMethod !== "Abholung"), icons: [ "/assets/images/giropay.png", @@ -72,15 +73,15 @@ const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeli }, { id: "onDelivery", - name: "Nachnahme", - description: "Bezahlen Sie bei Lieferung (8,99 € Aufschlag)", + name: t ? t('payment.methods.cashOnDelivery') : "Nachnahme", + description: t ? t('payment.methods.cashOnDeliveryDescription') : "Bezahlen Sie bei Lieferung (8,99 € Aufschlag)", disabled: totalAmount === 0 || deliveryMethod !== "DHL", icons: ["/assets/images/cash.png"], }, { id: "cash", - name: "Zahlung in der Filiale", - description: "Bei Abholung bezahlen", + name: t ? t('payment.methods.cashInStore') : "Zahlung in der Filiale", + description: t ? t('payment.methods.cashInStoreDescription') : "Bei Abholung bezahlen", disabled: false, // Always enabled icons: ["/assets/images/cash.png"], }, @@ -89,7 +90,7 @@ const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeli return ( <> - Zahlungsart wählen + {t ? t('payment.methods.selectPaymentMethod') : 'Zahlungsart wählen'} @@ -189,4 +190,4 @@ const PaymentMethodSelector = ({ paymentMethod, onChange, deliveryMethod, onDeli ); }; -export default PaymentMethodSelector; +export default withI18n()(PaymentMethodSelector); diff --git a/src/components/profile/SettingsTab.js b/src/components/profile/SettingsTab.js index 44679fa..9a9c7d5 100644 --- a/src/components/profile/SettingsTab.js +++ b/src/components/profile/SettingsTab.js @@ -12,6 +12,7 @@ import { Snackbar } from '@mui/material'; import { ContentCopy } from '@mui/icons-material'; +import { withI18n } from '../../i18n/withTranslation.js'; class SettingsTab extends Component { constructor(props) { @@ -72,17 +73,17 @@ class SettingsTab extends Component { // Validation if (!this.state.currentPassword || !this.state.newPassword || !this.state.confirmPassword) { - this.setState({ passwordError: 'Bitte füllen Sie alle Felder aus' }); + this.setState({ passwordError: this.props.t ? this.props.t('settings.errors.fillAllFields') : 'Bitte füllen Sie alle Felder aus' }); return; } if (this.state.newPassword !== this.state.confirmPassword) { - this.setState({ passwordError: 'Die neuen Passwörter stimmen nicht überein' }); + this.setState({ passwordError: this.props.t ? this.props.t('settings.errors.passwordsNotMatch') : 'Die neuen Passwörter stimmen nicht überein' }); return; } if (this.state.newPassword.length < 8) { - this.setState({ passwordError: 'Das neue Passwort muss mindestens 8 Zeichen lang sein' }); + this.setState({ passwordError: this.props.t ? this.props.t('settings.errors.passwordTooShort') : 'Das neue Passwort muss mindestens 8 Zeichen lang sein' }); return; } @@ -96,14 +97,14 @@ class SettingsTab extends Component { if (response.success) { this.setState({ - passwordSuccess: 'Passwort erfolgreich aktualisiert', + passwordSuccess: this.props.t ? this.props.t('settings.success.passwordUpdated') : 'Passwort erfolgreich aktualisiert', currentPassword: '', newPassword: '', confirmPassword: '' }); } else { this.setState({ - passwordError: response.message || 'Fehler beim Aktualisieren des Passworts' + passwordError: response.message || (this.props.t ? this.props.t('settings.errors.passwordUpdateError') : 'Fehler beim Aktualisieren des Passworts') }); } } @@ -121,12 +122,12 @@ class SettingsTab extends Component { // Validation if (!this.state.password || !this.state.newEmail) { - this.setState({ emailError: 'Bitte füllen Sie alle Felder aus' }); + this.setState({ emailError: this.props.t ? this.props.t('settings.errors.fillAllFields') : 'Bitte füllen Sie alle Felder aus' }); return; } if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(this.state.newEmail)) { - this.setState({ emailError: 'Bitte geben Sie eine gültige E-Mail-Adresse ein' }); + this.setState({ emailError: this.props.t ? this.props.t('settings.errors.invalidEmail') : 'Bitte geben Sie eine gültige E-Mail-Adresse ein' }); return; } @@ -140,7 +141,7 @@ class SettingsTab extends Component { if (response.success) { this.setState({ - emailSuccess: 'E-Mail-Adresse erfolgreich aktualisiert', + emailSuccess: this.props.t ? this.props.t('settings.success.emailUpdated') : 'E-Mail-Adresse erfolgreich aktualisiert', password: '' }); @@ -157,7 +158,7 @@ class SettingsTab extends Component { } } else { this.setState({ - emailError: response.message || 'Fehler beim Aktualisieren der E-Mail-Adresse' + emailError: response.message || (this.props.t ? this.props.t('settings.errors.emailUpdateError') : 'Fehler beim Aktualisieren der E-Mail-Adresse') }); } } @@ -238,7 +239,7 @@ class SettingsTab extends Component { - Passwort ändern + {this.props.t ? this.props.t('settings.changePassword') : 'Passwort ändern'} {this.state.passwordError && {this.state.passwordError}} @@ -247,7 +248,7 @@ class SettingsTab extends Component { - {this.state.loading ? : 'Passwort aktualisieren'} + {this.state.loading ? : (this.props.t ? this.props.t('settings.updatePassword') : 'Passwort aktualisieren')} @@ -291,7 +292,7 @@ class SettingsTab extends Component { - E-Mail-Adresse ändern + {this.props.t ? this.props.t('settings.changeEmail') : 'E-Mail-Adresse ändern'} {this.state.emailError && {this.state.emailError}} @@ -300,7 +301,7 @@ class SettingsTab extends Component { - {this.state.loading ? : 'E-Mail aktualisieren'} + {this.state.loading ? : (this.props.t ? this.props.t('settings.updateEmail') : 'E-Mail aktualisieren')} @@ -334,11 +335,11 @@ class SettingsTab extends Component { - API-Schlüssel + {this.props.t ? this.props.t('settings.apiKey') : 'API-Schlüssel'} - Verwenden Sie Ihren API-Schlüssel für die Integration mit externen Anwendungen. + {this.props.t ? this.props.t('settings.apiKeyDescription') : 'Verwenden Sie Ihren API-Schlüssel für die Integration mit externen Anwendungen.'} {this.state.apiKeyError && {this.state.apiKeyError}} @@ -347,14 +348,14 @@ class SettingsTab extends Component { {this.state.apiKeySuccess} {this.state.apiKey && this.state.apiKeyDisplay !== '************' && ( - Speichern Sie diesen Schlüssel sicher. Er wird aus Sicherheitsgründen in 10 Sekunden ausgeblendet. + {this.props.t ? this.props.t('settings.success.apiKeyWarning') : 'Speichern Sie diesen Schlüssel sicher. Er wird aus Sicherheitsgründen in 10 Sekunden ausgeblendet.'} )} )} - API-Dokumentation: {' '} + {this.props.t ? this.props.t('settings.apiDocumentation') : 'API-Dokumentation:'} {' '} @@ -405,7 +406,7 @@ class SettingsTab extends Component { {this.state.loadingApiKey ? ( ) : ( - this.state.hasApiKey ? 'Regenerieren' : 'Generieren' + this.state.hasApiKey ? (this.props.t ? this.props.t('settings.regenerate') : 'Regenerieren') : (this.props.t ? this.props.t('settings.generate') : 'Generieren') )} @@ -415,7 +416,7 @@ class SettingsTab extends Component { open={this.state.copySnackbarOpen} autoHideDuration={3000} onClose={this.handleCloseSnackbar} - message="API-Schlüssel in Zwischenablage kopiert" + message={this.props.t ? this.props.t('settings.apiKeyCopied') : 'API-Schlüssel in Zwischenablage kopiert'} anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }} /> @@ -423,4 +424,4 @@ class SettingsTab extends Component { } } -export default SettingsTab; \ No newline at end of file +export default withI18n()(SettingsTab); \ No newline at end of file diff --git a/src/i18n/locales/ar/checkout.js b/src/i18n/locales/ar/checkout.js index e19b6bf..c8f505c 100644 --- a/src/i18n/locales/ar/checkout.js +++ b/src/i18n/locales/ar/checkout.js @@ -9,5 +9,26 @@ export default { "selectDeliveryMethod": "اختر طريقة الشحن", "selectPaymentMethod": "اختر طريقة الدفع", "orderSummary": "ملخص الطلب", - "addressValidationError": "يرجى التحقق من بياناتك في حقول العنوان." + "addressValidationError": "يرجى التحقق من بياناتك في حقول العنوان.", + "processingOrder": "يتم معالجة الطلب...", + "completeOrder": "إتمام الطلب", + "termsValidationError": "يرجى قبول الشروط والأحكام، سياسة الخصوصية، وحق الانسحاب للمتابعة.", + "addressFields": { + "firstName": "الاسم الأول", + "lastName": "اسم العائلة", + "addressSupplement": "إضافة للعنوان", + "street": "الشارع", + "houseNumber": "رقم المنزل", + "postalCode": "الرمز البريدي", + "city": "المدينة", + "country": "البلد" + }, + "validationErrors": { + "firstNameRequired": "الاسم الأول مطلوب", + "lastNameRequired": "اسم العائلة مطلوب", + "streetRequired": "الشارع مطلوب", + "houseNumberRequired": "رقم المنزل مطلوب", + "postalCodeRequired": "الرمز البريدي مطلوب", + "cityRequired": "المدينة مطلوبة" + } }; diff --git a/src/i18n/locales/ar/delivery.js b/src/i18n/locales/ar/delivery.js index 2d6f8fc..07f04ce 100644 --- a/src/i18n/locales/ar/delivery.js +++ b/src/i18n/locales/ar/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "بضائع ضخمة", + "sperrgutName": "بضائع ضخمة", "pickup": "استلام من المتجر" }, "descriptions": { @@ -15,9 +16,9 @@ export default { "prices": { "free": "مجاني", "freeFrom100": "(مجاني من 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "مدة التوصيل: 14 يوم", @@ -26,7 +27,7 @@ export default { }, "selector": { "title": "اختر طريقة الشحن", - "freeShippingInfo": "💡 الشحن مجاني للطلبات فوق 100€!", + "freeShippingInfo": "💡 شحن مجاني للطلبات فوق 100€!", "remainingForFree": "أضف {{amount}}€ أخرى للشحن المجاني.", "congratsFreeShipping": "🎉 مبروك! حصلت على شحن مجاني!", "cartQualifiesFree": "سلة مشترياتك بقيمة {{amount}}€ مؤهلة للشحن المجاني." diff --git a/src/i18n/locales/ar/orders.js b/src/i18n/locales/ar/orders.js index 6efcdf1..32ad9a6 100644 --- a/src/i18n/locales/ar/orders.js +++ b/src/i18n/locales/ar/orders.js @@ -3,7 +3,7 @@ export default { "new": "قيد التنفيذ", "pending": "جديد", "processing": "قيد التنفيذ", - "cancelled": "ملغي", + "cancelled": "ملغاة", "shipped": "تم الشحن", "delivered": "تم التوصيل", "return": "إرجاع", @@ -19,5 +19,21 @@ export default { "actions": "الإجراءات", "viewDetails": "عرض التفاصيل" }, - "noOrders": "لم تقم بوضع أي طلبات بعد." + "noOrders": "لم تقم بوضع أي طلبات بعد.", + "details": { + "title": "تفاصيل الطلب: {{orderId}}", + "deliveryAddress": "عنوان التوصيل", + "invoiceAddress": "عنوان الفاتورة", + "orderDetails": "تفاصيل الطلب", + "deliveryMethod": "طريقة التوصيل:", + "paymentMethod": "طريقة الدفع:", + "notSpecified": "غير محدد", + "orderedItems": "العناصر المطلوبة", + "item": "العنصر", + "quantity": "الكمية", + "price": "السعر", + "total": "الإجمالي", + "cancelOrder": "إلغاء الطلب" + }, + "processing": "يتم إكمال الطلب..." }; diff --git a/src/i18n/locales/ar/payment.js b/src/i18n/locales/ar/payment.js index 99b7376..5831b73 100644 --- a/src/i18n/locales/ar/payment.js +++ b/src/i18n/locales/ar/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 تم إكمال طلبك بنجاح! يمكنك الآن عرض طلباتك.", "orderProcessing": "تمت معالجة دفعتك بنجاح. سيتم إكمال الطلب تلقائيًا.", "paymentError": "لم نتمكن من معالجة دفعتك. يرجى المحاولة مرة أخرى أو اختيار طريقة دفع أخرى.", - "viewOrders": "عرض طلباتي" + "viewOrders": "عرض طلباتي", + "loadingPaymentComponent": "جارٍ تحميل مكون الدفع...", + "methods": { + "selectPaymentMethod": "اختر طريقة الدفع", + "bankTransfer": "تحويل بنكي", + "bankTransferDescription": "ادفع عن طريق التحويل البنكي", + "cardPayment": "بطاقة، Sofortüberweisung، Apple Pay، Google Pay، PayPal", + "cardPaymentDescription": "ادفع بالبطاقة أو Sofortüberweisung", + "cardPaymentMinAmount": "ادفع بالبطاقة أو Sofortüberweisung (الحد الأدنى: €0.50)", + "cashOnDelivery": "الدفع عند الاستلام", + "cashOnDeliveryDescription": "ادفع عند الاستلام (رسوم إضافية €8.99)", + "cashInStore": "الدفع في المتجر", + "cashInStoreDescription": "ادفع عند الاستلام", + } }; diff --git a/src/i18n/locales/bg/checkout.js b/src/i18n/locales/bg/checkout.js index b216b42..c86559b 100644 --- a/src/i18n/locales/bg/checkout.js +++ b/src/i18n/locales/bg/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "За коя дата е желано вземането на резниците?", "note": "Бележка", "sameAddress": "Адресът за доставка е същият като адреса за фактура", - "termsAccept": "Прочетох общите условия, политиката за поверителност и разпоредбите относно правото на отказ", + "termsAccept": "Прочетох Общите условия, Политиката за поверителност и разпоредбите за правото на отказ", "selectDeliveryMethod": "Изберете метод на доставка", "selectPaymentMethod": "Изберете метод на плащане", "orderSummary": "Обобщение на поръчката", - "addressValidationError": "Моля, проверете въведените данни в полетата за адрес." + "addressValidationError": "Моля, проверете въведените данни в полетата за адрес.", + "processingOrder": "Поръчката се обработва...", + "completeOrder": "Завърши поръчката", + "termsValidationError": "Моля, приемете Общите условия, Политиката за поверителност и правото на отказ, за да продължите.", + "addressFields": { + "firstName": "Име", + "lastName": "Фамилия", + "addressSupplement": "Допълнение към адреса", + "street": "Улица", + "houseNumber": "Номер на къща", + "postalCode": "Пощенски код", + "city": "Град", + "country": "Държава" + }, + "validationErrors": { + "firstNameRequired": "Името е задължително", + "lastNameRequired": "Фамилията е задължителна", + "streetRequired": "Улицата е задължителна", + "houseNumberRequired": "Номерът на къщата е задължителен", + "postalCodeRequired": "Пощенският код е задължителен", + "cityRequired": "Градът е задължителен" + } }; diff --git a/src/i18n/locales/bg/delivery.js b/src/i18n/locales/bg/delivery.js index 7a8bf3e..61de0a8 100644 --- a/src/i18n/locales/bg/delivery.js +++ b/src/i18n/locales/bg/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Обемни стоки", + "sperrgutName": "Обемни стоки", "pickup": "Вземане от магазина" }, "descriptions": { @@ -10,25 +11,25 @@ export default { "standardFree": "Стандартна доставка - БЕЗПЛАТНО при поръчка над 100€!", "notAvailable": "Не може да се избере, защото един или повече артикули могат да се вземат само на място", "bulky": "За големи и тежки артикули", - "pickupOnly": "Само вземане" + "pickupOnly": "Само вземане на място" }, "prices": { "free": "безплатно", "freeFrom100": "(безплатно от 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { - "cutting14Days": "Срок на доставка: 14 дни", - "standard2to3Days": "Срок на доставка: 2-3 дни", - "supplier7to9Days": "Срок на доставка: 7-9 дни" + "cutting14Days": "Срок за доставка: 14 дни", + "standard2to3Days": "Срок за доставка: 2-3 дни", + "supplier7to9Days": "Срок за доставка: 7-9 дни" }, "selector": { "title": "Изберете метод на доставка", "freeShippingInfo": "💡 Безплатна доставка при поръчка над 100€!", "remainingForFree": "Добавете още {{amount}}€ за безплатна доставка.", - "congratsFreeShipping": "🎉 Поздравления! Получавате безплатна доставка!", - "cartQualifiesFree": "Вашата количка на стойност {{amount}}€ отговаря на условията за безплатна доставка." + "congratsFreeShipping": "🎉 Поздравления! Вие получавате безплатна доставка!", + "cartQualifiesFree": "Вашата количка на стойност {{amount}}€ се квалифицира за безплатна доставка." } }; diff --git a/src/i18n/locales/bg/orders.js b/src/i18n/locales/bg/orders.js index 9d0d754..3b67a94 100644 --- a/src/i18n/locales/bg/orders.js +++ b/src/i18n/locales/bg/orders.js @@ -1,14 +1,14 @@ export default { "status": { "new": "В процес", - "pending": "Ново", + "pending": "Нова", "processing": "В процес", - "cancelled": "Отменено", - "shipped": "Изпратено", - "delivered": "Доставено", + "cancelled": "Отменена", + "shipped": "Изпратена", + "delivered": "Доставена", "return": "Връщане", "partialReturn": "Частично връщане", - "partialDelivered": "Частично доставено" + "partialDelivered": "Частично доставена" }, "table": { "orderNumber": "Номер на поръчка", @@ -17,7 +17,23 @@ export default { "items": "Артикули", "total": "Общо", "actions": "Действия", - "viewDetails": "Виж детайли" + "viewDetails": "Виж подробности" }, - "noOrders": "Все още не сте направили поръчки." + "noOrders": "Все още не сте направили поръчки.", + "details": { + "title": "Подробности за поръчка: {{orderId}}", + "deliveryAddress": "Адрес за доставка", + "invoiceAddress": "Адрес за фактура", + "orderDetails": "Подробности за поръчката", + "deliveryMethod": "Начин на доставка:", + "paymentMethod": "Начин на плащане:", + "notSpecified": "Не е посочено", + "orderedItems": "Поръчани артикули", + "item": "Артикул", + "quantity": "Количество", + "price": "Цена", + "total": "Общо", + "cancelOrder": "Отмени поръчката" + }, + "processing": "Поръчката се обработва...", }; diff --git a/src/i18n/locales/bg/payment.js b/src/i18n/locales/bg/payment.js index 0bfb2e9..026efa5 100644 --- a/src/i18n/locales/bg/payment.js +++ b/src/i18n/locales/bg/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Вашата поръчка беше успешно завършена! Сега можете да видите вашите поръчки.", "orderProcessing": "Вашето плащане беше обработено успешно. Поръчката ще бъде завършена автоматично.", "paymentError": "Вашето плащане не можа да бъде обработено. Моля, опитайте отново или изберете друг метод на плащане.", - "viewOrders": "Виж моите поръчки" + "viewOrders": "Вижте моите поръчки", + "loadingPaymentComponent": "Зареждане на платежния компонент...", + "methods": { + "selectPaymentMethod": "Изберете метод на плащане", + "bankTransfer": "Банков превод", + "bankTransferDescription": "Платете чрез банков превод", + "cardPayment": "Карта, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Платете с карта или Sofortüberweisung", + "cardPaymentMinAmount": "Платете с карта или Sofortüberweisung (минимална сума: €0.50)", + "cashOnDelivery": "Плащане при доставка", + "cashOnDeliveryDescription": "Платете при доставка (надбавка от €8.99)", + "cashInStore": "Плащане в магазина", + "cashInStoreDescription": "Платете при получаване", + } }; diff --git a/src/i18n/locales/bg/settings.js b/src/i18n/locales/bg/settings.js index c9817da..6dcadeb 100644 --- a/src/i18n/locales/bg/settings.js +++ b/src/i18n/locales/bg/settings.js @@ -1,10 +1,10 @@ export default { - "changePassword": "Смяна на парола", + "changePassword": "Промяна на паролата", "currentPassword": "Текуща парола", "newPassword": "Нова парола", "confirmNewPassword": "Потвърдете новата парола", "updatePassword": "Актуализиране на паролата", - "changeEmail": "Смяна на имейл адрес", + "changeEmail": "Промяна на имейл адреса", "password": "Парола", "newEmail": "Нов имейл адрес", "updateEmail": "Актуализиране на имейла", diff --git a/src/i18n/locales/cs/checkout.js b/src/i18n/locales/cs/checkout.js index cbc641c..ed181f6 100644 --- a/src/i18n/locales/cs/checkout.js +++ b/src/i18n/locales/cs/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Na který datum je požadován odběr řízků?", "note": "Poznámka", "sameAddress": "Dodací adresa je shodná s fakturační adresou", - "termsAccept": "Přečetl(a) jsem si obchodní podmínky, zásady ochrany osobních údajů a ustanovení o právu na odstoupení", - "selectDeliveryMethod": "Vyberte způsob dopravy", + "termsAccept": "Přečetl(a) jsem si Obchodní podmínky, Zásady ochrany osobních údajů a ustanovení o právu na odstoupení", + "selectDeliveryMethod": "Vyberte způsob doručení", "selectPaymentMethod": "Vyberte způsob platby", "orderSummary": "Souhrn objednávky", - "addressValidationError": "Zkontrolujte prosím své údaje v polích adresy." + "addressValidationError": "Zkontrolujte prosím své údaje v polích adresy.", + "processingOrder": "Objednávka se zpracovává...", + "completeOrder": "Dokončit objednávku", + "termsValidationError": "Pro pokračování prosím přijměte Obchodní podmínky, Zásady ochrany osobních údajů a právo na odstoupení.", + "addressFields": { + "firstName": "Jméno", + "lastName": "Příjmení", + "addressSupplement": "Doplňující informace k adrese", + "street": "Ulice", + "houseNumber": "Číslo domu", + "postalCode": "PSČ", + "city": "Město", + "country": "Země" + }, + "validationErrors": { + "firstNameRequired": "Jméno je povinné", + "lastNameRequired": "Příjmení je povinné", + "streetRequired": "Ulice je povinná", + "houseNumberRequired": "Číslo domu je povinné", + "postalCodeRequired": "PSČ je povinné", + "cityRequired": "Město je povinné" + } }; diff --git a/src/i18n/locales/cs/delivery.js b/src/i18n/locales/cs/delivery.js index 079ac91..66aabaf 100644 --- a/src/i18n/locales/cs/delivery.js +++ b/src/i18n/locales/cs/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Objemné zboží", + "sperrgutName": "Objemné zboží", "pickup": "Osobní odběr v obchodě" }, "descriptions": { "standard": "Standardní doprava", - "standardFree": "Standardní doprava - ZDARMA od objednávky nad 100 €!", + "standardFree": "Standardní doprava - ZDARMA od hodnoty objednávky 100€!", "notAvailable": "Nelze vybrat, protože jeden nebo více položek lze pouze vyzvednout", "bulky": "Pro velké a těžké položky", "pickupOnly": "Pouze osobní odběr" }, "prices": { "free": "zdarma", - "freeFrom100": "(zdarma od 100 €)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "freeFrom100": "(zdarma od 100€)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Doba dodání: 14 dní", @@ -26,9 +27,9 @@ export default { }, "selector": { "title": "Vyberte způsob dopravy", - "freeShippingInfo": "💡 Doprava zdarma od objednávky nad 100 €!", - "remainingForFree": "Přidejte ještě {{amount}} € pro dopravu zdarma.", + "freeShippingInfo": "💡 Doprava zdarma od hodnoty objednávky 100€!", + "remainingForFree": "Přidejte ještě {{amount}}€ pro dopravu zdarma.", "congratsFreeShipping": "🎉 Gratulujeme! Máte dopravu zdarma!", - "cartQualifiesFree": "Váš košík v hodnotě {{amount}} € má nárok na dopravu zdarma." + "cartQualifiesFree": "Váš košík za {{amount}}€ má nárok na dopravu zdarma." } }; diff --git a/src/i18n/locales/cs/orders.js b/src/i18n/locales/cs/orders.js index 5419f39..1d11444 100644 --- a/src/i18n/locales/cs/orders.js +++ b/src/i18n/locales/cs/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Akce", "viewDetails": "Zobrazit detaily" }, - "noOrders": "Ještě jste neprovedli žádné objednávky." + "noOrders": "Ještě jste neprovedli žádné objednávky.", + "details": { + "title": "Detaily objednávky: {{orderId}}", + "deliveryAddress": "Dodací adresa", + "invoiceAddress": "Fakturační adresa", + "orderDetails": "Detaily objednávky", + "deliveryMethod": "Způsob doručení:", + "paymentMethod": "Způsob platby:", + "notSpecified": "Nespecifikováno", + "orderedItems": "Objednané položky", + "item": "Položka", + "quantity": "Množství", + "price": "Cena", + "total": "Celkem", + "cancelOrder": "Zrušit objednávku" + }, + "processing": "Objednávka se dokončuje..." }; diff --git a/src/i18n/locales/cs/payment.js b/src/i18n/locales/cs/payment.js index 3590f07..987d005 100644 --- a/src/i18n/locales/cs/payment.js +++ b/src/i18n/locales/cs/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Platba byla úspěšná!", "failed": "Platba selhala", - "orderCompleted": "🎉 Vaše objednávka byla úspěšně dokončena! Nyní můžete zobrazit své objednávky.", + "orderCompleted": "🎉 Vaše objednávka byla úspěšně dokončena! Nyní si můžete prohlédnout své objednávky.", "orderProcessing": "Vaše platba byla úspěšně zpracována. Objednávka bude automaticky dokončena.", "paymentError": "Vaši platbu nebylo možné zpracovat. Zkuste to prosím znovu nebo zvolte jiný způsob platby.", - "viewOrders": "Zobrazit mé objednávky" + "viewOrders": "Zobrazit mé objednávky", + "loadingPaymentComponent": "Načítání platební komponenty...", + "methods": { + "selectPaymentMethod": "Vyberte způsob platby", + "bankTransfer": "Bankovní převod", + "bankTransferDescription": "Zaplaťte bankovním převodem", + "cardPayment": "Karta, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Zaplaťte kartou nebo Sofortüberweisung", + "cardPaymentMinAmount": "Zaplaťte kartou nebo Sofortüberweisung (minimální částka: €0.50)", + "cashOnDelivery": "Dobírka", + "cashOnDeliveryDescription": "Zaplaťte při doručení (příplatek €8.99)", + "cashInStore": "Platba na prodejně", + "cashInStoreDescription": "Zaplaťte při vyzvednutí", + } }; diff --git a/src/i18n/locales/cs/settings.js b/src/i18n/locales/cs/settings.js index 4244246..8cc830f 100644 --- a/src/i18n/locales/cs/settings.js +++ b/src/i18n/locales/cs/settings.js @@ -2,7 +2,7 @@ export default { "changePassword": "Změnit heslo", "currentPassword": "Aktuální heslo", "newPassword": "Nové heslo", - "confirmNewPassword": "Potvrďte nové heslo", + "confirmNewPassword": "Potvrdit nové heslo", "updatePassword": "Aktualizovat heslo", "changeEmail": "Změnit e-mailovou adresu", "password": "Heslo", diff --git a/src/i18n/locales/de/checkout.js b/src/i18n/locales/de/checkout.js index 66dddf4..fb4e5cf 100644 --- a/src/i18n/locales/de/checkout.js +++ b/src/i18n/locales/de/checkout.js @@ -9,5 +9,26 @@ export default { "selectDeliveryMethod": "Versandart wählen", "selectPaymentMethod": "Zahlungsart wählen", "orderSummary": "Bestellübersicht", - "addressValidationError": "Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern." + "addressValidationError": "Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern.", + "processingOrder": "Bestellung wird verarbeitet...", + "completeOrder": "Bestellung abschließen", + "termsValidationError": "Bitte akzeptieren Sie die AGBs, Datenschutzerklärung und Widerrufsrecht, um fortzufahren.", + "addressFields": { + "firstName": "Vorname", + "lastName": "Nachname", + "addressSupplement": "Adresszusatz", + "street": "Straße", + "houseNumber": "Hausnummer", + "postalCode": "PLZ", + "city": "Stadt", + "country": "Land" + }, + "validationErrors": { + "firstNameRequired": "Vorname erforderlich", + "lastNameRequired": "Nachname erforderlich", + "streetRequired": "Straße erforderlich", + "houseNumberRequired": "Hausnummer erforderlich", + "postalCodeRequired": "PLZ erforderlich", + "cityRequired": "Stadt erforderlich" + } }; \ No newline at end of file diff --git a/src/i18n/locales/de/delivery.js b/src/i18n/locales/de/delivery.js index b141bf6..07fd6d6 100644 --- a/src/i18n/locales/de/delivery.js +++ b/src/i18n/locales/de/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Sperrgut", + "sperrgutName": "Sperrgut", "pickup": "Abholung in der Filiale" }, "descriptions": { diff --git a/src/i18n/locales/de/orders.js b/src/i18n/locales/de/orders.js index 84ca17c..0607749 100644 --- a/src/i18n/locales/de/orders.js +++ b/src/i18n/locales/de/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Aktionen", "viewDetails": "Details anzeigen" }, - "noOrders": "Sie haben noch keine Bestellungen aufgegeben." + "noOrders": "Sie haben noch keine Bestellungen aufgegeben.", + "details": { + "title": "Bestelldetails: {{orderId}}", + "deliveryAddress": "Lieferadresse", + "invoiceAddress": "Rechnungsadresse", + "orderDetails": "Bestelldetails", + "deliveryMethod": "Lieferart:", + "paymentMethod": "Zahlungsart:", + "notSpecified": "Nicht angegeben", + "orderedItems": "Bestellte Artikel", + "item": "Artikel", + "quantity": "Menge", + "price": "Preis", + "total": "Gesamt", + "cancelOrder": "Bestellung stornieren" + }, + "processing": "Bestellung wird abgeschlossen..." }; \ No newline at end of file diff --git a/src/i18n/locales/de/payment.js b/src/i18n/locales/de/payment.js index 231be2e..b0599c9 100644 --- a/src/i18n/locales/de/payment.js +++ b/src/i18n/locales/de/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Ihre Bestellung wurde erfolgreich abgeschlossen! Sie können jetzt Ihre Bestellungen einsehen.", "orderProcessing": "Ihre Zahlung wurde erfolgreich verarbeitet. Die Bestellung wird automatisch abgeschlossen.", "paymentError": "Ihre Zahlung konnte nicht verarbeitet werden. Bitte versuchen Sie es erneut oder wählen Sie eine andere Zahlungsmethode.", - "viewOrders": "Zu meinen Bestellungen" + "viewOrders": "Zu meinen Bestellungen", + "loadingPaymentComponent": "Zahlungskomponente wird geladen...", + "methods": { + "selectPaymentMethod": "Zahlungsart wählen", + "bankTransfer": "Überweisung", + "bankTransferDescription": "Bezahlen Sie per Banküberweisung", + "cardPayment": "Karte, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Bezahlen Sie per Karte oder Sofortüberweisung", + "cardPaymentMinAmount": "Bezahlen Sie per Karte oder Sofortüberweisung (Mindestbetrag: 0,50 €)", + "cashOnDelivery": "Nachnahme", + "cashOnDeliveryDescription": "Bezahlen Sie bei Lieferung (8,99 € Aufschlag)", + "cashInStore": "Zahlung in der Filiale", + "cashInStoreDescription": "Bei Abholung bezahlen" + } }; \ No newline at end of file diff --git a/src/i18n/locales/el/checkout.js b/src/i18n/locales/el/checkout.js index 7f43629..bd31386 100644 --- a/src/i18n/locales/el/checkout.js +++ b/src/i18n/locales/el/checkout.js @@ -2,12 +2,33 @@ export default { "invoiceAddress": "Διεύθυνση τιμολογίου", "deliveryAddress": "Διεύθυνση παράδοσης", "saveForFuture": "Αποθήκευση για μελλοντικές παραγγελίες", - "pickupDate": "Για ποια ημερομηνία επιθυμείται η παραλαβή των μοσχευμάτων;", + "pickupDate": "Για ποια ημερομηνία επιθυμείτε την παραλαβή των μοσχευμάτων;", "note": "Σημείωση", "sameAddress": "Η διεύθυνση παράδοσης είναι ίδια με τη διεύθυνση τιμολογίου", - "termsAccept": "Έχω διαβάσει τους όρους και προϋποθέσεις, την πολιτική απορρήτου και τις διατάξεις για το δικαίωμα υπαναχώρησης", + "termsAccept": "Έχω διαβάσει τους Όρους και Προϋποθέσεις, την Πολιτική Απορρήτου και τις διατάξεις για το δικαίωμα υπαναχώρησης", "selectDeliveryMethod": "Επιλέξτε μέθοδο αποστολής", "selectPaymentMethod": "Επιλέξτε μέθοδο πληρωμής", "orderSummary": "Περίληψη παραγγελίας", - "addressValidationError": "Παρακαλώ ελέγξτε τις καταχωρήσεις σας στα πεδία διεύθυνσης." + "addressValidationError": "Παρακαλώ ελέγξτε τις καταχωρήσεις σας στα πεδία διεύθυνσης.", + "processingOrder": "Η παραγγελία επεξεργάζεται...", + "completeOrder": "Ολοκλήρωση παραγγελίας", + "termsValidationError": "Παρακαλώ αποδεχτείτε τους Όρους και Προϋποθέσεις, την Πολιτική Απορρήτου και το δικαίωμα υπαναχώρησης για να συνεχίσετε.", + "addressFields": { + "firstName": "Όνομα", + "lastName": "Επώνυμο", + "addressSupplement": "Συμπλήρωμα διεύθυνσης", + "street": "Οδός", + "houseNumber": "Αριθμός", + "postalCode": "Ταχυδρομικός κώδικας", + "city": "Πόλη", + "country": "Χώρα" + }, + "validationErrors": { + "firstNameRequired": "Απαιτείται όνομα", + "lastNameRequired": "Απαιτείται επώνυμο", + "streetRequired": "Απαιτείται οδός", + "houseNumberRequired": "Απαιτείται αριθμός", + "postalCodeRequired": "Απαιτείται ταχυδρομικός κώδικας", + "cityRequired": "Απαιτείται πόλη" + } }; diff --git a/src/i18n/locales/el/delivery.js b/src/i18n/locales/el/delivery.js index 412a5a4..50d84ed 100644 --- a/src/i18n/locales/el/delivery.js +++ b/src/i18n/locales/el/delivery.js @@ -2,12 +2,13 @@ export default { "methods": { "dhl": "DHL", "dpd": "DPD", - "sperrgut": "Χονδρά είδη", + "sperrgut": "Ογκώδη είδη", + "sperrgutName": "Ογκώδη είδη", "pickup": "Παραλαβή από το κατάστημα" }, "descriptions": { - "standard": "Τυπική αποστολή", - "standardFree": "Τυπική αποστολή - ΔΩΡΕΑΝ από παραγγελίες άνω των 100€!", + "standard": "Κανονική αποστολή", + "standardFree": "Κανονική αποστολή - ΔΩΡΕΑΝ από παραγγελίες άνω των 100€!", "notAvailable": "Δεν είναι επιλέξιμο γιατί ένα ή περισσότερα είδη μπορούν να παραληφθούν μόνο από το κατάστημα", "bulky": "Για μεγάλα και βαριά αντικείμενα", "pickupOnly": "Μόνο παραλαβή" @@ -15,9 +16,9 @@ export default { "prices": { "free": "δωρεάν", "freeFrom100": "(δωρεάν από 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Χρόνος παράδοσης: 14 ημέρες", @@ -26,7 +27,7 @@ export default { }, "selector": { "title": "Επιλέξτε μέθοδο αποστολής", - "freeShippingInfo": "💡 Δωρεάν αποστολή από παραγγελίες άνω των 100€!", + "freeShippingInfo": "💡 Δωρεάν αποστολή από 100€ παραγγελία!", "remainingForFree": "Προσθέστε ακόμα {{amount}}€ για δωρεάν αποστολή.", "congratsFreeShipping": "🎉 Συγχαρητήρια! Έχετε δωρεάν αποστολή!", "cartQualifiesFree": "Το καλάθι σας των {{amount}}€ πληροί τις προϋποθέσεις για δωρεάν αποστολή." diff --git a/src/i18n/locales/el/orders.js b/src/i18n/locales/el/orders.js index 6f4cd45..2de7dbd 100644 --- a/src/i18n/locales/el/orders.js +++ b/src/i18n/locales/el/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Ενέργειες", "viewDetails": "Προβολή λεπτομερειών" }, - "noOrders": "Δεν έχετε κάνει ακόμα καμία παραγγελία." + "noOrders": "Δεν έχετε κάνει ακόμα καμία παραγγελία.", + "details": { + "title": "Λεπτομέρειες παραγγελίας: {{orderId}}", + "deliveryAddress": "Διεύθυνση παράδοσης", + "invoiceAddress": "Διεύθυνση τιμολόγησης", + "orderDetails": "Λεπτομέρειες παραγγελίας", + "deliveryMethod": "Τρόπος παράδοσης:", + "paymentMethod": "Τρόπος πληρωμής:", + "notSpecified": "Δεν έχει οριστεί", + "orderedItems": "Παραγγελθέντα είδη", + "item": "Είδος", + "quantity": "Ποσότητα", + "price": "Τιμή", + "total": "Σύνολο", + "cancelOrder": "Ακύρωση παραγγελίας" + }, + "processing": "Η παραγγελία ολοκληρώνεται...", }; diff --git a/src/i18n/locales/el/payment.js b/src/i18n/locales/el/payment.js index 40a7de4..b43338e 100644 --- a/src/i18n/locales/el/payment.js +++ b/src/i18n/locales/el/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Η παραγγελία σας ολοκληρώθηκε με επιτυχία! Τώρα μπορείτε να δείτε τις παραγγελίες σας.", "orderProcessing": "Η πληρωμή σας επεξεργάστηκε με επιτυχία. Η παραγγελία θα ολοκληρωθεί αυτόματα.", "paymentError": "Η πληρωμή σας δεν μπόρεσε να επεξεργαστεί. Παρακαλώ δοκιμάστε ξανά ή επιλέξτε άλλη μέθοδο πληρωμής.", - "viewOrders": "Δείτε τις παραγγελίες μου" + "viewOrders": "Δείτε τις παραγγελίες μου", + "loadingPaymentComponent": "Φόρτωση στοιχείου πληρωμής...", + "methods": { + "selectPaymentMethod": "Επιλέξτε μέθοδο πληρωμής", + "bankTransfer": "Τραπεζική μεταφορά", + "bankTransferDescription": "Πληρώστε με τραπεζική μεταφορά", + "cardPayment": "Κάρτα, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Πληρώστε με κάρτα ή Sofortüberweisung", + "cardPaymentMinAmount": "Πληρώστε με κάρτα ή Sofortüberweisung (ελάχιστο ποσό: €0.50)", + "cashOnDelivery": "Πληρωμή κατά την παράδοση", + "cashOnDeliveryDescription": "Πληρώστε κατά την παράδοση (€8.99 επιβάρυνση)", + "cashInStore": "Πληρώστε στο κατάστημα", + "cashInStoreDescription": "Πληρώστε κατά την παραλαβή", + } }; diff --git a/src/i18n/locales/en/checkout.js b/src/i18n/locales/en/checkout.js index 87e1aa9..747c4d8 100644 --- a/src/i18n/locales/en/checkout.js +++ b/src/i18n/locales/en/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "For which date is the pickup of the cuttings desired?", // Für welchen Termin ist die Abholung der Stecklinge gewünscht? "note": "Note", // Anmerkung "sameAddress": "Delivery address is identical to invoice address", // Lieferadresse ist identisch mit Rechnungsadresse - "termsAccept": "I have read the terms and conditions, the privacy policy, and the provisions on the right of withdrawal", // Ich habe die AGBs, die Datenschutzerklärung und die Bestimmungen zum Widerrufsrecht gelesen + "termsAccept": "I have read the Terms and Conditions, the Privacy Policy, and the provisions on the right of withdrawal", // Ich habe die AGBs, die Datenschutzerklärung und die Bestimmungen zum Widerrufsrecht gelesen "selectDeliveryMethod": "Select shipping method", // Versandart wählen "selectPaymentMethod": "Select payment method", // Zahlungsart wählen "orderSummary": "Order summary", // Bestellübersicht - "addressValidationError": "Please check your entries in the address fields." // Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern. + "addressValidationError": "Please check your entries in the address fields.", // Bitte überprüfen Sie Ihre Eingaben in den Adressfeldern. + "processingOrder": "Order is being processed...", // Bestellung wird verarbeitet... + "completeOrder": "Complete order", // Bestellung abschließen + "termsValidationError": "Please accept the Terms and Conditions, Privacy Policy, and right of withdrawal to continue.", // Bitte akzeptieren Sie die AGBs, Datenschutzerklärung und Widerrufsrecht, um fortzufahren. + "addressFields": { + "firstName": "First name", // Vorname + "lastName": "Last name", // Nachname + "addressSupplement": "Address supplement", // Adresszusatz + "street": "Street", // Straße + "houseNumber": "House number", // Hausnummer + "postalCode": "Postal code", // PLZ + "city": "City", // Stadt + "country": "Country" // Land + }, + "validationErrors": { + "firstNameRequired": "First name required", // Vorname erforderlich + "lastNameRequired": "Last name required", // Nachname erforderlich + "streetRequired": "Street required", // Straße erforderlich + "houseNumberRequired": "House number required", // Hausnummer erforderlich + "postalCodeRequired": "Postal code required", // PLZ erforderlich + "cityRequired": "City required" // Stadt erforderlich + } }; diff --git a/src/i18n/locales/en/delivery.js b/src/i18n/locales/en/delivery.js index d9b77c2..4259c9e 100644 --- a/src/i18n/locales/en/delivery.js +++ b/src/i18n/locales/en/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", // DHL "dpd": "DPD", // DPD "sperrgut": "Bulky goods", // Sperrgut + "sperrgutName": "Bulky goods", // Sperrgut "pickup": "Pickup in store" // Abholung in der Filiale }, "descriptions": { "standard": "Standard shipping", // Standardversand - "standardFree": "Standard shipping - FREE from €100 order value!", // Standardversand - KOSTENLOS ab 100€ Warenwert! + "standardFree": "Standard shipping - FREE from 100€ order value!", // Standardversand - KOSTENLOS ab 100€ Warenwert! "notAvailable": "Not selectable because one or more items can only be picked up", // nicht auswählbar weil ein oder mehrere Artikel nur abgeholt werden können "bulky": "For large and heavy items", // Für große und schwere Artikel "pickupOnly": "Pickup only" // nur Abholung }, "prices": { "free": "free", // kostenlos - "freeFrom100": "(free from €100)", // (kostenlos ab 100€) - "dhl": "€6.99", // 6,99 € - "dpd": "€4.90", // 4,90 € - "sperrgut": "€28.99" // 28,99 € + "freeFrom100": "(free from 100€)", // (kostenlos ab 100€) + "dhl": "6.99 €", // 6,99 € + "dpd": "4.90 €", // 4,90 € + "sperrgut": "28.99 €" // 28,99 € }, "times": { "cutting14Days": "Delivery time: 14 days", // Lieferzeit: 14 Tage @@ -26,7 +27,7 @@ export default { }, "selector": { "title": "Choose shipping method", // Versandart wählen - "freeShippingInfo": "💡 Free shipping from €100 order value!", // 💡 Versandkostenfrei ab 100€ Warenwert! + "freeShippingInfo": "💡 Free shipping from 100€ order value!", // 💡 Versandkostenfrei ab 100€ Warenwert! "remainingForFree": "Add {{amount}}€ more for free shipping.", // Noch {{amount}}€ für kostenlosen Versand hinzufügen. "congratsFreeShipping": "🎉 Congratulations! You get free shipping!", // 🎉 Glückwunsch! Sie erhalten kostenlosen Versand! "cartQualifiesFree": "Your cart of {{amount}}€ qualifies for free shipping." // Ihr Warenkorb von {{amount}}€ qualifiziert sich für kostenlosen Versand. diff --git a/src/i18n/locales/en/orders.js b/src/i18n/locales/en/orders.js index 5b4bf3b..054ae79 100644 --- a/src/i18n/locales/en/orders.js +++ b/src/i18n/locales/en/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Actions", // Aktionen "viewDetails": "View details" // Details anzeigen }, - "noOrders": "You have not placed any orders yet." // Sie haben noch keine Bestellungen aufgegeben. + "noOrders": "You have not placed any orders yet.", // Sie haben noch keine Bestellungen aufgegeben. + "details": { + "title": "Order details: {{orderId}}", // Bestelldetails: {{orderId}} + "deliveryAddress": "Delivery address", // Lieferadresse + "invoiceAddress": "Invoice address", // Rechnungsadresse + "orderDetails": "Order details", // Bestelldetails + "deliveryMethod": "Delivery method:", // Lieferart: + "paymentMethod": "Payment method:", // Zahlungsart: + "notSpecified": "Not specified", // Nicht angegeben + "orderedItems": "Ordered items", // Bestellte Artikel + "item": "Item", // Artikel + "quantity": "Quantity", // Menge + "price": "Price", // Preis + "total": "Total", // Gesamt + "cancelOrder": "Cancel order" // Bestellung stornieren + }, + "processing": "Order is being completed...", // Bestellung wird abgeschlossen... }; diff --git a/src/i18n/locales/en/payment.js b/src/i18n/locales/en/payment.js index 99df648..f19b372 100644 --- a/src/i18n/locales/en/payment.js +++ b/src/i18n/locales/en/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Payment successful!", // Zahlung erfolgreich! "failed": "Payment failed", // Zahlung fehlgeschlagen - "orderCompleted": "🎉 Your order was completed successfully! You can now view your orders.", // 🎉 Ihre Bestellung wurde erfolgreich abgeschlossen! Sie können jetzt Ihre Bestellungen einsehen. + "orderCompleted": "🎉 Your order has been completed successfully! You can now view your orders.", // 🎉 Ihre Bestellung wurde erfolgreich abgeschlossen! Sie können jetzt Ihre Bestellungen einsehen. "orderProcessing": "Your payment was processed successfully. The order will be completed automatically.", // Ihre Zahlung wurde erfolgreich verarbeitet. Die Bestellung wird automatisch abgeschlossen. "paymentError": "Your payment could not be processed. Please try again or choose another payment method.", // Ihre Zahlung konnte nicht verarbeitet werden. Bitte versuchen Sie es erneut oder wählen Sie eine andere Zahlungsmethode. - "viewOrders": "View my orders" // Zu meinen Bestellungen + "viewOrders": "View my orders", // Zu meinen Bestellungen + "loadingPaymentComponent": "Loading payment component...", // Zahlungskomponente wird geladen... + "methods": { + "selectPaymentMethod": "Select payment method", // Zahlungsart wählen + "bankTransfer": "Bank transfer", // Überweisung + "bankTransferDescription": "Pay by bank transfer", // Bezahlen Sie per Banküberweisung + "cardPayment": "Card, Sofortüberweisung, Apple Pay, Google Pay, PayPal", // Karte, Sofortüberweisung, Apple Pay, Google Pay, PayPal + "cardPaymentDescription": "Pay by card or Sofortüberweisung", // Bezahlen Sie per Karte oder Sofortüberweisung + "cardPaymentMinAmount": "Pay by card or Sofortüberweisung (minimum amount: €0.50)", // Bezahlen Sie per Karte oder Sofortüberweisung (Mindestbetrag: 0,50 €) + "cashOnDelivery": "Cash on delivery", // Nachnahme + "cashOnDeliveryDescription": "Pay on delivery (€8.99 surcharge)", // Bezahlen Sie bei Lieferung (8,99 € Aufschlag) + "cashInStore": "Pay in store", // Zahlung in der Filiale + "cashInStoreDescription": "Pay when picking up", // Bei Abholung bezahlen + } }; diff --git a/src/i18n/locales/es/checkout.js b/src/i18n/locales/es/checkout.js index 2d24f71..5a0339a 100644 --- a/src/i18n/locales/es/checkout.js +++ b/src/i18n/locales/es/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "¿Para qué fecha se desea la recogida de los esquejes?", "note": "Nota", "sameAddress": "La dirección de entrega es idéntica a la dirección de facturación", - "termsAccept": "He leído los términos y condiciones, la política de privacidad y las disposiciones sobre el derecho de desistimiento", + "termsAccept": "He leído los Términos y Condiciones, la Política de Privacidad y las disposiciones sobre el derecho de desistimiento", "selectDeliveryMethod": "Seleccionar método de envío", "selectPaymentMethod": "Seleccionar método de pago", "orderSummary": "Resumen del pedido", - "addressValidationError": "Por favor, revise sus entradas en los campos de dirección." + "addressValidationError": "Por favor, revise sus datos en los campos de dirección.", + "processingOrder": "Procesando el pedido...", + "completeOrder": "Completar pedido", + "termsValidationError": "Por favor, acepte los Términos y Condiciones, la Política de Privacidad y el derecho de desistimiento para continuar.", + "addressFields": { + "firstName": "Nombre", + "lastName": "Apellido", + "addressSupplement": "Complemento de dirección", + "street": "Calle", + "houseNumber": "Número", + "postalCode": "Código postal", + "city": "Ciudad", + "country": "País" + }, + "validationErrors": { + "firstNameRequired": "Nombre requerido", + "lastNameRequired": "Apellido requerido", + "streetRequired": "Calle requerida", + "houseNumberRequired": "Número requerido", + "postalCodeRequired": "Código postal requerido", + "cityRequired": "Ciudad requerida" + } }; diff --git a/src/i18n/locales/es/delivery.js b/src/i18n/locales/es/delivery.js index 0ee1bdf..b7ba3eb 100644 --- a/src/i18n/locales/es/delivery.js +++ b/src/i18n/locales/es/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Artículos voluminosos", + "sperrgutName": "Artículos voluminosos", "pickup": "Recoger en tienda" }, "descriptions": { @@ -15,9 +16,9 @@ export default { "prices": { "free": "gratis", "freeFrom100": "(gratis a partir de 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Tiempo de entrega: 14 días", diff --git a/src/i18n/locales/es/orders.js b/src/i18n/locales/es/orders.js index 451d2cf..c7b26cf 100644 --- a/src/i18n/locales/es/orders.js +++ b/src/i18n/locales/es/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Acciones", "viewDetails": "Ver detalles" }, - "noOrders": "Aún no has realizado ningún pedido." + "noOrders": "Aún no has realizado ningún pedido.", + "details": { + "title": "Detalles del pedido: {{orderId}}", + "deliveryAddress": "Dirección de entrega", + "invoiceAddress": "Dirección de facturación", + "orderDetails": "Detalles del pedido", + "deliveryMethod": "Método de entrega:", + "paymentMethod": "Método de pago:", + "notSpecified": "No especificado", + "orderedItems": "Artículos pedidos", + "item": "Artículo", + "quantity": "Cantidad", + "price": "Precio", + "total": "Total", + "cancelOrder": "Cancelar pedido" + }, + "processing": "El pedido se está completando..." }; diff --git a/src/i18n/locales/es/payment.js b/src/i18n/locales/es/payment.js index bf0be13..c7d42cf 100644 --- a/src/i18n/locales/es/payment.js +++ b/src/i18n/locales/es/payment.js @@ -1,8 +1,21 @@ export default { "successful": "¡Pago exitoso!", "failed": "Pago fallido", - "orderCompleted": "🎉 ¡Tu pedido se completó con éxito! Ahora puedes ver tus pedidos.", - "orderProcessing": "Tu pago se procesó con éxito. El pedido se completará automáticamente.", - "paymentError": "No se pudo procesar tu pago. Por favor, inténtalo de nuevo o elige otro método de pago.", - "viewOrders": "Ver mis pedidos" + "orderCompleted": "🎉 ¡Su pedido se ha completado con éxito! Ahora puede ver sus pedidos.", + "orderProcessing": "Su pago se procesó con éxito. El pedido se completará automáticamente.", + "paymentError": "No se pudo procesar su pago. Por favor, inténtelo de nuevo o elija otro método de pago.", + "viewOrders": "Ver mis pedidos", + "loadingPaymentComponent": "Cargando componente de pago...", + "methods": { + "selectPaymentMethod": "Seleccione método de pago", + "bankTransfer": "Transferencia bancaria", + "bankTransferDescription": "Pagar por transferencia bancaria", + "cardPayment": "Tarjeta, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Pagar con tarjeta o Sofortüberweisung", + "cardPaymentMinAmount": "Pagar con tarjeta o Sofortüberweisung (importe mínimo: €0.50)", + "cashOnDelivery": "Pago contra reembolso", + "cashOnDeliveryDescription": "Pagar al recibir (€8.99 de recargo)", + "cashInStore": "Pagar en tienda", + "cashInStoreDescription": "Pagar al recoger", + } }; diff --git a/src/i18n/locales/fr/checkout.js b/src/i18n/locales/fr/checkout.js index b694b6f..2c21813 100644 --- a/src/i18n/locales/fr/checkout.js +++ b/src/i18n/locales/fr/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Pour quelle date la collecte des boutures est-elle souhaitée ?", "note": "Note", "sameAddress": "L'adresse de livraison est identique à l'adresse de facturation", - "termsAccept": "J'ai lu les conditions générales, la politique de confidentialité et les dispositions relatives au droit de rétractation", + "termsAccept": "J'ai lu les Conditions générales, la Politique de confidentialité et les dispositions relatives au droit de rétractation", "selectDeliveryMethod": "Sélectionnez le mode de livraison", "selectPaymentMethod": "Sélectionnez le mode de paiement", "orderSummary": "Résumé de la commande", - "addressValidationError": "Veuillez vérifier vos saisies dans les champs d'adresse." + "addressValidationError": "Veuillez vérifier vos saisies dans les champs d'adresse.", + "processingOrder": "Commande en cours de traitement...", + "completeOrder": "Finaliser la commande", + "termsValidationError": "Veuillez accepter les Conditions générales, la Politique de confidentialité et le droit de rétractation pour continuer.", + "addressFields": { + "firstName": "Prénom", + "lastName": "Nom", + "addressSupplement": "Complément d'adresse", + "street": "Rue", + "houseNumber": "Numéro", + "postalCode": "Code postal", + "city": "Ville", + "country": "Pays" + }, + "validationErrors": { + "firstNameRequired": "Prénom requis", + "lastNameRequired": "Nom requis", + "streetRequired": "Rue requise", + "houseNumberRequired": "Numéro requis", + "postalCodeRequired": "Code postal requis", + "cityRequired": "Ville requise" + } }; diff --git a/src/i18n/locales/fr/delivery.js b/src/i18n/locales/fr/delivery.js index 0adc8f7..cae0c2f 100644 --- a/src/i18n/locales/fr/delivery.js +++ b/src/i18n/locales/fr/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Marchandises volumineuses", + "sperrgutName": "Marchandises volumineuses", "pickup": "Retrait en magasin" }, "descriptions": { "standard": "Livraison standard", "standardFree": "Livraison standard - GRATUITE à partir de 100€ d'achat !", - "notAvailable": "Non sélectionnable car un ou plusieurs articles doivent être retirés en magasin", + "notAvailable": "Non sélectionnable car un ou plusieurs articles ne peuvent être que retirés", "bulky": "Pour les articles volumineux et lourds", "pickupOnly": "Retrait uniquement" }, "prices": { "free": "gratuit", "freeFrom100": "(gratuit à partir de 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Délai de livraison : 14 jours", diff --git a/src/i18n/locales/fr/orders.js b/src/i18n/locales/fr/orders.js index 1438450..21ca801 100644 --- a/src/i18n/locales/fr/orders.js +++ b/src/i18n/locales/fr/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Actions", "viewDetails": "Voir les détails" }, - "noOrders": "Vous n'avez encore passé aucune commande." + "noOrders": "Vous n'avez encore passé aucune commande.", + "details": { + "title": "Détails de la commande : {{orderId}}", + "deliveryAddress": "Adresse de livraison", + "invoiceAddress": "Adresse de facturation", + "orderDetails": "Détails de la commande", + "deliveryMethod": "Méthode de livraison :", + "paymentMethod": "Méthode de paiement :", + "notSpecified": "Non spécifié", + "orderedItems": "Articles commandés", + "item": "Article", + "quantity": "Quantité", + "price": "Prix", + "total": "Total", + "cancelOrder": "Annuler la commande" + }, + "processing": "La commande est en cours de traitement...", }; diff --git a/src/i18n/locales/fr/payment.js b/src/i18n/locales/fr/payment.js index 39db851..8acb21f 100644 --- a/src/i18n/locales/fr/payment.js +++ b/src/i18n/locales/fr/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Votre commande a été complétée avec succès ! Vous pouvez maintenant consulter vos commandes.", "orderProcessing": "Votre paiement a été traité avec succès. La commande sera automatiquement complétée.", "paymentError": "Votre paiement n'a pas pu être traité. Veuillez réessayer ou choisir un autre mode de paiement.", - "viewOrders": "Voir mes commandes" + "viewOrders": "Voir mes commandes", + "loadingPaymentComponent": "Chargement du composant de paiement...", + "methods": { + "selectPaymentMethod": "Sélectionnez le mode de paiement", + "bankTransfer": "Virement bancaire", + "bankTransferDescription": "Payer par virement bancaire", + "cardPayment": "Carte, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Payer par carte ou Sofortüberweisung", + "cardPaymentMinAmount": "Payer par carte ou Sofortüberweisung (montant minimum : 0,50 €)", + "cashOnDelivery": "Paiement à la livraison", + "cashOnDeliveryDescription": "Payer à la livraison (supplément de 8,99 €)", + "cashInStore": "Payer en magasin", + "cashInStoreDescription": "Payer lors du retrait", + } }; diff --git a/src/i18n/locales/fr/settings.js b/src/i18n/locales/fr/settings.js index 5a9fe49..ee1ede1 100644 --- a/src/i18n/locales/fr/settings.js +++ b/src/i18n/locales/fr/settings.js @@ -20,7 +20,7 @@ export default { "passwordsNotMatch": "Les nouveaux mots de passe ne correspondent pas", "passwordTooShort": "Le nouveau mot de passe doit contenir au moins 8 caractères", "passwordUpdateError": "Erreur lors de la mise à jour du mot de passe", - "invalidEmail": "Veuillez saisir une adresse e-mail valide", + "invalidEmail": "Veuillez entrer une adresse e-mail valide", "emailUpdateError": "Erreur lors de la mise à jour de l'adresse e-mail", "userNotFound": "Utilisateur non trouvé", "apiKeyGenerationError": "Erreur lors de la génération de la clé API" diff --git a/src/i18n/locales/hr/checkout.js b/src/i18n/locales/hr/checkout.js index fa536b5..e5ce260 100644 --- a/src/i18n/locales/hr/checkout.js +++ b/src/i18n/locales/hr/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Za koji datum je željeno preuzimanje reznica?", "note": "Napomena", "sameAddress": "Adresa za dostavu je ista kao adresa za račun", - "termsAccept": "Pročitao/la sam uvjete i odredbe, politiku privatnosti i odredbe o pravu na odustajanje", + "termsAccept": "Pročitao/la sam Uvjete i odredbe, Pravila o privatnosti i odredbe o pravu na povrat", "selectDeliveryMethod": "Odaberite način dostave", "selectPaymentMethod": "Odaberite način plaćanja", "orderSummary": "Sažetak narudžbe", - "addressValidationError": "Molimo provjerite unose u poljima za adresu." + "addressValidationError": "Molimo provjerite unose u poljima adrese.", + "processingOrder": "Narudžba se obrađuje...", + "completeOrder": "Dovrši narudžbu", + "termsValidationError": "Molimo prihvatite Uvjete i odredbe, Pravila o privatnosti i pravo na povrat kako biste nastavili.", + "addressFields": { + "firstName": "Ime", + "lastName": "Prezime", + "addressSupplement": "Dodatak adrese", + "street": "Ulica", + "houseNumber": "Kućni broj", + "postalCode": "Poštanski broj", + "city": "Grad", + "country": "Država" + }, + "validationErrors": { + "firstNameRequired": "Ime je obavezno", + "lastNameRequired": "Prezime je obavezno", + "streetRequired": "Ulica je obavezna", + "houseNumberRequired": "Kućni broj je obavezan", + "postalCodeRequired": "Poštanski broj je obavezan", + "cityRequired": "Grad je obavezan" + } }; diff --git a/src/i18n/locales/hr/delivery.js b/src/i18n/locales/hr/delivery.js index 0e085e0..9bf86c8 100644 --- a/src/i18n/locales/hr/delivery.js +++ b/src/i18n/locales/hr/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Glomazna roba", + "sperrgutName": "Glomazna roba", "pickup": "Preuzimanje u trgovini" }, "descriptions": { "standard": "Standardna dostava", - "standardFree": "Standardna dostava - BESPLATNO za narudžbe iznad 100 €!", + "standardFree": "Standardna dostava - BESPLATNO za narudžbe iznad 100€!", "notAvailable": "Nije moguće odabrati jer se jedan ili više artikala mogu samo preuzeti", "bulky": "Za velike i teške artikle", "pickupOnly": "Samo preuzimanje" }, "prices": { "free": "besplatno", - "freeFrom100": "(besplatno od 100 €)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "freeFrom100": "(besplatno od 100€)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Vrijeme isporuke: 14 dana", @@ -26,9 +27,9 @@ export default { }, "selector": { "title": "Odaberite način dostave", - "freeShippingInfo": "💡 Besplatna dostava za narudžbe iznad 100 €!", - "remainingForFree": "Dodajte još {{amount}} € za besplatnu dostavu.", + "freeShippingInfo": "💡 Besplatna dostava za narudžbe iznad 100€!", + "remainingForFree": "Dodajte još {{amount}}€ za besplatnu dostavu.", "congratsFreeShipping": "🎉 Čestitamo! Imate besplatnu dostavu!", - "cartQualifiesFree": "Vaša košarica od {{amount}} € kvalificira se za besplatnu dostavu." + "cartQualifiesFree": "Vaša košarica od {{amount}}€ kvalificira se za besplatnu dostavu." } }; diff --git a/src/i18n/locales/hr/orders.js b/src/i18n/locales/hr/orders.js index 1ee2f94..7d0ee11 100644 --- a/src/i18n/locales/hr/orders.js +++ b/src/i18n/locales/hr/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Radnje", "viewDetails": "Pogledaj detalje" }, - "noOrders": "Još niste izvršili nijednu narudžbu." + "noOrders": "Još niste izvršili nijednu narudžbu.", + "details": { + "title": "Detalji narudžbe: {{orderId}}", + "deliveryAddress": "Adresa dostave", + "invoiceAddress": "Adresa za račun", + "orderDetails": "Detalji narudžbe", + "deliveryMethod": "Način dostave:", + "paymentMethod": "Način plaćanja:", + "notSpecified": "Nije navedeno", + "orderedItems": "Naručeni artikli", + "item": "Artikl", + "quantity": "Količina", + "price": "Cijena", + "total": "Ukupno", + "cancelOrder": "Otkaži narudžbu" + }, + "processing": "Narudžba se dovršava..." }; diff --git a/src/i18n/locales/hr/payment.js b/src/i18n/locales/hr/payment.js index 0e45cb9..3c65fed 100644 --- a/src/i18n/locales/hr/payment.js +++ b/src/i18n/locales/hr/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Vaša narudžba je uspješno dovršena! Sada možete pregledati svoje narudžbe.", "orderProcessing": "Vaša uplata je uspješno obrađena. Narudžba će biti automatski dovršena.", "paymentError": "Vaša uplata nije mogla biti obrađena. Molimo pokušajte ponovno ili odaberite drugi način plaćanja.", - "viewOrders": "Pogledaj moje narudžbe" + "viewOrders": "Pogledaj moje narudžbe", + "loadingPaymentComponent": "Učitavanje komponente za plaćanje...", + "methods": { + "selectPaymentMethod": "Odaberite način plaćanja", + "bankTransfer": "Bankovni prijenos", + "bankTransferDescription": "Platite bankovnim prijenosom", + "cardPayment": "Kartica, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Platite karticom ili Sofortüberweisung", + "cardPaymentMinAmount": "Platite karticom ili Sofortüberweisung (minimalni iznos: €0.50)", + "cashOnDelivery": "Pouzećem", + "cashOnDeliveryDescription": "Platite prilikom dostave (dodatak €8.99)", + "cashInStore": "Plaćanje u trgovini", + "cashInStoreDescription": "Platite prilikom preuzimanja", + } }; diff --git a/src/i18n/locales/hu/checkout.js b/src/i18n/locales/hu/checkout.js index d68a8a4..42fea38 100644 --- a/src/i18n/locales/hu/checkout.js +++ b/src/i18n/locales/hu/checkout.js @@ -2,12 +2,33 @@ export default { "invoiceAddress": "Számlázási cím", "deliveryAddress": "Szállítási cím", "saveForFuture": "Mentés a jövőbeni rendelésekhez", - "pickupDate": "Melyik dátumra kívánja a dugványok átvételét?", + "pickupDate": "Melyik napra kívánja a dugványok átvételét?", "note": "Megjegyzés", "sameAddress": "A szállítási cím megegyezik a számlázási címmel", "termsAccept": "Elolvastam az Általános Szerződési Feltételeket, az Adatvédelmi Szabályzatot és a visszavonási jogra vonatkozó rendelkezéseket", "selectDeliveryMethod": "Szállítási mód kiválasztása", "selectPaymentMethod": "Fizetési mód kiválasztása", "orderSummary": "Rendelés összefoglaló", - "addressValidationError": "Kérjük, ellenőrizze a címmezőkben megadott adatokat." + "addressValidationError": "Kérjük, ellenőrizze a címmezőkben megadott adatokat.", + "processingOrder": "A rendelés feldolgozása folyamatban...", + "completeOrder": "Rendelés befejezése", + "termsValidationError": "Kérjük, fogadja el az Általános Szerződési Feltételeket, az Adatvédelmi Szabályzatot és a visszavonási jogot a folytatáshoz.", + "addressFields": { + "firstName": "Keresztnév", + "lastName": "Vezetéknév", + "addressSupplement": "Cím kiegészítés", + "street": "Utca", + "houseNumber": "Házszám", + "postalCode": "Irányítószám", + "city": "Város", + "country": "Ország" + }, + "validationErrors": { + "firstNameRequired": "Keresztnév megadása kötelező", + "lastNameRequired": "Vezetéknév megadása kötelező", + "streetRequired": "Utca megadása kötelező", + "houseNumberRequired": "Házszám megadása kötelező", + "postalCodeRequired": "Irányítószám megadása kötelező", + "cityRequired": "Város megadása kötelező" + } }; diff --git a/src/i18n/locales/hu/delivery.js b/src/i18n/locales/hu/delivery.js index 69f097e..2b213a9 100644 --- a/src/i18n/locales/hu/delivery.js +++ b/src/i18n/locales/hu/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Nagy méretű áruk", - "pickup": "Átvétel az üzletben" + "sperrgutName": "Nagy méretű áruk", + "pickup": "Személyes átvétel az üzletben" }, "descriptions": { "standard": "Normál szállítás", - "standardFree": "Normál szállítás - INGYENES 100€ rendelési értéktől!", - "notAvailable": "Nem választható, mert egy vagy több termék csak átvétellel elérhető", + "standardFree": "Normál szállítás – INGYENES 100€ rendelési értéktől!", + "notAvailable": "Nem választható, mert egy vagy több termék csak személyesen vehető át", "bulky": "Nagy és nehéz termékekhez", - "pickupOnly": "Csak átvétel" + "pickupOnly": "Csak személyes átvétel" }, "prices": { "free": "ingyenes", "freeFrom100": "(ingyenes 100€-tól)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Szállítási idő: 14 nap", @@ -28,7 +29,7 @@ export default { "title": "Válasszon szállítási módot", "freeShippingInfo": "💡 Ingyenes szállítás 100€ rendelési értéktől!", "remainingForFree": "Még {{amount}}€ hozzáadása az ingyenes szállításhoz.", - "congratsFreeShipping": "🎉 Gratulálunk! Ingyenes szállítást kap!", - "cartQualifiesFree": "A {{amount}}€ értékű kosara jogosult ingyenes szállításra." + "congratsFreeShipping": "🎉 Gratulálunk! Ön ingyenes szállítást kap!", + "cartQualifiesFree": "Az Ön kosara, {{amount}}€ értékben, jogosult az ingyenes szállításra." } }; diff --git a/src/i18n/locales/hu/orders.js b/src/i18n/locales/hu/orders.js index 0778e38..beb0411 100644 --- a/src/i18n/locales/hu/orders.js +++ b/src/i18n/locales/hu/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Műveletek", "viewDetails": "Részletek megtekintése" }, - "noOrders": "Még nem adott le rendelést." + "noOrders": "Még nem adott le rendelést.", + "details": { + "title": "Rendelés részletei: {{orderId}}", + "deliveryAddress": "Szállítási cím", + "invoiceAddress": "Számlázási cím", + "orderDetails": "Rendelés részletei", + "deliveryMethod": "Szállítás módja:", + "paymentMethod": "Fizetési mód:", + "notSpecified": "Nincs megadva", + "orderedItems": "Megrendelt termékek", + "item": "Termék", + "quantity": "Mennyiség", + "price": "Ár", + "total": "Összesen", + "cancelOrder": "Rendelés törlése" + }, + "processing": "A rendelés feldolgozása folyamatban..." }; diff --git a/src/i18n/locales/hu/payment.js b/src/i18n/locales/hu/payment.js index 8aaf072..d236c5f 100644 --- a/src/i18n/locales/hu/payment.js +++ b/src/i18n/locales/hu/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Fizetés sikeres!", - "failed": "Fizetés sikertelen", - "orderCompleted": "🎉 A rendelése sikeresen befejeződött! Most már megtekintheti a rendeléseit.", + "failed": "A fizetés sikertelen", + "orderCompleted": "🎉 A rendelése sikeresen befejeződött! Most megtekintheti a rendeléseit.", "orderProcessing": "A fizetése sikeresen feldolgozásra került. A rendelés automatikusan befejeződik.", - "paymentError": "A fizetése nem volt feldolgozható. Kérjük, próbálja újra, vagy válasszon másik fizetési módot.", - "viewOrders": "Rendeléseim megtekintése" + "paymentError": "A fizetés nem volt feldolgozható. Kérjük, próbálja újra, vagy válasszon másik fizetési módot.", + "viewOrders": "Rendeléseim megtekintése", + "loadingPaymentComponent": "Fizetési komponens betöltése...", + "methods": { + "selectPaymentMethod": "Fizetési mód kiválasztása", + "bankTransfer": "Banki átutalás", + "bankTransferDescription": "Fizetés banki átutalással", + "cardPayment": "Kártya, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Fizetés kártyával vagy Sofortüberweisung-val", + "cardPaymentMinAmount": "Fizetés kártyával vagy Sofortüberweisung-val (minimum összeg: 0,50 €)", + "cashOnDelivery": "Utánvét", + "cashOnDeliveryDescription": "Fizetés kézbesítéskor (8,99 € felár)", + "cashInStore": "Fizetés az üzletben", + "cashInStoreDescription": "Fizetés átvételkor", + } }; diff --git a/src/i18n/locales/it/checkout.js b/src/i18n/locales/it/checkout.js index 5cba1a4..5469b89 100644 --- a/src/i18n/locales/it/checkout.js +++ b/src/i18n/locales/it/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Per quale data è desiderato il ritiro delle talee?", "note": "Nota", "sameAddress": "L'indirizzo di consegna è identico all'indirizzo di fatturazione", - "termsAccept": "Ho letto i termini e condizioni, la politica sulla privacy e le disposizioni sul diritto di recesso", + "termsAccept": "Ho letto i Termini e Condizioni, l'Informativa sulla privacy e le disposizioni sul diritto di recesso", "selectDeliveryMethod": "Seleziona il metodo di spedizione", "selectPaymentMethod": "Seleziona il metodo di pagamento", "orderSummary": "Riepilogo ordine", - "addressValidationError": "Si prega di controllare le voci nei campi dell'indirizzo." + "addressValidationError": "Si prega di controllare le voci nei campi indirizzo.", + "processingOrder": "Ordine in elaborazione...", + "completeOrder": "Completa ordine", + "termsValidationError": "Si prega di accettare i Termini e Condizioni, l'Informativa sulla privacy e il diritto di recesso per continuare.", + "addressFields": { + "firstName": "Nome", + "lastName": "Cognome", + "addressSupplement": "Supplemento indirizzo", + "street": "Via", + "houseNumber": "Numero civico", + "postalCode": "CAP", + "city": "Città", + "country": "Paese" + }, + "validationErrors": { + "firstNameRequired": "Nome richiesto", + "lastNameRequired": "Cognome richiesto", + "streetRequired": "Via richiesta", + "houseNumberRequired": "Numero civico richiesto", + "postalCodeRequired": "CAP richiesto", + "cityRequired": "Città richiesta" + } }; diff --git a/src/i18n/locales/it/delivery.js b/src/i18n/locales/it/delivery.js index 2190b02..a2716c5 100644 --- a/src/i18n/locales/it/delivery.js +++ b/src/i18n/locales/it/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Merci ingombranti", + "sperrgutName": "Merci ingombranti", "pickup": "Ritiro in negozio" }, "descriptions": { "standard": "Spedizione standard", "standardFree": "Spedizione standard - GRATIS da 100€ di ordine!", - "notAvailable": "Non selezionabile perché uno o più articoli possono essere ritirati solo in negozio", + "notAvailable": "Non selezionabile perché uno o più articoli possono essere solo ritirati", "bulky": "Per articoli grandi e pesanti", "pickupOnly": "Solo ritiro" }, "prices": { "free": "gratis", "freeFrom100": "(gratis da 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6,99 €", + "dpd": "4,90 €", + "sperrgut": "28,99 €" }, "times": { "cutting14Days": "Tempi di consegna: 14 giorni", diff --git a/src/i18n/locales/it/orders.js b/src/i18n/locales/it/orders.js index ffc89a4..a26e81d 100644 --- a/src/i18n/locales/it/orders.js +++ b/src/i18n/locales/it/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Azioni", "viewDetails": "Visualizza dettagli" }, - "noOrders": "Non hai ancora effettuato ordini." + "noOrders": "Non hai ancora effettuato ordini.", + "details": { + "title": "Dettagli ordine: {{orderId}}", + "deliveryAddress": "Indirizzo di consegna", + "invoiceAddress": "Indirizzo di fatturazione", + "orderDetails": "Dettagli ordine", + "deliveryMethod": "Metodo di consegna:", + "paymentMethod": "Metodo di pagamento:", + "notSpecified": "Non specificato", + "orderedItems": "Articoli ordinati", + "item": "Articolo", + "quantity": "Quantità", + "price": "Prezzo", + "total": "Totale", + "cancelOrder": "Annulla ordine" + }, + "processing": "L'ordine è in fase di completamento..." }; diff --git a/src/i18n/locales/it/payment.js b/src/i18n/locales/it/payment.js index f4e9305..e7225f5 100644 --- a/src/i18n/locales/it/payment.js +++ b/src/i18n/locales/it/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Pagamento riuscito!", - "failed": "Pagamento fallito", + "failed": "Pagamento non riuscito", "orderCompleted": "🎉 Il tuo ordine è stato completato con successo! Ora puoi visualizzare i tuoi ordini.", "orderProcessing": "Il tuo pagamento è stato elaborato con successo. L'ordine sarà completato automaticamente.", "paymentError": "Il tuo pagamento non può essere elaborato. Per favore riprova o scegli un altro metodo di pagamento.", - "viewOrders": "Visualizza i miei ordini" + "viewOrders": "Visualizza i miei ordini", + "loadingPaymentComponent": "Caricamento componente di pagamento...", + "methods": { + "selectPaymentMethod": "Seleziona metodo di pagamento", + "bankTransfer": "Bonifico bancario", + "bankTransferDescription": "Paga con bonifico bancario", + "cardPayment": "Carta, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Paga con carta o Sofortüberweisung", + "cardPaymentMinAmount": "Paga con carta o Sofortüberweisung (importo minimo: €0,50)", + "cashOnDelivery": "Pagamento alla consegna", + "cashOnDeliveryDescription": "Paga alla consegna (supplemento di €8,99)", + "cashInStore": "Paga in negozio", + "cashInStoreDescription": "Paga al ritiro", + } }; diff --git a/src/i18n/locales/pl/checkout.js b/src/i18n/locales/pl/checkout.js index d97544f..77036b4 100644 --- a/src/i18n/locales/pl/checkout.js +++ b/src/i18n/locales/pl/checkout.js @@ -2,12 +2,33 @@ export default { "invoiceAddress": "Adres do faktury", "deliveryAddress": "Adres dostawy", "saveForFuture": "Zapisz na przyszłe zamówienia", - "pickupDate": "Na jaki termin jest planowany odbiór sadzonek?", + "pickupDate": "Na jaki termin jest pożądany odbiór sadzonek?", "note": "Notatka", "sameAddress": "Adres dostawy jest taki sam jak adres do faktury", - "termsAccept": "Przeczytałem warunki i zasady, politykę prywatności oraz postanowienia dotyczące prawa do odstąpienia", + "termsAccept": "Przeczytałem Warunki i zasady, Politykę prywatności oraz przepisy dotyczące prawa do odstąpienia od umowy", "selectDeliveryMethod": "Wybierz metodę wysyłki", "selectPaymentMethod": "Wybierz metodę płatności", "orderSummary": "Podsumowanie zamówienia", - "addressValidationError": "Proszę sprawdzić wpisane dane w polach adresowych." + "addressValidationError": "Proszę sprawdzić wpisy w polach adresowych.", + "processingOrder": "Zamówienie jest przetwarzane...", + "completeOrder": "Zakończ zamówienie", + "termsValidationError": "Proszę zaakceptować Warunki i zasady, Politykę prywatności oraz prawo do odstąpienia od umowy, aby kontynuować.", + "addressFields": { + "firstName": "Imię", + "lastName": "Nazwisko", + "addressSupplement": "Dodatkowe informacje do adresu", + "street": "Ulica", + "houseNumber": "Numer domu", + "postalCode": "Kod pocztowy", + "city": "Miasto", + "country": "Kraj" + }, + "validationErrors": { + "firstNameRequired": "Imię jest wymagane", + "lastNameRequired": "Nazwisko jest wymagane", + "streetRequired": "Ulica jest wymagana", + "houseNumberRequired": "Numer domu jest wymagany", + "postalCodeRequired": "Kod pocztowy jest wymagany", + "cityRequired": "Miasto jest wymagane" + } }; diff --git a/src/i18n/locales/pl/delivery.js b/src/i18n/locales/pl/delivery.js index 9a0cece..e034dde 100644 --- a/src/i18n/locales/pl/delivery.js +++ b/src/i18n/locales/pl/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Towary wielkogabarytowe", + "sperrgutName": "Towary wielkogabarytowe", "pickup": "Odbiór w sklepie" }, "descriptions": { "standard": "Wysyłka standardowa", - "standardFree": "Wysyłka standardowa - GRATIS od zamówienia za 100€!", - "notAvailable": "Nie do wyboru, ponieważ jeden lub więcej produktów można tylko odebrać osobiście", + "standardFree": "Wysyłka standardowa - GRATIS od zamówień powyżej 100€!", + "notAvailable": "Nie można wybrać, ponieważ jeden lub więcej produktów można tylko odebrać osobiście", "bulky": "Dla dużych i ciężkich przedmiotów", "pickupOnly": "Tylko odbiór osobisty" }, "prices": { "free": "gratis", "freeFrom100": "(gratis od 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Czas dostawy: 14 dni", @@ -26,7 +27,7 @@ export default { }, "selector": { "title": "Wybierz metodę wysyłki", - "freeShippingInfo": "💡 Darmowa wysyłka od zamówienia za 100€!", + "freeShippingInfo": "💡 Darmowa wysyłka od 100€ wartości zamówienia!", "remainingForFree": "Dodaj jeszcze {{amount}}€, aby otrzymać darmową wysyłkę.", "congratsFreeShipping": "🎉 Gratulacje! Otrzymujesz darmową wysyłkę!", "cartQualifiesFree": "Twój koszyk o wartości {{amount}}€ kwalifikuje się do darmowej wysyłki." diff --git a/src/i18n/locales/pl/orders.js b/src/i18n/locales/pl/orders.js index 56acbf4..c35f48d 100644 --- a/src/i18n/locales/pl/orders.js +++ b/src/i18n/locales/pl/orders.js @@ -14,10 +14,26 @@ export default { "orderNumber": "Numer zamówienia", "date": "Data", "status": "Status", - "items": "Pozycje", + "items": "Produkty", "total": "Razem", "actions": "Akcje", "viewDetails": "Pokaż szczegóły" }, - "noOrders": "Nie złożyłeś jeszcze żadnych zamówień." + "noOrders": "Nie złożyłeś jeszcze żadnych zamówień.", + "details": { + "title": "Szczegóły zamówienia: {{orderId}}", + "deliveryAddress": "Adres dostawy", + "invoiceAddress": "Adres do faktury", + "orderDetails": "Szczegóły zamówienia", + "deliveryMethod": "Metoda dostawy:", + "paymentMethod": "Metoda płatności:", + "notSpecified": "Nie określono", + "orderedItems": "Zamówione produkty", + "item": "Produkt", + "quantity": "Ilość", + "price": "Cena", + "total": "Razem", + "cancelOrder": "Anuluj zamówienie" + }, + "processing": "Zamówienie jest realizowane...", }; diff --git a/src/i18n/locales/pl/payment.js b/src/i18n/locales/pl/payment.js index ceb7c3c..1eeb589 100644 --- a/src/i18n/locales/pl/payment.js +++ b/src/i18n/locales/pl/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Twoje zamówienie zostało pomyślnie zrealizowane! Możesz teraz przeglądać swoje zamówienia.", "orderProcessing": "Twoja płatność została pomyślnie przetworzona. Zamówienie zostanie automatycznie zakończone.", "paymentError": "Twoja płatność nie mogła zostać przetworzona. Proszę spróbuj ponownie lub wybierz inną metodę płatności.", - "viewOrders": "Zobacz moje zamówienia" + "viewOrders": "Zobacz moje zamówienia", + "loadingPaymentComponent": "Ładowanie komponentu płatności...", + "methods": { + "selectPaymentMethod": "Wybierz metodę płatności", + "bankTransfer": "Przelew bankowy", + "bankTransferDescription": "Zapłać przelewem bankowym", + "cardPayment": "Karta, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Zapłać kartą lub Sofortüberweisung", + "cardPaymentMinAmount": "Zapłać kartą lub Sofortüberweisung (minimalna kwota: 0,50 €)", + "cashOnDelivery": "Płatność przy odbiorze", + "cashOnDeliveryDescription": "Zapłać przy odbiorze (dopłata 8,99 €)", + "cashInStore": "Zapłać w sklepie", + "cashInStoreDescription": "Zapłać przy odbiorze", + } }; diff --git a/src/i18n/locales/ro/checkout.js b/src/i18n/locales/ro/checkout.js index fb391bb..1962fc3 100644 --- a/src/i18n/locales/ro/checkout.js +++ b/src/i18n/locales/ro/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Pentru ce dată se dorește ridicarea butașilor?", "note": "Notă", "sameAddress": "Adresa de livrare este identică cu adresa de facturare", - "termsAccept": "Am citit termenii și condițiile, politica de confidențialitate și prevederile privind dreptul de retragere", + "termsAccept": "Am citit Termenii și Condițiile, Politica de Confidențialitate și prevederile privind dreptul de retragere", "selectDeliveryMethod": "Selectați metoda de livrare", "selectPaymentMethod": "Selectați metoda de plată", "orderSummary": "Sumar comandă", - "addressValidationError": "Vă rugăm să verificați datele introduse în câmpurile de adresă." + "addressValidationError": "Vă rugăm să verificați datele introduse în câmpurile de adresă.", + "processingOrder": "Comanda este în curs de procesare...", + "completeOrder": "Finalizează comanda", + "termsValidationError": "Vă rugăm să acceptați Termenii și Condițiile, Politica de Confidențialitate și dreptul de retragere pentru a continua.", + "addressFields": { + "firstName": "Prenume", + "lastName": "Nume", + "addressSupplement": "Supliment adresă", + "street": "Stradă", + "houseNumber": "Număr casă", + "postalCode": "Cod poștal", + "city": "Oraș", + "country": "Țară" + }, + "validationErrors": { + "firstNameRequired": "Prenumele este obligatoriu", + "lastNameRequired": "Numele este obligatoriu", + "streetRequired": "Strada este obligatorie", + "houseNumberRequired": "Numărul casei este obligatoriu", + "postalCodeRequired": "Codul poștal este obligatoriu", + "cityRequired": "Orașul este obligatoriu" + } }; diff --git a/src/i18n/locales/ro/delivery.js b/src/i18n/locales/ro/delivery.js index b74fb82..44e5ed1 100644 --- a/src/i18n/locales/ro/delivery.js +++ b/src/i18n/locales/ro/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Mărfuri voluminoase", + "sperrgutName": "Mărfuri voluminoase", "pickup": "Ridicare din magazin" }, "descriptions": { "standard": "Livrare standard", "standardFree": "Livrare standard - GRATUITĂ pentru comenzi de peste 100€!", - "notAvailable": "Nu este selectabil deoarece unul sau mai multe articole pot fi ridicate doar personal", + "notAvailable": "Nu poate fi selectat deoarece unul sau mai multe articole pot fi ridicate doar personal", "bulky": "Pentru articole mari și grele", - "pickupOnly": "Doar ridicare" + "pickupOnly": "Doar ridicare personală" }, "prices": { "free": "gratuit", "freeFrom100": "(gratuit de la 100€)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Timp de livrare: 14 zile", diff --git a/src/i18n/locales/ro/orders.js b/src/i18n/locales/ro/orders.js index 896089d..9f48c60 100644 --- a/src/i18n/locales/ro/orders.js +++ b/src/i18n/locales/ro/orders.js @@ -1,23 +1,39 @@ export default { "status": { - "new": "În curs", - "pending": "Nou", - "processing": "În curs", - "cancelled": "Anulat", - "shipped": "Expediat", - "delivered": "Livrat", - "return": "Returnare", - "partialReturn": "Returnare parțială", - "partialDelivered": "Livrat parțial" + "new": "În curs", + "pending": "Nou", + "processing": "În curs", + "cancelled": "Anulat", + "shipped": "Expediat", + "delivered": "Livrat", + "return": "Returnare", + "partialReturn": "Returnare parțială", + "partialDelivered": "Livrat parțial" }, "table": { - "orderNumber": "Număr comandă", - "date": "Data", - "status": "Status", - "items": "Articole", - "total": "Total", - "actions": "Acțiuni", - "viewDetails": "Vezi detalii" + "orderNumber": "Număr comandă", + "date": "Data", + "status": "Status", + "items": "Articole", + "total": "Total", + "actions": "Acțiuni", + "viewDetails": "Vezi detalii" }, - "noOrders": "Nu ați plasat încă nicio comandă." + "noOrders": "Nu ați plasat încă nicio comandă.", + "details": { + "title": "Detalii comandă: {{orderId}}", + "deliveryAddress": "Adresa de livrare", + "invoiceAddress": "Adresa de facturare", + "orderDetails": "Detalii comandă", + "deliveryMethod": "Metoda de livrare:", + "paymentMethod": "Metoda de plată:", + "notSpecified": "Nespecificat", + "orderedItems": "Articole comandate", + "item": "Articol", + "quantity": "Cantitate", + "price": "Preț", + "total": "Total", + "cancelOrder": "Anulează comanda" + }, + "processing": "Comanda este în curs de finalizare...", }; diff --git a/src/i18n/locales/ro/payment.js b/src/i18n/locales/ro/payment.js index 7b321b8..b1eb9d6 100644 --- a/src/i18n/locales/ro/payment.js +++ b/src/i18n/locales/ro/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Plată reușită!", "failed": "Plata a eșuat", - "orderCompleted": "🎉 Comanda ta a fost finalizată cu succes! Acum poți vizualiza comenzile tale.", - "orderProcessing": "Plata ta a fost procesată cu succes. Comanda va fi finalizată automat.", - "paymentError": "Plata ta nu a putut fi procesată. Te rugăm să încerci din nou sau să alegi o altă metodă de plată.", - "viewOrders": "Vezi comenzile mele" + "orderCompleted": "🎉 Comanda dvs. a fost finalizată cu succes! Acum puteți vizualiza comenzile dvs.", + "orderProcessing": "Plata dvs. a fost procesată cu succes. Comanda va fi finalizată automat.", + "paymentError": "Plata dvs. nu a putut fi procesată. Vă rugăm să încercați din nou sau să alegeți o altă metodă de plată.", + "viewOrders": "Vizualizează comenzile mele", + "loadingPaymentComponent": "Se încarcă componenta de plată...", + "methods": { + "selectPaymentMethod": "Selectați metoda de plată", + "bankTransfer": "Transfer bancar", + "bankTransferDescription": "Plătiți prin transfer bancar", + "cardPayment": "Card, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Plătiți cu cardul sau Sofortüberweisung", + "cardPaymentMinAmount": "Plătiți cu cardul sau Sofortüberweisung (sumă minimă: 0,50 €)", + "cashOnDelivery": "Plată la livrare", + "cashOnDeliveryDescription": "Plătiți la livrare (supliment de 8,99 €)", + "cashInStore": "Plătiți în magazin", + "cashInStoreDescription": "Plătiți la ridicare", + } }; diff --git a/src/i18n/locales/ru/checkout.js b/src/i18n/locales/ru/checkout.js index d26d0b7..188f0ee 100644 --- a/src/i18n/locales/ru/checkout.js +++ b/src/i18n/locales/ru/checkout.js @@ -1,13 +1,34 @@ export default { - "invoiceAddress": "Адрес для счета", + "invoiceAddress": "Адрес для выставления счета", "deliveryAddress": "Адрес доставки", "saveForFuture": "Сохранить для будущих заказов", "pickupDate": "На какую дату желаете забрать черенки?", "note": "Примечание", - "sameAddress": "Адрес доставки совпадает с адресом для счета", - "termsAccept": "Я прочитал условия использования, политику конфиденциальности и положения о праве на отказ", + "sameAddress": "Адрес доставки совпадает с адресом для выставления счета", + "termsAccept": "Я прочитал Условия и положения, Политику конфиденциальности и положения о праве на отказ", "selectDeliveryMethod": "Выберите способ доставки", "selectPaymentMethod": "Выберите способ оплаты", "orderSummary": "Сводка заказа", - "addressValidationError": "Пожалуйста, проверьте введенные данные в полях адреса." + "addressValidationError": "Пожалуйста, проверьте введённые данные в полях адреса.", + "processingOrder": "Заказ обрабатывается...", + "completeOrder": "Завершить заказ", + "termsValidationError": "Пожалуйста, примите Условия и положения, Политику конфиденциальности и право на отказ, чтобы продолжить.", + "addressFields": { + "firstName": "Имя", + "lastName": "Фамилия", + "addressSupplement": "Дополнение к адресу", + "street": "Улица", + "houseNumber": "Номер дома", + "postalCode": "Почтовый индекс", + "city": "Город", + "country": "Страна" + }, + "validationErrors": { + "firstNameRequired": "Требуется имя", + "lastNameRequired": "Требуется фамилия", + "streetRequired": "Требуется улица", + "houseNumberRequired": "Требуется номер дома", + "postalCodeRequired": "Требуется почтовый индекс", + "cityRequired": "Требуется город" + } }; diff --git a/src/i18n/locales/ru/delivery.js b/src/i18n/locales/ru/delivery.js index 593f3ba..e58fa96 100644 --- a/src/i18n/locales/ru/delivery.js +++ b/src/i18n/locales/ru/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Габаритный груз", + "sperrgutName": "Габаритный груз", "pickup": "Самовывоз из магазина" }, "descriptions": { @@ -15,9 +16,9 @@ export default { "prices": { "free": "бесплатно", "freeFrom100": "(бесплатно от 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Срок доставки: 14 дней", diff --git a/src/i18n/locales/ru/orders.js b/src/i18n/locales/ru/orders.js index 8a834aa..e0af173 100644 --- a/src/i18n/locales/ru/orders.js +++ b/src/i18n/locales/ru/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Действия", "viewDetails": "Просмотреть детали" }, - "noOrders": "Вы ещё не сделали ни одного заказа." + "noOrders": "Вы ещё не сделали ни одного заказа.", + "details": { + "title": "Детали заказа: {{orderId}}", + "deliveryAddress": "Адрес доставки", + "invoiceAddress": "Адрес для счёта", + "orderDetails": "Детали заказа", + "deliveryMethod": "Способ доставки:", + "paymentMethod": "Способ оплаты:", + "notSpecified": "Не указано", + "orderedItems": "Заказанные товары", + "item": "Товар", + "quantity": "Количество", + "price": "Цена", + "total": "Итого", + "cancelOrder": "Отменить заказ" + }, + "processing": "Заказ оформляется...", }; diff --git a/src/i18n/locales/ru/payment.js b/src/i18n/locales/ru/payment.js index 9c834f9..548e74f 100644 --- a/src/i18n/locales/ru/payment.js +++ b/src/i18n/locales/ru/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Платеж прошел успешно!", - "failed": "Платеж не удался", - "orderCompleted": "🎉 Ваш заказ был успешно завершен! Теперь вы можете просмотреть свои заказы.", - "orderProcessing": "Ваш платеж был успешно обработан. Заказ будет завершен автоматически.", + "failed": "Платеж не выполнен", + "orderCompleted": "🎉 Ваш заказ успешно завершен! Теперь вы можете просмотреть свои заказы.", + "orderProcessing": "Ваш платеж был успешно обработан. Заказ будет автоматически завершен.", "paymentError": "Ваш платеж не может быть обработан. Пожалуйста, попробуйте снова или выберите другой способ оплаты.", - "viewOrders": "Просмотреть мои заказы" + "viewOrders": "Просмотреть мои заказы", + "loadingPaymentComponent": "Загрузка компонента оплаты...", + "methods": { + "selectPaymentMethod": "Выберите способ оплаты", + "bankTransfer": "Банковский перевод", + "bankTransferDescription": "Оплатить банковским переводом", + "cardPayment": "Карта, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Оплатить картой или Sofortüberweisung", + "cardPaymentMinAmount": "Оплатить картой или Sofortüberweisung (минимальная сумма: €0.50)", + "cashOnDelivery": "Оплата при получении", + "cashOnDeliveryDescription": "Оплатить при доставке (доплата €8.99)", + "cashInStore": "Оплата в магазине", + "cashInStoreDescription": "Оплатить при получении", + } }; diff --git a/src/i18n/locales/ru/settings.js b/src/i18n/locales/ru/settings.js index d22255a..e5eac09 100644 --- a/src/i18n/locales/ru/settings.js +++ b/src/i18n/locales/ru/settings.js @@ -8,9 +8,9 @@ export default { "password": "Пароль", "newEmail": "Новый адрес электронной почты", "updateEmail": "Обновить электронную почту", - "apiKey": "API key", + "apiKey": "API ключ", "apiKeyDescription": "Используйте ваш API ключ для интеграции с внешними приложениями.", - "apiDocumentation": "API documentation:", + "apiDocumentation": "Документация API:", "copyToClipboard": "Скопировать в буфер обмена", "generate": "Создать", "regenerate": "Перегенерировать", diff --git a/src/i18n/locales/sk/checkout.js b/src/i18n/locales/sk/checkout.js index 601210d..76e2097 100644 --- a/src/i18n/locales/sk/checkout.js +++ b/src/i18n/locales/sk/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Na ktorý dátum je požadovaný odber odrezkov?", "note": "Poznámka", "sameAddress": "Dodacia adresa je rovnaká ako fakturačná adresa", - "termsAccept": "Prečítal(a) som si obchodné podmienky, zásady ochrany osobných údajov a ustanovenia o práve na odstúpenie od zmluvy", + "termsAccept": "Prečítal(a) som si Všeobecné obchodné podmienky, Zásady ochrany osobných údajov a ustanovenia o práve na odstúpenie od zmluvy", "selectDeliveryMethod": "Vyberte spôsob doručenia", "selectPaymentMethod": "Vyberte spôsob platby", "orderSummary": "Zhrnutie objednávky", - "addressValidationError": "Skontrolujte prosím svoje údaje v poliach adresy." + "addressValidationError": "Skontrolujte prosím svoje údaje v poliach adresy.", + "processingOrder": "Objednávka sa spracováva...", + "completeOrder": "Dokončiť objednávku", + "termsValidationError": "Ak chcete pokračovať, prijmite Všeobecné obchodné podmienky, Zásady ochrany osobných údajov a právo na odstúpenie od zmluvy.", + "addressFields": { + "firstName": "Meno", + "lastName": "Priezvisko", + "addressSupplement": "Doplnok adresy", + "street": "Ulica", + "houseNumber": "Číslo domu", + "postalCode": "PSČ", + "city": "Mesto", + "country": "Krajina" + }, + "validationErrors": { + "firstNameRequired": "Meno je povinné", + "lastNameRequired": "Priezvisko je povinné", + "streetRequired": "Ulica je povinná", + "houseNumberRequired": "Číslo domu je povinné", + "postalCodeRequired": "PSČ je povinné", + "cityRequired": "Mesto je povinné" + } }; diff --git a/src/i18n/locales/sk/delivery.js b/src/i18n/locales/sk/delivery.js index 63df64a..058024a 100644 --- a/src/i18n/locales/sk/delivery.js +++ b/src/i18n/locales/sk/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Objemný tovar", + "sperrgutName": "Objemný tovar", "pickup": "Vyzdvihnutie v predajni" }, "descriptions": { "standard": "Štandardné doručenie", - "standardFree": "Štandardné doručenie - ZDARMA pri objednávke nad 100 €!", - "notAvailable": "Nie je možné vybrať, pretože jeden alebo viac položiek je možné iba vyzdvihnúť", + "standardFree": "Štandardné doručenie - ZDARMA od objednávky nad 100€!", + "notAvailable": "Nie je možné vybrať, pretože jeden alebo viac produktov je možné iba vyzdvihnúť", "bulky": "Pre veľké a ťažké položky", "pickupOnly": "Iba vyzdvihnutie" }, "prices": { "free": "zadarmo", - "freeFrom100": "(zadarmo od 100 €)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "freeFrom100": "(zadarmo od 100€)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Doba dodania: 14 dní", @@ -26,9 +27,9 @@ export default { }, "selector": { "title": "Vyberte spôsob doručenia", - "freeShippingInfo": "💡 Doprava zdarma pri objednávke nad 100 €!", - "remainingForFree": "Pridajte ešte {{amount}} € pre dopravu zdarma.", - "congratsFreeShipping": "🎉 Gratulujeme! Máte dopravu zdarma!", - "cartQualifiesFree": "Váš košík v hodnote {{amount}} € spĺňa podmienky na dopravu zdarma." + "freeShippingInfo": "💡 Doprava zadarmo od objednávky nad 100€!", + "remainingForFree": "Pridajte ešte {{amount}}€ pre dopravu zadarmo.", + "congratsFreeShipping": "🎉 Gratulujeme! Máte dopravu zadarmo!", + "cartQualifiesFree": "Váš košík v hodnote {{amount}}€ spĺňa podmienky na dopravu zadarmo." } }; diff --git a/src/i18n/locales/sk/orders.js b/src/i18n/locales/sk/orders.js index a31ca7e..775c955 100644 --- a/src/i18n/locales/sk/orders.js +++ b/src/i18n/locales/sk/orders.js @@ -1,23 +1,39 @@ export default { "status": { - "new": "Prebieha", - "pending": "Nové", - "processing": "Prebieha", - "cancelled": "Zrušené", - "shipped": "Odoslané", - "delivered": "Doručené", - "return": "Vrátenie", - "partialReturn": "Čiastočné vrátenie", - "partialDelivered": "Čiastočne doručené" + "new": "Prebieha", + "pending": "Nové", + "processing": "Prebieha", + "cancelled": "Zrušené", + "shipped": "Odoslané", + "delivered": "Doručené", + "return": "Vrátenie", + "partialReturn": "Čiastočné vrátenie", + "partialDelivered": "Čiastočne doručené" }, "table": { - "orderNumber": "Číslo objednávky", - "date": "Dátum", - "status": "Stav", - "items": "Položky", - "total": "Celkom", - "actions": "Akcie", - "viewDetails": "Zobraziť detaily" + "orderNumber": "Číslo objednávky", + "date": "Dátum", + "status": "Stav", + "items": "Položky", + "total": "Spolu", + "actions": "Akcie", + "viewDetails": "Zobraziť detaily" }, - "noOrders": "Ešte ste neuskutočnili žiadne objednávky." + "noOrders": "Ešte ste neuskutočnili žiadne objednávky.", + "details": { + "title": "Detaily objednávky: {{orderId}}", + "deliveryAddress": "Dodacia adresa", + "invoiceAddress": "Fakturačná adresa", + "orderDetails": "Detaily objednávky", + "deliveryMethod": "Spôsob doručenia:", + "paymentMethod": "Spôsob platby:", + "notSpecified": "Nie je uvedené", + "orderedItems": "Objednané položky", + "item": "Položka", + "quantity": "Množstvo", + "price": "Cena", + "total": "Spolu", + "cancelOrder": "Zrušiť objednávku" + }, + "processing": "Objednávka sa spracováva...", }; diff --git a/src/i18n/locales/sk/payment.js b/src/i18n/locales/sk/payment.js index 71a857e..7265a34 100644 --- a/src/i18n/locales/sk/payment.js +++ b/src/i18n/locales/sk/payment.js @@ -3,6 +3,19 @@ export default { "failed": "Platba zlyhala", "orderCompleted": "🎉 Vaša objednávka bola úspešne dokončená! Teraz si môžete prezrieť svoje objednávky.", "orderProcessing": "Vaša platba bola úspešne spracovaná. Objednávka bude automaticky dokončená.", - "paymentError": "Vašu platbu sa nepodarilo spracovať. Skúste to prosím znova alebo vyberte iný spôsob platby.", - "viewOrders": "Zobraziť moje objednávky" + "paymentError": "Vaša platba nemohla byť spracovaná. Skúste to prosím znova alebo vyberte iný spôsob platby.", + "viewOrders": "Zobraziť moje objednávky", + "loadingPaymentComponent": "Načítavam platobnú komponentu...", + "methods": { + "selectPaymentMethod": "Vyberte spôsob platby", + "bankTransfer": "Bankový prevod", + "bankTransferDescription": "Plaťte bankovým prevodom", + "cardPayment": "Karta, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Plaťte kartou alebo Sofortüberweisung", + "cardPaymentMinAmount": "Plaťte kartou alebo Sofortüberweisung (minimálna suma: €0.50)", + "cashOnDelivery": "Dobierka", + "cashOnDeliveryDescription": "Plaťte pri doručení (príplatok €8.99)", + "cashInStore": "Platba v predajni", + "cashInStoreDescription": "Plaťte pri vyzdvihnutí", + } }; diff --git a/src/i18n/locales/sk/settings.js b/src/i18n/locales/sk/settings.js index 352da53..c8605aa 100644 --- a/src/i18n/locales/sk/settings.js +++ b/src/i18n/locales/sk/settings.js @@ -8,7 +8,7 @@ export default { "password": "Heslo", "newEmail": "Nová e-mailová adresa", "updateEmail": "Aktualizovať e-mail", - "apiKey": "API key", + "apiKey": "API kľúč", "apiKeyDescription": "Použite svoj API kľúč na integráciu s externými aplikáciami.", "apiDocumentation": "API dokumentácia:", "copyToClipboard": "Kopírovať do schránky", diff --git a/src/i18n/locales/sl/checkout.js b/src/i18n/locales/sl/checkout.js index 91070b6..cac3841 100644 --- a/src/i18n/locales/sl/checkout.js +++ b/src/i18n/locales/sl/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Za kateri datum je željeno prevzem potaknjencev?", "note": "Opomba", "sameAddress": "Naslov za dostavo je enak naslovu za račun", - "termsAccept": "Prebral sem pogoje poslovanja, politiko zasebnosti in določila o pravici do odstopa", + "termsAccept": "Prebral sem Splošne pogoje, Politiko zasebnosti in določila o pravici do odstopa", "selectDeliveryMethod": "Izberite način dostave", "selectPaymentMethod": "Izberite način plačila", "orderSummary": "Povzetek naročila", - "addressValidationError": "Prosimo, preverite vnose v poljih za naslov." + "addressValidationError": "Prosimo, preverite vnose v poljih za naslov.", + "processingOrder": "Naročilo se obdeluje...", + "completeOrder": "Dokončaj naročilo", + "termsValidationError": "Prosimo, sprejmite Splošne pogoje, Politiko zasebnosti in pravico do odstopa, da nadaljujete.", + "addressFields": { + "firstName": "Ime", + "lastName": "Priimek", + "addressSupplement": "Dodatni naslov", + "street": "Ulica", + "houseNumber": "Hišna številka", + "postalCode": "Poštna številka", + "city": "Mesto", + "country": "Država" + }, + "validationErrors": { + "firstNameRequired": "Ime je obvezno", + "lastNameRequired": "Priimek je obvezen", + "streetRequired": "Ulica je obvezna", + "houseNumberRequired": "Hišna številka je obvezna", + "postalCodeRequired": "Poštna številka je obvezna", + "cityRequired": "Mesto je obvezno" + } }; diff --git a/src/i18n/locales/sl/delivery.js b/src/i18n/locales/sl/delivery.js index 76e4564..cdc5293 100644 --- a/src/i18n/locales/sl/delivery.js +++ b/src/i18n/locales/sl/delivery.js @@ -2,22 +2,23 @@ export default { "methods": { "dhl": "DHL", "dpd": "DPD", - "sperrgut": "Veliki predmeti", + "sperrgut": "Veliki izdelki", + "sperrgutName": "Veliki izdelki", "pickup": "Prevzem v trgovini" }, "descriptions": { "standard": "Standardna dostava", - "standardFree": "Standardna dostava - BREZPLAČNO za naročila nad 100 €!", + "standardFree": "Standardna dostava - BREZPLAČNO pri naročilu nad 100€!", "notAvailable": "Ni mogoče izbrati, ker je en ali več izdelkov mogoče samo prevzeti", - "bulky": "Za velike in težke predmete", + "bulky": "Za velike in težke izdelke", "pickupOnly": "Samo prevzem" }, "prices": { "free": "brezplačno", - "freeFrom100": "(brezplačno od 100 €)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "freeFrom100": "(brezplačno od 100€)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Čas dostave: 14 dni", @@ -26,9 +27,9 @@ export default { }, "selector": { "title": "Izberite način dostave", - "freeShippingInfo": "💡 Brezplačna dostava za naročila nad 100 €!", - "remainingForFree": "Dodajte še {{amount}} € za brezplačno dostavo.", + "freeShippingInfo": "💡 Brezplačna dostava pri naročilu nad 100€!", + "remainingForFree": "Dodajte še {{amount}}€ za brezplačno dostavo.", "congratsFreeShipping": "🎉 Čestitamo! Imate brezplačno dostavo!", - "cartQualifiesFree": "Vaša košarica v vrednosti {{amount}} € upravičuje do brezplačne dostave." + "cartQualifiesFree": "Vaša košarica v vrednosti {{amount}}€ upravičuje do brezplačne dostave." } }; diff --git a/src/i18n/locales/sl/orders.js b/src/i18n/locales/sl/orders.js index e40b1b5..0ffe36e 100644 --- a/src/i18n/locales/sl/orders.js +++ b/src/i18n/locales/sl/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Dejanja", "viewDetails": "Poglej podrobnosti" }, - "noOrders": "Še niste oddali nobenega naročila." + "noOrders": "Še niste oddali nobenega naročila.", + "details": { + "title": "Podrobnosti naročila: {{orderId}}", + "deliveryAddress": "Naslov za dostavo", + "invoiceAddress": "Naslov za račun", + "orderDetails": "Podrobnosti naročila", + "deliveryMethod": "Način dostave:", + "paymentMethod": "Način plačila:", + "notSpecified": "Ni določeno", + "orderedItems": "Naročeni izdelki", + "item": "Izdelek", + "quantity": "Količina", + "price": "Cena", + "total": "Skupaj", + "cancelOrder": "Prekliči naročilo" + }, + "processing": "Naročilo se zaključuje..." }; diff --git a/src/i18n/locales/sl/payment.js b/src/i18n/locales/sl/payment.js index af9d228..76aca37 100644 --- a/src/i18n/locales/sl/payment.js +++ b/src/i18n/locales/sl/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Vaše naročilo je bilo uspešno zaključeno! Zdaj lahko ogledate svoja naročila.", "orderProcessing": "Vaše plačilo je bilo uspešno obdelano. Naročilo bo samodejno zaključeno.", "paymentError": "Vašega plačila ni bilo mogoče obdelati. Prosimo, poskusite znova ali izberite drugo metodo plačila.", - "viewOrders": "Ogled mojih naročil" + "viewOrders": "Ogled mojih naročil", + "loadingPaymentComponent": "Nalaganje plačilne komponente...", + "methods": { + "selectPaymentMethod": "Izberite način plačila", + "bankTransfer": "Bančno nakazilo", + "bankTransferDescription": "Plačajte z bančnim nakazilom", + "cardPayment": "Kartica, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Plačajte s kartico ali Sofortüberweisung", + "cardPaymentMinAmount": "Plačajte s kartico ali Sofortüberweisung (minimalni znesek: 0,50 €)", + "cashOnDelivery": "Plačilo po povzetju", + "cashOnDeliveryDescription": "Plačajte ob dostavi (priporočnina 8,99 €)", + "cashInStore": "Plačilo v trgovini", + "cashInStoreDescription": "Plačajte ob prevzemu", + } }; diff --git a/src/i18n/locales/sr/checkout.js b/src/i18n/locales/sr/checkout.js index 59fdeb0..775e7b9 100644 --- a/src/i18n/locales/sr/checkout.js +++ b/src/i18n/locales/sr/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "Za koji datum je željeno preuzimanje reznica?", "note": "Napomena", "sameAddress": "Adresa za isporuku je ista kao adresa za fakturu", - "termsAccept": "Pročitao/la sam uslove korišćenja, politiku privatnosti i odredbe o pravu na odustajanje", + "termsAccept": "Pročitao/la sam Uslove korišćenja, Politiku privatnosti i odredbe o pravu na odustajanje", "selectDeliveryMethod": "Izaberite način isporuke", "selectPaymentMethod": "Izaberite način plaćanja", "orderSummary": "Pregled porudžbine", - "addressValidationError": "Molimo proverite unete podatke u poljima za adresu." + "addressValidationError": "Molimo proverite unete podatke u poljima za adresu.", + "processingOrder": "Porudžbina se obrađuje...", + "completeOrder": "Završi porudžbinu", + "termsValidationError": "Molimo prihvatite Uslove korišćenja, Politiku privatnosti i pravo na odustajanje da biste nastavili.", + "addressFields": { + "firstName": "Ime", + "lastName": "Prezime", + "addressSupplement": "Dodatak adresi", + "street": "Ulica", + "houseNumber": "Broj kuće", + "postalCode": "Poštanski broj", + "city": "Grad", + "country": "Država" + }, + "validationErrors": { + "firstNameRequired": "Ime je obavezno", + "lastNameRequired": "Prezime je obavezno", + "streetRequired": "Ulica je obavezna", + "houseNumberRequired": "Broj kuće je obavezan", + "postalCodeRequired": "Poštanski broj je obavezan", + "cityRequired": "Grad je obavezan" + } }; diff --git a/src/i18n/locales/sr/delivery.js b/src/i18n/locales/sr/delivery.js index aae4536..8309aff 100644 --- a/src/i18n/locales/sr/delivery.js +++ b/src/i18n/locales/sr/delivery.js @@ -3,6 +3,7 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Glomazna roba", + "sperrgutName": "Glomazna roba", "pickup": "Preuzimanje u prodavnici" }, "descriptions": { @@ -15,9 +16,9 @@ export default { "prices": { "free": "besplatno", "freeFrom100": "(besplatno od 100€)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Vreme isporuke: 14 dana", @@ -25,7 +26,7 @@ export default { "supplier7to9Days": "Vreme isporuke: 7-9 dana" }, "selector": { - "title": "Izaberite način dostave", + "title": "Izaberite način isporuke", "freeShippingInfo": "💡 Besplatna dostava za porudžbine preko 100€!", "remainingForFree": "Dodajte još {{amount}}€ za besplatnu dostavu.", "congratsFreeShipping": "🎉 Čestitamo! Imate besplatnu dostavu!", diff --git a/src/i18n/locales/sr/orders.js b/src/i18n/locales/sr/orders.js index 787fa54..84cf05c 100644 --- a/src/i18n/locales/sr/orders.js +++ b/src/i18n/locales/sr/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Akcije", "viewDetails": "Pogledaj detalje" }, - "noOrders": "Još niste izvršili nijednu porudžbinu." + "noOrders": "Još niste napravili nijednu porudžbinu.", + "details": { + "title": "Detalji porudžbine: {{orderId}}", + "deliveryAddress": "Adresa za isporuku", + "invoiceAddress": "Adresa za fakturu", + "orderDetails": "Detalji porudžbine", + "deliveryMethod": "Način isporuke:", + "paymentMethod": "Način plaćanja:", + "notSpecified": "Nije navedeno", + "orderedItems": "Poručeni artikli", + "item": "Artikal", + "quantity": "Količina", + "price": "Cena", + "total": "Ukupno", + "cancelOrder": "Otkaži porudžbinu" + }, + "processing": "Porudžbina se obrađuje...", }; diff --git a/src/i18n/locales/sr/payment.js b/src/i18n/locales/sr/payment.js index b63f9d0..9c2d6b0 100644 --- a/src/i18n/locales/sr/payment.js +++ b/src/i18n/locales/sr/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Vaša porudžbina je uspešno završena! Sada možete pregledati svoje porudžbine.", "orderProcessing": "Vaša uplata je uspešno obrađena. Porudžbina će biti automatski završena.", "paymentError": "Vaša uplata nije mogla biti obrađena. Molimo pokušajte ponovo ili izaberite drugi način plaćanja.", - "viewOrders": "Pogledaj moje porudžbine" + "viewOrders": "Pogledaj moje porudžbine", + "loadingPaymentComponent": "Učitavanje komponente za plaćanje...", + "methods": { + "selectPaymentMethod": "Izaberite način plaćanja", + "bankTransfer": "Bankovni transfer", + "bankTransferDescription": "Platite bankovnim transferom", + "cardPayment": "Kartica, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Platite karticom ili Sofortüberweisung", + "cardPaymentMinAmount": "Platite karticom ili Sofortüberweisung (minimalni iznos: €0.50)", + "cashOnDelivery": "Pouzećem", + "cashOnDeliveryDescription": "Platite prilikom isporuke (€8.99 dodatak)", + "cashInStore": "Plaćanje u prodavnici", + "cashInStoreDescription": "Platite prilikom preuzimanja", + } }; diff --git a/src/i18n/locales/sv/checkout.js b/src/i18n/locales/sv/checkout.js index 52e612e..9092fb5 100644 --- a/src/i18n/locales/sv/checkout.js +++ b/src/i18n/locales/sv/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "För vilket datum önskas upphämtning av sticklingarna?", "note": "Notering", "sameAddress": "Leveransadressen är densamma som fakturaadressen", - "termsAccept": "Jag har läst villkoren, integritetspolicyn och bestämmelserna om ångerrätt", + "termsAccept": "Jag har läst villkoren, sekretesspolicyn och bestämmelserna om ångerrätt", "selectDeliveryMethod": "Välj leveransmetod", "selectPaymentMethod": "Välj betalningsmetod", "orderSummary": "Orderöversikt", - "addressValidationError": "Vänligen kontrollera dina uppgifter i adressfälten." + "addressValidationError": "Vänligen kontrollera dina uppgifter i adressfälten.", + "processingOrder": "Beställningen behandlas...", + "completeOrder": "Slutför beställning", + "termsValidationError": "Vänligen acceptera villkoren, sekretesspolicyn och ångerrätten för att fortsätta.", + "addressFields": { + "firstName": "Förnamn", + "lastName": "Efternamn", + "addressSupplement": "Adresskomplement", + "street": "Gata", + "houseNumber": "Husnummer", + "postalCode": "Postnummer", + "city": "Stad", + "country": "Land" + }, + "validationErrors": { + "firstNameRequired": "Förnamn krävs", + "lastNameRequired": "Efternamn krävs", + "streetRequired": "Gata krävs", + "houseNumberRequired": "Husnummer krävs", + "postalCodeRequired": "Postnummer krävs", + "cityRequired": "Stad krävs" + } }; diff --git a/src/i18n/locales/sv/delivery.js b/src/i18n/locales/sv/delivery.js index fbb4f98..4fd4c7e 100644 --- a/src/i18n/locales/sv/delivery.js +++ b/src/i18n/locales/sv/delivery.js @@ -3,21 +3,22 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Skrymmande varor", + "sperrgutName": "Skrymmande varor", "pickup": "Hämta i butik" }, "descriptions": { "standard": "Standardfrakt", - "standardFree": "Standardfrakt - GRATIS från 100€ beställningsvärde!", - "notAvailable": "Kan inte väljas eftersom en eller flera artiklar endast kan hämtas", + "standardFree": "Standardfrakt - GRATIS från 100€ ordervärde!", + "notAvailable": "Kan inte väljas eftersom en eller flera artiklar endast kan hämtas upp", "bulky": "För stora och tunga artiklar", "pickupOnly": "Endast upphämtning" }, "prices": { "free": "gratis", "freeFrom100": "(gratis från 100€)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Leveranstid: 14 dagar", @@ -25,8 +26,8 @@ export default { "supplier7to9Days": "Leveranstid: 7-9 dagar" }, "selector": { - "title": "Välj fraktsätt", - "freeShippingInfo": "💡 Fri frakt från 100€ beställningsvärde!", + "title": "Välj fraktmetod", + "freeShippingInfo": "💡 Fri frakt från 100€ ordervärde!", "remainingForFree": "Lägg till {{amount}}€ till för fri frakt.", "congratsFreeShipping": "🎉 Grattis! Du får fri frakt!", "cartQualifiesFree": "Din kundvagn på {{amount}}€ kvalificerar för fri frakt." diff --git a/src/i18n/locales/sv/orders.js b/src/i18n/locales/sv/orders.js index 5ac2e7c..706cef7 100644 --- a/src/i18n/locales/sv/orders.js +++ b/src/i18n/locales/sv/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Åtgärder", "viewDetails": "Visa detaljer" }, - "noOrders": "Du har inte lagt några beställningar än." + "noOrders": "Du har inte gjort några beställningar än.", + "details": { + "title": "Orderdetaljer: {{orderId}}", + "deliveryAddress": "Leveransadress", + "invoiceAddress": "Fakturaadress", + "orderDetails": "Orderdetaljer", + "deliveryMethod": "Leveransmetod:", + "paymentMethod": "Betalningsmetod:", + "notSpecified": "Ej angivet", + "orderedItems": "Beställda artiklar", + "item": "Artikel", + "quantity": "Antal", + "price": "Pris", + "total": "Totalt", + "cancelOrder": "Avbryt order" + }, + "processing": "Ordern behandlas..." }; diff --git a/src/i18n/locales/sv/payment.js b/src/i18n/locales/sv/payment.js index f49fc17..64cab98 100644 --- a/src/i18n/locales/sv/payment.js +++ b/src/i18n/locales/sv/payment.js @@ -1,8 +1,21 @@ export default { "successful": "Betalning lyckades!", - "failed": "Betalning misslyckades", - "orderCompleted": "🎉 Din beställning slutfördes framgångsrikt! Du kan nu se dina beställningar.", + "failed": "Betalningen misslyckades", + "orderCompleted": "🎉 Din beställning har slutförts framgångsrikt! Du kan nu se dina beställningar.", "orderProcessing": "Din betalning har behandlats framgångsrikt. Beställningen kommer att slutföras automatiskt.", "paymentError": "Din betalning kunde inte behandlas. Vänligen försök igen eller välj en annan betalningsmetod.", - "viewOrders": "Visa mina beställningar" + "viewOrders": "Visa mina beställningar", + "loadingPaymentComponent": "Laddar betalningskomponent...", + "methods": { + "selectPaymentMethod": "Välj betalningsmetod", + "bankTransfer": "Banköverföring", + "bankTransferDescription": "Betala med banköverföring", + "cardPayment": "Kort, Sofortöverföring, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Betala med kort eller Sofortöverföring", + "cardPaymentMinAmount": "Betala med kort eller Sofortöverföring (minsta belopp: €0.50)", + "cashOnDelivery": "Kontant vid leverans", + "cashOnDeliveryDescription": "Betala vid leverans (€8.99 tillägg)", + "cashInStore": "Betala i butik", + "cashInStoreDescription": "Betala vid upphämtning", + } }; diff --git a/src/i18n/locales/tr/checkout.js b/src/i18n/locales/tr/checkout.js index c085cf1..de95bea 100644 --- a/src/i18n/locales/tr/checkout.js +++ b/src/i18n/locales/tr/checkout.js @@ -4,10 +4,31 @@ export default { "saveForFuture": "Gelecek siparişler için kaydet", "pickupDate": "Kesimlerin alınması hangi tarih için isteniyor?", "note": "Not", - "sameAddress": "Teslimat adresi fatura adresi ile aynıdır", - "termsAccept": "Şartlar ve koşulları, gizlilik politikasını ve cayma hakkı hükümlerini okudum", + "sameAddress": "Teslimat adresi fatura adresi ile aynı", + "termsAccept": "Şartlar ve Koşulları, Gizlilik Politikasını ve cayma hakkı hükümlerini okudum", "selectDeliveryMethod": "Gönderim yöntemini seçin", "selectPaymentMethod": "Ödeme yöntemini seçin", "orderSummary": "Sipariş özeti", - "addressValidationError": "Lütfen adres alanlarındaki girişlerinizi kontrol edin." + "addressValidationError": "Lütfen adres alanlarındaki girişlerinizi kontrol edin.", + "processingOrder": "Sipariş işleniyor...", + "completeOrder": "Siparişi tamamla", + "termsValidationError": "Devam etmek için Şartlar ve Koşulları, Gizlilik Politikasını ve cayma hakkını kabul edin.", + "addressFields": { + "firstName": "Ad", + "lastName": "Soyad", + "addressSupplement": "Adres eki", + "street": "Sokak", + "houseNumber": "Ev numarası", + "postalCode": "Posta kodu", + "city": "Şehir", + "country": "Ülke" + }, + "validationErrors": { + "firstNameRequired": "Ad gerekli", + "lastNameRequired": "Soyad gerekli", + "streetRequired": "Sokak gerekli", + "houseNumberRequired": "Ev numarası gerekli", + "postalCodeRequired": "Posta kodu gerekli", + "cityRequired": "Şehir gerekli" + } }; diff --git a/src/i18n/locales/tr/delivery.js b/src/i18n/locales/tr/delivery.js index 65153e1..7646c97 100644 --- a/src/i18n/locales/tr/delivery.js +++ b/src/i18n/locales/tr/delivery.js @@ -3,11 +3,12 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "Hacimli ürünler", + "sperrgutName": "Hacimli ürünler", "pickup": "Mağazadan teslim alma" }, "descriptions": { - "standard": "Standart gönderim", - "standardFree": "Standart gönderim - 100€ ve üzeri siparişlerde ÜCRETSİZ!", + "standard": "Standart kargo", + "standardFree": "Standart kargo - 100€ ve üzeri siparişlerde ÜCRETSİZ!", "notAvailable": "Seçilemez çünkü bir veya daha fazla ürün sadece mağazadan teslim alınabilir", "bulky": "Büyük ve ağır ürünler için", "pickupOnly": "Sadece mağazadan teslim alma" @@ -15,9 +16,9 @@ export default { "prices": { "free": "ücretsiz", "freeFrom100": "(100€ ve üzeri ücretsiz)", - "dhl": "6,99 €", - "dpd": "4,90 €", - "sperrgut": "28,99 €" + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Teslim süresi: 14 gün", @@ -25,10 +26,10 @@ export default { "supplier7to9Days": "Teslim süresi: 7-9 gün" }, "selector": { - "title": "Gönderim yöntemini seçin", - "freeShippingInfo": "💡 100€ ve üzeri siparişlerde ücretsiz gönderim!", - "remainingForFree": "Ücretsiz gönderim için {{amount}}€ daha ekleyin.", - "congratsFreeShipping": "🎉 Tebrikler! Ücretsiz gönderim hakkı kazandınız!", - "cartQualifiesFree": "{{amount}}€ tutarındaki sepetiniz ücretsiz gönderim için uygundur." + "title": "Kargo yöntemini seçin", + "freeShippingInfo": "💡 100€ ve üzeri siparişlerde ücretsiz kargo!", + "remainingForFree": "Ücretsiz kargo için {{amount}}€ daha ekleyin.", + "congratsFreeShipping": "🎉 Tebrikler! Ücretsiz kargo hakkı kazandınız!", + "cartQualifiesFree": "{{amount}}€ tutarındaki sepetiniz ücretsiz kargo için uygundur." } }; diff --git a/src/i18n/locales/tr/orders.js b/src/i18n/locales/tr/orders.js index 35a6326..1b24392 100644 --- a/src/i18n/locales/tr/orders.js +++ b/src/i18n/locales/tr/orders.js @@ -19,5 +19,21 @@ export default { "actions": "İşlemler", "viewDetails": "Detayları görüntüle" }, - "noOrders": "Henüz sipariş vermediniz." + "noOrders": "Henüz sipariş vermediniz.", + "details": { + "title": "Sipariş detayları: {{orderId}}", + "deliveryAddress": "Teslimat adresi", + "invoiceAddress": "Fatura adresi", + "orderDetails": "Sipariş detayları", + "deliveryMethod": "Teslimat yöntemi:", + "paymentMethod": "Ödeme yöntemi:", + "notSpecified": "Belirtilmemiş", + "orderedItems": "Sipariş edilen ürünler", + "item": "Ürün", + "quantity": "Adet", + "price": "Fiyat", + "total": "Toplam", + "cancelOrder": "Siparişi iptal et" + }, + "processing": "Sipariş tamamlanıyor...", }; diff --git a/src/i18n/locales/tr/payment.js b/src/i18n/locales/tr/payment.js index cf1ec59..e02af78 100644 --- a/src/i18n/locales/tr/payment.js +++ b/src/i18n/locales/tr/payment.js @@ -1,8 +1,21 @@ export default { - "successful": "Ödeme başarılı!", - "failed": "Ödeme başarısız", - "orderCompleted": "🎉 Siparişiniz başarıyla tamamlandı! Şimdi siparişlerinizi görüntüleyebilirsiniz.", - "orderProcessing": "Ödemeniz başarıyla işlendi. Sipariş otomatik olarak tamamlanacaktır.", - "paymentError": "Ödemeniz işlenemedi. Lütfen tekrar deneyin veya başka bir ödeme yöntemi seçin.", - "viewOrders": "Siparişlerimi görüntüle" + "successful": "Ödeme başarılı!", + "failed": "Ödeme başarısız", + "orderCompleted": "🎉 Siparişiniz başarıyla tamamlandı! Şimdi siparişlerinizi görüntüleyebilirsiniz.", + "orderProcessing": "Ödemeniz başarıyla işlendi. Sipariş otomatik olarak tamamlanacaktır.", + "paymentError": "Ödemeniz işlenemedi. Lütfen tekrar deneyin veya başka bir ödeme yöntemi seçin.", + "viewOrders": "Siparişlerimi görüntüle", + "loadingPaymentComponent": "Ödeme bileşeni yükleniyor...", + "methods": { + "selectPaymentMethod": "Ödeme yöntemi seçin", + "bankTransfer": "Banka havalesi", + "bankTransferDescription": "Banka havalesi ile ödeme yapın", + "cardPayment": "Kart, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Kart veya Sofortüberweisung ile ödeme yapın", + "cardPaymentMinAmount": "Kart veya Sofortüberweisung ile ödeme yapın (minimum tutar: €0.50)", + "cashOnDelivery": "Kapıda ödeme", + "cashOnDeliveryDescription": "Teslimatta ödeme yapın (€8,99 ek ücret)", + "cashInStore": "Mağazada ödeme", + "cashInStoreDescription": "Alırken ödeme yapın", + } }; diff --git a/src/i18n/locales/uk/checkout.js b/src/i18n/locales/uk/checkout.js index 0e4ab61..0fb621c 100644 --- a/src/i18n/locales/uk/checkout.js +++ b/src/i18n/locales/uk/checkout.js @@ -5,9 +5,30 @@ export default { "pickupDate": "На яку дату бажано забрати живці?", "note": "Примітка", "sameAddress": "Адреса доставки збігається з адресою для рахунку", - "termsAccept": "Я прочитав умови та положення, політику конфіденційності та положення про право на відмову", + "termsAccept": "Я прочитав Умови та положення, Політику конфіденційності та положення про право на відмову", "selectDeliveryMethod": "Виберіть спосіб доставки", "selectPaymentMethod": "Виберіть спосіб оплати", "orderSummary": "Підсумок замовлення", - "addressValidationError": "Будь ласка, перевірте введені дані в полях адреси." + "addressValidationError": "Будь ласка, перевірте введені дані в полях адреси.", + "processingOrder": "Замовлення обробляється...", + "completeOrder": "Завершити замовлення", + "termsValidationError": "Будь ласка, прийміть Умови та положення, Політику конфіденційності та право на відмову, щоб продовжити.", + "addressFields": { + "firstName": "Ім'я", + "lastName": "Прізвище", + "addressSupplement": "Додаток до адреси", + "street": "Вулиця", + "houseNumber": "Номер будинку", + "postalCode": "Поштовий індекс", + "city": "Місто", + "country": "Країна" + }, + "validationErrors": { + "firstNameRequired": "Ім'я є обов’язковим", + "lastNameRequired": "Прізвище є обов’язковим", + "streetRequired": "Вулиця є обов’язковою", + "houseNumberRequired": "Номер будинку є обов’язковим", + "postalCodeRequired": "Поштовий індекс є обов’язковим", + "cityRequired": "Місто є обов’язковим" + } }; diff --git a/src/i18n/locales/uk/delivery.js b/src/i18n/locales/uk/delivery.js index ddaf4a8..f966620 100644 --- a/src/i18n/locales/uk/delivery.js +++ b/src/i18n/locales/uk/delivery.js @@ -2,22 +2,23 @@ export default { "methods": { "dhl": "DHL", "dpd": "DPD", - "sperrgut": "Об'ємні вантажі", - "pickup": "Самовивіз із магазину" + "sperrgut": "Великогабаритні товари", + "sperrgutName": "Великогабаритні товари", + "pickup": "Самовивіз з магазину" }, "descriptions": { "standard": "Стандартна доставка", - "standardFree": "Стандартна доставка - БЕЗКОШТОВНО від замовлення на €100!", + "standardFree": "Стандартна доставка - БЕЗКОШТОВНО від замовлення на 100€!", "notAvailable": "Не можна вибрати, оскільки один або кілька товарів можна лише забрати", "bulky": "Для великих і важких товарів", "pickupOnly": "Тільки самовивіз" }, "prices": { "free": "безкоштовно", - "freeFrom100": "(безкоштовно від €100)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "freeFrom100": "(безкоштовно від 100€)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { "cutting14Days": "Термін доставки: 14 днів", @@ -26,7 +27,7 @@ export default { }, "selector": { "title": "Оберіть спосіб доставки", - "freeShippingInfo": "💡 Безкоштовна доставка від замовлення на €100!", + "freeShippingInfo": "💡 Безкоштовна доставка від замовлення на 100€!", "remainingForFree": "Додайте ще {{amount}}€ для безкоштовної доставки.", "congratsFreeShipping": "🎉 Вітаємо! Ви отримуєте безкоштовну доставку!", "cartQualifiesFree": "Ваш кошик на суму {{amount}}€ підпадає під безкоштовну доставку." diff --git a/src/i18n/locales/uk/orders.js b/src/i18n/locales/uk/orders.js index 1cf4811..5ef27b0 100644 --- a/src/i18n/locales/uk/orders.js +++ b/src/i18n/locales/uk/orders.js @@ -19,5 +19,21 @@ export default { "actions": "Дії", "viewDetails": "Переглянути деталі" }, - "noOrders": "Ви ще не зробили жодного замовлення." + "noOrders": "Ви ще не зробили жодного замовлення.", + "details": { + "title": "Деталі замовлення: {{orderId}}", + "deliveryAddress": "Адреса доставки", + "invoiceAddress": "Адреса для рахунку", + "orderDetails": "Деталі замовлення", + "deliveryMethod": "Спосіб доставки:", + "paymentMethod": "Спосіб оплати:", + "notSpecified": "Не вказано", + "orderedItems": "Замовлені товари", + "item": "Товар", + "quantity": "Кількість", + "price": "Ціна", + "total": "Всього", + "cancelOrder": "Скасувати замовлення" + }, + "processing": "Замовлення обробляється...", }; diff --git a/src/i18n/locales/uk/payment.js b/src/i18n/locales/uk/payment.js index f0839ba..d15a17f 100644 --- a/src/i18n/locales/uk/payment.js +++ b/src/i18n/locales/uk/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 Ваше замовлення було успішно завершено! Тепер ви можете переглянути свої замовлення.", "orderProcessing": "Ваш платіж було успішно оброблено. Замовлення буде автоматично завершено.", "paymentError": "Ваш платіж не вдалося обробити. Будь ласка, спробуйте ще раз або оберіть інший спосіб оплати.", - "viewOrders": "Переглянути мої замовлення" + "viewOrders": "Переглянути мої замовлення", + "loadingPaymentComponent": "Завантаження компонента оплати...", + "methods": { + "selectPaymentMethod": "Оберіть спосіб оплати", + "bankTransfer": "Банківський переказ", + "bankTransferDescription": "Оплатити банківським переказом", + "cardPayment": "Карта, Sofortüberweisung, Apple Pay, Google Pay, PayPal", + "cardPaymentDescription": "Оплатити картою або Sofortüberweisung", + "cardPaymentMinAmount": "Оплатити картою або Sofortüberweisung (мінімальна сума: €0.50)", + "cashOnDelivery": "Оплата при отриманні", + "cashOnDeliveryDescription": "Оплата при доставці (€8.99 надбавка)", + "cashInStore": "Оплата в магазині", + "cashInStoreDescription": "Оплатити при отриманні", + } }; diff --git a/src/i18n/locales/zh/checkout.js b/src/i18n/locales/zh/checkout.js index 2b07cfa..24ca97b 100644 --- a/src/i18n/locales/zh/checkout.js +++ b/src/i18n/locales/zh/checkout.js @@ -2,12 +2,33 @@ export default { "invoiceAddress": "发票地址", "deliveryAddress": "送货地址", "saveForFuture": "保存以供将来订单使用", - "pickupDate": "希望何时取货?", + "pickupDate": "希望在哪一天取货?", "note": "备注", "sameAddress": "送货地址与发票地址相同", "termsAccept": "我已阅读条款和条件、隐私政策及撤销权相关规定", "selectDeliveryMethod": "选择配送方式", "selectPaymentMethod": "选择付款方式", "orderSummary": "订单摘要", - "addressValidationError": "请检查您在地址字段中的输入。" + "addressValidationError": "请检查地址字段中的输入内容。", + "processingOrder": "订单处理中...", + "completeOrder": "完成订单", + "termsValidationError": "请接受条款和条件、隐私政策及撤销权以继续。", + "addressFields": { + "firstName": "名字", + "lastName": "姓氏", + "addressSupplement": "地址补充", + "street": "街道", + "houseNumber": "门牌号", + "postalCode": "邮政编码", + "city": "城市", + "country": "国家" + }, + "validationErrors": { + "firstNameRequired": "名字为必填项", + "lastNameRequired": "姓氏为必填项", + "streetRequired": "街道为必填项", + "houseNumberRequired": "门牌号为必填项", + "postalCodeRequired": "邮政编码为必填项", + "cityRequired": "城市为必填项" + } }; diff --git a/src/i18n/locales/zh/delivery.js b/src/i18n/locales/zh/delivery.js index 52ab1e2..798ed7a 100644 --- a/src/i18n/locales/zh/delivery.js +++ b/src/i18n/locales/zh/delivery.js @@ -3,32 +3,33 @@ export default { "dhl": "DHL", "dpd": "DPD", "sperrgut": "大件物品", + "sperrgutName": "大件物品", "pickup": "店内自提" }, "descriptions": { "standard": "标准配送", - "standardFree": "标准配送 - 订单满€100免运费!", + "standardFree": "标准配送 - 订单满100€免运费!", "notAvailable": "不可选择,因为一个或多个商品只能自提", - "bulky": "适用于大型和重型商品", + "bulky": "适用于大件和重物", "pickupOnly": "仅限自提" }, "prices": { "free": "免费", - "freeFrom100": "(订单满€100免费)", - "dhl": "€6.99", - "dpd": "€4.90", - "sperrgut": "€28.99" + "freeFrom100": "(订单满100€免费)", + "dhl": "6.99 €", + "dpd": "4.90 €", + "sperrgut": "28.99 €" }, "times": { - "cutting14Days": "送达时间:14天", - "standard2to3Days": "送达时间:2-3天", - "supplier7to9Days": "送达时间:7-9天" + "cutting14Days": "配送时间:14天", + "standard2to3Days": "配送时间:2-3天", + "supplier7to9Days": "配送时间:7-9天" }, "selector": { "title": "选择配送方式", - "freeShippingInfo": "💡 订单满€100免运费!", + "freeShippingInfo": "💡 订单满100€免运费!", "remainingForFree": "再加{{amount}}€即可享受免运费。", - "congratsFreeShipping": "🎉 恭喜!您获得了免运费!", + "congratsFreeShipping": "🎉 恭喜!您获得免运费!", "cartQualifiesFree": "您的购物车金额{{amount}}€,符合免运费条件。" } }; diff --git a/src/i18n/locales/zh/orders.js b/src/i18n/locales/zh/orders.js index 1aab036..45b65fa 100644 --- a/src/i18n/locales/zh/orders.js +++ b/src/i18n/locales/zh/orders.js @@ -1,7 +1,7 @@ export default { "status": { "new": "进行中", - "pending": "新建", + "pending": "新订单", "processing": "进行中", "cancelled": "已取消", "shipped": "已发货", @@ -19,5 +19,21 @@ export default { "actions": "操作", "viewDetails": "查看详情" }, - "noOrders": "您尚未下过任何订单。" + "noOrders": "您尚未下过任何订单。", + "details": { + "title": "订单详情:{{orderId}}", + "deliveryAddress": "收货地址", + "invoiceAddress": "发票地址", + "orderDetails": "订单详情", + "deliveryMethod": "配送方式:", + "paymentMethod": "支付方式:", + "notSpecified": "未指定", + "orderedItems": "订购商品", + "item": "商品", + "quantity": "数量", + "price": "价格", + "total": "总计", + "cancelOrder": "取消订单" + }, + "processing": "订单正在处理中..." }; diff --git a/src/i18n/locales/zh/payment.js b/src/i18n/locales/zh/payment.js index f7a1901..05e6fc9 100644 --- a/src/i18n/locales/zh/payment.js +++ b/src/i18n/locales/zh/payment.js @@ -4,5 +4,18 @@ export default { "orderCompleted": "🎉 您的订单已成功完成!您现在可以查看您的订单。", "orderProcessing": "您的付款已成功处理。订单将自动完成。", "paymentError": "您的付款无法处理。请重试或选择其他付款方式。", - "viewOrders": "查看我的订单" + "viewOrders": "查看我的订单", + "loadingPaymentComponent": "正在加载支付组件...", + "methods": { + "selectPaymentMethod": "选择支付方式", + "bankTransfer": "银行转账", + "bankTransferDescription": "通过银行转账支付", + "cardPayment": "信用卡、Sofortüberweisung、Apple Pay、Google Pay、PayPal", + "cardPaymentDescription": "通过信用卡或 Sofortüberweisung 支付", + "cardPaymentMinAmount": "通过信用卡或 Sofortüberweisung 支付(最低金额:€0.50)", + "cashOnDelivery": "货到付款", + "cashOnDeliveryDescription": "货到付款(附加费 €8.99)", + "cashInStore": "店内付款", + "cashInStoreDescription": "取货时付款", + } }; diff --git a/src/i18n/locales/zh/settings.js b/src/i18n/locales/zh/settings.js index a8dc470..34055da 100644 --- a/src/i18n/locales/zh/settings.js +++ b/src/i18n/locales/zh/settings.js @@ -29,6 +29,6 @@ export default { "passwordUpdated": "密码更新成功", "emailUpdated": "电子邮件地址更新成功", "apiKeyGenerated": "API key 生成成功", - "apiKeyWarning": "请妥善保存此密钥。出于安全原因,10 秒后将隐藏。" + "apiKeyWarning": "请妥善保存此密钥。出于安全原因,10 秒后将被隐藏。" } }; diff --git a/src/pages/ResetPassword.js b/src/pages/ResetPassword.js index d9a7d79..6787d95 100644 --- a/src/pages/ResetPassword.js +++ b/src/pages/ResetPassword.js @@ -1,5 +1,6 @@ import React, { useState, useEffect } from 'react'; import { useNavigate, useLocation } from 'react-router-dom'; +import { useTranslation } from 'react-i18next'; import { Container, Paper, @@ -15,6 +16,7 @@ import LockResetIcon from '@mui/icons-material/LockReset'; const ResetPassword = ({ socket }) => { const navigate = useNavigate(); const location = useLocation(); + const { t } = useTranslation(); const [token, setToken] = useState(''); const [newPassword, setNewPassword] = useState(''); const [confirmPassword, setConfirmPassword] = useState(''); @@ -128,7 +130,7 @@ const ResetPassword = ({ socket }) => { required fullWidth name="confirmPassword" - label="Passwort bestätigen" + label={t ? t('auth.confirmPassword') : 'Passwort bestätigen'} type="password" id="confirmPassword" autoComplete="new-password"