From 008b45b2c280e60d42db2a5f22959418a7e98667 Mon Sep 17 00:00:00 2001 From: magdev Date: Wed, 21 Jan 2026 20:38:49 +0100 Subject: [PATCH] Update translations for v0.0.7 - Updated POT template with all new strings from v0.0.4-0.0.7: - Settings page strings - Bulk actions and search/filter strings - CSV import/export strings - License transfer (customer) strings - Email expiration warning strings - Dashboard strings - Updated German (de_CH) translation with all new strings - Compiled MO binary file Co-Authored-By: Claude Opus 4.5 --- languages/wc-licensed-product-de_CH.mo | Bin 0 -> 21788 bytes languages/wc-licensed-product-de_CH.po | 690 ++++++++++++++++++++++--- languages/wc-licensed-product.pot | 688 +++++++++++++++++++++--- 3 files changed, 1253 insertions(+), 125 deletions(-) create mode 100644 languages/wc-licensed-product-de_CH.mo diff --git a/languages/wc-licensed-product-de_CH.mo b/languages/wc-licensed-product-de_CH.mo new file mode 100644 index 0000000000000000000000000000000000000000..9169138b03ee5e1bdf272229264bafa45cd95d20 GIT binary patch literal 21788 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 literal 0 HcmV?d00001 diff --git a/languages/wc-licensed-product-de_CH.po b/languages/wc-licensed-product-de_CH.po index 03903ab..941bdc9 100644 --- a/languages/wc-licensed-product-de_CH.po +++ b/languages/wc-licensed-product-de_CH.po @@ -3,10 +3,10 @@ # This file is distributed under the GPL-2.0-or-later. msgid "" msgstr "" -"Project-Id-Version: WC Licensed Product 0.0.1\n" +"Project-Id-Version: WC Licensed Product 0.0.7\n" "Report-Msgid-Bugs-To: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/issues\n" -"POT-Creation-Date: 2024-01-01T00:00:00+00:00\n" -"PO-Revision-Date: 2024-01-01T00:00:00+00:00\n" +"POT-Creation-Date: 2026-01-21T00:00:00+00:00\n" +"PO-Revision-Date: 2026-01-21T00:00:00+00:00\n" "Last-Translator: Marco Graetsch \n" "Language-Team: German (Switzerland) \n" "Language: de_CH\n" @@ -15,242 +15,806 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: wc-licensed-product.php +#. Plugin requirement message msgid "%s requires WooCommerce to be installed and active." msgstr "%s benötigt WooCommerce als installierte und aktivierte Erweiterung." -#: wc-licensed-product.php msgid "WC Licensed Product requires WooCommerce to be installed and active." msgstr "WC Licensed Product benötigt WooCommerce als installierte und aktivierte Erweiterung." -#: src/Product/LicensedProductType.php +#. Product type msgid "Licensed Product" msgstr "Lizenziertes Produkt" -#: src/Product/LicensedProductType.php +msgid "Licensed Products" +msgstr "Lizenzierte Produkte" + +#. License Settings tab msgid "License Settings" msgstr "Lizenz-Einstellungen" -#: src/Product/LicensedProductType.php msgid "Max Activations" msgstr "Max. Aktivierungen" -#: src/Product/LicensedProductType.php msgid "Maximum number of domain activations per license. Default: 1" msgstr "Maximale Anzahl der Domain-Aktivierungen pro Lizenz. Standard: 1" -#: src/Product/LicensedProductType.php +msgid "Maximum number of domain activations per license. Default: %d" +msgstr "Maximale Anzahl der Domain-Aktivierungen pro Lizenz. Standard: %d" + msgid "License Validity (Days)" msgstr "Lizenz-Gültigkeit (Tage)" -#: src/Product/LicensedProductType.php msgid "Number of days the license is valid. Leave empty for lifetime license." msgstr "Anzahl Tage, die die Lizenz gültig ist. Leer lassen für eine lebenslange Lizenz." -#: src/Product/LicensedProductType.php +msgid "Number of days the license is valid. Leave empty for default (%s)." +msgstr "Anzahl Tage, die die Lizenz gültig ist. Leer lassen für Standard (%s)." + msgid "Bind to Major Version" msgstr "An Hauptversion binden" -#: src/Product/LicensedProductType.php msgid "If enabled, licenses are bound to the major version at purchase time." msgstr "Falls aktiviert, werden Lizenzen an die Hauptversion zum Kaufzeitpunkt gebunden." -#: src/Product/LicensedProductType.php +msgid "If enabled, licenses are bound to the major version at purchase time. Default: %s" +msgstr "Falls aktiviert, werden Lizenzen an die Hauptversion zum Kaufzeitpunkt gebunden. Standard: %s" + +msgid "If enabled, licenses are bound to the major version at purchase time by default." +msgstr "Falls aktiviert, werden Lizenzen standardmässig an die Hauptversion zum Kaufzeitpunkt gebunden." + msgid "Current Version" msgstr "Aktuelle Version" -#: src/Product/LicensedProductType.php msgid "Current software version (e.g., 1.0.0)" msgstr "Aktuelle Software-Version (z.B. 1.0.0)" -#: src/License/LicenseManager.php +#. Global settings +msgid "Default License Settings" +msgstr "Standard Lizenz-Einstellungen" + +msgid "Default Max Activations" +msgstr "Standard Max. Aktivierungen" + +msgid "Default maximum number of domain activations per license." +msgstr "Standard maximale Anzahl der Domain-Aktivierungen pro Lizenz." + +msgid "Default License Validity (Days)" +msgstr "Standard Lizenz-Gültigkeit (Tage)" + +msgid "Default number of days a license is valid. Leave empty or set to 0 for lifetime licenses." +msgstr "Standard Anzahl Tage, die eine Lizenz gültig ist. Leer lassen oder auf 0 setzen für lebenslange Lizenzen." + +msgid "Default Bind to Major Version" +msgstr "Standard An Hauptversion binden" + +msgid "These settings serve as defaults for new licensed products. Individual product settings override these defaults." +msgstr "Diese Einstellungen dienen als Standard für neue lizenzierte Produkte. Individuelle Produkteinstellungen überschreiben diese Standards." + +msgid "Leave fields empty to use default settings from %s." +msgstr "Felder leer lassen, um Standardeinstellungen von %s zu verwenden." + +msgid "WooCommerce > Settings > Licensed Products" +msgstr "WooCommerce > Einstellungen > Lizenzierte Produkte" + +msgid "Settings" +msgstr "Einstellungen" + +#. License validation messages msgid "License key not found." msgstr "Lizenzschlüssel nicht gefunden." -#: src/License/LicenseManager.php msgid "This license has been revoked." msgstr "Diese Lizenz wurde widerrufen." -#: src/License/LicenseManager.php msgid "This license has expired." msgstr "Diese Lizenz ist abgelaufen." -#: src/License/LicenseManager.php msgid "This license is inactive." msgstr "Diese Lizenz ist inaktiv." -#: src/License/LicenseManager.php msgid "This license is not valid for this domain." msgstr "Diese Lizenz ist für diese Domain nicht gültig." -#: src/Api/RestApiController.php msgid "This license is not valid." msgstr "Diese Lizenz ist ungültig." -#: src/Api/RestApiController.php msgid "License is already activated for this domain." msgstr "Die Lizenz ist bereits für diese Domain aktiviert." -#: src/Api/RestApiController.php msgid "Maximum number of activations reached." msgstr "Maximale Anzahl der Aktivierungen erreicht." -#: src/Api/RestApiController.php msgid "Failed to activate license." msgstr "Lizenz konnte nicht aktiviert werden." -#: src/Api/RestApiController.php msgid "License activated successfully." msgstr "Lizenz erfolgreich aktiviert." -#: src/Api/RestApiController.php msgid "License is not activated for this domain." msgstr "Die Lizenz ist für diese Domain nicht aktiviert." -#: src/Api/RestApiController.php msgid "Failed to deactivate license." msgstr "Lizenz konnte nicht deaktiviert werden." -#: src/Api/RestApiController.php msgid "License deactivated successfully." msgstr "Lizenz erfolgreich deaktiviert." -#: src/Checkout/CheckoutController.php +msgid "Your license is not active. Please contact support." +msgstr "Ihre Lizenz ist nicht aktiv. Bitte kontaktieren Sie den Support." + +msgid "Too many requests. Please try again later." +msgstr "Zu viele Anfragen. Bitte versuchen Sie es später erneut." + +#. Checkout msgid "License Domain" msgstr "Lizenz-Domain" -#: src/Checkout/CheckoutController.php msgid "Domain for License Activation" msgstr "Domain für Lizenz-Aktivierung" -#: src/Checkout/CheckoutController.php msgid "required" msgstr "erforderlich" -#: src/Checkout/CheckoutController.php msgid "example.com" msgstr "beispiel.ch" -#: src/Checkout/CheckoutController.php msgid "Enter the domain where you will use this license (without http:// or www)." msgstr "Geben Sie die Domain ein, auf der Sie diese Lizenz verwenden möchten (ohne http:// oder www)." -#: src/Checkout/CheckoutController.php msgid "Please enter a domain for your license activation." msgstr "Bitte geben Sie eine Domain für Ihre Lizenz-Aktivierung ein." -#: src/Checkout/CheckoutController.php msgid "Please enter a valid domain name." msgstr "Bitte geben Sie einen gültigen Domain-Namen ein." -#: src/Checkout/CheckoutController.php msgid "License Domain:" msgstr "Lizenz-Domain:" -#: src/Frontend/AccountController.php +msgid "Licensed Domain:" +msgstr "Lizenzierte Domain:" + +#. Frontend - Customer account msgid "Please log in to view your licenses." msgstr "Bitte melden Sie sich an, um Ihre Lizenzen zu sehen." -#: src/Frontend/AccountController.php +msgid "Please log in to transfer a license." +msgstr "Bitte melden Sie sich an, um eine Lizenz zu übertragen." + msgid "Licenses" msgstr "Lizenzen" -#: src/Frontend/AccountController.php msgid "Unknown Product" msgstr "Unbekanntes Produkt" -#: src/Frontend/AccountController.php msgid "You have no licenses yet." msgstr "Sie haben noch keine Lizenzen." -#: src/Frontend/AccountController.php msgid "License Key" msgstr "Lizenzschlüssel" -#: src/Frontend/AccountController.php +msgid "License Key:" +msgstr "Lizenzschlüssel:" + msgid "Product" msgstr "Produkt" -#: src/Frontend/AccountController.php +msgid "Product:" +msgstr "Produkt:" + msgid "Domain" msgstr "Domain" -#: src/Frontend/AccountController.php +msgid "Domain:" +msgstr "Domain:" + msgid "Status" msgstr "Status" -#: src/Frontend/AccountController.php msgid "Expires" msgstr "Läuft ab" -#: src/Frontend/AccountController.php +msgid "Expires:" +msgstr "Läuft ab:" + msgid "Never" msgstr "Nie" -#: src/Admin/AdminController.php +msgid "Lifetime" +msgstr "Lebenslang" + +msgid "Copy to clipboard" +msgstr "In Zwischenablage kopieren" + +msgid "Copied!" +msgstr "Kopiert!" + +msgid "Copy failed" +msgstr "Kopieren fehlgeschlagen" + +#. License transfer (customer) +msgid "Transfer" +msgstr "Übertragen" + +msgid "Transfer to new domain" +msgstr "Auf neue Domain übertragen" + +msgid "Transfer License" +msgstr "Lizenz übertragen" + +msgid "Transfer License to New Domain" +msgstr "Lizenz auf neue Domain übertragen" + +msgid "Current Domain" +msgstr "Aktuelle Domain" + +msgid "New Domain" +msgstr "Neue Domain" + +msgid "Enter the new domain without http:// or www." +msgstr "Geben Sie die neue Domain ohne http:// oder www ein." + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Close" +msgstr "Schliessen" + +msgid "Please enter a valid domain." +msgstr "Bitte geben Sie eine gültige Domain ein." + +msgid "Are you sure you want to transfer this license to a new domain? This action cannot be undone." +msgstr "Sind Sie sicher, dass Sie diese Lizenz auf eine neue Domain übertragen möchten? Diese Aktion kann nicht rückgängig gemacht werden." + +msgid "License transferred successfully!" +msgstr "Lizenz erfolgreich übertragen!" + +msgid "Transfer failed. Please try again." +msgstr "Übertragung fehlgeschlagen. Bitte versuchen Sie es erneut." + +msgid "Invalid license." +msgstr "Ungültige Lizenz." + +msgid "License not found." +msgstr "Lizenz nicht gefunden." + +msgid "You do not have permission to transfer this license." +msgstr "Sie haben keine Berechtigung, diese Lizenz zu übertragen." + +msgid "Revoked licenses cannot be transferred." +msgstr "Widerrufene Lizenzen können nicht übertragen werden." + +msgid "Expired licenses cannot be transferred." +msgstr "Abgelaufene Lizenzen können nicht übertragen werden." + +msgid "The new domain is the same as the current domain." +msgstr "Die neue Domain ist dieselbe wie die aktuelle Domain." + +#. Available Downloads +msgid "Available Downloads" +msgstr "Verfügbare Downloads" + +msgid "Version %s" +msgstr "Version %s" + +msgid "Download Error" +msgstr "Download-Fehler" + +msgid "Invalid download link." +msgstr "Ungültiger Download-Link." + +msgid "Invalid download link format." +msgstr "Ungültiges Download-Link-Format." + +msgid "Download file not found." +msgstr "Download-Datei nicht gefunden." + +msgid "No download file available for this version." +msgstr "Keine Download-Datei für diese Version verfügbar." + +msgid "This version is no longer available for download." +msgstr "Diese Version ist nicht mehr zum Download verfügbar." + +msgid "Version does not match your licensed product." +msgstr "Version stimmt nicht mit Ihrem lizenzierten Produkt überein." + +msgid "Permission denied." +msgstr "Zugriff verweigert." + +msgid "You do not have permission to download this file." +msgstr "Sie haben keine Berechtigung, diese Datei herunterzuladen." + +#. Admin - Licenses page msgid "Security check failed." msgstr "Sicherheitsüberprüfung fehlgeschlagen." -#: src/Admin/AdminController.php msgid "License updated successfully." msgstr "Lizenz erfolgreich aktualisiert." -#: src/Admin/AdminController.php msgid "License deleted successfully." msgstr "Lizenz erfolgreich gelöscht." -#: src/Admin/AdminController.php msgid "License revoked successfully." msgstr "Lizenz erfolgreich widerrufen." -#: src/Admin/AdminController.php +msgid "License extended successfully." +msgstr "Lizenz erfolgreich verlängert." + +msgid "License set to lifetime successfully." +msgstr "Lizenz erfolgreich auf lebenslang gesetzt." + +msgid "License transferred to new domain successfully." +msgstr "Lizenz erfolgreich auf neue Domain übertragen." + +msgid "Failed to transfer license. The license may be revoked or invalid." +msgstr "Lizenzübertragung fehlgeschlagen. Die Lizenz könnte widerrufen oder ungültig sein." + msgid "Unknown" msgstr "Unbekannt" -#: src/Admin/AdminController.php msgid "Guest" msgstr "Gast" -#: src/Admin/AdminController.php msgid "Customer" msgstr "Kunde" -#: src/Admin/AdminController.php msgid "Actions" msgstr "Aktionen" -#: src/Admin/AdminController.php msgid "No licenses found." msgstr "Keine Lizenzen gefunden." -#: src/Admin/AdminController.php msgid "Are you sure?" msgstr "Sind Sie sicher?" -#: src/Admin/AdminController.php msgid "Revoke" msgstr "Widerrufen" -#: src/Admin/AdminController.php msgid "Are you sure you want to delete this license?" msgstr "Sind Sie sicher, dass Sie diese Lizenz löschen möchten?" -#: src/Admin/AdminController.php msgid "Delete" msgstr "Löschen" -#: src/Admin/AdminController.php msgid "License" msgstr "Lizenz" -#: src/Admin/AdminController.php msgid "No domain specified" msgstr "Keine Domain angegeben" -#: src/Admin/AdminController.php msgid "Total licenses:" msgstr "Lizenzen insgesamt:" -#: src/Admin/AdminController.php msgid "of" msgstr "von" + +msgid "Active" +msgstr "Aktiv" + +msgid "Inactive" +msgstr "Inaktiv" + +msgid "Expired" +msgstr "Abgelaufen" + +msgid "Revoked" +msgstr "Widerrufen" + +msgid "Activate" +msgstr "Aktivieren" + +msgid "Deactivate" +msgstr "Deaktivieren" + +#. Admin - Bulk actions +msgid "Bulk Actions" +msgstr "Massenaktionen" + +msgid "Apply" +msgstr "Anwenden" + +msgid "Extend 30 days" +msgstr "30 Tage verlängern" + +msgid "Extend 90 days" +msgstr "90 Tage verlängern" + +msgid "Extend 1 year" +msgstr "1 Jahr verlängern" + +msgid "Extend by 30 days" +msgstr "Um 30 Tage verlängern" + +msgid "Set to lifetime" +msgstr "Auf lebenslang setzen" + +msgid "Quick Actions" +msgstr "Schnellaktionen" + +#. Plural forms for bulk actions +msgid "%d license activated." +msgid_plural "%d licenses activated." +msgstr[0] "%d Lizenz aktiviert." +msgstr[1] "%d Lizenzen aktiviert." + +msgid "%d license deactivated." +msgid_plural "%d licenses deactivated." +msgstr[0] "%d Lizenz deaktiviert." +msgstr[1] "%d Lizenzen deaktiviert." + +msgid "%d license revoked." +msgid_plural "%d licenses revoked." +msgstr[0] "%d Lizenz widerrufen." +msgstr[1] "%d Lizenzen widerrufen." + +msgid "%d license deleted." +msgid_plural "%d licenses deleted." +msgstr[0] "%d Lizenz gelöscht." +msgstr[1] "%d Lizenzen gelöscht." + +msgid "%d license extended." +msgid_plural "%d licenses extended." +msgstr[0] "%d Lizenz verlängert." +msgstr[1] "%d Lizenzen verlängert." + +#. Admin - Search and Filter +msgid "Search" +msgstr "Suchen" + +msgid "Search Licenses" +msgstr "Lizenzen durchsuchen" + +msgid "Search license key or domain..." +msgstr "Lizenzschlüssel oder Domain suchen..." + +msgid "Filter" +msgstr "Filtern" + +msgid "Clear" +msgstr "Zurücksetzen" + +msgid "All Statuses" +msgstr "Alle Status" + +msgid "All Products" +msgstr "Alle Produkte" + +msgid "Showing" +msgstr "Anzeige" + +msgid "filtered" +msgstr "gefiltert" + +msgid "item" +msgstr "Eintrag" + +msgid "items" +msgstr "Einträge" + +#. Admin - Export/Import +msgid "Export CSV" +msgstr "CSV exportieren" + +msgid "Export to CSV" +msgstr "Als CSV exportieren" + +msgid "No licenses to export." +msgstr "Keine Lizenzen zum Exportieren." + +msgid "You do not have permission to export licenses." +msgstr "Sie haben keine Berechtigung, Lizenzen zu exportieren." + +msgid "Import CSV" +msgstr "CSV importieren" + +msgid "Import Licenses" +msgstr "Lizenzen importieren" + +msgid "Import Licenses from CSV" +msgstr "Lizenzen aus CSV importieren" + +msgid "Back to Licenses" +msgstr "Zurück zu Lizenzen" + +msgid "Upload a CSV file to import licenses. You can use the exported CSV format or a simplified format." +msgstr "Laden Sie eine CSV-Datei hoch, um Lizenzen zu importieren. Sie können das exportierte CSV-Format oder ein vereinfachtes Format verwenden." + +msgid "CSV Format" +msgstr "CSV-Format" + +msgid "The CSV file should contain the following columns:" +msgstr "Die CSV-Datei sollte die folgenden Spalten enthalten:" + +msgid "Full Format (from Export):" +msgstr "Vollständiges Format (vom Export):" + +msgid "Simplified Format:" +msgstr "Vereinfachtes Format:" + +msgid "Notes:" +msgstr "Hinweise:" + +msgid "Leave License Key empty to auto-generate." +msgstr "Lizenzschlüssel leer lassen für automatische Generierung." + +msgid "Status can be: active, inactive, expired, revoked (defaults to active)." +msgstr "Status kann sein: active, inactive, expired, revoked (Standard: active)." + +msgid "Expires At should be in YYYY-MM-DD format or \"Lifetime\"." +msgstr "Ablaufdatum sollte im Format JJJJ-MM-TT oder \"Lifetime\" sein." + +msgid "CSV File" +msgstr "CSV-Datei" + +msgid "Select a CSV file to import." +msgstr "Wählen Sie eine CSV-Datei zum Importieren." + +msgid "Options" +msgstr "Optionen" + +msgid "Skip first row (header row)" +msgstr "Erste Zeile überspringen (Kopfzeile)" + +msgid "Update existing licenses (by license key)" +msgstr "Bestehende Lizenzen aktualisieren (nach Lizenzschlüssel)" + +msgid "If enabled, licenses with matching keys will be updated instead of skipped." +msgstr "Falls aktiviert, werden Lizenzen mit übereinstimmenden Schlüsseln aktualisiert statt übersprungen." + +msgid "Error uploading file. Please try again." +msgstr "Fehler beim Hochladen der Datei. Bitte versuchen Sie es erneut." + +msgid "Invalid file type. Please upload a CSV file." +msgstr "Ungültiger Dateityp. Bitte laden Sie eine CSV-Datei hoch." + +msgid "Error reading file. Please check the file format." +msgstr "Fehler beim Lesen der Datei. Bitte überprüfen Sie das Dateiformat." + +msgid "An error occurred during import." +msgstr "Beim Import ist ein Fehler aufgetreten." + +msgid "You do not have permission to import licenses." +msgstr "Sie haben keine Berechtigung, Lizenzen zu importieren." + +msgid "Row missing domain" +msgstr "Zeile ohne Domain" + +msgid "Row missing valid product ID" +msgstr "Zeile ohne gültige Produkt-ID" + +msgid "Failed to import license for domain %s" +msgstr "Import der Lizenz für Domain %s fehlgeschlagen" + +#. Plural forms for import +msgid "%d license imported." +msgid_plural "%d licenses imported." +msgstr[0] "%d Lizenz importiert." +msgstr[1] "%d Lizenzen importiert." + +msgid "%d updated." +msgid_plural "%d updated." +msgstr[0] "%d aktualisiert." +msgstr[1] "%d aktualisiert." + +msgid "%d skipped." +msgid_plural "%d skipped." +msgstr[0] "%d übersprungen." +msgstr[1] "%d übersprungen." + +msgid "%d error." +msgid_plural "%d errors." +msgstr[0] "%d Fehler." +msgstr[1] "%d Fehler." + +#. Admin - Dashboard +msgid "License Dashboard" +msgstr "Lizenz-Dashboard" + +msgid "View Dashboard" +msgstr "Dashboard anzeigen" + +msgid "Manage Licenses" +msgstr "Lizenzen verwalten" + +msgid "View Licenses" +msgstr "Lizenzen anzeigen" + +msgid "Overview" +msgstr "Übersicht" + +msgid "Total Licenses" +msgstr "Lizenzen insgesamt" + +msgid "Expiring Soon (30 days)" +msgstr "Bald ablaufend (30 Tage)" + +msgid "expiring within the next 30 days." +msgstr "läuft innerhalb der nächsten 30 Tage ab." + +msgid "License Types" +msgstr "Lizenztypen" + +msgid "Time-limited Licenses" +msgstr "Zeitlich begrenzte Lizenzen" + +msgid "Lifetime Licenses" +msgstr "Lebenslange Lizenzen" + +msgid "Licenses Created (Last 12 Months)" +msgstr "Erstellte Lizenzen (letzte 12 Monate)" + +msgid "Top Products by Licenses" +msgstr "Top-Produkte nach Lizenzen" + +msgid "Top Domains" +msgstr "Top-Domains" + +msgid "No license data available yet." +msgstr "Noch keine Lizenzdaten verfügbar." + +msgid "license" +msgstr "Lizenz" + +msgid "licenses" +msgstr "Lizenzen" + +msgid "license is" +msgstr "Lizenz ist" + +msgid "licenses are" +msgstr "Lizenzen sind" + +msgid "%d days" +msgstr "%d Tage" + +#. Product Versions +msgid "Product Versions" +msgstr "Produktversionen" + +msgid "Add New Version" +msgstr "Neue Version hinzufügen" + +msgid "Add Version" +msgstr "Version hinzufügen" + +msgid "Version" +msgstr "Version" + +msgid "Use semantic versioning (e.g., 1.0.0)" +msgstr "Verwenden Sie semantische Versionierung (z.B. 1.0.0)" + +msgid "Release Notes" +msgstr "Versionshinweise" + +msgid "Download File" +msgstr "Download-Datei" + +msgid "Select File" +msgstr "Datei auswählen" + +msgid "Use this file" +msgstr "Diese Datei verwenden" + +msgid "Remove" +msgstr "Entfernen" + +msgid "Upload or select a file from the media library. Version will be auto-detected from filename (e.g., plugin-v1.2.3.zip)." +msgstr "Laden Sie eine Datei hoch oder wählen Sie eine aus der Mediathek. Die Version wird automatisch aus dem Dateinamen erkannt (z.B. plugin-v1.2.3.zip)." + +msgid "Or External URL" +msgstr "Oder externe URL" + +msgid "Alternative: Enter an external download URL instead of uploading a file." +msgstr "Alternativ: Geben Sie eine externe Download-URL ein, anstatt eine Datei hochzuladen." + +msgid "Existing Versions" +msgstr "Vorhandene Versionen" + +msgid "No versions found. Add your first version above." +msgstr "Keine Versionen gefunden. Fügen Sie Ihre erste Version oben hinzu." + +msgid "Uploaded file" +msgstr "Hochgeladene Datei" + +msgid "No download file" +msgstr "Keine Download-Datei" + +msgid "Released" +msgstr "Veröffentlicht" + +msgid "Are you sure you want to delete this version?" +msgstr "Sind Sie sicher, dass Sie diese Version löschen möchten?" + +msgid "Version added successfully." +msgstr "Version erfolgreich hinzugefügt." + +msgid "Version updated successfully." +msgstr "Version erfolgreich aktualisiert." + +msgid "Version deleted successfully." +msgstr "Version erfolgreich gelöscht." + +msgid "Failed to create version." +msgstr "Version konnte nicht erstellt werden." + +msgid "Failed to update version." +msgstr "Version konnte nicht aktualisiert werden." + +msgid "Failed to delete version." +msgstr "Version konnte nicht gelöscht werden." + +msgid "Invalid version format. Use semantic versioning (e.g., 1.0.0)." +msgstr "Ungültiges Versionsformat. Verwenden Sie semantische Versionierung (z.B. 1.0.0)." + +msgid "This version already exists." +msgstr "Diese Version existiert bereits." + +msgid "Please enter a version number." +msgstr "Bitte geben Sie eine Versionsnummer ein." + +msgid "Please enter a valid version number (e.g., 1.0.0)." +msgstr "Bitte geben Sie eine gültige Versionsnummer ein (z.B. 1.0.0)." + +msgid "Product ID and version are required." +msgstr "Produkt-ID und Version sind erforderlich." + +msgid "Version ID is required." +msgstr "Versions-ID ist erforderlich." + +msgid "Version not found." +msgstr "Version nicht gefunden." + +msgid "Select Download File" +msgstr "Download-Datei auswählen" + +msgid "An error occurred. Please try again." +msgstr "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut." + +#. Email notifications +msgid "Your License Keys" +msgstr "Ihre Lizenzschlüssel" + +msgid "YOUR LICENSE KEYS" +msgstr "IHRE LIZENZSCHLÜSSEL" + +msgid "You can also view your licenses in your account under \"Licenses\"." +msgstr "Sie können Ihre Lizenzen auch in Ihrem Konto unter \"Lizenzen\" einsehen." + +msgid "License Expiration Notice" +msgstr "Lizenzablauf-Benachrichtigung" + +msgid "Hello %s," +msgstr "Guten Tag %s," + +msgid "[%2$s] Your license for %1$s expires tomorrow" +msgstr "[%2$s] Ihre Lizenz für %1$s läuft morgen ab" + +msgid "[%3$s] Your license for %1$s expires in %2$d days" +msgstr "[%3$s] Ihre Lizenz für %1$s läuft in %2$d Tagen ab" + +msgid "Your license for %s will expire tomorrow (%s)." +msgstr "Ihre Lizenz für %s läuft morgen ab (%s)." + +msgid "Your license for %1$s will expire in %2$d days (%3$s)." +msgstr "Ihre Lizenz für %1$s läuft in %2$d Tagen ab (%3$s)." + +msgid "License Details" +msgstr "Lizenzdetails" + +msgid "To continue using this product, please renew your license before the expiration date." +msgstr "Um dieses Produkt weiterhin zu nutzen, verlängern Sie bitte Ihre Lizenz vor dem Ablaufdatum." + +msgid "View My Licenses" +msgstr "Meine Lizenzen anzeigen" + +msgid "This email was sent from %s." +msgstr "Diese E-Mail wurde von %s gesendet." + +msgid "Attention:" +msgstr "Achtung:" + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nein" diff --git a/languages/wc-licensed-product.pot b/languages/wc-licensed-product.pot index 9839307..81b58d0 100644 --- a/languages/wc-licensed-product.pot +++ b/languages/wc-licensed-product.pot @@ -2,9 +2,9 @@ # This file is distributed under the GPL-2.0-or-later. msgid "" msgstr "" -"Project-Id-Version: WC Licensed Product 0.0.1\n" +"Project-Id-Version: WC Licensed Product 0.0.7\n" "Report-Msgid-Bugs-To: https://src.bundespruefstelle.ch/magdev/wc-licensed-product/issues\n" -"POT-Creation-Date: 2024-01-01T00:00:00+00:00\n" +"POT-Creation-Date: 2026-01-21T00:00:00+00:00\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -12,242 +12,806 @@ msgstr "" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" -#: wc-licensed-product.php +#. Plugin requirement message msgid "%s requires WooCommerce to be installed and active." msgstr "" -#: wc-licensed-product.php msgid "WC Licensed Product requires WooCommerce to be installed and active." msgstr "" -#: src/Product/LicensedProductType.php +#. Product type msgid "Licensed Product" msgstr "" -#: src/Product/LicensedProductType.php +msgid "Licensed Products" +msgstr "" + +#. License Settings tab msgid "License Settings" msgstr "" -#: src/Product/LicensedProductType.php msgid "Max Activations" msgstr "" -#: src/Product/LicensedProductType.php msgid "Maximum number of domain activations per license. Default: 1" msgstr "" -#: src/Product/LicensedProductType.php +msgid "Maximum number of domain activations per license. Default: %d" +msgstr "" + msgid "License Validity (Days)" msgstr "" -#: src/Product/LicensedProductType.php msgid "Number of days the license is valid. Leave empty for lifetime license." msgstr "" -#: src/Product/LicensedProductType.php +msgid "Number of days the license is valid. Leave empty for default (%s)." +msgstr "" + msgid "Bind to Major Version" msgstr "" -#: src/Product/LicensedProductType.php msgid "If enabled, licenses are bound to the major version at purchase time." msgstr "" -#: src/Product/LicensedProductType.php +msgid "If enabled, licenses are bound to the major version at purchase time. Default: %s" +msgstr "" + +msgid "If enabled, licenses are bound to the major version at purchase time by default." +msgstr "" + msgid "Current Version" msgstr "" -#: src/Product/LicensedProductType.php msgid "Current software version (e.g., 1.0.0)" msgstr "" -#: src/License/LicenseManager.php +#. Global settings +msgid "Default License Settings" +msgstr "" + +msgid "Default Max Activations" +msgstr "" + +msgid "Default maximum number of domain activations per license." +msgstr "" + +msgid "Default License Validity (Days)" +msgstr "" + +msgid "Default number of days a license is valid. Leave empty or set to 0 for lifetime licenses." +msgstr "" + +msgid "Default Bind to Major Version" +msgstr "" + +msgid "These settings serve as defaults for new licensed products. Individual product settings override these defaults." +msgstr "" + +msgid "Leave fields empty to use default settings from %s." +msgstr "" + +msgid "WooCommerce > Settings > Licensed Products" +msgstr "" + +msgid "Settings" +msgstr "" + +#. License validation messages msgid "License key not found." msgstr "" -#: src/License/LicenseManager.php msgid "This license has been revoked." msgstr "" -#: src/License/LicenseManager.php msgid "This license has expired." msgstr "" -#: src/License/LicenseManager.php msgid "This license is inactive." msgstr "" -#: src/License/LicenseManager.php msgid "This license is not valid for this domain." msgstr "" -#: src/Api/RestApiController.php msgid "This license is not valid." msgstr "" -#: src/Api/RestApiController.php msgid "License is already activated for this domain." msgstr "" -#: src/Api/RestApiController.php msgid "Maximum number of activations reached." msgstr "" -#: src/Api/RestApiController.php msgid "Failed to activate license." msgstr "" -#: src/Api/RestApiController.php msgid "License activated successfully." msgstr "" -#: src/Api/RestApiController.php msgid "License is not activated for this domain." msgstr "" -#: src/Api/RestApiController.php msgid "Failed to deactivate license." msgstr "" -#: src/Api/RestApiController.php msgid "License deactivated successfully." msgstr "" -#: src/Checkout/CheckoutController.php +msgid "Your license is not active. Please contact support." +msgstr "" + +msgid "Too many requests. Please try again later." +msgstr "" + +#. Checkout msgid "License Domain" msgstr "" -#: src/Checkout/CheckoutController.php msgid "Domain for License Activation" msgstr "" -#: src/Checkout/CheckoutController.php msgid "required" msgstr "" -#: src/Checkout/CheckoutController.php msgid "example.com" msgstr "" -#: src/Checkout/CheckoutController.php msgid "Enter the domain where you will use this license (without http:// or www)." msgstr "" -#: src/Checkout/CheckoutController.php msgid "Please enter a domain for your license activation." msgstr "" -#: src/Checkout/CheckoutController.php msgid "Please enter a valid domain name." msgstr "" -#: src/Checkout/CheckoutController.php msgid "License Domain:" msgstr "" -#: src/Frontend/AccountController.php +msgid "Licensed Domain:" +msgstr "" + +#. Frontend - Customer account msgid "Please log in to view your licenses." msgstr "" -#: src/Frontend/AccountController.php +msgid "Please log in to transfer a license." +msgstr "" + msgid "Licenses" msgstr "" -#: src/Frontend/AccountController.php msgid "Unknown Product" msgstr "" -#: src/Frontend/AccountController.php msgid "You have no licenses yet." msgstr "" -#: src/Frontend/AccountController.php msgid "License Key" msgstr "" -#: src/Frontend/AccountController.php +msgid "License Key:" +msgstr "" + msgid "Product" msgstr "" -#: src/Frontend/AccountController.php +msgid "Product:" +msgstr "" + msgid "Domain" msgstr "" -#: src/Frontend/AccountController.php +msgid "Domain:" +msgstr "" + msgid "Status" msgstr "" -#: src/Frontend/AccountController.php msgid "Expires" msgstr "" -#: src/Frontend/AccountController.php +msgid "Expires:" +msgstr "" + msgid "Never" msgstr "" -#: src/Admin/AdminController.php +msgid "Lifetime" +msgstr "" + +msgid "Copy to clipboard" +msgstr "" + +msgid "Copied!" +msgstr "" + +msgid "Copy failed" +msgstr "" + +#. License transfer (customer) +msgid "Transfer" +msgstr "" + +msgid "Transfer to new domain" +msgstr "" + +msgid "Transfer License" +msgstr "" + +msgid "Transfer License to New Domain" +msgstr "" + +msgid "Current Domain" +msgstr "" + +msgid "New Domain" +msgstr "" + +msgid "Enter the new domain without http:// or www." +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Close" +msgstr "" + +msgid "Please enter a valid domain." +msgstr "" + +msgid "Are you sure you want to transfer this license to a new domain? This action cannot be undone." +msgstr "" + +msgid "License transferred successfully!" +msgstr "" + +msgid "Transfer failed. Please try again." +msgstr "" + +msgid "Invalid license." +msgstr "" + +msgid "License not found." +msgstr "" + +msgid "You do not have permission to transfer this license." +msgstr "" + +msgid "Revoked licenses cannot be transferred." +msgstr "" + +msgid "Expired licenses cannot be transferred." +msgstr "" + +msgid "The new domain is the same as the current domain." +msgstr "" + +#. Available Downloads +msgid "Available Downloads" +msgstr "" + +msgid "Version %s" +msgstr "" + +msgid "Download Error" +msgstr "" + +msgid "Invalid download link." +msgstr "" + +msgid "Invalid download link format." +msgstr "" + +msgid "Download file not found." +msgstr "" + +msgid "No download file available for this version." +msgstr "" + +msgid "This version is no longer available for download." +msgstr "" + +msgid "Version does not match your licensed product." +msgstr "" + +msgid "Permission denied." +msgstr "" + +msgid "You do not have permission to download this file." +msgstr "" + +#. Admin - Licenses page msgid "Security check failed." msgstr "" -#: src/Admin/AdminController.php msgid "License updated successfully." msgstr "" -#: src/Admin/AdminController.php msgid "License deleted successfully." msgstr "" -#: src/Admin/AdminController.php msgid "License revoked successfully." msgstr "" -#: src/Admin/AdminController.php +msgid "License extended successfully." +msgstr "" + +msgid "License set to lifetime successfully." +msgstr "" + +msgid "License transferred to new domain successfully." +msgstr "" + +msgid "Failed to transfer license. The license may be revoked or invalid." +msgstr "" + msgid "Unknown" msgstr "" -#: src/Admin/AdminController.php msgid "Guest" msgstr "" -#: src/Admin/AdminController.php msgid "Customer" msgstr "" -#: src/Admin/AdminController.php msgid "Actions" msgstr "" -#: src/Admin/AdminController.php msgid "No licenses found." msgstr "" -#: src/Admin/AdminController.php msgid "Are you sure?" msgstr "" -#: src/Admin/AdminController.php msgid "Revoke" msgstr "" -#: src/Admin/AdminController.php msgid "Are you sure you want to delete this license?" msgstr "" -#: src/Admin/AdminController.php msgid "Delete" msgstr "" -#: src/Admin/AdminController.php msgid "License" msgstr "" -#: src/Admin/AdminController.php msgid "No domain specified" msgstr "" -#: src/Admin/AdminController.php msgid "Total licenses:" msgstr "" -#: src/Admin/AdminController.php msgid "of" msgstr "" + +msgid "Active" +msgstr "" + +msgid "Inactive" +msgstr "" + +msgid "Expired" +msgstr "" + +msgid "Revoked" +msgstr "" + +msgid "Activate" +msgstr "" + +msgid "Deactivate" +msgstr "" + +#. Admin - Bulk actions +msgid "Bulk Actions" +msgstr "" + +msgid "Apply" +msgstr "" + +msgid "Extend 30 days" +msgstr "" + +msgid "Extend 90 days" +msgstr "" + +msgid "Extend 1 year" +msgstr "" + +msgid "Extend by 30 days" +msgstr "" + +msgid "Set to lifetime" +msgstr "" + +msgid "Quick Actions" +msgstr "" + +#. Plural forms for bulk actions +msgid "%d license activated." +msgid_plural "%d licenses activated." +msgstr[0] "" +msgstr[1] "" + +msgid "%d license deactivated." +msgid_plural "%d licenses deactivated." +msgstr[0] "" +msgstr[1] "" + +msgid "%d license revoked." +msgid_plural "%d licenses revoked." +msgstr[0] "" +msgstr[1] "" + +msgid "%d license deleted." +msgid_plural "%d licenses deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "%d license extended." +msgid_plural "%d licenses extended." +msgstr[0] "" +msgstr[1] "" + +#. Admin - Search and Filter +msgid "Search" +msgstr "" + +msgid "Search Licenses" +msgstr "" + +msgid "Search license key or domain..." +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Clear" +msgstr "" + +msgid "All Statuses" +msgstr "" + +msgid "All Products" +msgstr "" + +msgid "Showing" +msgstr "" + +msgid "filtered" +msgstr "" + +msgid "item" +msgstr "" + +msgid "items" +msgstr "" + +#. Admin - Export/Import +msgid "Export CSV" +msgstr "" + +msgid "Export to CSV" +msgstr "" + +msgid "No licenses to export." +msgstr "" + +msgid "You do not have permission to export licenses." +msgstr "" + +msgid "Import CSV" +msgstr "" + +msgid "Import Licenses" +msgstr "" + +msgid "Import Licenses from CSV" +msgstr "" + +msgid "Back to Licenses" +msgstr "" + +msgid "Upload a CSV file to import licenses. You can use the exported CSV format or a simplified format." +msgstr "" + +msgid "CSV Format" +msgstr "" + +msgid "The CSV file should contain the following columns:" +msgstr "" + +msgid "Full Format (from Export):" +msgstr "" + +msgid "Simplified Format:" +msgstr "" + +msgid "Notes:" +msgstr "" + +msgid "Leave License Key empty to auto-generate." +msgstr "" + +msgid "Status can be: active, inactive, expired, revoked (defaults to active)." +msgstr "" + +msgid "Expires At should be in YYYY-MM-DD format or \"Lifetime\"." +msgstr "" + +msgid "CSV File" +msgstr "" + +msgid "Select a CSV file to import." +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Skip first row (header row)" +msgstr "" + +msgid "Update existing licenses (by license key)" +msgstr "" + +msgid "If enabled, licenses with matching keys will be updated instead of skipped." +msgstr "" + +msgid "Error uploading file. Please try again." +msgstr "" + +msgid "Invalid file type. Please upload a CSV file." +msgstr "" + +msgid "Error reading file. Please check the file format." +msgstr "" + +msgid "An error occurred during import." +msgstr "" + +msgid "You do not have permission to import licenses." +msgstr "" + +msgid "Row missing domain" +msgstr "" + +msgid "Row missing valid product ID" +msgstr "" + +msgid "Failed to import license for domain %s" +msgstr "" + +#. Plural forms for import +msgid "%d license imported." +msgid_plural "%d licenses imported." +msgstr[0] "" +msgstr[1] "" + +msgid "%d updated." +msgid_plural "%d updated." +msgstr[0] "" +msgstr[1] "" + +msgid "%d skipped." +msgid_plural "%d skipped." +msgstr[0] "" +msgstr[1] "" + +msgid "%d error." +msgid_plural "%d errors." +msgstr[0] "" +msgstr[1] "" + +#. Admin - Dashboard +msgid "License Dashboard" +msgstr "" + +msgid "View Dashboard" +msgstr "" + +msgid "Manage Licenses" +msgstr "" + +msgid "View Licenses" +msgstr "" + +msgid "Overview" +msgstr "" + +msgid "Total Licenses" +msgstr "" + +msgid "Expiring Soon (30 days)" +msgstr "" + +msgid "expiring within the next 30 days." +msgstr "" + +msgid "License Types" +msgstr "" + +msgid "Time-limited Licenses" +msgstr "" + +msgid "Lifetime Licenses" +msgstr "" + +msgid "Licenses Created (Last 12 Months)" +msgstr "" + +msgid "Top Products by Licenses" +msgstr "" + +msgid "Top Domains" +msgstr "" + +msgid "No license data available yet." +msgstr "" + +msgid "license" +msgstr "" + +msgid "licenses" +msgstr "" + +msgid "license is" +msgstr "" + +msgid "licenses are" +msgstr "" + +msgid "%d days" +msgstr "" + +#. Product Versions +msgid "Product Versions" +msgstr "" + +msgid "Add New Version" +msgstr "" + +msgid "Add Version" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "Use semantic versioning (e.g., 1.0.0)" +msgstr "" + +msgid "Release Notes" +msgstr "" + +msgid "Download File" +msgstr "" + +msgid "Select File" +msgstr "" + +msgid "Use this file" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Upload or select a file from the media library. Version will be auto-detected from filename (e.g., plugin-v1.2.3.zip)." +msgstr "" + +msgid "Or External URL" +msgstr "" + +msgid "Alternative: Enter an external download URL instead of uploading a file." +msgstr "" + +msgid "Existing Versions" +msgstr "" + +msgid "No versions found. Add your first version above." +msgstr "" + +msgid "Uploaded file" +msgstr "" + +msgid "No download file" +msgstr "" + +msgid "Released" +msgstr "" + +msgid "Are you sure you want to delete this version?" +msgstr "" + +msgid "Version added successfully." +msgstr "" + +msgid "Version updated successfully." +msgstr "" + +msgid "Version deleted successfully." +msgstr "" + +msgid "Failed to create version." +msgstr "" + +msgid "Failed to update version." +msgstr "" + +msgid "Failed to delete version." +msgstr "" + +msgid "Invalid version format. Use semantic versioning (e.g., 1.0.0)." +msgstr "" + +msgid "This version already exists." +msgstr "" + +msgid "Please enter a version number." +msgstr "" + +msgid "Please enter a valid version number (e.g., 1.0.0)." +msgstr "" + +msgid "Product ID and version are required." +msgstr "" + +msgid "Version ID is required." +msgstr "" + +msgid "Version not found." +msgstr "" + +msgid "Select Download File" +msgstr "" + +msgid "An error occurred. Please try again." +msgstr "" + +#. Email notifications +msgid "Your License Keys" +msgstr "" + +msgid "YOUR LICENSE KEYS" +msgstr "" + +msgid "You can also view your licenses in your account under \"Licenses\"." +msgstr "" + +msgid "License Expiration Notice" +msgstr "" + +msgid "Hello %s," +msgstr "" + +msgid "[%2$s] Your license for %1$s expires tomorrow" +msgstr "" + +msgid "[%3$s] Your license for %1$s expires in %2$d days" +msgstr "" + +msgid "Your license for %s will expire tomorrow (%s)." +msgstr "" + +msgid "Your license for %1$s will expire in %2$d days (%3$s)." +msgstr "" + +msgid "License Details" +msgstr "" + +msgid "To continue using this product, please renew your license before the expiration date." +msgstr "" + +msgid "View My Licenses" +msgstr "" + +msgid "This email was sent from %s." +msgstr "" + +msgid "Attention:" +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr ""