diff --git a/app/routes/platform_pages.py b/app/routes/platform_pages.py index 4bfbed35..9689c2e2 100644 --- a/app/routes/platform_pages.py +++ b/app/routes/platform_pages.py @@ -16,6 +16,7 @@ from sqlalchemy.orm import Session from app.core.config import settings from app.core.database import get_db +from app.utils.i18n import get_jinja2_globals router = APIRouter() logger = logging.getLogger(__name__) @@ -28,7 +29,10 @@ templates = Jinja2Templates(directory=str(TEMPLATES_DIR)) def get_platform_context(request: Request, db: Session) -> dict: """Build context for platform pages.""" - return { + # Get language from request state (set by middleware) + language = getattr(request.state, "language", "fr") + + context = { "request": request, "platform_name": "Wizamart", "platform_domain": settings.platform_domain, @@ -36,6 +40,11 @@ def get_platform_context(request: Request, db: Session) -> dict: "trial_days": settings.stripe_trial_days, } + # Add i18n globals (_, t, current_language, SUPPORTED_LANGUAGES, etc.) + context.update(get_jinja2_globals(language)) + + return context + # ============================================================================= # Homepage diff --git a/app/templates/platform/base.html b/app/templates/platform/base.html index cddd18b0..6bcf86f5 100644 --- a/app/templates/platform/base.html +++ b/app/templates/platform/base.html @@ -1,7 +1,8 @@ {# app/templates/platform/base.html #} {# Base template for platform public pages (homepage, about, faq, etc.) #} +{% from 'shared/macros/language_selector.html' import language_selector_compact %} - +
@@ -70,13 +71,13 @@- Lightweight OMS for Letzshop sellers. Manage orders, inventory, and invoicing. + {{ _("platform.footer.tagline") }}
{# Quick Links #}- © 2025 Wizamart. Built for Luxembourg e-commerce. + {{ _("platform.footer.copyright", year=2025) }}
- Enter your Letzshop shop URL or search by name to get started. + {{ _("platform.find_shop.subtitle") }}
{{ _("platform.find_shop.found") }}
- Claim This Shop & Start Free Trial + {{ _("platform.find_shop.claim_button") }}- Don't have a Letzshop account yet? No problem! + {{ _("platform.find_shop.no_account_yet") }}
- Order management, inventory, and invoicing built for Luxembourg e-commerce. - Stop juggling spreadsheets. Start running your business. + {{ _("platform.hero.subtitle") }}
{# CTA Buttons #}- Choose the plan that fits your business. All plans include a {{ trial_days }}-day free trial. + {{ _("platform.pricing.subtitle", trial_days=trial_days) }}
{# Billing Toggle #}- Add custom branding, professional email, and enhanced security. + {{ _("platform.addons.subtitle") }}
- Already selling on Letzshop? Enter your shop URL to get started. + {{ _("platform.find_shop.subtitle") }}
- Don't have a Letzshop account? Sign up with Letzshop first, then come back to connect your shop. + {{ _("platform.find_shop.no_account") }} {{ _("platform.find_shop.signup_letzshop") }}{{ _("platform.find_shop.then_connect") }}
@@ -353,15 +351,14 @@- Join Letzshop vendors who trust Wizamart for their order management. - Start your {{ trial_days }}-day free trial today. + {{ _("platform.cta.subtitle", trial_days=trial_days) }}
- Start Free Trial + {{ _("platform.cta.button") }}- All plans include a {{ trial_days }}-day free trial. No credit card required to start. + {{ _("platform.pricing.trial_note", trial_days=trial_days) }}
{# Billing Toggle #}- Your account has been created and your {{ trial_days }}-day free trial has started. + {{ _("platform.success.subtitle", trial_days=trial_days) }}
{# Next Steps #}- Need help getting started? - Contact our support team + {{ _("platform.success.need_help") }} + {{ _("platform.success.contact_support") }}
diff --git a/static/locales/de.json b/static/locales/de.json index 224b5415..47fedda8 100644 --- a/static/locales/de.json +++ b/static/locales/de.json @@ -471,5 +471,202 @@ "time": "HH:mm", "datetime": "DD.MM.YYYY HH:mm", "currency": "{amount} {symbol}" + }, + "platform": { + "nav": { + "pricing": "Preise", + "find_shop": "Finden Sie Ihren Shop", + "start_trial": "Kostenlos testen", + "admin_login": "Admin-Login", + "vendor_login": "Händler-Login", + "toggle_menu": "Menü umschalten", + "toggle_dark_mode": "Dunkelmodus umschalten" + }, + "hero": { + "badge": "{trial_days}-Tage kostenlose Testversion - Keine Kreditkarte erforderlich", + "title": "Leichtes OMS für Letzshop-Verkäufer", + "subtitle": "Bestellverwaltung, Lager und Rechnungsstellung für den luxemburgischen E-Commerce. Schluss mit Tabellenkalkulationen. Führen Sie Ihr Geschäft.", + "cta_trial": "Kostenlos testen", + "cta_find_shop": "Finden Sie Ihren Letzshop" + }, + "pricing": { + "title": "Einfache, transparente Preise", + "subtitle": "Wählen Sie den Plan, der zu Ihrem Unternehmen passt. Alle Pläne beinhalten eine {trial_days}-tägige kostenlose Testversion.", + "monthly": "Monatlich", + "annual": "Jährlich", + "save_months": "Sparen Sie 2 Monate!", + "most_popular": "AM BELIEBTESTEN", + "recommended": "EMPFOHLEN", + "contact_sales": "Kontaktieren Sie uns", + "start_trial": "Kostenlos testen", + "per_month": "/Monat", + "per_year": "/Jahr", + "custom": "Individuell", + "orders_per_month": "{count} Bestellungen/Monat", + "unlimited_orders": "Unbegrenzte Bestellungen", + "products_limit": "{count} Produkte", + "unlimited_products": "Unbegrenzte Produkte", + "team_members": "{count} Teammitglieder", + "unlimited_team": "Unbegrenztes Team", + "letzshop_sync": "Letzshop-Synchronisierung", + "eu_vat_invoicing": "EU-MwSt-Rechnungen", + "analytics_dashboard": "Analyse-Dashboard", + "api_access": "API-Zugang", + "products": "Produkte", + "team_member": "Teammitglied", + "unlimited": "Unbegrenzt", + "order_history": "Monate Bestellhistorie", + "trial_note": "Alle Pläne beinhalten eine {trial_days}-tägige kostenlose Testversion. Keine Kreditkarte erforderlich.", + "back_home": "Zurück zur Startseite" + }, + "features": { + "letzshop_sync": "Letzshop-Synchronisierung", + "inventory_basic": "Grundlegende Lagerverwaltung", + "inventory_locations": "Lagerstandorte", + "inventory_purchase_orders": "Bestellungen", + "invoice_lu": "Luxemburg-MwSt-Rechnungen", + "invoice_eu_vat": "EU-MwSt-Rechnungen", + "invoice_bulk": "Massenrechnungen", + "customer_view": "Kundenliste", + "customer_export": "Kundenexport", + "analytics_dashboard": "Analyse-Dashboard", + "accounting_export": "Buchhaltungsexport", + "api_access": "API-Zugang", + "automation_rules": "Automatisierungsregeln", + "team_roles": "Teamrollen und Berechtigungen", + "white_label": "White-Label-Option", + "multi_vendor": "Multi-Händler-Unterstützung", + "custom_integrations": "Individuelle Integrationen", + "sla_guarantee": "SLA-Garantie", + "dedicated_support": "Dedizierter Kundenbetreuer" + }, + "addons": { + "title": "Erweitern Sie Ihre Plattform", + "subtitle": "Fügen Sie Ihre Marke, professionelle E-Mail und erweiterte Sicherheit hinzu.", + "per_year": "/Jahr", + "per_month": "/Monat", + "custom_domain": "Eigene Domain", + "custom_domain_desc": "Nutzen Sie Ihre eigene Domain (meinedomain.com)", + "premium_ssl": "Premium SSL", + "premium_ssl_desc": "EV-Zertifikat für Vertrauenssiegel", + "email_package": "E-Mail-Paket", + "email_package_desc": "Professionelle E-Mail-Adressen" + }, + "find_shop": { + "title": "Finden Sie Ihren Letzshop", + "subtitle": "Verkaufen Sie bereits auf Letzshop? Geben Sie Ihre Shop-URL ein, um zu beginnen.", + "placeholder": "Geben Sie Ihre Letzshop-URL ein (z.B. letzshop.lu/vendors/mein-shop)", + "button": "Meinen Shop finden", + "claim_shop": "Diesen Shop beanspruchen", + "already_claimed": "Bereits beansprucht", + "no_account": "Sie haben kein Letzshop-Konto?", + "signup_letzshop": "Registrieren Sie sich zuerst bei Letzshop", + "then_connect": ", dann kommen Sie zurück, um Ihren Shop zu verbinden.", + "search_placeholder": "Letzshop-URL oder Shopname eingeben...", + "search_button": "Suchen", + "examples": "Beispiele:", + "claim_button": "Diesen Shop beanspruchen und kostenlos testen", + "not_found": "Wir konnten keinen Letzshop mit dieser URL finden. Bitte überprüfen Sie und versuchen Sie es erneut.", + "or_signup": "Oder registrieren Sie sich ohne Letzshop-Verbindung", + "need_help": "Brauchen Sie Hilfe?", + "no_account_yet": "Sie haben noch kein Letzshop-Konto? Kein Problem!", + "create_letzshop": "Letzshop-Konto erstellen", + "signup_without": "Ohne Letzshop registrieren", + "looking_up": "Suche Ihren Shop...", + "found": "Gefunden:", + "claimed_badge": "Bereits beansprucht" + }, + "signup": { + "step_plan": "Plan wählen", + "step_shop": "Shop beanspruchen", + "step_account": "Konto", + "step_payment": "Zahlung", + "choose_plan": "Wählen Sie Ihren Plan", + "save_percent": "Sparen Sie {percent}%", + "trial_info": "Wir erfassen Ihre Zahlungsdaten, aber Sie werden erst nach Ende der Testphase belastet.", + "connect_shop": "Verbinden Sie Ihren Letzshop", + "connect_optional": "Optional: Verknüpfen Sie Ihr Letzshop-Konto, um Bestellungen automatisch zu synchronisieren.", + "connect_continue": "Verbinden und fortfahren", + "skip_step": "Diesen Schritt überspringen", + "create_account": "Erstellen Sie Ihr Konto", + "first_name": "Vorname", + "last_name": "Nachname", + "company_name": "Firmenname", + "email": "E-Mail", + "password": "Passwort", + "password_hint": "Mindestens 8 Zeichen", + "continue": "Weiter", + "continue_payment": "Weiter zur Zahlung", + "back": "Zurück", + "add_payment": "Zahlungsmethode hinzufügen", + "no_charge_note": "Sie werden erst nach Ablauf Ihrer {trial_days}-tägigen Testphase belastet.", + "processing": "Verarbeitung...", + "start_trial": "Kostenlose Testversion starten", + "creating_account": "Erstelle Ihr Konto..." + }, + "success": { + "title": "Willkommen bei Wizamart!", + "subtitle": "Ihr Konto wurde erstellt und Ihre {trial_days}-tägige kostenlose Testphase hat begonnen.", + "what_next": "Was kommt als Nächstes?", + "step_connect": "Letzshop verbinden:", + "step_connect_desc": "Fügen Sie Ihren API-Schlüssel hinzu, um Bestellungen automatisch zu synchronisieren.", + "step_invoicing": "Rechnungsstellung einrichten:", + "step_invoicing_desc": "Konfigurieren Sie Ihre Rechnungseinstellungen für die luxemburgische Compliance.", + "step_products": "Produkte importieren:", + "step_products_desc": "Synchronisieren Sie Ihren Produktkatalog von Letzshop.", + "go_to_dashboard": "Zum Dashboard", + "login_dashboard": "Zum Dashboard anmelden", + "need_help": "Brauchen Sie Hilfe beim Einstieg?", + "contact_support": "Kontaktieren Sie unser Support-Team" + }, + "cta": { + "title": "Bereit, Ihre Bestellungen zu optimieren?", + "subtitle": "Schließen Sie sich Letzshop-Händlern an, die Wizamart für ihre Bestellverwaltung vertrauen. Starten Sie heute Ihre {trial_days}-tägige kostenlose Testversion.", + "button": "Kostenlos testen" + }, + "footer": { + "tagline": "Leichtes OMS für Letzshop-Verkäufer. Verwalten Sie Bestellungen, Lager und Rechnungen.", + "quick_links": "Schnelllinks", + "platform": "Plattform", + "contact": "Kontakt", + "copyright": "© {year} Wizamart. Entwickelt für den luxemburgischen E-Commerce.", + "privacy": "Datenschutzerklärung", + "terms": "Nutzungsbedingungen" + }, + "modern": { + "badge_integration": "Offizielle Integration", + "badge_connect": "In 2 Minuten verbinden", + "hero_title_1": "Für den luxemburgischen E-Commerce entwickelt", + "hero_title_2": "Das Back-Office, das Letzshop Ihnen nicht gibt", + "hero_subtitle": "Synchronisieren Sie Bestellungen, verwalten Sie Lager, erstellen Sie Rechnungen mit korrekter MwSt und besitzen Sie Ihre Kundendaten. Alles an einem Ort.", + "cta_trial": "{trial_days}-Tage kostenlos testen", + "cta_how": "Sehen Sie, wie es funktioniert", + "hero_note": "Keine Kreditkarte erforderlich. Einrichtung in 5 Minuten. Jederzeit kündbar.", + "pain_title": "Kommt Ihnen das bekannt vor?", + "pain_subtitle": "Das sind die täglichen Frustrationen von Letzshop-Verkäufern", + "pain_manual": "Manuelle Bestelleingabe", + "pain_manual_desc": "Bestellungen von Letzshop in Tabellenkalkulationen kopieren. Jeden. Einzelnen. Tag.", + "pain_inventory": "Lagerchaos", + "pain_inventory_desc": "Der Bestand in Letzshop stimmt nicht mit der Realität überein. Überverkäufe passieren.", + "pain_vat": "Falsche MwSt-Rechnungen", + "pain_vat_desc": "EU-Kunden brauchen die korrekte MwSt. Ihr Buchhalter beschwert sich.", + "pain_customers": "Verlorene Kunden", + "pain_customers_desc": "Letzshop besitzt Ihre Kundendaten. Sie können nicht retargeten oder Loyalität aufbauen.", + "how_title": "So funktioniert es", + "how_subtitle": "Vom Chaos zur Kontrolle in 4 Schritten", + "how_step1": "Letzshop verbinden", + "how_step1_desc": "Geben Sie Ihre Letzshop-API-Zugangsdaten ein. In 2 Minuten erledigt, keine technischen Kenntnisse erforderlich.", + "how_step2": "Bestellungen kommen rein", + "how_step2_desc": "Bestellungen werden automatisch synchronisiert. Bestätigen und Tracking direkt von Wizamart hinzufügen.", + "how_step3": "Rechnungen erstellen", + "how_step3_desc": "Ein Klick, um konforme PDF-Rechnungen mit korrekter MwSt für jedes EU-Land zu erstellen.", + "how_step4": "Ihr Geschäft ausbauen", + "how_step4_desc": "Exportieren Sie Kunden für Marketing. Verfolgen Sie Lagerbestände. Konzentrieren Sie sich auf den Verkauf, nicht auf Tabellenkalkulationen.", + "features_title": "Alles, was ein Letzshop-Verkäufer braucht", + "features_subtitle": "Die operativen Tools, die Letzshop nicht bietet", + "cta_final_title": "Bereit, die Kontrolle über Ihr Letzshop-Geschäft zu übernehmen?", + "cta_final_subtitle": "Schließen Sie sich luxemburgischen Händlern an, die aufgehört haben, gegen Tabellenkalkulationen zu kämpfen, und begonnen haben, ihr Geschäft auszubauen.", + "cta_final_note": "Keine Kreditkarte erforderlich. Einrichtung in 5 Minuten. Volle Professional-Funktionen während der Testphase." + } } } diff --git a/static/locales/en.json b/static/locales/en.json index 4abaf8c4..367c1ad2 100644 --- a/static/locales/en.json +++ b/static/locales/en.json @@ -471,5 +471,202 @@ "time": "HH:mm", "datetime": "MM/DD/YYYY HH:mm", "currency": "{symbol}{amount}" + }, + "platform": { + "nav": { + "pricing": "Pricing", + "find_shop": "Find Your Shop", + "start_trial": "Start Free Trial", + "admin_login": "Admin Login", + "vendor_login": "Vendor Login", + "toggle_menu": "Toggle menu", + "toggle_dark_mode": "Toggle dark mode" + }, + "hero": { + "badge": "{trial_days}-Day Free Trial - No Credit Card Required to Start", + "title": "Lightweight OMS for Letzshop Sellers", + "subtitle": "Order management, inventory, and invoicing built for Luxembourg e-commerce. Stop juggling spreadsheets. Start running your business.", + "cta_trial": "Start Free Trial", + "cta_find_shop": "Find Your Letzshop Shop" + }, + "pricing": { + "title": "Simple, Transparent Pricing", + "subtitle": "Choose the plan that fits your business. All plans include a {trial_days}-day free trial.", + "monthly": "Monthly", + "annual": "Annual", + "save_months": "Save 2 months!", + "most_popular": "MOST POPULAR", + "recommended": "RECOMMENDED", + "contact_sales": "Contact Sales", + "start_trial": "Start Free Trial", + "per_month": "/month", + "per_year": "/year", + "custom": "Custom", + "orders_per_month": "{count} orders/month", + "unlimited_orders": "Unlimited orders", + "products_limit": "{count} products", + "unlimited_products": "Unlimited products", + "team_members": "{count} team members", + "unlimited_team": "Unlimited team", + "letzshop_sync": "Letzshop order sync", + "eu_vat_invoicing": "EU VAT invoicing", + "analytics_dashboard": "Analytics dashboard", + "api_access": "API access", + "products": "products", + "team_member": "team member", + "unlimited": "Unlimited", + "order_history": "months order history", + "trial_note": "All plans include a {trial_days}-day free trial. No credit card required.", + "back_home": "Back to Home" + }, + "features": { + "letzshop_sync": "Letzshop order sync", + "inventory_basic": "Basic inventory management", + "inventory_locations": "Warehouse locations", + "inventory_purchase_orders": "Purchase orders", + "invoice_lu": "Luxembourg VAT invoicing", + "invoice_eu_vat": "EU VAT invoicing", + "invoice_bulk": "Bulk invoicing", + "customer_view": "Customer list", + "customer_export": "Customer export", + "analytics_dashboard": "Analytics dashboard", + "accounting_export": "Accounting export", + "api_access": "API access", + "automation_rules": "Automation rules", + "team_roles": "Team roles & permissions", + "white_label": "White-label option", + "multi_vendor": "Multi-vendor support", + "custom_integrations": "Custom integrations", + "sla_guarantee": "SLA guarantee", + "dedicated_support": "Dedicated account manager" + }, + "addons": { + "title": "Enhance Your Platform", + "subtitle": "Add custom branding, professional email, and enhanced security.", + "per_year": "/year", + "per_month": "/month", + "custom_domain": "Custom Domain", + "custom_domain_desc": "Use your own domain (mydomain.com)", + "premium_ssl": "Premium SSL", + "premium_ssl_desc": "EV certificate for trust badges", + "email_package": "Email Package", + "email_package_desc": "Professional email addresses" + }, + "find_shop": { + "title": "Find Your Letzshop Shop", + "subtitle": "Already selling on Letzshop? Enter your shop URL to get started.", + "placeholder": "Enter your Letzshop URL (e.g., letzshop.lu/vendors/my-shop)", + "button": "Find My Shop", + "claim_shop": "Claim This Shop", + "already_claimed": "Already Claimed", + "no_account": "Don't have a Letzshop account?", + "signup_letzshop": "Sign up with Letzshop first", + "then_connect": ", then come back to connect your shop.", + "search_placeholder": "Enter Letzshop URL or shop name...", + "search_button": "Search", + "examples": "Examples:", + "claim_button": "Claim This Shop & Start Free Trial", + "not_found": "We could not find a Letzshop shop with that URL. Please check and try again.", + "or_signup": "Or sign up without a Letzshop connection", + "need_help": "Need Help?", + "no_account_yet": "Don't have a Letzshop account yet? No problem!", + "create_letzshop": "Create a Letzshop Account", + "signup_without": "Sign Up Without Letzshop", + "looking_up": "Looking up your shop...", + "found": "Found:", + "claimed_badge": "Already Claimed" + }, + "signup": { + "step_plan": "Select Plan", + "step_shop": "Claim Shop", + "step_account": "Account", + "step_payment": "Payment", + "choose_plan": "Choose Your Plan", + "save_percent": "Save {percent}%", + "trial_info": "We'll collect your payment info, but you won't be charged until the trial ends.", + "connect_shop": "Connect Your Letzshop Shop", + "connect_optional": "Optional: Link your Letzshop account to sync orders automatically.", + "connect_continue": "Connect & Continue", + "skip_step": "Skip This Step", + "create_account": "Create Your Account", + "first_name": "First Name", + "last_name": "Last Name", + "company_name": "Company Name", + "email": "Email", + "password": "Password", + "password_hint": "Minimum 8 characters", + "continue": "Continue", + "continue_payment": "Continue to Payment", + "back": "Back", + "add_payment": "Add Payment Method", + "no_charge_note": "You won't be charged until your {trial_days}-day trial ends.", + "processing": "Processing...", + "start_trial": "Start Free Trial", + "creating_account": "Creating your account..." + }, + "success": { + "title": "Welcome to Wizamart!", + "subtitle": "Your account has been created and your {trial_days}-day free trial has started.", + "what_next": "What's Next?", + "step_connect": "Connect Letzshop:", + "step_connect_desc": "Add your API key to start syncing orders automatically.", + "step_invoicing": "Set Up Invoicing:", + "step_invoicing_desc": "Configure your invoice settings for Luxembourg compliance.", + "step_products": "Import Products:", + "step_products_desc": "Sync your product catalog from Letzshop.", + "go_to_dashboard": "Go to Dashboard", + "login_dashboard": "Login to Dashboard", + "need_help": "Need help getting started?", + "contact_support": "Contact our support team" + }, + "cta": { + "title": "Ready to Streamline Your Orders?", + "subtitle": "Join Letzshop vendors who trust Wizamart for their order management. Start your {trial_days}-day free trial today.", + "button": "Start Free Trial" + }, + "footer": { + "tagline": "Lightweight OMS for Letzshop sellers. Manage orders, inventory, and invoicing.", + "quick_links": "Quick Links", + "platform": "Platform", + "contact": "Contact", + "copyright": "© {year} Wizamart. Built for Luxembourg e-commerce.", + "privacy": "Privacy Policy", + "terms": "Terms of Service" + }, + "modern": { + "badge_integration": "Official Integration", + "badge_connect": "Connect in 2 minutes", + "hero_title_1": "Built for Luxembourg E-Commerce", + "hero_title_2": "The Back-Office Letzshop Doesn't Give You", + "hero_subtitle": "Sync orders, manage inventory, generate invoices with correct VAT, and own your customer data. All in one place.", + "cta_trial": "Start {trial_days}-Day Free Trial", + "cta_how": "See How It Works", + "hero_note": "No credit card required. Setup in 5 minutes. Cancel anytime.", + "pain_title": "Sound Familiar?", + "pain_subtitle": "These are the daily frustrations of Letzshop sellers", + "pain_manual": "Manual Order Entry", + "pain_manual_desc": "Copy-pasting orders from Letzshop to spreadsheets. Every. Single. Day.", + "pain_inventory": "Inventory Chaos", + "pain_inventory_desc": "Stock in Letzshop doesn't match reality. Overselling happens.", + "pain_vat": "Wrong VAT Invoices", + "pain_vat_desc": "EU customers need correct VAT. Your accountant keeps complaining.", + "pain_customers": "Lost Customers", + "pain_customers_desc": "Letzshop owns your customer data. You can't retarget or build loyalty.", + "how_title": "How It Works", + "how_subtitle": "From Chaos to Control in 4 Steps", + "how_step1": "Connect Letzshop", + "how_step1_desc": "Enter your Letzshop API credentials. Done in 2 minutes, no technical skills needed.", + "how_step2": "Orders Flow In", + "how_step2_desc": "Orders sync automatically. Confirm and add tracking directly from Wizamart.", + "how_step3": "Generate Invoices", + "how_step3_desc": "One click to create compliant PDF invoices with correct VAT for any EU country.", + "how_step4": "Grow Your Business", + "how_step4_desc": "Export customers for marketing. Track inventory. Focus on selling, not spreadsheets.", + "features_title": "Everything a Letzshop Seller Needs", + "features_subtitle": "The operational tools Letzshop doesn't provide", + "cta_final_title": "Ready to Take Control of Your Letzshop Business?", + "cta_final_subtitle": "Join Luxembourg vendors who've stopped fighting spreadsheets and started growing their business.", + "cta_final_note": "No credit card required. Setup in 5 minutes. Full Professional features during trial." + } } } diff --git a/static/locales/fr.json b/static/locales/fr.json index 5d1a56ce..c6f5b3c3 100644 --- a/static/locales/fr.json +++ b/static/locales/fr.json @@ -471,5 +471,202 @@ "time": "HH:mm", "datetime": "DD/MM/YYYY HH:mm", "currency": "{amount} {symbol}" + }, + "platform": { + "nav": { + "pricing": "Tarifs", + "find_shop": "Trouvez votre boutique", + "start_trial": "Essai gratuit", + "admin_login": "Connexion Admin", + "vendor_login": "Connexion Vendeur", + "toggle_menu": "Basculer le menu", + "toggle_dark_mode": "Basculer le mode sombre" + }, + "hero": { + "badge": "Essai gratuit de {trial_days} jours - Aucune carte de crédit requise", + "title": "OMS léger pour les vendeurs Letzshop", + "subtitle": "Gestion des commandes, stocks et facturation conçue pour le e-commerce luxembourgeois. Arrêtez de jongler avec les tableurs. Gérez votre entreprise.", + "cta_trial": "Essai gratuit", + "cta_find_shop": "Trouvez votre boutique Letzshop" + }, + "pricing": { + "title": "Tarification simple et transparente", + "subtitle": "Choisissez le plan adapté à votre entreprise. Tous les plans incluent un essai gratuit de {trial_days} jours.", + "monthly": "Mensuel", + "annual": "Annuel", + "save_months": "Économisez 2 mois !", + "most_popular": "LE PLUS POPULAIRE", + "recommended": "RECOMMANDÉ", + "contact_sales": "Contactez-nous", + "start_trial": "Essai gratuit", + "per_month": "/mois", + "per_year": "/an", + "custom": "Sur mesure", + "orders_per_month": "{count} commandes/mois", + "unlimited_orders": "Commandes illimitées", + "products_limit": "{count} produits", + "unlimited_products": "Produits illimités", + "team_members": "{count} membres d'équipe", + "unlimited_team": "Équipe illimitée", + "letzshop_sync": "Synchronisation Letzshop", + "eu_vat_invoicing": "Facturation TVA UE", + "analytics_dashboard": "Tableau de bord analytique", + "api_access": "Accès API", + "products": "produits", + "team_member": "membre d'équipe", + "unlimited": "Illimité", + "order_history": "mois d'historique", + "trial_note": "Tous les plans incluent un essai gratuit de {trial_days} jours. Aucune carte de crédit requise.", + "back_home": "Retour à l'accueil" + }, + "features": { + "letzshop_sync": "Synchronisation Letzshop", + "inventory_basic": "Gestion de stock de base", + "inventory_locations": "Emplacements d'entrepôt", + "inventory_purchase_orders": "Bons de commande", + "invoice_lu": "Facturation TVA Luxembourg", + "invoice_eu_vat": "Facturation TVA UE", + "invoice_bulk": "Facturation en masse", + "customer_view": "Liste des clients", + "customer_export": "Export clients", + "analytics_dashboard": "Tableau de bord analytique", + "accounting_export": "Export comptable", + "api_access": "Accès API", + "automation_rules": "Règles d'automatisation", + "team_roles": "Rôles et permissions", + "white_label": "Option marque blanche", + "multi_vendor": "Support multi-vendeurs", + "custom_integrations": "Intégrations personnalisées", + "sla_guarantee": "Garantie SLA", + "dedicated_support": "Gestionnaire de compte dédié" + }, + "addons": { + "title": "Améliorez votre plateforme", + "subtitle": "Ajoutez votre marque, e-mail professionnel et sécurité renforcée.", + "per_year": "/an", + "per_month": "/mois", + "custom_domain": "Domaine personnalisé", + "custom_domain_desc": "Utilisez votre propre domaine (mondomaine.com)", + "premium_ssl": "SSL Premium", + "premium_ssl_desc": "Certificat EV pour les badges de confiance", + "email_package": "Pack Email", + "email_package_desc": "Adresses e-mail professionnelles" + }, + "find_shop": { + "title": "Trouvez votre boutique Letzshop", + "subtitle": "Vous vendez déjà sur Letzshop ? Entrez l'URL de votre boutique pour commencer.", + "placeholder": "Entrez votre URL Letzshop (ex: letzshop.lu/vendors/ma-boutique)", + "button": "Trouver ma boutique", + "claim_shop": "Réclamer cette boutique", + "already_claimed": "Déjà réclamée", + "no_account": "Vous n'avez pas de compte Letzshop ?", + "signup_letzshop": "Inscrivez-vous d'abord sur Letzshop", + "then_connect": ", puis revenez connecter votre boutique.", + "search_placeholder": "Entrez l'URL Letzshop ou le nom de la boutique...", + "search_button": "Rechercher", + "examples": "Exemples :", + "claim_button": "Réclamez cette boutique et démarrez l'essai gratuit", + "not_found": "Nous n'avons pas trouvé de boutique Letzshop avec cette URL. Vérifiez et réessayez.", + "or_signup": "Ou inscrivez-vous sans connexion Letzshop", + "need_help": "Besoin d'aide ?", + "no_account_yet": "Vous n'avez pas encore de compte Letzshop ? Pas de problème !", + "create_letzshop": "Créer un compte Letzshop", + "signup_without": "S'inscrire sans Letzshop", + "looking_up": "Recherche de votre boutique...", + "found": "Trouvé :", + "claimed_badge": "Déjà réclamée" + }, + "signup": { + "step_plan": "Choisir le plan", + "step_shop": "Réclamer la boutique", + "step_account": "Compte", + "step_payment": "Paiement", + "choose_plan": "Choisissez votre plan", + "save_percent": "Économisez {percent}%", + "trial_info": "Nous collecterons vos informations de paiement, mais vous ne serez pas débité avant la fin de l'essai.", + "connect_shop": "Connectez votre boutique Letzshop", + "connect_optional": "Optionnel : Liez votre compte Letzshop pour synchroniser automatiquement les commandes.", + "connect_continue": "Connecter et continuer", + "skip_step": "Passer cette étape", + "create_account": "Créez votre compte", + "first_name": "Prénom", + "last_name": "Nom", + "company_name": "Nom de l'entreprise", + "email": "E-mail", + "password": "Mot de passe", + "password_hint": "Minimum 8 caractères", + "continue": "Continuer", + "continue_payment": "Continuer vers le paiement", + "back": "Retour", + "add_payment": "Ajouter un moyen de paiement", + "no_charge_note": "Vous ne serez pas débité avant la fin de votre essai de {trial_days} jours.", + "processing": "Traitement en cours...", + "start_trial": "Démarrer l'essai gratuit", + "creating_account": "Création de votre compte..." + }, + "success": { + "title": "Bienvenue sur Wizamart !", + "subtitle": "Votre compte a été créé et votre essai gratuit de {trial_days} jours a commencé.", + "what_next": "Et maintenant ?", + "step_connect": "Connecter Letzshop :", + "step_connect_desc": "Ajoutez votre clé API pour commencer à synchroniser automatiquement les commandes.", + "step_invoicing": "Configurer la facturation :", + "step_invoicing_desc": "Configurez vos paramètres de facturation pour la conformité luxembourgeoise.", + "step_products": "Importer les produits :", + "step_products_desc": "Synchronisez votre catalogue de produits depuis Letzshop.", + "go_to_dashboard": "Aller au tableau de bord", + "login_dashboard": "Connexion au tableau de bord", + "need_help": "Besoin d'aide pour démarrer ?", + "contact_support": "Contactez notre équipe support" + }, + "cta": { + "title": "Prêt à optimiser vos commandes ?", + "subtitle": "Rejoignez les vendeurs Letzshop qui font confiance à Wizamart pour leur gestion de commandes. Commencez votre essai gratuit de {trial_days} jours aujourd'hui.", + "button": "Essai gratuit" + }, + "footer": { + "tagline": "OMS léger pour les vendeurs Letzshop. Gérez commandes, stocks et facturation.", + "quick_links": "Liens rapides", + "platform": "Plateforme", + "contact": "Contact", + "copyright": "© {year} Wizamart. Conçu pour le e-commerce luxembourgeois.", + "privacy": "Politique de confidentialité", + "terms": "Conditions d'utilisation" + }, + "modern": { + "badge_integration": "Intégration officielle", + "badge_connect": "Connexion en 2 minutes", + "hero_title_1": "Conçu pour le e-commerce luxembourgeois", + "hero_title_2": "Le back-office que Letzshop ne vous donne pas", + "hero_subtitle": "Synchronisez les commandes, gérez les stocks, générez des factures avec la TVA correcte et possédez vos données clients. Tout en un seul endroit.", + "cta_trial": "Essai gratuit de {trial_days} jours", + "cta_how": "Voir comment ça marche", + "hero_note": "Aucune carte de crédit requise. Configuration en 5 minutes. Annulez à tout moment.", + "pain_title": "Ça vous dit quelque chose ?", + "pain_subtitle": "Ce sont les frustrations quotidiennes des vendeurs Letzshop", + "pain_manual": "Saisie manuelle des commandes", + "pain_manual_desc": "Copier-coller les commandes de Letzshop vers des tableurs. Chaque. Jour.", + "pain_inventory": "Chaos des stocks", + "pain_inventory_desc": "Le stock dans Letzshop ne correspond pas à la réalité. Les surventes arrivent.", + "pain_vat": "Mauvaises factures TVA", + "pain_vat_desc": "Les clients UE ont besoin de la TVA correcte. Votre comptable se plaint.", + "pain_customers": "Clients perdus", + "pain_customers_desc": "Letzshop possède vos données clients. Vous ne pouvez pas les recibler ou fidéliser.", + "how_title": "Comment ça marche", + "how_subtitle": "Du chaos au contrôle en 4 étapes", + "how_step1": "Connecter Letzshop", + "how_step1_desc": "Entrez vos identifiants API Letzshop. Fait en 2 minutes, aucune compétence technique requise.", + "how_step2": "Les commandes arrivent", + "how_step2_desc": "Les commandes se synchronisent automatiquement. Confirmez et ajoutez le suivi directement depuis Wizamart.", + "how_step3": "Générer des factures", + "how_step3_desc": "Un clic pour créer des factures PDF conformes avec la TVA correcte pour tout pays UE.", + "how_step4": "Développez votre entreprise", + "how_step4_desc": "Exportez les clients pour le marketing. Suivez les stocks. Concentrez-vous sur la vente, pas les tableurs.", + "features_title": "Tout ce dont un vendeur Letzshop a besoin", + "features_subtitle": "Les outils opérationnels que Letzshop ne fournit pas", + "cta_final_title": "Prêt à prendre le contrôle de votre entreprise Letzshop ?", + "cta_final_subtitle": "Rejoignez les vendeurs luxembourgeois qui ont arrêté de lutter contre les tableurs et ont commencé à développer leur entreprise.", + "cta_final_note": "Aucune carte de crédit requise. Configuration en 5 minutes. Toutes les fonctionnalités Pro pendant l'essai." + } } } diff --git a/static/locales/lb.json b/static/locales/lb.json index 3d96e405..4b7ae7b9 100644 --- a/static/locales/lb.json +++ b/static/locales/lb.json @@ -471,5 +471,202 @@ "time": "HH:mm", "datetime": "DD.MM.YYYY HH:mm", "currency": "{amount} {symbol}" + }, + "platform": { + "nav": { + "pricing": "Präisser", + "find_shop": "Fannt Äre Buttek", + "start_trial": "Gratis Testen", + "admin_login": "Admin Login", + "vendor_login": "Händler Login", + "toggle_menu": "Menü wiesselen", + "toggle_dark_mode": "Däischter Modus wiesselen" + }, + "hero": { + "badge": "{trial_days}-Deeg gratis Testversioun - Keng Kreditkaart néideg", + "title": "Liichtt OMS fir Letzshop Verkeefer", + "subtitle": "Bestellungsverwaltung, Lager an Rechnungsstellung fir de lëtzebuergeschen E-Commerce. Schluss mat Tabellen. Féiert Äert Geschäft.", + "cta_trial": "Gratis Testen", + "cta_find_shop": "Fannt Äre Letzshop Buttek" + }, + "pricing": { + "title": "Einfach, transparent Präisser", + "subtitle": "Wielt de Plang deen zu Ärer Firma passt. All Pläng enthalen eng {trial_days}-Deeg gratis Testversioun.", + "monthly": "Monatslech", + "annual": "Jäerlech", + "save_months": "Spuert 2 Méint!", + "most_popular": "AM BELÉIFSTEN", + "recommended": "EMPFOHLEN", + "contact_sales": "Kontaktéiert eis", + "start_trial": "Gratis Testen", + "per_month": "/Mount", + "per_year": "/Joer", + "custom": "Personnaliséiert", + "orders_per_month": "{count} Bestellungen/Mount", + "unlimited_orders": "Onbegrenzt Bestellungen", + "products_limit": "{count} Produkter", + "unlimited_products": "Onbegrenzt Produkter", + "team_members": "{count} Teammemberen", + "unlimited_team": "Onbegrenzt Team", + "letzshop_sync": "Letzshop Synchronisatioun", + "eu_vat_invoicing": "EU TVA Rechnungen", + "analytics_dashboard": "Analyse Dashboard", + "api_access": "API Zougang", + "products": "Produkter", + "team_member": "Teammember", + "unlimited": "Onbegrenzt", + "order_history": "Méint Bestellungshistorique", + "trial_note": "All Pläng enthalen eng {trial_days}-Deeg gratis Testversioun. Keng Kreditkaart néideg.", + "back_home": "Zréck op d'Haaptsäit" + }, + "features": { + "letzshop_sync": "Letzshop Synchronisatioun", + "inventory_basic": "Basis Lagerverwaltung", + "inventory_locations": "Lagerstanduerten", + "inventory_purchase_orders": "Bestellungen", + "invoice_lu": "Lëtzebuerg TVA Rechnungen", + "invoice_eu_vat": "EU TVA Rechnungen", + "invoice_bulk": "Massrechnungen", + "customer_view": "Clientelëscht", + "customer_export": "Client Export", + "analytics_dashboard": "Analyse Dashboard", + "accounting_export": "Comptabilitéits Export", + "api_access": "API Zougang", + "automation_rules": "Automatiséierungsreegelen", + "team_roles": "Team Rollen an Autorisatiounen", + "white_label": "White-Label Optioun", + "multi_vendor": "Multi-Händler Ënnerstëtzung", + "custom_integrations": "Personnaliséiert Integratiounen", + "sla_guarantee": "SLA Garantie", + "dedicated_support": "Dedizéierte Kontobetreier" + }, + "addons": { + "title": "Erweidert Är Plattform", + "subtitle": "Füügt Är Mark, professionell Email a verbessert Sécherheet derbäi.", + "per_year": "/Joer", + "per_month": "/Mount", + "custom_domain": "Eegen Domain", + "custom_domain_desc": "Benotzt Är eegen Domain (mengdomain.lu)", + "premium_ssl": "Premium SSL", + "premium_ssl_desc": "EV Zertifikat fir Vertrauensbadgen", + "email_package": "Email Package", + "email_package_desc": "Professionell Email Adressen" + }, + "find_shop": { + "title": "Fannt Äre Letzshop Buttek", + "subtitle": "Verkaaft Dir schonn op Letzshop? Gitt Är Buttek URL an fir unzefänken.", + "placeholder": "Gitt Är Letzshop URL an (z.B. letzshop.lu/vendors/mäi-buttek)", + "button": "Mäi Buttek fannen", + "claim_shop": "Dëse Buttek reklaméieren", + "already_claimed": "Scho reklaméiert", + "no_account": "Kee Letzshop Kont?", + "signup_letzshop": "Registréiert Iech éischt bei Letzshop", + "then_connect": ", dann kommt zréck fir Äre Buttek ze verbannen.", + "search_placeholder": "Letzshop URL oder Butteknumm aginn...", + "search_button": "Sichen", + "examples": "Beispiller:", + "claim_button": "Dëse Buttek reklaméieren a gratis testen", + "not_found": "Mir konnten keen Letzshop Buttek mat dëser URL fannen. Iwwerpréift w.e.g. a probéiert nach eng Kéier.", + "or_signup": "Oder registréiert Iech ouni Letzshop Verbindung", + "need_help": "Braucht Dir Hëllef?", + "no_account_yet": "Dir hutt nach keen Letzshop Kont? Keen Problem!", + "create_letzshop": "Letzshop Kont erstellen", + "signup_without": "Ouni Letzshop registréieren", + "looking_up": "Sich Äre Buttek...", + "found": "Fonnt:", + "claimed_badge": "Scho reklaméiert" + }, + "signup": { + "step_plan": "Plang wielen", + "step_shop": "Buttek reklaméieren", + "step_account": "Kont", + "step_payment": "Bezuelung", + "choose_plan": "Wielt Äre Plang", + "save_percent": "Spuert {percent}%", + "trial_info": "Mir sammelen Är Bezuelungsinformatiounen, awer Dir gitt eréischt nom Enn vun der Testperiod belaaschtt.", + "connect_shop": "Verbannt Äre Letzshop Buttek", + "connect_optional": "Optional: Verlinkt Äre Letzshop Kont fir Bestellungen automatesch ze synchroniséieren.", + "connect_continue": "Verbannen a weider", + "skip_step": "Dëse Schrëtt iwwersprangen", + "create_account": "Erstellt Äre Kont", + "first_name": "Virnumm", + "last_name": "Numm", + "company_name": "Firmennumm", + "email": "Email", + "password": "Passwuert", + "password_hint": "Mindestens 8 Zeechen", + "continue": "Weider", + "continue_payment": "Weider zur Bezuelung", + "back": "Zréck", + "add_payment": "Bezuelungsmethod derbäisetzen", + "no_charge_note": "Dir gitt eréischt nom Enn vun Ärer {trial_days}-Deeg Testperiod belaaschtt.", + "processing": "Veraarbechtung...", + "start_trial": "Gratis Testversioun starten", + "creating_account": "Erstellt Äre Kont..." + }, + "success": { + "title": "Wëllkomm bei Wizamart!", + "subtitle": "Äre Kont gouf erstallt an Är {trial_days}-Deeg gratis Testversioun huet ugefaang.", + "what_next": "Wat kënnt duerno?", + "step_connect": "Letzshop verbannen:", + "step_connect_desc": "Füügt Äre API Schlëssel derbäi fir Bestellungen automatesch ze synchroniséieren.", + "step_invoicing": "Rechnungsstellung astellen:", + "step_invoicing_desc": "Konfiguréiert Är Rechnungsastellungen fir Lëtzebuerger Konformitéit.", + "step_products": "Produkter importéieren:", + "step_products_desc": "Synchroniséiert Äre Produktkatalog vu Letzshop.", + "go_to_dashboard": "Zum Dashboard", + "login_dashboard": "Am Dashboard umellen", + "need_help": "Braucht Dir Hëllef beim Ufänken?", + "contact_support": "Kontaktéiert eist Support Team" + }, + "cta": { + "title": "Prett fir Är Bestellungen ze optiméieren?", + "subtitle": "Schléisst Iech Letzshop Händler un déi Wizamart fir hir Bestellungsverwaltung vertrauen. Fänkt haut Är {trial_days}-Deeg gratis Testversioun un.", + "button": "Gratis Testen" + }, + "footer": { + "tagline": "Liichtt OMS fir Letzshop Verkeefer. Verwaltt Bestellungen, Lager an Rechnungen.", + "quick_links": "Séier Linken", + "platform": "Plattform", + "contact": "Kontakt", + "copyright": "© {year} Wizamart. Gemaach fir de lëtzebuergeschen E-Commerce.", + "privacy": "Dateschutzrichtlinn", + "terms": "Notzungsbedéngungen" + }, + "modern": { + "badge_integration": "Offiziell Integratioun", + "badge_connect": "An 2 Minutten verbannen", + "hero_title_1": "Gemaach fir de lëtzebuergeschen E-Commerce", + "hero_title_2": "De Back-Office dee Letzshop Iech net gëtt", + "hero_subtitle": "Synchroniséiert Bestellungen, verwaltt Lager, erstellt Rechnunge mat der korrekter TVA a besëtzt Är Clientsdaten. Alles un engem Plaz.", + "cta_trial": "{trial_days}-Deeg gratis testen", + "cta_how": "Kuckt wéi et funktionéiert", + "hero_note": "Keng Kreditkaart néideg. Setup an 5 Minutten. Ëmmer kënnegen.", + "pain_title": "Kënnt Iech dat bekannt vir?", + "pain_subtitle": "Dat sinn d'deeglech Frustratioune vu Letzshop Verkeefer", + "pain_manual": "Manuell Bestellungsagab", + "pain_manual_desc": "Bestellunge vu Letzshop an Tabelle kopéieren. All. Eenzelen. Dag.", + "pain_inventory": "Lager Chaos", + "pain_inventory_desc": "De Stock an Letzshop stëmmt net mat der Realitéit iwwereneen. Iwwerverkeef passéieren.", + "pain_vat": "Falsch TVA Rechnungen", + "pain_vat_desc": "EU Cliente brauchen déi korrekt TVA. Äre Comptabel beschwéiert sech.", + "pain_customers": "Verluer Clienten", + "pain_customers_desc": "Letzshop besëtzt Är Clientsdaten. Dir kënnt se net retargeten oder Loyalitéit opbauen.", + "how_title": "Wéi et funktionéiert", + "how_subtitle": "Vum Chaos zur Kontroll an 4 Schrëtt", + "how_step1": "Letzshop verbannen", + "how_step1_desc": "Gitt Är Letzshop API Zougangsdaten an. An 2 Minutte fäerdeg, keng technesch Kenntnisser néideg.", + "how_step2": "Bestellunge kommen eran", + "how_step2_desc": "Bestellunge ginn automatesch synchroniséiert. Confirméiert an Tracking direkt vu Wizamart derbäisetzen.", + "how_step3": "Rechnunge generéieren", + "how_step3_desc": "Ee Klick fir konform PDF Rechnunge mat korrekter TVA fir all EU Land ze erstellen.", + "how_step4": "Äert Geschäft ausbauen", + "how_step4_desc": "Exportéiert Clientë fir Marketing. Verfolgt Lagerstänn. Konzentréiert Iech op de Verkaf, net op Tabellen.", + "features_title": "Alles wat e Letzshop Verkeefer brauch", + "features_subtitle": "D'operativ Tools déi Letzshop net bitt", + "cta_final_title": "Prett fir d'Kontroll iwwer Äert Letzshop Geschäft ze iwwerhuelen?", + "cta_final_subtitle": "Schléisst Iech lëtzebuerger Händler un déi opgehalen hunn géint Tabellen ze kämpfen an ugefaang hunn hiert Geschäft auszbauen.", + "cta_final_note": "Keng Kreditkaart néideg. Setup an 5 Minutten. Voll Professional Fonctiounen während der Testperiod." + } } }