diff --git a/Cargo.lock b/Cargo.lock index 09f9267..283cba7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2646,6 +2646,7 @@ dependencies = [ "axum", "axum-casbin", "axum-extra 0.10.3", + "base64", "bytes", "chrono", "dotenvy", diff --git a/Cargo.toml b/Cargo.toml index e242543..98249a8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -56,6 +56,8 @@ hmac = { version = "0.12" } sha2 = { version = "0.10" } subtle = { version = "2.6" } form_urlencoded = { version = "1" } +# base64: cookie-safe encoding of the multi-step checkout info JSON +base64 = { version = "0.22" } multer = { version = "3" } futures-util = { version = "0.3" } diff --git a/assets/i18n/en/main.ftl b/assets/i18n/en/main.ftl index 603c253..120e5cf 100644 --- a/assets/i18n/en/main.ftl +++ b/assets/i18n/en/main.ftl @@ -350,6 +350,10 @@ cart-remove-confirm = Remove this item from the cart? cart-update = Update cart-continue = Continue shopping checkout-title = Checkout +checkout-step-basket = Basket +checkout-step-info = Info +checkout-step-payment = Payment & transport +checkout-step-transport = Transport checkout-contact = Contact details checkout-shipping = Delivery address checkout-residence-address = Residence address @@ -380,6 +384,8 @@ company-dic = Tax ID (DIČ) company-icdph = VAT ID (IČ DPH) field-optional = optional checkout-place-order = Place order +checkout-continue-payment = Continue +checkout-back-info = Back to details checkout-summary = Order summary profile-title = My profile profile-intro = We'll use these details to prefill checkout. diff --git a/assets/i18n/sk/main.ftl b/assets/i18n/sk/main.ftl index 641b010..b172884 100644 --- a/assets/i18n/sk/main.ftl +++ b/assets/i18n/sk/main.ftl @@ -350,6 +350,10 @@ cart-remove-confirm = Odstrániť túto položku z košíka? cart-update = Aktualizovať cart-continue = Pokračovať v nákupe checkout-title = Pokladňa +checkout-step-basket = Košík +checkout-step-info = Údaje +checkout-step-payment = Doprava a platba +checkout-step-transport = Doprava checkout-contact = Kontaktné údaje checkout-shipping = Dodacia adresa checkout-residence-address = Adresa bydliska @@ -380,6 +384,8 @@ company-dic = DIČ company-icdph = IČ DPH field-optional = nepovinné checkout-place-order = Odoslať objednávku +checkout-continue-payment = Pokračovať +checkout-back-info = Späť na údaje checkout-summary = Súhrn objednávky profile-title = Môj profil profile-intro = Tieto údaje použijeme na predvyplnenie pokladne. diff --git a/assets/views/macros/ui.html b/assets/views/macros/ui.html index 33fbd04..d888e8b 100644 --- a/assets/views/macros/ui.html +++ b/assets/views/macros/ui.html @@ -292,6 +292,25 @@ border-t border-outline dark:border-outline-dark