Release v0.2.2 - Display file checksums in UI

Features:
- Add SHA256 column to admin product versions table
- Display file hash in customer account downloads section
- Style checksum file upload field consistently with package upload

Changes:
- Admin versions table shows truncated hash with full hash on hover
- Customer downloads show hash with shield icon indicator
- Updated German translations

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-22 17:35:25 +01:00
parent d2bf9aa330
commit f7490de69b
10 changed files with 244 additions and 166 deletions

View File

@@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WC Licensed Product 0.2.1\n"
"Report-Msgid-Bugs-To: magdev3.0@gmail.com\n"
"POT-Creation-Date: 2026-01-22 17:25+0100\n"
"POT-Creation-Date: 2026-01-22 17:32+0100\n"
"PO-Revision-Date: 2026-01-22T17:15:00+00:00\n"
"Last-Translator: Marco Graetsch <magdev3.0@gmail.com>\n"
"Language-Team: German (Switzerland) <de_CH@li.org>\n"
@@ -81,7 +81,7 @@ msgstr "Bearbeiten"
#: src/Admin/AdminController.php:146 src/Admin/AdminController.php:1303
#: src/Admin/AdminController.php:1323 src/Admin/AdminController.php:1344
#: src/Admin/OrderLicenseController.php:185
#: src/Frontend/AccountController.php:270
#: src/Frontend/AccountController.php:271
msgid "Cancel"
msgstr "Abbrechen"
@@ -99,25 +99,25 @@ msgstr "Speichern"
msgid "Lifetime"
msgstr "Lebenslang"
#: src/Admin/AdminController.php:149 src/Frontend/AccountController.php:308
#: src/Admin/AdminController.php:149 src/Frontend/AccountController.php:309
msgid "Copied!"
msgstr "Kopiert!"
#: src/Admin/AdminController.php:150 src/Frontend/AccountController.php:309
#: src/Admin/AdminController.php:150 src/Frontend/AccountController.php:310
msgid "Copy failed"
msgstr "Kopieren fehlgeschlagen"
#: src/Admin/AdminController.php:153 src/Admin/AdminController.php:875
#: src/Admin/AdminController.php:1194 src/Admin/AdminController.php:1317
#: src/Admin/VersionAdminController.php:172
#: src/Admin/VersionAdminController.php:394
#: src/Admin/VersionAdminController.php:180
#: src/Admin/VersionAdminController.php:409
msgid "Active"
msgstr "Aktiv"
#: src/Admin/AdminController.php:154 src/Admin/AdminController.php:882
#: src/Admin/AdminController.php:1195 src/Admin/AdminController.php:1318
#: src/Admin/VersionAdminController.php:172
#: src/Admin/VersionAdminController.php:394
#: src/Admin/VersionAdminController.php:180
#: src/Admin/VersionAdminController.php:409
msgid "Inactive"
msgstr "Inaktiv"
@@ -135,9 +135,9 @@ msgstr "Widerrufen"
#: src/Admin/AdminController.php:246 src/Admin/AdminController.php:298
#: src/Admin/AdminController.php:336 src/Admin/OrderLicenseController.php:301
#: src/Admin/OrderLicenseController.php:340
#: src/Admin/VersionAdminController.php:249
#: src/Admin/VersionAdminController.php:318
#: src/Admin/VersionAdminController.php:344
#: src/Admin/VersionAdminController.php:257
#: src/Admin/VersionAdminController.php:326
#: src/Admin/VersionAdminController.php:352
msgid "Permission denied."
msgstr "Zugriff verweigert."
@@ -208,7 +208,7 @@ msgstr "Lizenz konnte nicht widerrufen werden."
#: src/Admin/AdminController.php:466 src/Admin/AdminController.php:484
#: src/Admin/AdminController.php:504 src/Admin/AdminController.php:522
#: src/Admin/AdminController.php:589 src/Admin/AdminController.php:779
#: src/Frontend/AccountController.php:325
#: src/Frontend/AccountController.php:326
msgid "Security check failed."
msgstr "Sicherheitsüberprüfung fehlgeschlagen."
@@ -430,14 +430,14 @@ msgid "Bulk Actions"
msgstr "Massenaktionen"
#: src/Admin/AdminController.php:1235 src/Admin/AdminController.php:1407
#: src/Admin/VersionAdminController.php:178
#: src/Admin/VersionAdminController.php:400
#: src/Admin/VersionAdminController.php:186
#: src/Admin/VersionAdminController.php:415
msgid "Activate"
msgstr "Aktivieren"
#: src/Admin/AdminController.php:1236 src/Admin/AdminController.php:1408
#: src/Admin/VersionAdminController.php:178
#: src/Admin/VersionAdminController.php:400
#: src/Admin/VersionAdminController.php:186
#: src/Admin/VersionAdminController.php:415
msgid "Deactivate"
msgstr "Deaktivieren"
@@ -459,8 +459,8 @@ msgid "Extend 1 year"
msgstr "1 Jahr verlängern"
#: src/Admin/AdminController.php:1241 src/Admin/AdminController.php:1377
#: src/Admin/AdminController.php:1413 src/Admin/VersionAdminController.php:181
#: src/Admin/VersionAdminController.php:403
#: src/Admin/AdminController.php:1413 src/Admin/VersionAdminController.php:189
#: src/Admin/VersionAdminController.php:418
msgid "Delete"
msgstr "Löschen"
@@ -492,7 +492,7 @@ msgstr "Domain"
#: src/Admin/AdminController.php:1257 src/Admin/AdminController.php:1395
#: src/Admin/OrderLicenseController.php:147
#: src/Admin/VersionAdminController.php:139
#: src/Admin/VersionAdminController.php:140
msgid "Status"
msgstr "Status"
@@ -508,7 +508,7 @@ msgstr "Läuft ab"
#: src/Admin/AdminController.php:1260 src/Admin/AdminController.php:1398
#: src/Admin/OrderLicenseController.php:149
#: src/Admin/VersionAdminController.php:141
#: src/Admin/VersionAdminController.php:142
msgid "Actions"
msgstr "Aktionen"
@@ -516,7 +516,7 @@ msgstr "Aktionen"
msgid "No licenses found."
msgstr "Keine Lizenzen gefunden."
#: src/Admin/AdminController.php:1276 src/Frontend/AccountController.php:193
#: src/Admin/AdminController.php:1276 src/Frontend/AccountController.php:194
msgid "Copy to clipboard"
msgstr "In Zwischenablage kopieren"
@@ -718,8 +718,8 @@ msgid "Error saving. Please try again."
msgstr "Fehler beim Speichern. Bitte versuchen Sie es erneut."
#: src/Admin/OrderLicenseController.php:288
#: src/Frontend/AccountController.php:313
#: src/Frontend/AccountController.php:345
#: src/Frontend/AccountController.php:314
#: src/Frontend/AccountController.php:346
msgid "Please enter a valid domain."
msgstr "Bitte geben Sie eine gültige Domain ein."
@@ -737,7 +737,7 @@ msgid "Order domain updated."
msgstr "Bestellungs-Domain aktualisiert."
#: src/Admin/OrderLicenseController.php:363
#: src/Frontend/AccountController.php:351
#: src/Frontend/AccountController.php:352
#: src/Frontend/DownloadController.php:105
msgid "License not found."
msgstr "Lizenz nicht gefunden."
@@ -890,7 +890,7 @@ msgstr ""
"Dateiintegrität zu überprüfen."
#: src/Admin/VersionAdminController.php:116
#: src/Admin/VersionAdminController.php:138
#: src/Admin/VersionAdminController.php:139
msgid "Release Notes"
msgstr "Versionshinweise"
@@ -902,107 +902,111 @@ msgstr "Version hinzufügen"
msgid "Existing Versions"
msgstr "Vorhandene Versionen"
#: src/Admin/VersionAdminController.php:140
#: src/Admin/VersionAdminController.php:138
msgid "SHA256"
msgstr "SHA256"
#: src/Admin/VersionAdminController.php:141
msgid "Released"
msgstr "Veröffentlicht"
#: src/Admin/VersionAdminController.php:147
#: src/Admin/VersionAdminController.php:148
msgid "No versions found. Add your first version above."
msgstr "Keine Versionen gefunden. Fügen Sie Ihre erste Version oben hinzu."
#: src/Admin/VersionAdminController.php:163
#: src/Admin/VersionAdminController.php:385
#: src/Admin/VersionAdminController.php:164
#: src/Admin/VersionAdminController.php:393
msgid "Uploaded file"
msgstr "Hochgeladene Datei"
#: src/Admin/VersionAdminController.php:166
#: src/Admin/VersionAdminController.php:388
#: src/Admin/VersionAdminController.php:167
#: src/Admin/VersionAdminController.php:396
msgid "No download file"
msgstr "Keine Download-Datei"
#: src/Admin/VersionAdminController.php:222
#: src/Admin/VersionAdminController.php:230
msgid "Are you sure you want to delete this version?"
msgstr "Sind Sie sicher, dass Sie diese Version löschen möchten?"
#: src/Admin/VersionAdminController.php:223
#: src/Admin/VersionAdminController.php:231
msgid "Please enter a version number."
msgstr "Bitte geben Sie eine Versionsnummer ein."
#: src/Admin/VersionAdminController.php:224
#: src/Admin/VersionAdminController.php:232
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)."
#: src/Admin/VersionAdminController.php:225
#: src/Admin/VersionAdminController.php:233
msgid "An error occurred. Please try again."
msgstr "Ein Fehler ist aufgetreten. Bitte versuchen Sie es erneut."
#: src/Admin/VersionAdminController.php:226
#: src/Admin/VersionAdminController.php:234
msgid "Select Download File"
msgstr "Download-Datei auswählen"
#: src/Admin/VersionAdminController.php:227
#: src/Admin/VersionAdminController.php:235
msgid "Use this file"
msgstr "Diese Datei verwenden"
#: src/Admin/VersionAdminController.php:228
#: src/Admin/VersionAdminController.php:236
msgid ""
"Invalid checksum file format. File must contain a 64-character SHA256 hash."
msgstr ""
"Ungültiges Prüfsummendateiformat. Die Datei muss einen 64-stelligen SHA256-"
"Hash enthalten."
#: src/Admin/VersionAdminController.php:229
#: src/Admin/VersionAdminController.php:237
msgid "Failed to read checksum file."
msgstr "Prüfsummendatei konnte nicht gelesen werden."
#: src/Admin/VersionAdminController.php:259
#: src/Admin/VersionAdminController.php:267
msgid "Product ID and version are required."
msgstr "Produkt-ID und Version sind erforderlich."
#: src/Admin/VersionAdminController.php:264
#: src/Admin/VersionAdminController.php:272
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)."
#: src/Admin/VersionAdminController.php:269
#: src/Admin/VersionAdminController.php:277
msgid "This version already exists."
msgstr "Diese Version existiert bereits."
#: src/Admin/VersionAdminController.php:275
#: src/Admin/VersionAdminController.php:283
msgid "Product not found."
msgstr "Produkt nicht gefunden."
#: src/Admin/VersionAdminController.php:279
#: src/Admin/VersionAdminController.php:287
msgid "This product is not a licensed product."
msgstr "Dieses Produkt ist kein lizensiertes Produkt."
#: src/Admin/VersionAdminController.php:296
#: src/Admin/VersionAdminController.php:304
msgid "Failed to create version."
msgstr "Version konnte nicht erstellt werden."
#: src/Admin/VersionAdminController.php:304
#: src/Admin/VersionAdminController.php:312
msgid "Version added successfully."
msgstr "Version erfolgreich hinzugefügt."
#: src/Admin/VersionAdminController.php:324
#: src/Admin/VersionAdminController.php:351
#: src/Admin/VersionAdminController.php:332
#: src/Admin/VersionAdminController.php:359
msgid "Version ID is required."
msgstr "Versions-ID ist erforderlich."
#: src/Admin/VersionAdminController.php:330
#: src/Admin/VersionAdminController.php:338
msgid "Failed to delete version."
msgstr "Version konnte nicht gelöscht werden."
#: src/Admin/VersionAdminController.php:333
#: src/Admin/VersionAdminController.php:341
msgid "Version deleted successfully."
msgstr "Version erfolgreich gelöscht."
#: src/Admin/VersionAdminController.php:357
#: src/Admin/VersionAdminController.php:365
msgid "Failed to update version."
msgstr "Version konnte nicht aktualisiert werden."
#: src/Admin/VersionAdminController.php:361
#: src/Admin/VersionAdminController.php:369
msgid "Version updated successfully."
msgstr "Version erfolgreich aktualisiert."
@@ -1084,7 +1088,7 @@ msgstr "Domain für Lizenz-Aktivierung"
#: src/Email/LicenseEmailController.php:281
#: src/Email/LicenseExpirationEmail.php:207
#: src/Email/LicenseExpirationEmail.php:270
#: src/Frontend/AccountController.php:189
#: src/Frontend/AccountController.php:190
msgid "License Key:"
msgstr "Lizenzschlüssel:"
@@ -1099,7 +1103,7 @@ msgstr "Lizensierte Domain:"
#: src/Email/LicenseEmailController.php:248
#: src/Email/LicenseEmailController.php:287
#: src/Frontend/AccountController.php:217
#: src/Frontend/AccountController.php:218
msgid "Never"
msgstr "Nie"
@@ -1116,7 +1120,7 @@ msgstr "IHRE LIZENZSCHLÜSSEL"
#: src/Email/LicenseEmailController.php:284
#: src/Email/LicenseExpirationEmail.php:219
#: src/Email/LicenseExpirationEmail.php:272
#: src/Frontend/AccountController.php:212
#: src/Frontend/AccountController.php:213
msgid "Expires:"
msgstr "Läuft ab:"
@@ -1145,7 +1149,7 @@ msgid "License Expiration Notice"
msgstr "Lizenzablauf-Benachrichtigung"
#: src/Email/LicenseExpirationEmail.php:107
#: src/Frontend/AccountController.php:139 src/License/LicenseManager.php:760
#: src/Frontend/AccountController.php:140 src/License/LicenseManager.php:760
msgid "Unknown Product"
msgstr "Unbekanntes Produkt"
@@ -1179,7 +1183,7 @@ msgstr "Produkt:"
#: src/Email/LicenseExpirationEmail.php:215
#: src/Email/LicenseExpirationEmail.php:271
#: src/Frontend/AccountController.php:200
#: src/Frontend/AccountController.php:201
msgid "Domain:"
msgstr "Domain:"
@@ -1237,61 +1241,61 @@ msgstr "Wählen Sie, welches E-Mail-Format gesendet werden soll."
msgid "Please log in to view your licenses."
msgstr "Bitte melden Sie sich an, um Ihre Lizenzen zu sehen."
#: src/Frontend/AccountController.php:164
#: src/Frontend/AccountController.php:165
msgid "You have no licenses yet."
msgstr "Sie haben noch keine Lizenzen."
#: src/Frontend/AccountController.php:206
#: src/Frontend/AccountController.php:207
msgid "Transfer to new domain"
msgstr "Auf neue Domain übertragen"
#: src/Frontend/AccountController.php:208
#: src/Frontend/AccountController.php:209
msgid "Transfer"
msgstr "Übertragen"
#: src/Frontend/AccountController.php:225
#: src/Frontend/AccountController.php:226
msgid "Available Downloads"
msgstr "Verfügbare Downloads"
#: src/Frontend/AccountController.php:231
#: src/Frontend/AccountController.php:232
#, php-format
msgid "Version %s"
msgstr "Version %s"
#: src/Frontend/AccountController.php:248
#: src/Frontend/AccountController.php:249
msgid "Close"
msgstr "Schliessen"
#: src/Frontend/AccountController.php:249
#: src/Frontend/AccountController.php:250
msgid "Transfer License to New Domain"
msgstr "Lizenz auf neue Domain übertragen"
#: src/Frontend/AccountController.php:254
#: src/Frontend/AccountController.php:255
msgid "Current Domain"
msgstr "Aktuelle Domain"
#: src/Frontend/AccountController.php:259
#: src/Frontend/AccountController.php:260
msgid "New Domain"
msgstr "Neue Domain"
#: src/Frontend/AccountController.php:263
#: src/Frontend/AccountController.php:264
msgid "Enter the new domain without http:// or www."
msgstr "Geben Sie die neue Domain ohne http:// oder www ein."
#: src/Frontend/AccountController.php:268
#: src/Frontend/AccountController.php:269
msgid "Transfer License"
msgstr "Lizenz übertragen"
#: src/Frontend/AccountController.php:310
#: src/Frontend/AccountController.php:377
#: src/Frontend/AccountController.php:311
#: src/Frontend/AccountController.php:378
msgid "License transferred successfully!"
msgstr "Lizenz erfolgreich übertragen!"
#: src/Frontend/AccountController.php:311
#: src/Frontend/AccountController.php:312
msgid "Transfer failed. Please try again."
msgstr "Übertragung fehlgeschlagen. Bitte versuchen Sie es erneut."
#: src/Frontend/AccountController.php:312
#: src/Frontend/AccountController.php:313
msgid ""
"Are you sure you want to transfer this license to a new domain? This action "
"cannot be undone."
@@ -1299,31 +1303,31 @@ msgstr ""
"Sind Sie sicher, dass Sie diese Lizenz auf eine neue Domain übertragen "
"möchten? Diese Aktion kann nicht rückgängig gemacht werden."
#: src/Frontend/AccountController.php:331
#: src/Frontend/AccountController.php:332
msgid "Please log in to transfer a license."
msgstr "Bitte melden Sie sich an, um eine Lizenz zu übertragen."
#: src/Frontend/AccountController.php:337
#: src/Frontend/AccountController.php:338
msgid "Invalid license."
msgstr "Ungültige Lizenz."
#: src/Frontend/AccountController.php:355
#: src/Frontend/AccountController.php:356
msgid "You do not have permission to transfer this license."
msgstr "Sie haben keine Berechtigung, diese Lizenz zu übertragen."
#: src/Frontend/AccountController.php:360
#: src/Frontend/AccountController.php:361
msgid "Revoked licenses cannot be transferred."
msgstr "Widerrufene Lizenzen können nicht übertragen werden."
#: src/Frontend/AccountController.php:364
#: src/Frontend/AccountController.php:365
msgid "Expired licenses cannot be transferred."
msgstr "Abgelaufene Lizenzen können nicht übertragen werden."
#: src/Frontend/AccountController.php:369
#: src/Frontend/AccountController.php:370
msgid "The new domain is the same as the current domain."
msgstr "Die neue Domain ist dieselbe wie die aktuelle Domain."
#: src/Frontend/AccountController.php:381
#: src/Frontend/AccountController.php:382
msgid "Failed to transfer license. Please try again."
msgstr "Lizenzübertragung fehlgeschlagen. Bitte versuchen Sie es erneut."
@@ -1473,9 +1477,6 @@ msgstr "Datei-Prüfsumme stimmt nicht überein. Erwartet: %1$s, Erhalten: %2$s"
#~ "Alternativ: Geben Sie eine externe Download-URL ein, anstatt eine Datei "
#~ "hochzuladen."
#~ msgid "SHA256 Hash"
#~ msgstr "SHA256 Prüfsumme"
#~ msgid "Enter SHA256 checksum..."
#~ msgstr "SHA256 Prüfsumme eingeben..."