WooCommerce Germanized - Version 3.3.2

Version Description

  • Improvement: DOI - allow customers to resend activation mail
  • Improvement: Internetmarke child product selection
  • Improvement: Added Post & DHL status page to check for connection issues
  • Improvement: By default hide zero taxes within order totals
  • Fix: DHL customs weight calculation
  • Fix: Packaging admin table unit
Download this release

Release Info

Developer vendidero
Plugin Icon 128x128 WooCommerce Germanized
Version 3.3.2
Comparing to
See all releases

Code changes from version 3.3.1 to 3.3.2

Files changed (59) hide show
  1. i18n/languages/woocommerce-germanized-de_DE.mo +0 -0
  2. i18n/languages/woocommerce-germanized-de_DE.po +330 -289
  3. i18n/languages/woocommerce-germanized-de_DE_formal.mo +0 -0
  4. i18n/languages/woocommerce-germanized-de_DE_formal.po +330 -289
  5. includes/class-wc-gzd-ajax.php +24 -0
  6. includes/class-wc-gzd-customer-helper.php +106 -9
  7. includes/class-wc-gzd-order-helper.php +14 -0
  8. packages/woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php +8 -4
  9. packages/woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php +35 -10
  10. packages/woocommerce-germanized-dhl/src/Admin/Admin.php +3 -1
  11. packages/woocommerce-germanized-dhl/src/Admin/Status.php +95 -0
  12. packages/woocommerce-germanized-dhl/src/Api/ImProductList.php +1 -1
  13. packages/woocommerce-germanized-dhl/src/Api/ImProductsSoap.php +1 -1
  14. packages/woocommerce-germanized-dhl/src/Api/ImRefundSoap.php +1 -1
  15. packages/woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php +5 -3
  16. packages/woocommerce-germanized-dhl/src/Api/Internetmarke.php +2 -2
  17. packages/woocommerce-germanized-dhl/src/Package.php +36 -5
  18. packages/woocommerce-germanized-dhl/woocommerce-germanized-dhl.php +1 -1
  19. packages/woocommerce-germanized-shipments/src/Admin/Admin.php +2 -2
  20. packages/woocommerce-germanized-shipments/src/Package.php +1 -1
  21. packages/woocommerce-germanized-shipments/woocommerce-germanized-shipments.php +1 -1
  22. readme.txt +10 -1
  23. vendor/autoload.php +1 -1
  24. vendor/autoload_packages.php +4 -3
  25. vendor/automattic/jetpack-autoloader/src/AutoloadFileWriter.php +0 -105
  26. vendor/automattic/jetpack-autoloader/src/AutoloadGenerator.php +54 -2
  27. vendor/automattic/jetpack-autoloader/src/autoload.php +3 -2
  28. vendor/automattic/jetpack-autoloader/src/class-autoloader-handler.php +138 -31
  29. vendor/automattic/jetpack-autoloader/src/class-autoloader.php +0 -151
  30. vendor/automattic/jetpack-autoloader/src/class-container.php +0 -141
  31. vendor/automattic/jetpack-autoloader/src/class-hook-manager.php +0 -68
  32. vendor/automattic/jetpack-autoloader/src/class-latest-autoloader-guard.php +0 -85
  33. vendor/automattic/jetpack-autoloader/src/{class-manifest-reader.php → class-manifest-handler.php} +16 -8
  34. vendor/automattic/jetpack-autoloader/src/class-path-processor.php +0 -157
  35. vendor/automattic/jetpack-autoloader/src/class-plugin-locator.php +0 -132
  36. vendor/automattic/jetpack-autoloader/src/class-plugins-handler.php +88 -109
  37. vendor/automattic/jetpack-autoloader/src/class-version-selector.php +2 -2
  38. vendor/automattic/jetpack-autoloader/src/functions.php +66 -0
  39. vendor/composer/InstalledVersions.php +11 -11
  40. vendor/composer/autoload_real.php +7 -7
  41. vendor/composer/autoload_static.php +4 -4
  42. vendor/composer/installed.json +24 -24
  43. vendor/composer/installed.php +11 -11
  44. vendor/composer/jetpack_autoload_classmap.php +1 -1
  45. vendor/composer/jetpack_autoload_psr4.php +3 -3
  46. vendor/jetpack-autoloader/autoload_functions.php +74 -0
  47. vendor/jetpack-autoloader/class-autoloader-handler.php +139 -32
  48. vendor/jetpack-autoloader/class-autoloader-locator.php +1 -1
  49. vendor/jetpack-autoloader/class-autoloader.php +0 -159
  50. vendor/jetpack-autoloader/class-container.php +0 -149
  51. vendor/jetpack-autoloader/class-hook-manager.php +0 -76
  52. vendor/jetpack-autoloader/class-latest-autoloader-guard.php +0 -93
  53. vendor/jetpack-autoloader/{class-manifest-reader.php → class-manifest-handler.php} +17 -9
  54. vendor/jetpack-autoloader/class-path-processor.php +0 -165
  55. vendor/jetpack-autoloader/class-plugin-locator.php +0 -140
  56. vendor/jetpack-autoloader/class-plugins-handler.php +89 -110
  57. vendor/jetpack-autoloader/class-version-loader.php +1 -1
  58. vendor/jetpack-autoloader/class-version-selector.php +3 -3
  59. woocommerce-germanized.php +2 -2
i18n/languages/woocommerce-germanized-de_DE.mo CHANGED
Binary file
i18n/languages/woocommerce-germanized-de_DE.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2020-12-07 11:55+0100\n"
6
- "PO-Revision-Date: 2020-12-07 15:49+0100\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
@@ -45,8 +45,8 @@ msgctxt "dhl"
45
  msgid "Additional Services"
46
  msgstr "Zusätzliche Leistungen"
47
 
48
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:30
49
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:494
50
  #, php-format
51
  msgid ""
52
  "Sorry but none of your selected <a href=\"%s\">Deutsche Post Products</a> is "
@@ -58,13 +58,13 @@ msgstr ""
58
  "B. Gewicht) und versuche es erneut."
59
 
60
  # @ woocommerce-germanized
61
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:37
62
  msgctxt "dhl"
63
  msgid "Product"
64
  msgstr "Produkt"
65
 
66
  # @ woocommerce-germanized
67
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:55
68
  msgctxt "dhl"
69
  msgid "Page Format"
70
  msgstr "Seitenformat"
@@ -137,7 +137,7 @@ msgstr "Firma"
137
 
138
  # @ woocommerce-germanized
139
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:139
140
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:590
141
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:775
142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:844
143
  msgctxt "dhl"
@@ -152,7 +152,7 @@ msgstr "Hausnummer"
152
 
153
  # @ woocommerce-germanized
154
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:159
155
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:591
156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:796
157
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:865
158
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:27
@@ -162,7 +162,7 @@ msgstr "Postleitzahl"
162
 
163
  # @ woocommerce-germanized
164
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:168
165
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:592
166
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:789
167
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:858
168
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:30
@@ -268,7 +268,7 @@ msgid "Receiver"
268
  msgstr "Empfänger"
269
 
270
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:15
271
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1461
272
  msgctxt "dhl"
273
  msgid "DHL Labels"
274
  msgstr "DHL Labels"
@@ -363,7 +363,7 @@ msgstr ""
363
  "href=\"%s\">globalen Einstellungen</a>."
364
 
365
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:94
366
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1352
367
  msgctxt "dhl"
368
  msgid "Printing"
369
  msgstr "Druck"
@@ -379,150 +379,150 @@ msgstr ""
379
  "\"%s\">globalen Einstellungen</a>."
380
 
381
  # @ woocommerce-germanized
382
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:160
383
  msgctxt "dhl time context"
384
  msgid "None"
385
  msgstr "Keine"
386
 
387
  # @ woocommerce-germanized
388
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:170
389
  #: woocommerce-germanized-dhl/src/Api/Paket.php:280
390
  msgctxt "dhl day context"
391
  msgid "None"
392
  msgstr "Keiner"
393
 
394
  # @ woocommerce-germanized
395
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:195
396
  msgctxt "dhl"
397
  msgid "Delivery Duty Unpaid"
398
  msgstr "Delivery Duty Unpaid"
399
 
400
  # @ woocommerce-germanized
401
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:196
402
  msgctxt "dhl"
403
  msgid "Delivery Duty Paid"
404
  msgstr "Delivery Duty Paid"
405
 
406
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:197
407
  msgctxt "dhl"
408
  msgid "Delivery Duty Paid (excl. VAT )"
409
  msgstr "Delivered Duty Paid (exkl. MwSt.)"
410
 
411
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:198
412
  msgctxt "dhl"
413
  msgid "Delivery Duty Paid (excl. Duties, taxes and VAT)"
414
  msgstr "Delivery Duty Paid (exkl. Zölle, Steuern und MwSt.)"
415
 
416
  # @ woocommerce-germanized
417
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:226
418
  msgctxt "age context"
419
  msgid "None"
420
  msgstr "Keine"
421
 
422
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:227
423
  msgctxt "dhl"
424
  msgid "Minimum age of 16"
425
  msgstr "Mindestens 16 Jahre"
426
 
427
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:228
428
  msgctxt "dhl"
429
  msgid "Minimum age of 18"
430
  msgstr "Mindestens 18 Jahre"
431
 
432
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:253
433
  msgctxt "dhl"
434
  msgid "Shipment #{shipment_id} to order {order_id}"
435
  msgstr "Sendung #{shipment_id} zur Bestellung {order_id}"
436
 
437
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:269
438
  msgctxt "dhl"
439
  msgid "Return #{shipment_id} to order {order_id}"
440
  msgstr "Retoure #{shipment_id} zur Bestellung {order_id}"
441
 
442
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:285
443
  msgctxt "dhl"
444
  msgid "Return shipment #{shipment_id} to order #{order_id}"
445
  msgstr "Retourensendung #{shipment_id} zur Bestellung #{order_id}"
446
 
447
  # @ woocommerce-germanized
448
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:365
449
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:188
450
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:496
451
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:836
452
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:38
453
  msgctxt "dhl"
454
  msgid "Packstation"
455
  msgstr "Packstation"
456
 
457
  # @ woocommerce-germanized
458
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:366
459
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:367
460
  msgctxt "dhl"
461
  msgid "Postfiliale"
462
  msgstr "Postfiliale"
463
 
464
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:451
465
  msgctxt "dhl"
466
  msgid "Receiver is missing or does not exist."
467
  msgstr "Empfänger fehlt oder existiert nicht."
468
 
469
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:470
470
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:555
471
  #, php-format
472
  msgctxt "dhl"
473
  msgid "Shipment order #%s does not exist"
474
  msgstr "Bestellung zur Sendung #%s existiert nicht"
475
 
476
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:481
477
  msgctxt "dhl"
478
  msgid "The services chosen are not available for the current product."
479
  msgstr "Die ausgewählten Services sind für dieses Produkt nicht verfügbar."
480
 
481
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:521
482
  #, php-format
483
  msgctxt "dhl"
484
  msgid "Deutsche Post product is missing for %s."
485
  msgstr "Deutsche Post Produkt fehlt oder ist nicht verfügbar für %s."
486
 
487
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:597
488
  #, php-format
489
  msgctxt "dhl"
490
  msgid "%s of the return address is a mandatory field."
491
  msgstr "%s der Rücksendeadresse ist ein Pflichtfeld."
492
 
493
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:602
494
  msgctxt "dhl"
495
  msgid "Please either add a return company or name."
496
  msgstr ""
497
  "Bitte gib entweder einen Firmennamen oder Namen für die Rücksendeadresse an."
498
 
499
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:621
500
  msgctxt "dhl"
501
  msgid "Error while parsing preferred day."
502
  msgstr "Fehler beim Einlesen des Wunschtags."
503
 
504
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:632
505
  msgctxt "dhl"
506
  msgid "Error while parsing preferred time."
507
  msgstr "Fehler beim Einlesen der Wunschzeit."
508
 
509
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:657
510
  msgctxt "dhl"
511
  msgid "The visual min age check is invalid."
512
  msgstr "Das Alter der Alterssichtprüfung ist ungültig."
513
 
514
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:681
515
  msgctxt "dhl"
516
  msgid "The ident min age check is invalid."
517
  msgstr "Das Alter des Ident-Checks ist ungültig."
518
 
519
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:688
520
  msgctxt "dhl"
521
  msgid "There was an error parsing the date of birth for the identity check."
522
  msgstr ""
523
  "Beim Einlesen des Geburtsdatums für den Ident-Check trat ein Problem auf."
524
 
525
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:693
526
  msgctxt "dhl"
527
  msgid ""
528
  "Either a minimum age or a date of birth must be added to the ident check."
@@ -531,159 +531,159 @@ msgstr ""
531
  "hinzugefügt werden."
532
 
533
  # @ woocommerce-germanized
534
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:707
535
  #, php-format
536
  msgctxt "dhl"
537
  msgid "%s duties element does not exist."
538
  msgstr "%s Zollabgabe existiert nicht."
539
 
540
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1299
541
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1383
542
  msgctxt "dhl"
543
  msgid "Invalid shipment"
544
  msgstr "Ungültige Sendung"
545
 
546
  # @ woocommerce-germanized
547
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1303
548
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1387
549
  msgctxt "dhl"
550
  msgid "Order does not exist"
551
  msgstr "Bestellung existiert nicht"
552
 
553
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1335
554
  msgctxt "dhl"
555
  msgid "Error while creating the label instance"
556
  msgstr "Fehler beim Erstellen der Label-Instanz"
557
 
558
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1455
559
  msgctxt "dhl"
560
  msgid "Invalid label"
561
  msgstr "Ungültiges Label"
562
 
563
  # @ woocommerce-germanized
564
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1543
565
  msgctxt "dhl"
566
  msgid "DHL Retoure International A"
567
  msgstr "DHL Retoure International A"
568
 
569
  # @ woocommerce-germanized
570
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1544
571
  msgctxt "dhl"
572
  msgid "DHL Retoure International B"
573
  msgstr "DHL Retoure International B"
574
 
575
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1553
576
  msgctxt "dhl"
577
  msgid "DHL Retoure Online"
578
  msgstr "DHL Retoure Online"
579
 
580
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1570
581
  msgctxt "dhl"
582
  msgid "DHL Paket Connect"
583
  msgstr "DHL Paket Connect"
584
 
585
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1571
586
  msgctxt "dhl"
587
  msgid "DHL Europaket (B2B)"
588
  msgstr "DHL Europaket (B2B)"
589
 
590
  # @ woocommerce-germanized
591
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1572
592
  msgctxt "dhl"
593
  msgid "DHL Paket International"
594
  msgstr "DHL Paket International"
595
 
596
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1647
597
  msgctxt "dhl"
598
  msgid "DHL Paket"
599
  msgstr "DHL Paket"
600
 
601
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1648
602
  msgctxt "dhl"
603
  msgid "DHL Paket PRIO"
604
  msgstr "DHL Paket PRIO"
605
 
606
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1649
607
  msgctxt "dhl"
608
  msgid "DHL Paket Taggleich"
609
  msgstr "DHL Paket Taggleich"
610
 
611
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1650
612
  msgctxt "dhl"
613
  msgid "DHL Warenpost"
614
  msgstr "DHL Warenpost"
615
 
616
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1737
617
  msgctxt "dhl"
618
  msgid "Error while uploading label."
619
  msgstr "Fehler beim Hochladen des Labels."
620
 
621
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:57
622
  msgctxt "dhl"
623
  msgid "Refreshed data successfully."
624
  msgstr "Daten erfolgreich aktualisiert."
625
 
626
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:57
627
  #, php-format
628
  msgctxt "dhl"
629
  msgid ""
630
- "Error while refreshing data. Please check your Internetmarke <a href=\"%s"
631
- "\">logs</a>."
632
  msgstr ""
633
- "Fehler beim Datenabruf. Bitte prüfe deine Internetmarke <a href=\"%s\">Logs</"
634
- "a>."
635
 
636
  # @ woocommerce-germanized
637
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:174
638
  msgctxt "dhl"
639
  msgid "Receiver Ids"
640
  msgstr "Empfänger IDs"
641
 
642
  # @ woocommerce-germanized
643
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:181
644
  msgctxt "dhl"
645
  msgid "Receiver Id"
646
  msgstr "Empfänger ID"
647
 
648
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:181
649
  msgctxt "dhl"
650
  msgid "Find your Receiver Ids within your DHL contract data."
651
  msgstr "Die Empfänger IDs findest du im DHL Geschäftskundenportal."
652
 
653
  # @ woocommerce-germanized
654
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:182
655
  msgctxt "dhl"
656
  msgid "Country Code"
657
  msgstr "Ländercode"
658
 
659
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:182
660
  msgctxt "dhl"
661
  msgid "Leave empty to use the Receiver Id as fallback."
662
  msgstr "Leer lassen, um diese Empfänger ID als Fallback zu verwenden."
663
 
664
  # @ woocommerce-germanized
665
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:202
666
  msgctxt "dhl"
667
  msgid "+ Add receiver"
668
  msgstr "+ Empfänger hinzufügen"
669
 
670
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:202
671
  msgctxt "dhl"
672
  msgid "Remove selected receiver(s)"
673
  msgstr "Ausgewählte Empfänger löschen"
674
 
675
  # @ woocommerce-germanized
676
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:238
677
  msgctxt "dhl"
678
  msgid "Select a country"
679
  msgstr "Land auswählen"
680
 
681
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
682
  msgctxt "dhl"
683
  msgid "HS-Code (DHL)"
684
  msgstr "Zolltarifnummer (HS-Code, DHL)"
685
 
686
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
687
  msgctxt "dhl"
688
  msgid ""
689
  "The HS Code is a number assigned to every possible commodity that can be "
@@ -693,12 +693,12 @@ msgstr ""
693
  "standardisiertes System von Namen und Nummern zur Klassifizierung "
694
  "gehandelter Produkte."
695
 
696
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:241
697
  msgctxt "dhl"
698
  msgid "Country of manufacture (DHL)"
699
  msgstr "Herstellungsland (DHL)"
700
 
701
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:241
702
  msgctxt "dhl"
703
  msgid ""
704
  "The country of manufacture is needed for customs of international shipping."
@@ -706,7 +706,7 @@ msgstr ""
706
  "Das Herstellungsland wird für die Zollabwicklung bei internationalen "
707
  "Sendungen benötigt."
708
 
709
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:262
710
  #, php-format
711
  msgctxt "dhl"
712
  msgid ""
@@ -716,19 +716,19 @@ msgstr ""
716
  "Das Verzeichnis zum Speichern von DHL Labels fehlt. Bitte erstelle den "
717
  "Ordner %s manuell und stelle sicher, dass der Ordner beschreibbar ist."
718
 
719
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:269
720
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1460
721
  #: woocommerce-germanized-dhl/src/ShippingProvider/DHL.php:39
722
  msgctxt "dhl"
723
  msgid "DHL"
724
  msgstr "DHL"
725
 
726
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:284
727
  msgctxt "dhl"
728
  msgid "DHL Label"
729
  msgstr "DHL Label"
730
 
731
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:296
732
  msgctxt "dhl"
733
  msgid ""
734
  "This label has been generated by the DHL for WooCommerce Plugin and is shown "
@@ -738,7 +738,7 @@ msgstr ""
738
  "Kompatibilitäts-Gründen angezeigt."
739
 
740
  # @ woocommerce-germanized
741
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:297
742
  msgctxt "dhl"
743
  msgid "Download label"
744
  msgstr "Label downloaden"
@@ -840,7 +840,7 @@ msgstr ""
840
  # @ woocommerce-germanized
841
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:122
842
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:747
843
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1369
844
  msgctxt "dhl"
845
  msgid "Automation"
846
  msgstr "Automatisierung"
@@ -1072,7 +1072,7 @@ msgid "contract data"
1072
  msgstr "Vertragsdaten"
1073
 
1074
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:392
1075
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1200
1076
  msgctxt "dhl"
1077
  msgid "Domestic Default Service"
1078
  msgstr "Standard Service (national)"
@@ -1089,7 +1089,7 @@ msgstr ""
1089
  "nachträglich ändern)."
1090
 
1091
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:402
1092
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1220
1093
  msgctxt "dhl"
1094
  msgid "Int. Default Service"
1095
  msgstr "Standard Service (Int.)"
@@ -1138,11 +1138,13 @@ msgstr ""
1138
 
1139
  # @ woocommerce-germanized
1140
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:432
 
1141
  msgctxt "dhl"
1142
  msgid "Default weight (kg)"
1143
  msgstr "Standardgewicht (kg)"
1144
 
1145
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:434
 
1146
  msgctxt "dhl"
1147
  msgid ""
1148
  "Choose a default shipment weight to be used for labels if no weight has been "
@@ -1152,11 +1154,13 @@ msgstr ""
1152
  "die das Gewicht nicht automatisch bestimmt werden kann."
1153
 
1154
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:443
 
1155
  msgctxt "dhl"
1156
  msgid "Minimum weight (kg)"
1157
  msgstr "Mindestgewicht (kg)"
1158
 
1159
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:445
 
1160
  msgctxt "dhl"
1161
  msgid ""
1162
  "Choose a minimum weight to be used for labels e.g. to prevent low shipment "
@@ -1413,14 +1417,14 @@ msgid "Premium delivery for international shipments."
1413
  msgstr "Premium Lieferung für internationale Sendungen."
1414
 
1415
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:626
1416
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1242
1417
  msgctxt "dhl"
1418
  msgid "Labels"
1419
  msgstr "Labels"
1420
 
1421
  # @ woocommerce-germanized
1422
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:627
1423
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1243
1424
  msgctxt "dhl"
1425
  msgid "Automatically create labels for shipments."
1426
  msgstr "Automatisch Labels zu Sendungen erstellen."
@@ -1428,13 +1432,13 @@ msgstr "Automatisch Labels zu Sendungen erstellen."
1428
  # @ woocommerce-germanized
1429
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:634
1430
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:661
1431
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1250
1432
  msgctxt "dhl"
1433
  msgid "Status"
1434
  msgstr "Status"
1435
 
1436
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:638
1437
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1254
1438
  msgctxt "dhl"
1439
  msgid "Choose a shipment status which should trigger generation of a label."
1440
  msgstr ""
@@ -1442,13 +1446,13 @@ msgstr ""
1442
 
1443
  # @ woocommerce-germanized
1444
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:645
1445
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1261
1446
  msgctxt "dhl"
1447
  msgid "Shipment Status"
1448
  msgstr "Sendungsstatus"
1449
 
1450
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:646
1451
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1262
1452
  msgctxt "dhl"
1453
  msgid "Mark shipment as shipped after label has been created successfully."
1454
  msgstr ""
@@ -1853,7 +1857,7 @@ msgctxt "dhl"
1853
  msgid "Password"
1854
  msgstr "Passwort"
1855
 
1856
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1204
1857
  msgctxt "dhl"
1858
  msgid ""
1859
  "Please select your default shipping service for domestic shipments that you "
@@ -1864,12 +1868,12 @@ msgstr ""
1864
  "deine Kunden anbietest."
1865
 
1866
  # @ woocommerce-germanized
1867
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1210
1868
  msgctxt "dhl"
1869
  msgid "EU Default Service"
1870
  msgstr "Standard Service (EU)"
1871
 
1872
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1214
1873
  msgctxt "dhl"
1874
  msgid ""
1875
  "Please select your default shipping service for EU shipments that you want "
@@ -1878,7 +1882,7 @@ msgstr ""
1878
  "Bitte wähle das Standard-Produkt für EU Sendungen aus, das du für deine "
1879
  "Kunden anbietest."
1880
 
1881
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1224
1882
  msgctxt "dhl"
1883
  msgid ""
1884
  "Please select your default shipping service for cross-border shipments that "
@@ -1888,12 +1892,12 @@ msgstr ""
1888
  "für deine Kunden anbietest."
1889
 
1890
  # @ woocommerce-germanized
1891
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1281
1892
  msgctxt "dhl"
1893
  msgid "Default Format"
1894
  msgstr "Standardformat"
1895
 
1896
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1284
1897
  #, php-format
1898
  msgctxt "dhl"
1899
  msgid ""
@@ -1905,34 +1909,34 @@ msgstr ""
1905
  "verwendet wird. Du kannst die Liste auch manuell <a href=\"%s"
1906
  "\">aktualisieren</a>, falls notwendig."
1907
 
1908
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1311
1909
  msgctxt "dhl"
1910
  msgid "Portokasse"
1911
  msgstr "Portokasse"
1912
 
1913
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1314
1914
  msgctxt "dhl"
1915
  msgid "Balance"
1916
  msgstr "Guthaben"
1917
 
1918
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1321
1919
  msgctxt "dhl"
1920
  msgid "Charge (€)"
1921
  msgstr "Aufladen (€)"
1922
 
1923
  # @ woocommerce-germanized
1924
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1331
1925
  msgctxt "dhl"
1926
  msgid "Products"
1927
  msgstr "Produkte"
1928
 
1929
  # @ woocommerce-germanized
1930
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1334
1931
  msgctxt "dhl"
1932
  msgid "Available Products"
1933
  msgstr "Verfügbare Produkte"
1934
 
1935
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1337
1936
  #, php-format
1937
  msgctxt "dhl"
1938
  msgid ""
@@ -1944,43 +1948,64 @@ msgstr ""
1944
  "sollen. Du kannst die Produktliste auch manuell <a href=\"%s"
1945
  "\">aktualisieren</a>, falls notwendig."
1946
 
1947
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1362
1948
  msgctxt "dhl"
1949
  msgid "API Error"
1950
  msgstr "API Fehler"
1951
 
1952
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1421
1953
  msgctxt "dhl"
1954
  msgid "Charge Portokasse"
1955
  msgstr "Portokasse aufladen"
1956
 
1957
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1422
1958
  #, php-format
1959
  msgctxt "dhl"
1960
  msgid "The minimum amount is %s"
1961
  msgstr "Der Minimalbetrag beträgt %s"
1962
 
1963
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1432
1964
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1434
1965
  msgctxt "dhl"
1966
  msgid "Not yet a customer?"
1967
  msgstr "Noch kein Kunde?"
1968
 
1969
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1462
1970
  msgctxt "dhl"
1971
  msgid "Internetmarke"
1972
  msgstr "Internetmarke"
1973
 
1974
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1463
1975
  msgctxt "dhl"
1976
  msgid "Preferred Services"
1977
  msgstr "Wunschpaket"
1978
 
1979
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1464
1980
  msgctxt "dhl"
1981
  msgid "Parcel Pickup"
1982
  msgstr "Standorte"
1983
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1984
  #: woocommerce-germanized-dhl/src/Api/FinderSoap.php:37
1985
  msgctxt "dhl"
1986
  msgid "Sunday"
@@ -1998,54 +2023,54 @@ msgctxt "dhl location name"
1998
  msgid "%s %s"
1999
  msgstr "%s %s"
2000
 
2001
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:280
2002
  msgctxt "dhl"
2003
  msgid "PRIO"
2004
  msgstr "PRIO"
2005
 
2006
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:281
2007
  msgctxt "dhl"
2008
  msgid "Einschreiben (Einwurf)"
2009
  msgstr "Einschreiben (Einwurf)"
2010
 
2011
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:282
2012
  msgctxt "dhl"
2013
  msgid "Einschreiben"
2014
  msgstr "Einschreiben"
2015
 
2016
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:283
2017
  msgctxt "dhl"
2018
  msgid "Einschreiben (Eigenhändig)"
2019
  msgstr "Einschreiben (Eigenhändig)"
2020
 
2021
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:284
2022
  msgctxt "dhl"
2023
  msgid "Alterssichtprüfung 16"
2024
  msgstr "Alterssichtprüfung 16"
2025
 
2026
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:285
2027
  msgctxt "dhl"
2028
  msgid "Alterssichtprüfung 18"
2029
  msgstr "Alterssichtprüfung 18"
2030
 
2031
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:286
2032
  msgctxt "dhl"
2033
  msgid "Zusatzentgelt MBf"
2034
  msgstr "Zusatzentgelt MBf"
2035
 
2036
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:287
2037
  msgctxt "dhl"
2038
  msgid "Unterschrift"
2039
  msgstr "Unterschrift"
2040
 
2041
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:288
2042
  msgctxt "dhl"
2043
  msgid "Tracked"
2044
  msgstr "Tracked"
2045
 
2046
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:43
2047
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:52
2048
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:484
2049
  msgctxt "dhl"
2050
  msgid "Error while fetching label PDF"
2051
  msgstr "Fehler beim Download des PDF Labels"
@@ -2061,18 +2086,18 @@ msgctxt "dhl"
2061
  msgid "Invalid API response"
2062
  msgstr "Fehlerhafte API Rückmeldung"
2063
 
2064
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:192
2065
  msgctxt "dhl"
2066
  msgid "Error while authenticating user."
2067
  msgstr "Fehler beim Autorisieren des Benutzers."
2068
 
2069
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:278
2070
  msgctxt "dhl"
2071
  msgid "Error during Warenpost International request."
2072
  msgstr "Fehler beim Aufruf der Warenpost International API."
2073
 
2074
  # @ woocommerce-germanized
2075
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:296
2076
  #, php-format
2077
  msgctxt "dhl"
2078
  msgid "Error during request: %s"
@@ -2109,53 +2134,53 @@ msgctxt "dhl"
2109
  msgid "Wrong username or password"
2110
  msgstr "Falscher Benutzername oder Passwort"
2111
 
2112
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:246
2113
  #, php-format
2114
  msgctxt "dhl"
2115
  msgid "until %s"
2116
  msgstr "bis %s"
2117
 
2118
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:331
2119
  #, php-format
2120
  msgctxt "dhl"
2121
  msgid "Length: %s"
2122
  msgstr "Länge: %s"
2123
 
2124
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:335
2125
  #, php-format
2126
  msgctxt "dhl"
2127
  msgid "Width: %s"
2128
  msgstr "Breite: %s"
2129
 
2130
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:339
2131
  #, php-format
2132
  msgctxt "dhl"
2133
  msgid "Height: %s"
2134
  msgstr "Höhe: %s"
2135
 
2136
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:343
2137
  #, php-format
2138
  msgctxt "dhl"
2139
  msgid "Weight: %s"
2140
  msgstr "Gewicht: %s"
2141
 
2142
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:348
2143
  msgctxt "dhl"
2144
  msgid "Total"
2145
  msgstr "Gesamt"
2146
 
2147
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:538
2148
  #, php-format
2149
  msgctxt "dhl"
2150
  msgid "Could not refund post label: %s"
2151
  msgstr "Deutsche Post Label konnte nicht rückerstattet werden: %s"
2152
 
2153
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:552
2154
  msgctxt "dhl"
2155
  msgid "Refund API could not be instantiated"
2156
  msgstr "Die API für Rückerstattungen konnte nicht initialisiert werden"
2157
 
2158
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:641
2159
  #: woocommerce-germanized-dhl/src/Api/LabelSoap.php:379
2160
  #: woocommerce-germanized-dhl/src/Api/ReturnRest.php:34
2161
  #, php-format
@@ -2163,12 +2188,12 @@ msgctxt "dhl"
2163
  msgid "Could not fetch shipment %d."
2164
  msgstr "Sendung %d konnte nicht gefunden werden."
2165
 
2166
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:681
2167
  msgctxt "dhl"
2168
  msgid "Error while generating shop order id."
2169
  msgstr "Fehler beim Erzeugen der Shop Order Id."
2170
 
2171
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:691
2172
  #, php-format
2173
  msgctxt "dhl"
2174
  msgid ""
@@ -2178,14 +2203,14 @@ msgstr ""
2178
  "Fehler beim Kauf des Labels. Bitte <a href=\"%s\">aktualisiere</a>die "
2179
  "Produktliste manuell und versuche es erneut."
2180
 
2181
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:734
2182
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:741
2183
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:769
2184
  msgctxt "dhl"
2185
  msgid "Error while downloading the PDF stamp."
2186
  msgstr "Fehler beim Download des PDF Labels."
2187
 
2188
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:776
2189
  msgctxt "dhl"
2190
  msgid "Invalid stamp response."
2191
  msgstr "Fehlerhafte Label Rückmeldung."
@@ -2399,30 +2424,30 @@ msgstr ""
2399
  "angibst."
2400
 
2401
  # @ woocommerce-germanized
2402
- #: woocommerce-germanized-dhl/src/Package.php:961
2403
  msgctxt "dhl"
2404
  msgid "Germany"
2405
  msgstr "Deutschland"
2406
 
2407
  # @ woocommerce-germanized
2408
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:90
2409
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:849
2410
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:878
2411
  msgctxt "dhl"
2412
  msgid "Address Type"
2413
  msgstr "Adresstyp"
2414
 
2415
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:93
2416
  msgctxt "dhl"
2417
  msgid "Select whether delivery to DHL locations should be enabled."
2418
  msgstr "Wähle aus, ob die Lieferung an DHL Standorte aktiviert werden soll."
2419
 
2420
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:98
2421
  msgctxt "dhl"
2422
  msgid "Postnumber"
2423
  msgstr "Postnummer"
2424
 
2425
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:100
2426
  msgctxt "dhl"
2427
  msgid ""
2428
  "In case delivery to packstation is selected please fill in the corresponding "
@@ -2431,31 +2456,31 @@ msgstr ""
2431
  "Insofern die Lieferung an eine Packstation erfolgt, bitte die Postnummer "
2432
  "eintragen."
2433
 
2434
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:186
2435
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:565
2436
  msgctxt "dhl"
2437
  msgid "Invalid address type."
2438
  msgstr "Ungültiger Adresstyp."
2439
 
2440
  # @ woocommerce-germanized
2441
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:637
2442
  msgctxt "dhl"
2443
  msgid "Sorry, but delivery to packstation is not available."
2444
  msgstr ""
2445
  "Entschuldigung, die Lieferung an eine Packstation steht nicht zur Verfügung."
2446
 
2447
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:642
2448
  msgctxt "dhl"
2449
  msgid "Sorry, but delivery to parcel shops is not available."
2450
  msgstr ""
2451
  "Entschuldigung, die Lieferung an einen Paketshop steht nicht zur Verfügung."
2452
 
2453
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:646
2454
  msgctxt "dhl"
2455
  msgid "Sorry, but delivery to post offices is not available."
2456
  msgstr "Entschuldigung, die Lieferung an Postfilialen ist nicht verfügbar."
2457
 
2458
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:653
2459
  #, php-format
2460
  msgctxt "dhl"
2461
  msgid "Please indicate shipment to %s by one of the following values: %s."
@@ -2463,7 +2488,7 @@ msgstr ""
2463
  "Bitte identifiziere die Lieferung an %s durch die Eingabe einer der "
2464
  "folgenden Werte: %s."
2465
 
2466
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:661
2467
  msgctxt "dhl"
2468
  msgid ""
2469
  "Your DHL customer number (Post number) is not valid. Please check your "
@@ -2472,7 +2497,7 @@ msgstr ""
2472
  "Deine DHL Kundennummer (Postnummer) ist nicht gültig. Bitte überprüfe deine "
2473
  "Eingabe."
2474
 
2475
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:664
2476
  msgctxt "dhl"
2477
  msgid ""
2478
  "Your DHL customer number (Post number) is needed to ship to a packstation."
@@ -2480,64 +2505,64 @@ msgstr ""
2480
  "Deine DHL Kundennummer (Postnummer) wird für den Versand an eine Packstation "
2481
  "benötigt."
2482
 
2483
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:713
2484
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:840
2485
  msgctxt "dhl"
2486
  msgid "Branch"
2487
  msgstr "Filiale"
2488
 
2489
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:714
2490
  msgctxt "dhl"
2491
  msgid "Postnumber "
2492
  msgstr "Postnummer "
2493
 
2494
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:815
2495
  #, php-format
2496
  msgctxt "dhl"
2497
  msgid "e.g. %s 456"
2498
  msgstr "z.B. %s 456"
2499
 
2500
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:840
2501
  msgctxt "dhl"
2502
  msgid "Branches"
2503
  msgstr "Filialen"
2504
 
2505
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:856
2506
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:889
2507
  msgctxt "dhl"
2508
  msgid "DHL customer number (Post number)"
2509
  msgstr "DHL Kundennummer (Postnummer)"
2510
 
2511
  # @ woocommerce-germanized
2512
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:866
2513
  msgctxt "dhl"
2514
  msgid "Regular Address"
2515
  msgstr "Normale Adresse"
2516
 
2517
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:893
2518
  msgctxt "dhl"
2519
  msgid "Not yet a DHL customer?"
2520
  msgstr "Noch kein DHL Kunde?"
2521
 
2522
  # @ woocommerce-germanized
2523
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:893
2524
  msgctxt "dhl"
2525
  msgid "Register now"
2526
  msgstr "Jetzt registrieren"
2527
 
2528
  # @ woocommerce-germanized
2529
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:942
2530
  #, php-format
2531
  msgctxt "dhl"
2532
  msgid "Search %s"
2533
  msgstr "%s suchen"
2534
 
2535
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1047
2536
  msgctxt "dhl"
2537
  msgid "No DHL locations found"
2538
  msgstr "Keine DHL Standorte gefunden"
2539
 
2540
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2541
  #, php-format
2542
  msgctxt "dhl"
2543
  msgid ""
@@ -2548,12 +2573,12 @@ msgstr ""
2548
  "%s oder %s."
2549
 
2550
  # @ woocommerce-germanized
2551
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2552
  msgctxt "dhl"
2553
  msgid "DHL location"
2554
  msgstr "DHL Standort"
2555
 
2556
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2557
  msgctxt "dhl"
2558
  msgid "retry"
2559
  msgstr "Erneut versuchen"
@@ -2581,7 +2606,7 @@ msgctxt "dhl"
2581
  msgid "Please choose name and address of your preferred neighbor."
2582
  msgstr "Bitte wähle einen Namen und die Adresse deines Wunschnachbars."
2583
 
2584
- #: woocommerce-germanized-dhl/src/ReturnLabel.php:124
2585
  #: woocommerce-germanized-dhl/src/SimpleLabel.php:86
2586
  #, php-format
2587
  msgctxt "dhl full name"
@@ -4517,7 +4542,7 @@ msgctxt "shipments"
4517
  msgid "Invalid packaging."
4518
  msgstr "Verpackung nicht verfügbar."
4519
 
4520
- #: woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php:195
4521
  msgctxt "shipments"
4522
  msgid "Invalid shipment item."
4523
  msgstr "Ungültige Sendungsposition."
@@ -5357,20 +5382,20 @@ msgstr ""
5357
 
5358
  # @ woocommerce-germanized
5359
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:122
5360
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:423
5361
  msgid "Downloadable Product"
5362
  msgstr "Herunterladbares Produkt"
5363
 
5364
  # @ woocommerce-germanized
5365
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:123
5366
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:424
5367
  msgid "Virtual Product"
5368
  msgstr "Virtuelles Produkt"
5369
 
5370
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:124
5371
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:46
5372
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:168
5373
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:425
5374
  #: woocommerce-germanized/includes/class-wc-gzd-legal-checkbox-manager.php:146
5375
  msgid "Service"
5376
  msgstr "Dienstleistung"
@@ -5467,8 +5492,8 @@ msgstr "Gleiche wie übergeordnet"
5467
 
5468
  # @ woocommerce-germanized
5469
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-product-categories.php:82
5470
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:432
5471
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:528
5472
  msgid "None"
5473
  msgstr "Keine"
5474
 
@@ -5482,7 +5507,7 @@ msgstr "Germanize"
5482
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:73
5483
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:153
5484
  #: woocommerce-germanized/includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
5485
- #: woocommerce-germanized/woocommerce-germanized.php:816
5486
  msgid "Settings"
5487
  msgstr "Einstellungen"
5488
 
@@ -5812,8 +5837,8 @@ msgstr "Angebotspreis Hinweis"
5812
  # @ woocommerce-germanized
5813
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:90
5814
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:217
5815
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:228
5816
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:260
5817
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/class-wc-gzd-elementor-widget-product-units.php:10
5818
  msgid "Product Units"
5819
  msgstr "Produkteinheiten"
@@ -6235,11 +6260,11 @@ msgstr ""
6235
  msgid "Run the updater"
6236
  msgstr "Update starten"
6237
 
6238
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:178
6239
  msgid "Not now"
6240
  msgstr "Nicht jetzt"
6241
 
6242
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:182
6243
  msgctxt "woocommerce-germanized"
6244
  msgid "Deactivate"
6245
  msgstr "Deaktivieren"
@@ -6748,7 +6773,7 @@ msgstr "E-Mails"
6748
  # @ woocommerce-germanized
6749
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:30
6750
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:21
6751
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:33
6752
  msgid "General"
6753
  msgstr "Allgemein"
6754
 
@@ -6814,8 +6839,8 @@ msgstr ""
6814
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-orders-controller.php:145
6815
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:553
6816
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:566
6817
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:131
6818
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:139
6819
  msgid "Title"
6820
  msgstr "Anrede"
6821
 
@@ -7150,7 +7175,7 @@ msgstr "Jetzt hinzufügen"
7150
 
7151
  # @ woocommerce-germanized
7152
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:209
7153
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:367
7154
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-taxes.php:161
7155
  msgid "Notice Text"
7156
  msgstr "Hinweistext"
@@ -7445,35 +7470,35 @@ msgid "Shopmarks"
7445
  msgstr "Preisauszeichnung"
7446
 
7447
  # @ woocommerce-germanized
7448
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:34
7449
  msgid "Delivery times"
7450
  msgstr "Lieferzeiten"
7451
 
7452
  # @ woocommerce-germanized
7453
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:35
7454
  msgid "Unit prices"
7455
  msgstr "Grundpreise"
7456
 
7457
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:36
7458
  msgid "Price labels"
7459
  msgstr "Preishinweise"
7460
 
7461
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:44
7462
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:206
7463
  msgid "Widgets & Blocks"
7464
  msgstr "Widgets & Blöcke"
7465
 
7466
  # @ woocommerce-germanized
7467
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:45
7468
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:251
7469
  msgid "E-Mails"
7470
  msgstr "E-Mails"
7471
 
7472
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:64
7473
  msgid "Shopmark Display"
7474
  msgstr "Preisauszeichnung"
7475
 
7476
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:65
7477
  msgid ""
7478
  "By adjusting the display settings you might determine where to show or hide "
7479
  "your shopmarks e.g. the tax notice on single product pages."
@@ -7483,12 +7508,12 @@ msgstr ""
7483
  "deaktivieren."
7484
 
7485
  # @ woocommerce-germanized
7486
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:83
7487
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:326
7488
  msgid "Location"
7489
  msgstr "Ort"
7490
 
7491
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:84
7492
  msgid ""
7493
  "Adjust the location of the shopmark by selecting a location from the list. "
7494
  "Some Themes might apply the locations at different positions that's why the "
@@ -7499,12 +7524,12 @@ msgstr ""
7499
  "unterschiedlichen Stellen aus, sodass das Ergebnis u.U. von Theme zu Theme "
7500
  "abweichen kann."
7501
 
7502
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:97
7503
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:341
7504
  msgid "Priority"
7505
  msgstr "Priorität"
7506
 
7507
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:98
7508
  msgid ""
7509
  "Many different information may be attached to the location selected. By "
7510
  "adjusting the priority you can choose whether the shopmark gets applied "
@@ -7516,12 +7541,12 @@ msgstr ""
7516
  "soll."
7517
 
7518
  # @ woocommerce-germanized
7519
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:116
7520
  #: woocommerce-germanized/includes/admin/views/html-page-status-germanized.php:50
7521
  msgid "Default Delivery Time"
7522
  msgstr "Standard-Lieferzeit"
7523
 
7524
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:117
7525
  msgid ""
7526
  "Choose a delivery time that serves as fallback in case no delivery time was "
7527
  "added to the product."
@@ -7529,13 +7554,13 @@ msgstr ""
7529
  "Wähle eine Lieferzeit aus, die verwendet wird, wenn dem Produkt keine "
7530
  "Lieferzeit zugeordnet wurde."
7531
 
7532
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:130
7533
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:454
7534
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:501
7535
  msgid "Format"
7536
  msgstr "Format"
7537
 
7538
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:131
7539
  msgid ""
7540
  "You may want to adjust the delivery time output format. You might use "
7541
  "{delivery_time} to output the current product's delivery time."
@@ -7544,11 +7569,11 @@ msgstr ""
7544
  "zur Ausgabe der Lieferzeit des Produktes."
7545
 
7546
  # @ woocommerce-germanized
7547
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:149
7548
  msgid "Default Sale Label"
7549
  msgstr "Streichpreis-Hinweis"
7550
 
7551
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:150
7552
  msgid ""
7553
  "Price labels are added to sale products to inform the customers of the "
7554
  "different prices' meaning. You may add a fallback label in case a product "
@@ -7559,11 +7584,11 @@ msgstr ""
7559
  "Hinweise, um sicherzustellen, dass für Produkte ohne abweichenden Hinweis im "
7560
  "Zweifel der Standard-Hinweis verwendet wird."
7561
 
7562
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:191
7563
  msgid "Adjust Product Widgets & Blocks visibility options."
7564
  msgstr "Passe die Anzeige in Widgets & Blöcken an."
7565
 
7566
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:195
7567
  #, php-format
7568
  msgid ""
7569
  "Adjust %s visibility options and choose which shopmarks to be displayed at "
@@ -7573,59 +7598,59 @@ msgstr ""
7573
  "Auszeichnungen an welchen Orten angezeigt werden sollen."
7574
 
7575
  # @ woocommerce-germanized
7576
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:207
7577
  msgid "Shipping Costs notice"
7578
  msgstr "Versandkosten-Hinweis"
7579
 
7580
  # @ woocommerce-germanized
7581
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:214
7582
  msgid "Tax Info"
7583
  msgstr "MwSt. Hinweis"
7584
 
7585
  # @ woocommerce-germanized
7586
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:221
7587
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:252
7588
  msgid "Base Price"
7589
  msgstr "Grundpreis"
7590
 
7591
  # @ woocommerce-germanized
7592
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:235
7593
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:268
7594
  msgid "Delivery Time Notice"
7595
  msgstr "Lieferzeiten-Hinweis"
7596
 
7597
  # @ woocommerce-germanized
7598
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:276
7599
  msgid "Short Description"
7600
  msgstr "Warenkorbkurzbeschreibung"
7601
 
7602
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:299
7603
  #, php-format
7604
  msgid "Show %s shopmark"
7605
  msgstr "Preisauszeichnung „%s“ anzeigen"
7606
 
7607
  # @ woocommerce-germanized
7608
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:307
7609
  msgid "Tax"
7610
  msgstr "Steuer"
7611
 
7612
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:308
7613
  msgid "Show Tax shopmark"
7614
  msgstr "Preisauszeichnung „Steuer“ anzeigen"
7615
 
7616
  # @ woocommerce-germanized
7617
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:316
7618
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:361
7619
  #: woocommerce-germanized/includes/wc-gzd-core-functions.php:248
7620
  msgid "Shipping Costs"
7621
  msgstr "Versandkosten"
7622
 
7623
  # @ woocommerce-germanized
7624
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:317
7625
  msgid "Show Shipping Costs shopmark"
7626
  msgstr "Preisauszeichnung „Versandkosten“ anzeigen"
7627
 
7628
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:327
7629
  msgid ""
7630
  "Choose a location for the shopmark. Locations are mapped to specific "
7631
  "WooCommerce hooks and may differ from Theme to Theme."
@@ -7633,7 +7658,7 @@ msgstr ""
7633
  "Wähle einen Ort für die Preisauszeichnung aus. Orte werden in WooCommerce an "
7634
  "bestimmte Hooks gebunden und können sich von Theme zu Theme unterscheiden."
7635
 
7636
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:342
7637
  #, php-format
7638
  msgid ""
7639
  "Choose a priority by which the shopmark should be attached to the location. "
@@ -7645,7 +7670,7 @@ msgstr ""
7645
  "Preisauszeichnung hinzugefügt. Standard ist %d."
7646
 
7647
  # @ woocommerce-germanized
7648
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:368
7649
  msgid ""
7650
  "This text will be used to inform the customer about shipping costs. Use "
7651
  "{link}{/link} to insert link to shipping costs page."
@@ -7655,17 +7680,17 @@ msgstr ""
7655
  "zur Versandkosten-Seite einzufügen."
7656
 
7657
  # @ woocommerce-germanized
7658
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:373
7659
  msgid "plus {link}Shipping Costs{/link}"
7660
  msgstr "zzgl. {link}Versandkosten{/link}"
7661
 
7662
  # @ woocommerce-germanized
7663
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:376
7664
  msgid "Free Shipping Text"
7665
  msgstr "Kostenloser Versand Text"
7666
 
7667
  # @ woocommerce-germanized
7668
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:377
7669
  msgid ""
7670
  "This text will be used to inform the customer about free shipping. Leave "
7671
  "empty to disable notice. Use {link}{/link} to insert link to shipping costs "
@@ -7676,13 +7701,13 @@ msgstr ""
7676
  "Versandkosten-Seite einzufügen."
7677
 
7678
  # @ woocommerce-germanized
7679
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:385
7680
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:483
7681
  msgid "Hide Notice"
7682
  msgstr "Hinweis ausblenden"
7683
 
7684
  # @ woocommerce-germanized
7685
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:386
7686
  msgid ""
7687
  "Select product types for which you might want to disable the shipping costs "
7688
  "notice."
@@ -7691,33 +7716,33 @@ msgstr ""
7691
  "möchtest."
7692
 
7693
  # @ woocommerce-germanized
7694
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:396
7695
  msgid "Footer"
7696
  msgstr "Footer"
7697
 
7698
  # @ woocommerce-germanized
7699
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:399
7700
  msgid "Notice"
7701
  msgstr "Hinweis"
7702
 
7703
  # @ woocommerce-germanized
7704
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:400
7705
  msgid "Attach a global VAT notice to your footer."
7706
  msgstr "Einen seitenübergreifenden MwSt.-Hinweis im Footer einfügen."
7707
 
7708
  # @ woocommerce-germanized
7709
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:407
7710
  msgid "Attach a global sale price notice to your footer."
7711
  msgstr ""
7712
  "Einen seitenübergreifenden Hinweis zu reduzierten Preisen im Footer einfügen."
7713
 
7714
  # @ woocommerce-germanized
7715
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:443
7716
  msgid "Fallback"
7717
  msgstr "Fallback"
7718
 
7719
  # @ woocommerce-germanized
7720
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:444
7721
  msgid ""
7722
  "This delivery time will be added to every product if no delivery time has "
7723
  "been chosen individually"
@@ -7726,12 +7751,12 @@ msgstr ""
7726
  "zugeordnet wurde"
7727
 
7728
  # @ woocommerce-germanized
7729
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:451
7730
  msgid "Manage Delivery Times"
7731
  msgstr "Lieferzeiten verwalten"
7732
 
7733
  # @ woocommerce-germanized
7734
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:455
7735
  msgid ""
7736
  "This text will be used to indicate delivery time for products. Use "
7737
  "{delivery_time} as placeholder."
@@ -7740,15 +7765,15 @@ msgstr ""
7740
  "{delivery_time} als Platzhalter verwenden."
7741
 
7742
  # @ woocommerce-germanized
7743
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:459
7744
  msgid "Delivery time: {delivery_time}"
7745
  msgstr "Lieferzeit: {delivery_time}"
7746
 
7747
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:462
7748
  msgid "Digital text"
7749
  msgstr "Digitaler Text"
7750
 
7751
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:466
7752
  msgid ""
7753
  "Enter a text which will be shown as digital delivery time text (replacement "
7754
  "for default digital time on digital products)."
@@ -7758,24 +7783,24 @@ msgstr ""
7758
  "lassen."
7759
 
7760
  # @ woocommerce
7761
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:469
7762
  msgid "Backorder"
7763
  msgstr "Lieferrückstand"
7764
 
7765
  # @ woocommerce-germanized
7766
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:470
7767
  msgid "Hide delivery time if a product is on backorder."
7768
  msgstr "Lieferzeit ausblenden falls das Produkt im Lieferrückstand ist."
7769
 
7770
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:476
7771
  msgid "Not in Stock"
7772
  msgstr "Nicht auf Lager"
7773
 
7774
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:477
7775
  msgid "Hide delivery time if a product is not in stock."
7776
  msgstr "Lieferzeit ausblenden falls das Produkt nicht auf Lager ist."
7777
 
7778
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:484
7779
  msgid ""
7780
  "Select product types for which you might want to disable the delivery time "
7781
  "notice."
@@ -7784,7 +7809,7 @@ msgstr ""
7784
  "möchtest."
7785
 
7786
  # @ woocommerce-germanized
7787
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:502
7788
  msgid ""
7789
  "This text will be used to display the base price. Use {price} to insert the "
7790
  "price. If you want to specifically format base price output use {base}, "
@@ -7796,26 +7821,26 @@ msgstr ""
7796
  "{base_price} für die einzelnen Elemente."
7797
 
7798
  # @ woocommerce-germanized
7799
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:506
7800
  msgid "{price}"
7801
  msgstr "{price}"
7802
 
7803
  # @ woocommerce-germanized
7804
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:509
7805
  msgid "Variable Price"
7806
  msgstr "Variabler Preis"
7807
 
7808
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:510
7809
  msgid "Enable price range base prices for variable products."
7810
  msgstr "Aktiviere von-bis-Grundpreise für variable Produkte."
7811
 
7812
  # @ woocommerce-germanized
7813
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:516
7814
  msgid "Product units format"
7815
  msgstr "Produkteinheiten Format"
7816
 
7817
  # @ woocommerce-germanized
7818
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:517
7819
  msgid ""
7820
  "This text will be used to display the product units. Use {product_units} to "
7821
  "insert the amount of product units. Use {unit} to insert the unit. "
@@ -7827,21 +7852,21 @@ msgstr ""
7827
  "Grundpreis."
7828
 
7829
  # @ woocommerce-germanized
7830
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:521
7831
  msgid "Product contains: {product_units} {unit}"
7832
  msgstr "Produkt enthält: {product_units} {unit}"
7833
 
7834
  # @ woocommerce-germanized
7835
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:533
7836
  msgid "Fallback Sale Label"
7837
  msgstr "Standard-Streichpreis"
7838
 
7839
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:540
7840
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:550
7841
  msgid "Manage Price Labels"
7842
  msgstr "Preishinweise verwalten"
7843
 
7844
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:540
7845
  msgid ""
7846
  "Choose whether you would like to have a default sale price label to inform "
7847
  "the customer about the regular price (e.g. Recommended Retail Price)."
@@ -7850,11 +7875,11 @@ msgstr ""
7850
  "den Kunden auf den alten Preis (bei reduzierten Produkten, sog. "
7851
  "Streichpreis) hinweist (z.B. UVP)."
7852
 
7853
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:543
7854
  msgid "Fallback Regular Label"
7855
  msgstr "Standard-Angebotspreis"
7856
 
7857
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:550
7858
  msgid ""
7859
  "Choose whether you would like to have a default sale price regular label to "
7860
  "inform the customer about the sale price (e.g. New Price)."
@@ -7864,21 +7889,21 @@ msgstr ""
7864
  "hinweist (z.B. Unser neuer Preis)."
7865
 
7866
  # @ woocommerce-germanized
7867
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7868
  #: woocommerce-germanized/src/Shopmarks.php:294
7869
  msgid "Single Product"
7870
  msgstr "Produktdetailseite"
7871
 
7872
  # @ woocommerce-germanized
7873
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:555
7874
  msgid "Show price labels on single product page."
7875
  msgstr "Zeige Preishinweise auf der Produktdetailseite."
7876
 
7877
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:562
7878
  msgid "Loop"
7879
  msgstr "Produktlisten"
7880
 
7881
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:563
7882
  msgid "Show price labels in product loops."
7883
  msgstr "Zeige Preishinweise in Produktlisten."
7884
 
@@ -8824,25 +8849,25 @@ msgid "%s [new]"
8824
  msgstr "%s [neu]"
8825
 
8826
  # @ woocommerce-germanized
8827
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:245
8828
  msgctxt "revocation-form"
8829
  msgid "is not a valid email address."
8830
  msgstr "ist leider keine valide E-Mail Adresse."
8831
 
8832
  # @ woocommerce-germanized
8833
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:249
8834
  msgctxt "revocation-form"
8835
  msgid "Please enter a valid postcode/ZIP"
8836
  msgstr "Bitte gib eine echte Postleitzahl ein"
8837
 
8838
  # @ woocommerce-germanized
8839
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:257
8840
  msgctxt "revocation-form"
8841
  msgid "is not valid."
8842
  msgstr "ist leider nicht korrekt."
8843
 
8844
  # @ woocommerce-germanized
8845
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:278
8846
  msgctxt "revocation-form"
8847
  msgid ""
8848
  "Thank you. We have received your Revocation Request. You will receive a "
@@ -8896,26 +8921,42 @@ msgstr ""
8896
  "besteuert. Weitere Informationen findest du <a href=\"%s\" target=\"_blank"
8897
  "\">hier</a>."
8898
 
8899
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8900
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
8901
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:349
8902
  msgid ""
8903
  "Please activate your account through clicking on the activation link "
8904
  "received via email."
8905
  msgstr ""
8906
  "Bitte aktiviere dein Kundenkonto indem du auf den Link in der E-Mail klickst."
8907
 
8908
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:239
 
 
 
 
 
 
 
8909
  #, php-format
8910
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8911
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8912
 
8913
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:241
8914
  msgid "Please create an account or login before continuing to checkout"
8915
  msgstr ""
8916
  "Bitte erstelle ein Kundenkonto oder logge dich ein, bevor du zur Kasse gehst"
8917
 
8918
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:381
 
 
 
 
 
 
 
 
 
8919
  msgid ""
8920
  "This activation code has expired. We have sent you a new activation code via "
8921
  "e-mail."
@@ -8924,37 +8965,37 @@ msgstr ""
8924
  "Code per E-Mail geschickt."
8925
 
8926
  # @ woocommerce-germanized
8927
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:383
8928
  msgid "Sorry, but this activation code cannot be found."
8929
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8930
 
8931
  # @ woocommerce-germanized
8932
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:387
8933
  msgid "Thank you. You have successfully activated your account."
8934
  msgstr "Vielen Dank. Dein Benutzerkonto wurde erfolgreich aktiviert."
8935
 
8936
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:574
8937
  msgid "Expired activation key"
8938
  msgstr "Abgelaufener Aktivierungscode"
8939
 
8940
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:579
8941
  msgid "Invalid activation key"
8942
  msgstr "Aktivierungscode ungültig"
8943
 
8944
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:186
8945
  msgid "BCC recipients"
8946
  msgstr "BCC Empfänger"
8947
 
8948
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:188
8949
  msgid "Enter blind-copy recipients (comma separated) for this email."
8950
  msgstr "Füge Empfänger (kommasepariert) einer Blindkopie für diese E-Mail ein."
8951
 
8952
  # @ woocommerce-germanized
8953
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:227
8954
  msgid "Confirmation text"
8955
  msgstr "Bestätigung Text"
8956
 
8957
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:228
8958
  msgid ""
8959
  "Your order has been received and is now being processed. Your order details "
8960
  "are shown below for your reference:"
@@ -8963,7 +9004,7 @@ msgstr ""
8963
  "deiner Bestellung kannst du der nachfolgenden Tabelle entnehmen:"
8964
 
8965
  # @ woocommerce-germanized
8966
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:229
8967
  msgid ""
8968
  "This text will be inserted within the order confirmation email. Use "
8969
  "{order_number}, {site_title} or {order_date} as placeholder."
@@ -8971,7 +9012,7 @@ msgstr ""
8971
  "Dieser Text wird in die Bestellbestätigung eingefügt. Verwende "
8972
  "{order_number}, {site_title} oder {order_date} als Platzhalter."
8973
 
8974
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:347
8975
  msgid ""
8976
  "Your order has been received and is now being processed. Your order details "
8977
  "are shown below for your reference."
@@ -8979,18 +9020,18 @@ msgstr ""
8979
  "Deine Bestellung ist eingegangen und wird nun bearbeitet. Die Einzelheiten "
8980
  "deiner Bestellung kannst du der nachfolgenden Tabelle entnehmen."
8981
 
8982
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:395
8983
  msgid "Someone requested a password reset for your account."
8984
  msgstr ""
8985
  "Jemand hat das Zurücksetzen des Passworts für deinen Account beantragt."
8986
 
8987
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:410
8988
  #, php-format
8989
  msgid "Thanks for creating an account on %s."
8990
  msgstr "Danke, dass du ein Konto bei %s erstellt hast."
8991
 
8992
  # @ woocommerce-germanized
8993
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1114
8994
  msgctxt "revocation-form"
8995
  msgid "Forward your Revocation online"
8996
  msgstr "Deinen Widerruf online erklären"
@@ -10918,7 +10959,7 @@ msgstr ""
10918
  "Bitte <a href=\"%s\">deaktiviere</a> das Plugin und lerne in unserem <a href="
10919
  "\"%s\" target=\"_blank\">Blog-Post</a> wie du das Plugin austauschen kannst."
10920
 
10921
- #: woocommerce-germanized/woocommerce-germanized.php:1008
10922
  msgid "Pease wait while we are trying to redirect you to the payment provider."
10923
  msgstr "Einen Moment - wir versuchen dich zum Zahlungsanbieter weiterzuleiten."
10924
 
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2020-12-17 12:54+0100\n"
6
+ "PO-Revision-Date: 2020-12-17 12:57+0100\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
45
  msgid "Additional Services"
46
  msgstr "Zusätzliche Leistungen"
47
 
48
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:36
49
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:505
50
  #, php-format
51
  msgid ""
52
  "Sorry but none of your selected <a href=\"%s\">Deutsche Post Products</a> is "
58
  "B. Gewicht) und versuche es erneut."
59
 
60
  # @ woocommerce-germanized
61
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:43
62
  msgctxt "dhl"
63
  msgid "Product"
64
  msgstr "Produkt"
65
 
66
  # @ woocommerce-germanized
67
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:59
68
  msgctxt "dhl"
69
  msgid "Page Format"
70
  msgstr "Seitenformat"
137
 
138
  # @ woocommerce-germanized
139
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:139
140
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:601
141
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:775
142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:844
143
  msgctxt "dhl"
152
 
153
  # @ woocommerce-germanized
154
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:159
155
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:602
156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:796
157
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:865
158
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:27
162
 
163
  # @ woocommerce-germanized
164
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:168
165
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:603
166
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:789
167
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:858
168
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:30
268
  msgstr "Empfänger"
269
 
270
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:15
271
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1465
272
  msgctxt "dhl"
273
  msgid "DHL Labels"
274
  msgstr "DHL Labels"
363
  "href=\"%s\">globalen Einstellungen</a>."
364
 
365
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:94
366
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1374
367
  msgctxt "dhl"
368
  msgid "Printing"
369
  msgstr "Druck"
379
  "\"%s\">globalen Einstellungen</a>."
380
 
381
  # @ woocommerce-germanized
382
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:171
383
  msgctxt "dhl time context"
384
  msgid "None"
385
  msgstr "Keine"
386
 
387
  # @ woocommerce-germanized
388
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:181
389
  #: woocommerce-germanized-dhl/src/Api/Paket.php:280
390
  msgctxt "dhl day context"
391
  msgid "None"
392
  msgstr "Keiner"
393
 
394
  # @ woocommerce-germanized
395
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:206
396
  msgctxt "dhl"
397
  msgid "Delivery Duty Unpaid"
398
  msgstr "Delivery Duty Unpaid"
399
 
400
  # @ woocommerce-germanized
401
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:207
402
  msgctxt "dhl"
403
  msgid "Delivery Duty Paid"
404
  msgstr "Delivery Duty Paid"
405
 
406
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:208
407
  msgctxt "dhl"
408
  msgid "Delivery Duty Paid (excl. VAT )"
409
  msgstr "Delivered Duty Paid (exkl. MwSt.)"
410
 
411
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:209
412
  msgctxt "dhl"
413
  msgid "Delivery Duty Paid (excl. Duties, taxes and VAT)"
414
  msgstr "Delivery Duty Paid (exkl. Zölle, Steuern und MwSt.)"
415
 
416
  # @ woocommerce-germanized
417
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:237
418
  msgctxt "age context"
419
  msgid "None"
420
  msgstr "Keine"
421
 
422
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:238
423
  msgctxt "dhl"
424
  msgid "Minimum age of 16"
425
  msgstr "Mindestens 16 Jahre"
426
 
427
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:239
428
  msgctxt "dhl"
429
  msgid "Minimum age of 18"
430
  msgstr "Mindestens 18 Jahre"
431
 
432
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:264
433
  msgctxt "dhl"
434
  msgid "Shipment #{shipment_id} to order {order_id}"
435
  msgstr "Sendung #{shipment_id} zur Bestellung {order_id}"
436
 
437
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:280
438
  msgctxt "dhl"
439
  msgid "Return #{shipment_id} to order {order_id}"
440
  msgstr "Retoure #{shipment_id} zur Bestellung {order_id}"
441
 
442
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:296
443
  msgctxt "dhl"
444
  msgid "Return shipment #{shipment_id} to order #{order_id}"
445
  msgstr "Retourensendung #{shipment_id} zur Bestellung #{order_id}"
446
 
447
  # @ woocommerce-germanized
448
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:376
449
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:188
450
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:496
451
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:850
452
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:38
453
  msgctxt "dhl"
454
  msgid "Packstation"
455
  msgstr "Packstation"
456
 
457
  # @ woocommerce-germanized
458
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:377
459
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:378
460
  msgctxt "dhl"
461
  msgid "Postfiliale"
462
  msgstr "Postfiliale"
463
 
464
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:462
465
  msgctxt "dhl"
466
  msgid "Receiver is missing or does not exist."
467
  msgstr "Empfänger fehlt oder existiert nicht."
468
 
469
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:481
470
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:566
471
  #, php-format
472
  msgctxt "dhl"
473
  msgid "Shipment order #%s does not exist"
474
  msgstr "Bestellung zur Sendung #%s existiert nicht"
475
 
476
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:492
477
  msgctxt "dhl"
478
  msgid "The services chosen are not available for the current product."
479
  msgstr "Die ausgewählten Services sind für dieses Produkt nicht verfügbar."
480
 
481
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:532
482
  #, php-format
483
  msgctxt "dhl"
484
  msgid "Deutsche Post product is missing for %s."
485
  msgstr "Deutsche Post Produkt fehlt oder ist nicht verfügbar für %s."
486
 
487
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:608
488
  #, php-format
489
  msgctxt "dhl"
490
  msgid "%s of the return address is a mandatory field."
491
  msgstr "%s der Rücksendeadresse ist ein Pflichtfeld."
492
 
493
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:613
494
  msgctxt "dhl"
495
  msgid "Please either add a return company or name."
496
  msgstr ""
497
  "Bitte gib entweder einen Firmennamen oder Namen für die Rücksendeadresse an."
498
 
499
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:632
500
  msgctxt "dhl"
501
  msgid "Error while parsing preferred day."
502
  msgstr "Fehler beim Einlesen des Wunschtags."
503
 
504
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:643
505
  msgctxt "dhl"
506
  msgid "Error while parsing preferred time."
507
  msgstr "Fehler beim Einlesen der Wunschzeit."
508
 
509
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:668
510
  msgctxt "dhl"
511
  msgid "The visual min age check is invalid."
512
  msgstr "Das Alter der Alterssichtprüfung ist ungültig."
513
 
514
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:692
515
  msgctxt "dhl"
516
  msgid "The ident min age check is invalid."
517
  msgstr "Das Alter des Ident-Checks ist ungültig."
518
 
519
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:699
520
  msgctxt "dhl"
521
  msgid "There was an error parsing the date of birth for the identity check."
522
  msgstr ""
523
  "Beim Einlesen des Geburtsdatums für den Ident-Check trat ein Problem auf."
524
 
525
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:704
526
  msgctxt "dhl"
527
  msgid ""
528
  "Either a minimum age or a date of birth must be added to the ident check."
531
  "hinzugefügt werden."
532
 
533
  # @ woocommerce-germanized
534
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:718
535
  #, php-format
536
  msgctxt "dhl"
537
  msgid "%s duties element does not exist."
538
  msgstr "%s Zollabgabe existiert nicht."
539
 
540
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1342
541
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1426
542
  msgctxt "dhl"
543
  msgid "Invalid shipment"
544
  msgstr "Ungültige Sendung"
545
 
546
  # @ woocommerce-germanized
547
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1346
548
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1430
549
  msgctxt "dhl"
550
  msgid "Order does not exist"
551
  msgstr "Bestellung existiert nicht"
552
 
553
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1378
554
  msgctxt "dhl"
555
  msgid "Error while creating the label instance"
556
  msgstr "Fehler beim Erstellen der Label-Instanz"
557
 
558
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1501
559
  msgctxt "dhl"
560
  msgid "Invalid label"
561
  msgstr "Ungültiges Label"
562
 
563
  # @ woocommerce-germanized
564
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1589
565
  msgctxt "dhl"
566
  msgid "DHL Retoure International A"
567
  msgstr "DHL Retoure International A"
568
 
569
  # @ woocommerce-germanized
570
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1590
571
  msgctxt "dhl"
572
  msgid "DHL Retoure International B"
573
  msgstr "DHL Retoure International B"
574
 
575
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1599
576
  msgctxt "dhl"
577
  msgid "DHL Retoure Online"
578
  msgstr "DHL Retoure Online"
579
 
580
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1616
581
  msgctxt "dhl"
582
  msgid "DHL Paket Connect"
583
  msgstr "DHL Paket Connect"
584
 
585
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1617
586
  msgctxt "dhl"
587
  msgid "DHL Europaket (B2B)"
588
  msgstr "DHL Europaket (B2B)"
589
 
590
  # @ woocommerce-germanized
591
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1618
592
  msgctxt "dhl"
593
  msgid "DHL Paket International"
594
  msgstr "DHL Paket International"
595
 
596
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1693
597
  msgctxt "dhl"
598
  msgid "DHL Paket"
599
  msgstr "DHL Paket"
600
 
601
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1694
602
  msgctxt "dhl"
603
  msgid "DHL Paket PRIO"
604
  msgstr "DHL Paket PRIO"
605
 
606
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1695
607
  msgctxt "dhl"
608
  msgid "DHL Paket Taggleich"
609
  msgstr "DHL Paket Taggleich"
610
 
611
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1696
612
  msgctxt "dhl"
613
  msgid "DHL Warenpost"
614
  msgstr "DHL Warenpost"
615
 
616
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1783
617
  msgctxt "dhl"
618
  msgid "Error while uploading label."
619
  msgstr "Fehler beim Hochladen des Labels."
620
 
621
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:59
622
  msgctxt "dhl"
623
  msgid "Refreshed data successfully."
624
  msgstr "Daten erfolgreich aktualisiert."
625
 
626
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:59
627
  #, php-format
628
  msgctxt "dhl"
629
  msgid ""
630
+ "Error while refreshing data. Please make sure that the Internetmarke API URL "
631
+ "can be <a href=\"%s\">accessed</a>."
632
  msgstr ""
633
+ "Fehler beim Datenabruf. Bitte prüfe ob die Internetmarke API URL <a href=\"%s"
634
+ "\">erreichbar</a> ist."
635
 
636
  # @ woocommerce-germanized
637
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:176
638
  msgctxt "dhl"
639
  msgid "Receiver Ids"
640
  msgstr "Empfänger IDs"
641
 
642
  # @ woocommerce-germanized
643
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:183
644
  msgctxt "dhl"
645
  msgid "Receiver Id"
646
  msgstr "Empfänger ID"
647
 
648
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:183
649
  msgctxt "dhl"
650
  msgid "Find your Receiver Ids within your DHL contract data."
651
  msgstr "Die Empfänger IDs findest du im DHL Geschäftskundenportal."
652
 
653
  # @ woocommerce-germanized
654
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:184
655
  msgctxt "dhl"
656
  msgid "Country Code"
657
  msgstr "Ländercode"
658
 
659
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:184
660
  msgctxt "dhl"
661
  msgid "Leave empty to use the Receiver Id as fallback."
662
  msgstr "Leer lassen, um diese Empfänger ID als Fallback zu verwenden."
663
 
664
  # @ woocommerce-germanized
665
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:204
666
  msgctxt "dhl"
667
  msgid "+ Add receiver"
668
  msgstr "+ Empfänger hinzufügen"
669
 
670
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:204
671
  msgctxt "dhl"
672
  msgid "Remove selected receiver(s)"
673
  msgstr "Ausgewählte Empfänger löschen"
674
 
675
  # @ woocommerce-germanized
676
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
677
  msgctxt "dhl"
678
  msgid "Select a country"
679
  msgstr "Land auswählen"
680
 
681
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:242
682
  msgctxt "dhl"
683
  msgid "HS-Code (DHL)"
684
  msgstr "Zolltarifnummer (HS-Code, DHL)"
685
 
686
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:242
687
  msgctxt "dhl"
688
  msgid ""
689
  "The HS Code is a number assigned to every possible commodity that can be "
693
  "standardisiertes System von Namen und Nummern zur Klassifizierung "
694
  "gehandelter Produkte."
695
 
696
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:243
697
  msgctxt "dhl"
698
  msgid "Country of manufacture (DHL)"
699
  msgstr "Herstellungsland (DHL)"
700
 
701
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:243
702
  msgctxt "dhl"
703
  msgid ""
704
  "The country of manufacture is needed for customs of international shipping."
706
  "Das Herstellungsland wird für die Zollabwicklung bei internationalen "
707
  "Sendungen benötigt."
708
 
709
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:264
710
  #, php-format
711
  msgctxt "dhl"
712
  msgid ""
716
  "Das Verzeichnis zum Speichern von DHL Labels fehlt. Bitte erstelle den "
717
  "Ordner %s manuell und stelle sicher, dass der Ordner beschreibbar ist."
718
 
719
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:271
720
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1464
721
  #: woocommerce-germanized-dhl/src/ShippingProvider/DHL.php:39
722
  msgctxt "dhl"
723
  msgid "DHL"
724
  msgstr "DHL"
725
 
726
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:286
727
  msgctxt "dhl"
728
  msgid "DHL Label"
729
  msgstr "DHL Label"
730
 
731
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:298
732
  msgctxt "dhl"
733
  msgid ""
734
  "This label has been generated by the DHL for WooCommerce Plugin and is shown "
738
  "Kompatibilitäts-Gründen angezeigt."
739
 
740
  # @ woocommerce-germanized
741
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:299
742
  msgctxt "dhl"
743
  msgid "Download label"
744
  msgstr "Label downloaden"
840
  # @ woocommerce-germanized
841
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:122
842
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:747
843
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1391
844
  msgctxt "dhl"
845
  msgid "Automation"
846
  msgstr "Automatisierung"
1072
  msgstr "Vertragsdaten"
1073
 
1074
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:392
1075
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1222
1076
  msgctxt "dhl"
1077
  msgid "Domestic Default Service"
1078
  msgstr "Standard Service (national)"
1089
  "nachträglich ändern)."
1090
 
1091
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:402
1092
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1242
1093
  msgctxt "dhl"
1094
  msgid "Int. Default Service"
1095
  msgstr "Standard Service (Int.)"
1138
 
1139
  # @ woocommerce-germanized
1140
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:432
1141
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1200
1142
  msgctxt "dhl"
1143
  msgid "Default weight (kg)"
1144
  msgstr "Standardgewicht (kg)"
1145
 
1146
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:434
1147
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1202
1148
  msgctxt "dhl"
1149
  msgid ""
1150
  "Choose a default shipment weight to be used for labels if no weight has been "
1154
  "die das Gewicht nicht automatisch bestimmt werden kann."
1155
 
1156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:443
1157
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1211
1158
  msgctxt "dhl"
1159
  msgid "Minimum weight (kg)"
1160
  msgstr "Mindestgewicht (kg)"
1161
 
1162
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:445
1163
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1213
1164
  msgctxt "dhl"
1165
  msgid ""
1166
  "Choose a minimum weight to be used for labels e.g. to prevent low shipment "
1417
  msgstr "Premium Lieferung für internationale Sendungen."
1418
 
1419
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:626
1420
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1264
1421
  msgctxt "dhl"
1422
  msgid "Labels"
1423
  msgstr "Labels"
1424
 
1425
  # @ woocommerce-germanized
1426
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:627
1427
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1265
1428
  msgctxt "dhl"
1429
  msgid "Automatically create labels for shipments."
1430
  msgstr "Automatisch Labels zu Sendungen erstellen."
1432
  # @ woocommerce-germanized
1433
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:634
1434
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:661
1435
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1272
1436
  msgctxt "dhl"
1437
  msgid "Status"
1438
  msgstr "Status"
1439
 
1440
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:638
1441
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1276
1442
  msgctxt "dhl"
1443
  msgid "Choose a shipment status which should trigger generation of a label."
1444
  msgstr ""
1446
 
1447
  # @ woocommerce-germanized
1448
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:645
1449
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1283
1450
  msgctxt "dhl"
1451
  msgid "Shipment Status"
1452
  msgstr "Sendungsstatus"
1453
 
1454
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:646
1455
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1284
1456
  msgctxt "dhl"
1457
  msgid "Mark shipment as shipped after label has been created successfully."
1458
  msgstr ""
1857
  msgid "Password"
1858
  msgstr "Passwort"
1859
 
1860
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1226
1861
  msgctxt "dhl"
1862
  msgid ""
1863
  "Please select your default shipping service for domestic shipments that you "
1868
  "deine Kunden anbietest."
1869
 
1870
  # @ woocommerce-germanized
1871
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1232
1872
  msgctxt "dhl"
1873
  msgid "EU Default Service"
1874
  msgstr "Standard Service (EU)"
1875
 
1876
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1236
1877
  msgctxt "dhl"
1878
  msgid ""
1879
  "Please select your default shipping service for EU shipments that you want "
1882
  "Bitte wähle das Standard-Produkt für EU Sendungen aus, das du für deine "
1883
  "Kunden anbietest."
1884
 
1885
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1246
1886
  msgctxt "dhl"
1887
  msgid ""
1888
  "Please select your default shipping service for cross-border shipments that "
1892
  "für deine Kunden anbietest."
1893
 
1894
  # @ woocommerce-germanized
1895
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1303
1896
  msgctxt "dhl"
1897
  msgid "Default Format"
1898
  msgstr "Standardformat"
1899
 
1900
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1306
1901
  #, php-format
1902
  msgctxt "dhl"
1903
  msgid ""
1909
  "verwendet wird. Du kannst die Liste auch manuell <a href=\"%s"
1910
  "\">aktualisieren</a>, falls notwendig."
1911
 
1912
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1333
1913
  msgctxt "dhl"
1914
  msgid "Portokasse"
1915
  msgstr "Portokasse"
1916
 
1917
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1336
1918
  msgctxt "dhl"
1919
  msgid "Balance"
1920
  msgstr "Guthaben"
1921
 
1922
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1343
1923
  msgctxt "dhl"
1924
  msgid "Charge (€)"
1925
  msgstr "Aufladen (€)"
1926
 
1927
  # @ woocommerce-germanized
1928
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1353
1929
  msgctxt "dhl"
1930
  msgid "Products"
1931
  msgstr "Produkte"
1932
 
1933
  # @ woocommerce-germanized
1934
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1356
1935
  msgctxt "dhl"
1936
  msgid "Available Products"
1937
  msgstr "Verfügbare Produkte"
1938
 
1939
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1359
1940
  #, php-format
1941
  msgctxt "dhl"
1942
  msgid ""
1948
  "sollen. Du kannst die Produktliste auch manuell <a href=\"%s"
1949
  "\">aktualisieren</a>, falls notwendig."
1950
 
1951
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1384
1952
  msgctxt "dhl"
1953
  msgid "API Error"
1954
  msgstr "API Fehler"
1955
 
1956
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1425
1957
  msgctxt "dhl"
1958
  msgid "Charge Portokasse"
1959
  msgstr "Portokasse aufladen"
1960
 
1961
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1426
1962
  #, php-format
1963
  msgctxt "dhl"
1964
  msgid "The minimum amount is %s"
1965
  msgstr "Der Minimalbetrag beträgt %s"
1966
 
1967
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1436
1968
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1438
1969
  msgctxt "dhl"
1970
  msgid "Not yet a customer?"
1971
  msgstr "Noch kein Kunde?"
1972
 
1973
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1466
1974
  msgctxt "dhl"
1975
  msgid "Internetmarke"
1976
  msgstr "Internetmarke"
1977
 
1978
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1467
1979
  msgctxt "dhl"
1980
  msgid "Preferred Services"
1981
  msgstr "Wunschpaket"
1982
 
1983
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1468
1984
  msgctxt "dhl"
1985
  msgid "Parcel Pickup"
1986
  msgstr "Standorte"
1987
 
1988
+ # @ woocommerce-germanized
1989
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:22
1990
+ msgctxt "dhl"
1991
+ msgid "Ping Check"
1992
+ msgstr "Prüfung der Verbindung"
1993
+
1994
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:37
1995
+ msgctxt "dhl"
1996
+ msgid ""
1997
+ "Unable to connect to the URL. Please make sure that your webhost allows "
1998
+ "outgoing connections to that specific URL."
1999
+ msgstr ""
2000
+ "Kein Verbindungsaufbau zu der URL möglich. Bitte stelle sicher, dass dein "
2001
+ "Hoster ausgehende Verbindungen zu dieser URL erlaubt."
2002
+
2003
+ # @ woocommerce-germanized
2004
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:49
2005
+ msgctxt "dhl"
2006
+ msgid "DHL & Post"
2007
+ msgstr "DHL & Post"
2008
+
2009
  #: woocommerce-germanized-dhl/src/Api/FinderSoap.php:37
2010
  msgctxt "dhl"
2011
  msgid "Sunday"
2023
  msgid "%s %s"
2024
  msgstr "%s %s"
2025
 
2026
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:302
2027
  msgctxt "dhl"
2028
  msgid "PRIO"
2029
  msgstr "PRIO"
2030
 
2031
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:303
2032
  msgctxt "dhl"
2033
  msgid "Einschreiben (Einwurf)"
2034
  msgstr "Einschreiben (Einwurf)"
2035
 
2036
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:304
2037
  msgctxt "dhl"
2038
  msgid "Einschreiben"
2039
  msgstr "Einschreiben"
2040
 
2041
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:305
2042
  msgctxt "dhl"
2043
  msgid "Einschreiben (Eigenhändig)"
2044
  msgstr "Einschreiben (Eigenhändig)"
2045
 
2046
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:306
2047
  msgctxt "dhl"
2048
  msgid "Alterssichtprüfung 16"
2049
  msgstr "Alterssichtprüfung 16"
2050
 
2051
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:307
2052
  msgctxt "dhl"
2053
  msgid "Alterssichtprüfung 18"
2054
  msgstr "Alterssichtprüfung 18"
2055
 
2056
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:308
2057
  msgctxt "dhl"
2058
  msgid "Zusatzentgelt MBf"
2059
  msgstr "Zusatzentgelt MBf"
2060
 
2061
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:309
2062
  msgctxt "dhl"
2063
  msgid "Unterschrift"
2064
  msgstr "Unterschrift"
2065
 
2066
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:310
2067
  msgctxt "dhl"
2068
  msgid "Tracked"
2069
  msgstr "Tracked"
2070
 
2071
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:43
2072
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:52
2073
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:490
2074
  msgctxt "dhl"
2075
  msgid "Error while fetching label PDF"
2076
  msgstr "Fehler beim Download des PDF Labels"
2086
  msgid "Invalid API response"
2087
  msgstr "Fehlerhafte API Rückmeldung"
2088
 
2089
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:190
2090
  msgctxt "dhl"
2091
  msgid "Error while authenticating user."
2092
  msgstr "Fehler beim Autorisieren des Benutzers."
2093
 
2094
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:276
2095
  msgctxt "dhl"
2096
  msgid "Error during Warenpost International request."
2097
  msgstr "Fehler beim Aufruf der Warenpost International API."
2098
 
2099
  # @ woocommerce-germanized
2100
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:298
2101
  #, php-format
2102
  msgctxt "dhl"
2103
  msgid "Error during request: %s"
2134
  msgid "Wrong username or password"
2135
  msgstr "Falscher Benutzername oder Passwort"
2136
 
2137
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:252
2138
  #, php-format
2139
  msgctxt "dhl"
2140
  msgid "until %s"
2141
  msgstr "bis %s"
2142
 
2143
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:337
2144
  #, php-format
2145
  msgctxt "dhl"
2146
  msgid "Length: %s"
2147
  msgstr "Länge: %s"
2148
 
2149
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:341
2150
  #, php-format
2151
  msgctxt "dhl"
2152
  msgid "Width: %s"
2153
  msgstr "Breite: %s"
2154
 
2155
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:345
2156
  #, php-format
2157
  msgctxt "dhl"
2158
  msgid "Height: %s"
2159
  msgstr "Höhe: %s"
2160
 
2161
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:349
2162
  #, php-format
2163
  msgctxt "dhl"
2164
  msgid "Weight: %s"
2165
  msgstr "Gewicht: %s"
2166
 
2167
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:354
2168
  msgctxt "dhl"
2169
  msgid "Total"
2170
  msgstr "Gesamt"
2171
 
2172
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:544
2173
  #, php-format
2174
  msgctxt "dhl"
2175
  msgid "Could not refund post label: %s"
2176
  msgstr "Deutsche Post Label konnte nicht rückerstattet werden: %s"
2177
 
2178
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:558
2179
  msgctxt "dhl"
2180
  msgid "Refund API could not be instantiated"
2181
  msgstr "Die API für Rückerstattungen konnte nicht initialisiert werden"
2182
 
2183
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:647
2184
  #: woocommerce-germanized-dhl/src/Api/LabelSoap.php:379
2185
  #: woocommerce-germanized-dhl/src/Api/ReturnRest.php:34
2186
  #, php-format
2188
  msgid "Could not fetch shipment %d."
2189
  msgstr "Sendung %d konnte nicht gefunden werden."
2190
 
2191
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:687
2192
  msgctxt "dhl"
2193
  msgid "Error while generating shop order id."
2194
  msgstr "Fehler beim Erzeugen der Shop Order Id."
2195
 
2196
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:697
2197
  #, php-format
2198
  msgctxt "dhl"
2199
  msgid ""
2203
  "Fehler beim Kauf des Labels. Bitte <a href=\"%s\">aktualisiere</a>die "
2204
  "Produktliste manuell und versuche es erneut."
2205
 
2206
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:740
2207
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:747
2208
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:775
2209
  msgctxt "dhl"
2210
  msgid "Error while downloading the PDF stamp."
2211
  msgstr "Fehler beim Download des PDF Labels."
2212
 
2213
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:782
2214
  msgctxt "dhl"
2215
  msgid "Invalid stamp response."
2216
  msgstr "Fehlerhafte Label Rückmeldung."
2424
  "angibst."
2425
 
2426
  # @ woocommerce-germanized
2427
+ #: woocommerce-germanized-dhl/src/Package.php:994
2428
  msgctxt "dhl"
2429
  msgid "Germany"
2430
  msgstr "Deutschland"
2431
 
2432
  # @ woocommerce-germanized
2433
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:92
2434
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:863
2435
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:892
2436
  msgctxt "dhl"
2437
  msgid "Address Type"
2438
  msgstr "Adresstyp"
2439
 
2440
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:95
2441
  msgctxt "dhl"
2442
  msgid "Select whether delivery to DHL locations should be enabled."
2443
  msgstr "Wähle aus, ob die Lieferung an DHL Standorte aktiviert werden soll."
2444
 
2445
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:100
2446
  msgctxt "dhl"
2447
  msgid "Postnumber"
2448
  msgstr "Postnummer"
2449
 
2450
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:102
2451
  msgctxt "dhl"
2452
  msgid ""
2453
  "In case delivery to packstation is selected please fill in the corresponding "
2456
  "Insofern die Lieferung an eine Packstation erfolgt, bitte die Postnummer "
2457
  "eintragen."
2458
 
2459
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:188
2460
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:579
2461
  msgctxt "dhl"
2462
  msgid "Invalid address type."
2463
  msgstr "Ungültiger Adresstyp."
2464
 
2465
  # @ woocommerce-germanized
2466
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:651
2467
  msgctxt "dhl"
2468
  msgid "Sorry, but delivery to packstation is not available."
2469
  msgstr ""
2470
  "Entschuldigung, die Lieferung an eine Packstation steht nicht zur Verfügung."
2471
 
2472
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:656
2473
  msgctxt "dhl"
2474
  msgid "Sorry, but delivery to parcel shops is not available."
2475
  msgstr ""
2476
  "Entschuldigung, die Lieferung an einen Paketshop steht nicht zur Verfügung."
2477
 
2478
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:660
2479
  msgctxt "dhl"
2480
  msgid "Sorry, but delivery to post offices is not available."
2481
  msgstr "Entschuldigung, die Lieferung an Postfilialen ist nicht verfügbar."
2482
 
2483
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:667
2484
  #, php-format
2485
  msgctxt "dhl"
2486
  msgid "Please indicate shipment to %s by one of the following values: %s."
2488
  "Bitte identifiziere die Lieferung an %s durch die Eingabe einer der "
2489
  "folgenden Werte: %s."
2490
 
2491
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:675
2492
  msgctxt "dhl"
2493
  msgid ""
2494
  "Your DHL customer number (Post number) is not valid. Please check your "
2497
  "Deine DHL Kundennummer (Postnummer) ist nicht gültig. Bitte überprüfe deine "
2498
  "Eingabe."
2499
 
2500
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:678
2501
  msgctxt "dhl"
2502
  msgid ""
2503
  "Your DHL customer number (Post number) is needed to ship to a packstation."
2505
  "Deine DHL Kundennummer (Postnummer) wird für den Versand an eine Packstation "
2506
  "benötigt."
2507
 
2508
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:727
2509
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:854
2510
  msgctxt "dhl"
2511
  msgid "Branch"
2512
  msgstr "Filiale"
2513
 
2514
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:728
2515
  msgctxt "dhl"
2516
  msgid "Postnumber "
2517
  msgstr "Postnummer "
2518
 
2519
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:829
2520
  #, php-format
2521
  msgctxt "dhl"
2522
  msgid "e.g. %s 456"
2523
  msgstr "z.B. %s 456"
2524
 
2525
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:854
2526
  msgctxt "dhl"
2527
  msgid "Branches"
2528
  msgstr "Filialen"
2529
 
2530
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:870
2531
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:903
2532
  msgctxt "dhl"
2533
  msgid "DHL customer number (Post number)"
2534
  msgstr "DHL Kundennummer (Postnummer)"
2535
 
2536
  # @ woocommerce-germanized
2537
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:880
2538
  msgctxt "dhl"
2539
  msgid "Regular Address"
2540
  msgstr "Normale Adresse"
2541
 
2542
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:907
2543
  msgctxt "dhl"
2544
  msgid "Not yet a DHL customer?"
2545
  msgstr "Noch kein DHL Kunde?"
2546
 
2547
  # @ woocommerce-germanized
2548
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:907
2549
  msgctxt "dhl"
2550
  msgid "Register now"
2551
  msgstr "Jetzt registrieren"
2552
 
2553
  # @ woocommerce-germanized
2554
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:956
2555
  #, php-format
2556
  msgctxt "dhl"
2557
  msgid "Search %s"
2558
  msgstr "%s suchen"
2559
 
2560
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1061
2561
  msgctxt "dhl"
2562
  msgid "No DHL locations found"
2563
  msgstr "Keine DHL Standorte gefunden"
2564
 
2565
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2566
  #, php-format
2567
  msgctxt "dhl"
2568
  msgid ""
2573
  "%s oder %s."
2574
 
2575
  # @ woocommerce-germanized
2576
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2577
  msgctxt "dhl"
2578
  msgid "DHL location"
2579
  msgstr "DHL Standort"
2580
 
2581
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2582
  msgctxt "dhl"
2583
  msgid "retry"
2584
  msgstr "Erneut versuchen"
2606
  msgid "Please choose name and address of your preferred neighbor."
2607
  msgstr "Bitte wähle einen Namen und die Adresse deines Wunschnachbars."
2608
 
2609
+ #: woocommerce-germanized-dhl/src/ReturnLabel.php:125
2610
  #: woocommerce-germanized-dhl/src/SimpleLabel.php:86
2611
  #, php-format
2612
  msgctxt "dhl full name"
4542
  msgid "Invalid packaging."
4543
  msgstr "Verpackung nicht verfügbar."
4544
 
4545
+ #: woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php:197
4546
  msgctxt "shipments"
4547
  msgid "Invalid shipment item."
4548
  msgstr "Ungültige Sendungsposition."
5382
 
5383
  # @ woocommerce-germanized
5384
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:122
5385
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:427
5386
  msgid "Downloadable Product"
5387
  msgstr "Herunterladbares Produkt"
5388
 
5389
  # @ woocommerce-germanized
5390
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:123
5391
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:428
5392
  msgid "Virtual Product"
5393
  msgstr "Virtuelles Produkt"
5394
 
5395
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:124
5396
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:46
5397
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:168
5398
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:429
5399
  #: woocommerce-germanized/includes/class-wc-gzd-legal-checkbox-manager.php:146
5400
  msgid "Service"
5401
  msgstr "Dienstleistung"
5492
 
5493
  # @ woocommerce-germanized
5494
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-product-categories.php:82
5495
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:436
5496
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:532
5497
  msgid "None"
5498
  msgstr "Keine"
5499
 
5507
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:73
5508
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:153
5509
  #: woocommerce-germanized/includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
5510
+ #: woocommerce-germanized/woocommerce-germanized.php:820
5511
  msgid "Settings"
5512
  msgstr "Einstellungen"
5513
 
5837
  # @ woocommerce-germanized
5838
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:90
5839
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:217
5840
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:232
5841
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:264
5842
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/class-wc-gzd-elementor-widget-product-units.php:10
5843
  msgid "Product Units"
5844
  msgstr "Produkteinheiten"
6260
  msgid "Run the updater"
6261
  msgstr "Update starten"
6262
 
6263
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:185
6264
  msgid "Not now"
6265
  msgstr "Nicht jetzt"
6266
 
6267
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:189
6268
  msgctxt "woocommerce-germanized"
6269
  msgid "Deactivate"
6270
  msgstr "Deaktivieren"
6773
  # @ woocommerce-germanized
6774
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:30
6775
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:21
6776
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:37
6777
  msgid "General"
6778
  msgstr "Allgemein"
6779
 
6839
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-orders-controller.php:145
6840
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:553
6841
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:566
6842
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:221
6843
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
6844
  msgid "Title"
6845
  msgstr "Anrede"
6846
 
7175
 
7176
  # @ woocommerce-germanized
7177
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:209
7178
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:371
7179
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-taxes.php:161
7180
  msgid "Notice Text"
7181
  msgstr "Hinweistext"
7470
  msgstr "Preisauszeichnung"
7471
 
7472
  # @ woocommerce-germanized
7473
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:38
7474
  msgid "Delivery times"
7475
  msgstr "Lieferzeiten"
7476
 
7477
  # @ woocommerce-germanized
7478
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:39
7479
  msgid "Unit prices"
7480
  msgstr "Grundpreise"
7481
 
7482
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:40
7483
  msgid "Price labels"
7484
  msgstr "Preishinweise"
7485
 
7486
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:48
7487
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:210
7488
  msgid "Widgets & Blocks"
7489
  msgstr "Widgets & Blöcke"
7490
 
7491
  # @ woocommerce-germanized
7492
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:49
7493
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:255
7494
  msgid "E-Mails"
7495
  msgstr "E-Mails"
7496
 
7497
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:68
7498
  msgid "Shopmark Display"
7499
  msgstr "Preisauszeichnung"
7500
 
7501
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:69
7502
  msgid ""
7503
  "By adjusting the display settings you might determine where to show or hide "
7504
  "your shopmarks e.g. the tax notice on single product pages."
7508
  "deaktivieren."
7509
 
7510
  # @ woocommerce-germanized
7511
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:87
7512
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:330
7513
  msgid "Location"
7514
  msgstr "Ort"
7515
 
7516
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:88
7517
  msgid ""
7518
  "Adjust the location of the shopmark by selecting a location from the list. "
7519
  "Some Themes might apply the locations at different positions that's why the "
7524
  "unterschiedlichen Stellen aus, sodass das Ergebnis u.U. von Theme zu Theme "
7525
  "abweichen kann."
7526
 
7527
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:101
7528
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:345
7529
  msgid "Priority"
7530
  msgstr "Priorität"
7531
 
7532
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:102
7533
  msgid ""
7534
  "Many different information may be attached to the location selected. By "
7535
  "adjusting the priority you can choose whether the shopmark gets applied "
7541
  "soll."
7542
 
7543
  # @ woocommerce-germanized
7544
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:120
7545
  #: woocommerce-germanized/includes/admin/views/html-page-status-germanized.php:50
7546
  msgid "Default Delivery Time"
7547
  msgstr "Standard-Lieferzeit"
7548
 
7549
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:121
7550
  msgid ""
7551
  "Choose a delivery time that serves as fallback in case no delivery time was "
7552
  "added to the product."
7554
  "Wähle eine Lieferzeit aus, die verwendet wird, wenn dem Produkt keine "
7555
  "Lieferzeit zugeordnet wurde."
7556
 
7557
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:134
7558
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:458
7559
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:505
7560
  msgid "Format"
7561
  msgstr "Format"
7562
 
7563
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:135
7564
  msgid ""
7565
  "You may want to adjust the delivery time output format. You might use "
7566
  "{delivery_time} to output the current product's delivery time."
7569
  "zur Ausgabe der Lieferzeit des Produktes."
7570
 
7571
  # @ woocommerce-germanized
7572
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:153
7573
  msgid "Default Sale Label"
7574
  msgstr "Streichpreis-Hinweis"
7575
 
7576
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:154
7577
  msgid ""
7578
  "Price labels are added to sale products to inform the customers of the "
7579
  "different prices' meaning. You may add a fallback label in case a product "
7584
  "Hinweise, um sicherzustellen, dass für Produkte ohne abweichenden Hinweis im "
7585
  "Zweifel der Standard-Hinweis verwendet wird."
7586
 
7587
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:195
7588
  msgid "Adjust Product Widgets & Blocks visibility options."
7589
  msgstr "Passe die Anzeige in Widgets & Blöcken an."
7590
 
7591
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:199
7592
  #, php-format
7593
  msgid ""
7594
  "Adjust %s visibility options and choose which shopmarks to be displayed at "
7598
  "Auszeichnungen an welchen Orten angezeigt werden sollen."
7599
 
7600
  # @ woocommerce-germanized
7601
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:211
7602
  msgid "Shipping Costs notice"
7603
  msgstr "Versandkosten-Hinweis"
7604
 
7605
  # @ woocommerce-germanized
7606
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:218
7607
  msgid "Tax Info"
7608
  msgstr "MwSt. Hinweis"
7609
 
7610
  # @ woocommerce-germanized
7611
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:225
7612
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:256
7613
  msgid "Base Price"
7614
  msgstr "Grundpreis"
7615
 
7616
  # @ woocommerce-germanized
7617
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:239
7618
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:272
7619
  msgid "Delivery Time Notice"
7620
  msgstr "Lieferzeiten-Hinweis"
7621
 
7622
  # @ woocommerce-germanized
7623
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:280
7624
  msgid "Short Description"
7625
  msgstr "Warenkorbkurzbeschreibung"
7626
 
7627
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:303
7628
  #, php-format
7629
  msgid "Show %s shopmark"
7630
  msgstr "Preisauszeichnung „%s“ anzeigen"
7631
 
7632
  # @ woocommerce-germanized
7633
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:311
7634
  msgid "Tax"
7635
  msgstr "Steuer"
7636
 
7637
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:312
7638
  msgid "Show Tax shopmark"
7639
  msgstr "Preisauszeichnung „Steuer“ anzeigen"
7640
 
7641
  # @ woocommerce-germanized
7642
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:320
7643
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:365
7644
  #: woocommerce-germanized/includes/wc-gzd-core-functions.php:248
7645
  msgid "Shipping Costs"
7646
  msgstr "Versandkosten"
7647
 
7648
  # @ woocommerce-germanized
7649
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:321
7650
  msgid "Show Shipping Costs shopmark"
7651
  msgstr "Preisauszeichnung „Versandkosten“ anzeigen"
7652
 
7653
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:331
7654
  msgid ""
7655
  "Choose a location for the shopmark. Locations are mapped to specific "
7656
  "WooCommerce hooks and may differ from Theme to Theme."
7658
  "Wähle einen Ort für die Preisauszeichnung aus. Orte werden in WooCommerce an "
7659
  "bestimmte Hooks gebunden und können sich von Theme zu Theme unterscheiden."
7660
 
7661
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:346
7662
  #, php-format
7663
  msgid ""
7664
  "Choose a priority by which the shopmark should be attached to the location. "
7670
  "Preisauszeichnung hinzugefügt. Standard ist %d."
7671
 
7672
  # @ woocommerce-germanized
7673
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:372
7674
  msgid ""
7675
  "This text will be used to inform the customer about shipping costs. Use "
7676
  "{link}{/link} to insert link to shipping costs page."
7680
  "zur Versandkosten-Seite einzufügen."
7681
 
7682
  # @ woocommerce-germanized
7683
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:377
7684
  msgid "plus {link}Shipping Costs{/link}"
7685
  msgstr "zzgl. {link}Versandkosten{/link}"
7686
 
7687
  # @ woocommerce-germanized
7688
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:380
7689
  msgid "Free Shipping Text"
7690
  msgstr "Kostenloser Versand Text"
7691
 
7692
  # @ woocommerce-germanized
7693
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:381
7694
  msgid ""
7695
  "This text will be used to inform the customer about free shipping. Leave "
7696
  "empty to disable notice. Use {link}{/link} to insert link to shipping costs "
7701
  "Versandkosten-Seite einzufügen."
7702
 
7703
  # @ woocommerce-germanized
7704
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:389
7705
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:487
7706
  msgid "Hide Notice"
7707
  msgstr "Hinweis ausblenden"
7708
 
7709
  # @ woocommerce-germanized
7710
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:390
7711
  msgid ""
7712
  "Select product types for which you might want to disable the shipping costs "
7713
  "notice."
7716
  "möchtest."
7717
 
7718
  # @ woocommerce-germanized
7719
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:400
7720
  msgid "Footer"
7721
  msgstr "Footer"
7722
 
7723
  # @ woocommerce-germanized
7724
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:403
7725
  msgid "Notice"
7726
  msgstr "Hinweis"
7727
 
7728
  # @ woocommerce-germanized
7729
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:404
7730
  msgid "Attach a global VAT notice to your footer."
7731
  msgstr "Einen seitenübergreifenden MwSt.-Hinweis im Footer einfügen."
7732
 
7733
  # @ woocommerce-germanized
7734
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:411
7735
  msgid "Attach a global sale price notice to your footer."
7736
  msgstr ""
7737
  "Einen seitenübergreifenden Hinweis zu reduzierten Preisen im Footer einfügen."
7738
 
7739
  # @ woocommerce-germanized
7740
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:447
7741
  msgid "Fallback"
7742
  msgstr "Fallback"
7743
 
7744
  # @ woocommerce-germanized
7745
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:448
7746
  msgid ""
7747
  "This delivery time will be added to every product if no delivery time has "
7748
  "been chosen individually"
7751
  "zugeordnet wurde"
7752
 
7753
  # @ woocommerce-germanized
7754
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:455
7755
  msgid "Manage Delivery Times"
7756
  msgstr "Lieferzeiten verwalten"
7757
 
7758
  # @ woocommerce-germanized
7759
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:459
7760
  msgid ""
7761
  "This text will be used to indicate delivery time for products. Use "
7762
  "{delivery_time} as placeholder."
7765
  "{delivery_time} als Platzhalter verwenden."
7766
 
7767
  # @ woocommerce-germanized
7768
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:463
7769
  msgid "Delivery time: {delivery_time}"
7770
  msgstr "Lieferzeit: {delivery_time}"
7771
 
7772
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:466
7773
  msgid "Digital text"
7774
  msgstr "Digitaler Text"
7775
 
7776
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:470
7777
  msgid ""
7778
  "Enter a text which will be shown as digital delivery time text (replacement "
7779
  "for default digital time on digital products)."
7783
  "lassen."
7784
 
7785
  # @ woocommerce
7786
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:473
7787
  msgid "Backorder"
7788
  msgstr "Lieferrückstand"
7789
 
7790
  # @ woocommerce-germanized
7791
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:474
7792
  msgid "Hide delivery time if a product is on backorder."
7793
  msgstr "Lieferzeit ausblenden falls das Produkt im Lieferrückstand ist."
7794
 
7795
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:480
7796
  msgid "Not in Stock"
7797
  msgstr "Nicht auf Lager"
7798
 
7799
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:481
7800
  msgid "Hide delivery time if a product is not in stock."
7801
  msgstr "Lieferzeit ausblenden falls das Produkt nicht auf Lager ist."
7802
 
7803
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:488
7804
  msgid ""
7805
  "Select product types for which you might want to disable the delivery time "
7806
  "notice."
7809
  "möchtest."
7810
 
7811
  # @ woocommerce-germanized
7812
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:506
7813
  msgid ""
7814
  "This text will be used to display the base price. Use {price} to insert the "
7815
  "price. If you want to specifically format base price output use {base}, "
7821
  "{base_price} für die einzelnen Elemente."
7822
 
7823
  # @ woocommerce-germanized
7824
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:510
7825
  msgid "{price}"
7826
  msgstr "{price}"
7827
 
7828
  # @ woocommerce-germanized
7829
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:513
7830
  msgid "Variable Price"
7831
  msgstr "Variabler Preis"
7832
 
7833
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:514
7834
  msgid "Enable price range base prices for variable products."
7835
  msgstr "Aktiviere von-bis-Grundpreise für variable Produkte."
7836
 
7837
  # @ woocommerce-germanized
7838
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:520
7839
  msgid "Product units format"
7840
  msgstr "Produkteinheiten Format"
7841
 
7842
  # @ woocommerce-germanized
7843
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:521
7844
  msgid ""
7845
  "This text will be used to display the product units. Use {product_units} to "
7846
  "insert the amount of product units. Use {unit} to insert the unit. "
7852
  "Grundpreis."
7853
 
7854
  # @ woocommerce-germanized
7855
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:525
7856
  msgid "Product contains: {product_units} {unit}"
7857
  msgstr "Produkt enthält: {product_units} {unit}"
7858
 
7859
  # @ woocommerce-germanized
7860
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:537
7861
  msgid "Fallback Sale Label"
7862
  msgstr "Standard-Streichpreis"
7863
 
7864
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:544
7865
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7866
  msgid "Manage Price Labels"
7867
  msgstr "Preishinweise verwalten"
7868
 
7869
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:544
7870
  msgid ""
7871
  "Choose whether you would like to have a default sale price label to inform "
7872
  "the customer about the regular price (e.g. Recommended Retail Price)."
7875
  "den Kunden auf den alten Preis (bei reduzierten Produkten, sog. "
7876
  "Streichpreis) hinweist (z.B. UVP)."
7877
 
7878
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:547
7879
  msgid "Fallback Regular Label"
7880
  msgstr "Standard-Angebotspreis"
7881
 
7882
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7883
  msgid ""
7884
  "Choose whether you would like to have a default sale price regular label to "
7885
  "inform the customer about the sale price (e.g. New Price)."
7889
  "hinweist (z.B. Unser neuer Preis)."
7890
 
7891
  # @ woocommerce-germanized
7892
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:558
7893
  #: woocommerce-germanized/src/Shopmarks.php:294
7894
  msgid "Single Product"
7895
  msgstr "Produktdetailseite"
7896
 
7897
  # @ woocommerce-germanized
7898
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:559
7899
  msgid "Show price labels on single product page."
7900
  msgstr "Zeige Preishinweise auf der Produktdetailseite."
7901
 
7902
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:566
7903
  msgid "Loop"
7904
  msgstr "Produktlisten"
7905
 
7906
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:567
7907
  msgid "Show price labels in product loops."
7908
  msgstr "Zeige Preishinweise in Produktlisten."
7909
 
8849
  msgstr "%s [neu]"
8850
 
8851
  # @ woocommerce-germanized
8852
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:269
8853
  msgctxt "revocation-form"
8854
  msgid "is not a valid email address."
8855
  msgstr "ist leider keine valide E-Mail Adresse."
8856
 
8857
  # @ woocommerce-germanized
8858
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:273
8859
  msgctxt "revocation-form"
8860
  msgid "Please enter a valid postcode/ZIP"
8861
  msgstr "Bitte gib eine echte Postleitzahl ein"
8862
 
8863
  # @ woocommerce-germanized
8864
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:281
8865
  msgctxt "revocation-form"
8866
  msgid "is not valid."
8867
  msgstr "ist leider nicht korrekt."
8868
 
8869
  # @ woocommerce-germanized
8870
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:302
8871
  msgctxt "revocation-form"
8872
  msgid ""
8873
  "Thank you. We have received your Revocation Request. You will receive a "
8921
  "besteuert. Weitere Informationen findest du <a href=\"%s\" target=\"_blank"
8922
  "\">hier</a>."
8923
 
8924
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:147
8925
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:208
8926
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:319
8927
  msgid ""
8928
  "Please activate your account through clicking on the activation link "
8929
  "received via email."
8930
  msgstr ""
8931
  "Bitte aktiviere dein Kundenkonto indem du auf den Link in der E-Mail klickst."
8932
 
8933
+ # @ woocommerce-germanized
8934
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:154
8935
+ #, php-format
8936
+ msgid "Did not receive the activation email? <a href=\"%s\">Try again</a>."
8937
+ msgstr ""
8938
+ "Keine Aktivierungs-E-Mail erhalten? <a href=\"%s\">Erneut zusenden</a>."
8939
+
8940
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:329
8941
  #, php-format
8942
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8943
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8944
 
8945
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:331
8946
  msgid "Please create an account or login before continuing to checkout"
8947
  msgstr ""
8948
  "Bitte erstelle ein Kundenkonto oder logge dich ein, bevor du zur Kasse gehst"
8949
 
8950
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:439
8951
+ #, php-format
8952
+ msgid ""
8953
+ "Please activate your account through clicking on the activation link "
8954
+ "received via email. Did not receive the email? <a href=\"%s\">Try again</a>."
8955
+ msgstr ""
8956
+ "Bitte aktiviere dein Kundenkonto indem du auf den Link in der E-Mail "
8957
+ "klickst. Keine E-Mail erhalten? <a href=\"%s\">Erneut zusenden</a>."
8958
+
8959
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:471
8960
  msgid ""
8961
  "This activation code has expired. We have sent you a new activation code via "
8962
  "e-mail."
8965
  "Code per E-Mail geschickt."
8966
 
8967
  # @ woocommerce-germanized
8968
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:473
8969
  msgid "Sorry, but this activation code cannot be found."
8970
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8971
 
8972
  # @ woocommerce-germanized
8973
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:477
8974
  msgid "Thank you. You have successfully activated your account."
8975
  msgstr "Vielen Dank. Dein Benutzerkonto wurde erfolgreich aktiviert."
8976
 
8977
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:657
8978
  msgid "Expired activation key"
8979
  msgstr "Abgelaufener Aktivierungscode"
8980
 
8981
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:662
8982
  msgid "Invalid activation key"
8983
  msgstr "Aktivierungscode ungültig"
8984
 
8985
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:191
8986
  msgid "BCC recipients"
8987
  msgstr "BCC Empfänger"
8988
 
8989
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:193
8990
  msgid "Enter blind-copy recipients (comma separated) for this email."
8991
  msgstr "Füge Empfänger (kommasepariert) einer Blindkopie für diese E-Mail ein."
8992
 
8993
  # @ woocommerce-germanized
8994
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:232
8995
  msgid "Confirmation text"
8996
  msgstr "Bestätigung Text"
8997
 
8998
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:233
8999
  msgid ""
9000
  "Your order has been received and is now being processed. Your order details "
9001
  "are shown below for your reference:"
9004
  "deiner Bestellung kannst du der nachfolgenden Tabelle entnehmen:"
9005
 
9006
  # @ woocommerce-germanized
9007
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:234
9008
  msgid ""
9009
  "This text will be inserted within the order confirmation email. Use "
9010
  "{order_number}, {site_title} or {order_date} as placeholder."
9012
  "Dieser Text wird in die Bestellbestätigung eingefügt. Verwende "
9013
  "{order_number}, {site_title} oder {order_date} als Platzhalter."
9014
 
9015
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:352
9016
  msgid ""
9017
  "Your order has been received and is now being processed. Your order details "
9018
  "are shown below for your reference."
9020
  "Deine Bestellung ist eingegangen und wird nun bearbeitet. Die Einzelheiten "
9021
  "deiner Bestellung kannst du der nachfolgenden Tabelle entnehmen."
9022
 
9023
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:400
9024
  msgid "Someone requested a password reset for your account."
9025
  msgstr ""
9026
  "Jemand hat das Zurücksetzen des Passworts für deinen Account beantragt."
9027
 
9028
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:415
9029
  #, php-format
9030
  msgid "Thanks for creating an account on %s."
9031
  msgstr "Danke, dass du ein Konto bei %s erstellt hast."
9032
 
9033
  # @ woocommerce-germanized
9034
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1130
9035
  msgctxt "revocation-form"
9036
  msgid "Forward your Revocation online"
9037
  msgstr "Deinen Widerruf online erklären"
10959
  "Bitte <a href=\"%s\">deaktiviere</a> das Plugin und lerne in unserem <a href="
10960
  "\"%s\" target=\"_blank\">Blog-Post</a> wie du das Plugin austauschen kannst."
10961
 
10962
+ #: woocommerce-germanized/woocommerce-germanized.php:1012
10963
  msgid "Pease wait while we are trying to redirect you to the payment provider."
10964
  msgstr "Einen Moment - wir versuchen dich zum Zahlungsanbieter weiterzuleiten."
10965
 
i18n/languages/woocommerce-germanized-de_DE_formal.mo CHANGED
Binary file
i18n/languages/woocommerce-germanized-de_DE_formal.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2020-12-07 11:56+0100\n"
6
- "PO-Revision-Date: 2020-12-07 15:49+0100\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE@formal\n"
@@ -45,8 +45,8 @@ msgctxt "dhl"
45
  msgid "Additional Services"
46
  msgstr "Zusätzliche Leistungen"
47
 
48
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:30
49
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:494
50
  #, php-format
51
  msgid ""
52
  "Sorry but none of your selected <a href=\"%s\">Deutsche Post Products</a> is "
@@ -58,13 +58,13 @@ msgstr ""
58
  "(z.B. Gewicht) und versuchen Sie es erneut."
59
 
60
  # @ woocommerce-germanized
61
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:37
62
  msgctxt "dhl"
63
  msgid "Product"
64
  msgstr "Produkt"
65
 
66
  # @ woocommerce-germanized
67
- #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:55
68
  msgctxt "dhl"
69
  msgid "Page Format"
70
  msgstr "Seitenformat"
@@ -137,7 +137,7 @@ msgstr "Firma"
137
 
138
  # @ woocommerce-germanized
139
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:139
140
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:590
141
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:775
142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:844
143
  msgctxt "dhl"
@@ -152,7 +152,7 @@ msgstr "Hausnummer"
152
 
153
  # @ woocommerce-germanized
154
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:159
155
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:591
156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:796
157
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:865
158
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:27
@@ -162,7 +162,7 @@ msgstr "Postleitzahl"
162
 
163
  # @ woocommerce-germanized
164
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:168
165
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:592
166
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:789
167
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:858
168
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:30
@@ -268,7 +268,7 @@ msgid "Receiver"
268
  msgstr "Empfänger"
269
 
270
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:15
271
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1461
272
  msgctxt "dhl"
273
  msgid "DHL Labels"
274
  msgstr "DHL Labels"
@@ -363,7 +363,7 @@ msgstr ""
363
  "href=\"%s\">globalen Einstellungen</a>."
364
 
365
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:94
366
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1352
367
  msgctxt "dhl"
368
  msgid "Printing"
369
  msgstr "Druck"
@@ -379,151 +379,151 @@ msgstr ""
379
  "\"%s\">globalen Einstellungen</a>."
380
 
381
  # @ woocommerce-germanized
382
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:160
383
  msgctxt "dhl time context"
384
  msgid "None"
385
  msgstr "Keine"
386
 
387
  # @ woocommerce-germanized
388
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:170
389
  #: woocommerce-germanized-dhl/src/Api/Paket.php:280
390
  msgctxt "dhl day context"
391
  msgid "None"
392
  msgstr "Keiner"
393
 
394
  # @ woocommerce-germanized
395
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:195
396
  msgctxt "dhl"
397
  msgid "Delivery Duty Unpaid"
398
  msgstr "Delivery Duty Unpaid"
399
 
400
  # @ woocommerce-germanized
401
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:196
402
  msgctxt "dhl"
403
  msgid "Delivery Duty Paid"
404
  msgstr "Delivery Duty Paid"
405
 
406
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:197
407
  msgctxt "dhl"
408
  msgid "Delivery Duty Paid (excl. VAT )"
409
  msgstr "Delivered Duty Paid (exkl. MwSt.)"
410
 
411
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:198
412
  msgctxt "dhl"
413
  msgid "Delivery Duty Paid (excl. Duties, taxes and VAT)"
414
  msgstr "Delivery Duty Paid (exkl. Zölle, Steuern und MwSt.)"
415
 
416
  # @ woocommerce-germanized
417
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:226
418
  msgctxt "age context"
419
  msgid "None"
420
  msgstr "Keine"
421
 
422
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:227
423
  msgctxt "dhl"
424
  msgid "Minimum age of 16"
425
  msgstr "Mindestens 16 Jahre"
426
 
427
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:228
428
  msgctxt "dhl"
429
  msgid "Minimum age of 18"
430
  msgstr "Mindestens 18 Jahre"
431
 
432
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:253
433
  msgctxt "dhl"
434
  msgid "Shipment #{shipment_id} to order {order_id}"
435
  msgstr "Sendung #{shipment_id} zur Bestellung {order_id}"
436
 
437
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:269
438
  msgctxt "dhl"
439
  msgid "Return #{shipment_id} to order {order_id}"
440
  msgstr "Retoure #{shipment_id} zur Bestellung {order_id}"
441
 
442
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:285
443
  msgctxt "dhl"
444
  msgid "Return shipment #{shipment_id} to order #{order_id}"
445
  msgstr "Retourensendung #{shipment_id} zur Bestellung #{order_id}"
446
 
447
  # @ woocommerce-germanized
448
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:365
449
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:188
450
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:496
451
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:836
452
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:38
453
  msgctxt "dhl"
454
  msgid "Packstation"
455
  msgstr "Packstation"
456
 
457
  # @ woocommerce-germanized
458
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:366
459
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:367
460
  msgctxt "dhl"
461
  msgid "Postfiliale"
462
  msgstr "Postfiliale"
463
 
464
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:451
465
  msgctxt "dhl"
466
  msgid "Receiver is missing or does not exist."
467
  msgstr "Empfänger fehlt oder existiert nicht."
468
 
469
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:470
470
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:555
471
  #, php-format
472
  msgctxt "dhl"
473
  msgid "Shipment order #%s does not exist"
474
  msgstr "Bestellung zur Sendung #%s existiert nicht"
475
 
476
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:481
477
  msgctxt "dhl"
478
  msgid "The services chosen are not available for the current product."
479
  msgstr "Die ausgewählten Services sind für dieses Produkt nicht verfügbar."
480
 
481
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:521
482
  #, php-format
483
  msgctxt "dhl"
484
  msgid "Deutsche Post product is missing for %s."
485
  msgstr "Deutsche Post Produkt fehlt oder ist nicht verfügbar für %s."
486
 
487
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:597
488
  #, php-format
489
  msgctxt "dhl"
490
  msgid "%s of the return address is a mandatory field."
491
  msgstr "%s der Rücksendeadresse ist ein Pflichtfeld."
492
 
493
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:602
494
  msgctxt "dhl"
495
  msgid "Please either add a return company or name."
496
  msgstr ""
497
  "Bitte geben Sie entweder einen Firmennamen oder Namen für die "
498
  "Rücksendeadresse an."
499
 
500
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:621
501
  msgctxt "dhl"
502
  msgid "Error while parsing preferred day."
503
  msgstr "Fehler beim Einlesen des Wunschtags."
504
 
505
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:632
506
  msgctxt "dhl"
507
  msgid "Error while parsing preferred time."
508
  msgstr "Fehler beim Einlesen der Wunschzeit."
509
 
510
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:657
511
  msgctxt "dhl"
512
  msgid "The visual min age check is invalid."
513
  msgstr "Das Alter der Alterssichtprüfung ist ungültig."
514
 
515
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:681
516
  msgctxt "dhl"
517
  msgid "The ident min age check is invalid."
518
  msgstr "Das Alter des Ident-Checks ist ungültig."
519
 
520
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:688
521
  msgctxt "dhl"
522
  msgid "There was an error parsing the date of birth for the identity check."
523
  msgstr ""
524
  "Beim Einlesen des Geburtsdatums für den Ident-Check trat ein Problem auf."
525
 
526
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:693
527
  msgctxt "dhl"
528
  msgid ""
529
  "Either a minimum age or a date of birth must be added to the ident check."
@@ -532,159 +532,159 @@ msgstr ""
532
  "hinzugefügt werden."
533
 
534
  # @ woocommerce-germanized
535
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:707
536
  #, php-format
537
  msgctxt "dhl"
538
  msgid "%s duties element does not exist."
539
  msgstr "%s Zollabgabe existiert nicht."
540
 
541
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1299
542
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1383
543
  msgctxt "dhl"
544
  msgid "Invalid shipment"
545
  msgstr "Ungültige Sendung"
546
 
547
  # @ woocommerce-germanized
548
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1303
549
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1387
550
  msgctxt "dhl"
551
  msgid "Order does not exist"
552
  msgstr "Bestellung existiert nicht"
553
 
554
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1335
555
  msgctxt "dhl"
556
  msgid "Error while creating the label instance"
557
  msgstr "Fehler beim Erstellen der Label-Instanz"
558
 
559
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1455
560
  msgctxt "dhl"
561
  msgid "Invalid label"
562
  msgstr "Ungültiges Label"
563
 
564
  # @ woocommerce-germanized
565
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1543
566
  msgctxt "dhl"
567
  msgid "DHL Retoure International A"
568
  msgstr "DHL Retoure International A"
569
 
570
  # @ woocommerce-germanized
571
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1544
572
  msgctxt "dhl"
573
  msgid "DHL Retoure International B"
574
  msgstr "DHL Retoure International B"
575
 
576
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1553
577
  msgctxt "dhl"
578
  msgid "DHL Retoure Online"
579
  msgstr "DHL Retoure Online"
580
 
581
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1570
582
  msgctxt "dhl"
583
  msgid "DHL Paket Connect"
584
  msgstr "DHL Paket Connect"
585
 
586
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1571
587
  msgctxt "dhl"
588
  msgid "DHL Europaket (B2B)"
589
  msgstr "DHL Europaket (B2B)"
590
 
591
  # @ woocommerce-germanized
592
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1572
593
  msgctxt "dhl"
594
  msgid "DHL Paket International"
595
  msgstr "DHL Paket International"
596
 
597
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1647
598
  msgctxt "dhl"
599
  msgid "DHL Paket"
600
  msgstr "DHL Paket"
601
 
602
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1648
603
  msgctxt "dhl"
604
  msgid "DHL Paket PRIO"
605
  msgstr "DHL Paket PRIO"
606
 
607
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1649
608
  msgctxt "dhl"
609
  msgid "DHL Paket Taggleich"
610
  msgstr "DHL Paket Taggleich"
611
 
612
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1650
613
  msgctxt "dhl"
614
  msgid "DHL Warenpost"
615
  msgstr "DHL Warenpost"
616
 
617
- #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1737
618
  msgctxt "dhl"
619
  msgid "Error while uploading label."
620
  msgstr "Fehler beim Hochladen des Labels."
621
 
622
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:57
623
  msgctxt "dhl"
624
  msgid "Refreshed data successfully."
625
  msgstr "Daten erfolgreich aktualisiert."
626
 
627
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:57
628
  #, php-format
629
  msgctxt "dhl"
630
  msgid ""
631
- "Error while refreshing data. Please check your Internetmarke <a href=\"%s"
632
- "\">logs</a>."
633
  msgstr ""
634
- "Fehler beim Datenabruf. Bitte prüfen Sie Ihre Internetmarke <a href=\"%s"
635
- "\">Logs</a>."
636
 
637
  # @ woocommerce-germanized
638
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:174
639
  msgctxt "dhl"
640
  msgid "Receiver Ids"
641
  msgstr "Empfänger IDs"
642
 
643
  # @ woocommerce-germanized
644
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:181
645
  msgctxt "dhl"
646
  msgid "Receiver Id"
647
  msgstr "Empfänger ID"
648
 
649
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:181
650
  msgctxt "dhl"
651
  msgid "Find your Receiver Ids within your DHL contract data."
652
  msgstr "Die Empfänger IDs finden Sie im DHL Geschäftskundenportal."
653
 
654
  # @ woocommerce-germanized
655
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:182
656
  msgctxt "dhl"
657
  msgid "Country Code"
658
  msgstr "Ländercode"
659
 
660
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:182
661
  msgctxt "dhl"
662
  msgid "Leave empty to use the Receiver Id as fallback."
663
  msgstr "Leer lassen, um diese Empfänger ID als Fallback zu verwenden."
664
 
665
  # @ woocommerce-germanized
666
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:202
667
  msgctxt "dhl"
668
  msgid "+ Add receiver"
669
  msgstr "+ Empfänger hinzufügen"
670
 
671
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:202
672
  msgctxt "dhl"
673
  msgid "Remove selected receiver(s)"
674
  msgstr "Ausgewählte Empfänger löschen"
675
 
676
  # @ woocommerce-germanized
677
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:238
678
  msgctxt "dhl"
679
  msgid "Select a country"
680
  msgstr "Land auswählen"
681
 
682
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
683
  msgctxt "dhl"
684
  msgid "HS-Code (DHL)"
685
  msgstr "Zolltarifnummer (HS-Code, DHL)"
686
 
687
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
688
  msgctxt "dhl"
689
  msgid ""
690
  "The HS Code is a number assigned to every possible commodity that can be "
@@ -694,12 +694,12 @@ msgstr ""
694
  "standardisiertes System von Namen und Nummern zur Klassifizierung "
695
  "gehandelter Produkte."
696
 
697
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:241
698
  msgctxt "dhl"
699
  msgid "Country of manufacture (DHL)"
700
  msgstr "Herstellungsland (DHL)"
701
 
702
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:241
703
  msgctxt "dhl"
704
  msgid ""
705
  "The country of manufacture is needed for customs of international shipping."
@@ -707,7 +707,7 @@ msgstr ""
707
  "Das Herstellungsland wird für die Zollabwicklung bei internationalen "
708
  "Sendungen benötigt."
709
 
710
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:262
711
  #, php-format
712
  msgctxt "dhl"
713
  msgid ""
@@ -717,19 +717,19 @@ msgstr ""
717
  "Das Verzeichnis zum Speichern von DHL Labels fehlt. Bitte erstellen Sie den "
718
  "Ordner %s manuell und stellen Sie sicher, dass der Ordner beschreibbar ist."
719
 
720
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:269
721
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1460
722
  #: woocommerce-germanized-dhl/src/ShippingProvider/DHL.php:39
723
  msgctxt "dhl"
724
  msgid "DHL"
725
  msgstr "DHL"
726
 
727
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:284
728
  msgctxt "dhl"
729
  msgid "DHL Label"
730
  msgstr "DHL Label"
731
 
732
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:296
733
  msgctxt "dhl"
734
  msgid ""
735
  "This label has been generated by the DHL for WooCommerce Plugin and is shown "
@@ -739,7 +739,7 @@ msgstr ""
739
  "Kompatibilitäts-Gründen angezeigt."
740
 
741
  # @ woocommerce-germanized
742
- #: woocommerce-germanized-dhl/src/Admin/Admin.php:297
743
  msgctxt "dhl"
744
  msgid "Download label"
745
  msgstr "Label downloaden"
@@ -842,7 +842,7 @@ msgstr ""
842
  # @ woocommerce-germanized
843
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:122
844
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:747
845
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1369
846
  msgctxt "dhl"
847
  msgid "Automation"
848
  msgstr "Automatisierung"
@@ -1074,7 +1074,7 @@ msgid "contract data"
1074
  msgstr "Vertragsdaten"
1075
 
1076
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:392
1077
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1200
1078
  msgctxt "dhl"
1079
  msgid "Domestic Default Service"
1080
  msgstr "Nationaler Standard Service"
@@ -1091,7 +1091,7 @@ msgstr ""
1091
  "nachträglich ändern)."
1092
 
1093
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:402
1094
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1220
1095
  msgctxt "dhl"
1096
  msgid "Int. Default Service"
1097
  msgstr "Internationaler Standard Service"
@@ -1140,11 +1140,13 @@ msgstr ""
1140
 
1141
  # @ woocommerce-germanized
1142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:432
 
1143
  msgctxt "dhl"
1144
  msgid "Default weight (kg)"
1145
  msgstr "Standardgewicht (kg)"
1146
 
1147
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:434
 
1148
  msgctxt "dhl"
1149
  msgid ""
1150
  "Choose a default shipment weight to be used for labels if no weight has been "
@@ -1154,11 +1156,13 @@ msgstr ""
1154
  "für die das Gewicht nicht automatisch bestimmt werden kann."
1155
 
1156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:443
 
1157
  msgctxt "dhl"
1158
  msgid "Minimum weight (kg)"
1159
  msgstr "Mindestgewicht (kg)"
1160
 
1161
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:445
 
1162
  msgctxt "dhl"
1163
  msgid ""
1164
  "Choose a minimum weight to be used for labels e.g. to prevent low shipment "
@@ -1416,14 +1420,14 @@ msgid "Premium delivery for international shipments."
1416
  msgstr "Premium Lieferung für internationale Sendungen."
1417
 
1418
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:626
1419
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1242
1420
  msgctxt "dhl"
1421
  msgid "Labels"
1422
  msgstr "Labels"
1423
 
1424
  # @ woocommerce-germanized
1425
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:627
1426
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1243
1427
  msgctxt "dhl"
1428
  msgid "Automatically create labels for shipments."
1429
  msgstr "Automatisch Labels zu Sendungen erstellen."
@@ -1431,13 +1435,13 @@ msgstr "Automatisch Labels zu Sendungen erstellen."
1431
  # @ woocommerce-germanized
1432
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:634
1433
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:661
1434
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1250
1435
  msgctxt "dhl"
1436
  msgid "Status"
1437
  msgstr "Status"
1438
 
1439
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:638
1440
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1254
1441
  msgctxt "dhl"
1442
  msgid "Choose a shipment status which should trigger generation of a label."
1443
  msgstr ""
@@ -1446,13 +1450,13 @@ msgstr ""
1446
 
1447
  # @ woocommerce-germanized
1448
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:645
1449
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1261
1450
  msgctxt "dhl"
1451
  msgid "Shipment Status"
1452
  msgstr "Sendungsstatus"
1453
 
1454
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:646
1455
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1262
1456
  msgctxt "dhl"
1457
  msgid "Mark shipment as shipped after label has been created successfully."
1458
  msgstr ""
@@ -1858,7 +1862,7 @@ msgctxt "dhl"
1858
  msgid "Password"
1859
  msgstr "Passwort"
1860
 
1861
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1204
1862
  msgctxt "dhl"
1863
  msgid ""
1864
  "Please select your default shipping service for domestic shipments that you "
@@ -1869,12 +1873,12 @@ msgstr ""
1869
  "für Ihre Kunden anbieten."
1870
 
1871
  # @ woocommerce-germanized
1872
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1210
1873
  msgctxt "dhl"
1874
  msgid "EU Default Service"
1875
  msgstr "Standard Service (EU)"
1876
 
1877
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1214
1878
  msgctxt "dhl"
1879
  msgid ""
1880
  "Please select your default shipping service for EU shipments that you want "
@@ -1883,7 +1887,7 @@ msgstr ""
1883
  "Bitte wählen Sie das Standard-Produkt für EU Sendungen aus, das Sie für Ihre "
1884
  "Kunden anbieten."
1885
 
1886
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1224
1887
  msgctxt "dhl"
1888
  msgid ""
1889
  "Please select your default shipping service for cross-border shipments that "
@@ -1892,12 +1896,12 @@ msgstr ""
1892
  "Bitte wählen Sie das Standard-Produkt für internationale Sendungen aus, das "
1893
  "Sie für Ihre Kunden anbieten."
1894
 
1895
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1281
1896
  msgctxt "dhl"
1897
  msgid "Default Format"
1898
  msgstr "Standardformat"
1899
 
1900
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1284
1901
  #, php-format
1902
  msgctxt "dhl"
1903
  msgid ""
@@ -1909,34 +1913,34 @@ msgstr ""
1909
  "verwendet wird. Sie können die Liste auch manuell <a href=\"%s"
1910
  "\">aktualisieren</a>, falls notwendig."
1911
 
1912
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1311
1913
  msgctxt "dhl"
1914
  msgid "Portokasse"
1915
  msgstr "Portokasse"
1916
 
1917
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1314
1918
  msgctxt "dhl"
1919
  msgid "Balance"
1920
  msgstr "Guthaben"
1921
 
1922
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1321
1923
  msgctxt "dhl"
1924
  msgid "Charge (€)"
1925
  msgstr "Aufladen (€)"
1926
 
1927
  # @ woocommerce-germanized
1928
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1331
1929
  msgctxt "dhl"
1930
  msgid "Products"
1931
  msgstr "Produkte"
1932
 
1933
  # @ woocommerce-germanized
1934
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1334
1935
  msgctxt "dhl"
1936
  msgid "Available Products"
1937
  msgstr "Verfügbare Produkte"
1938
 
1939
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1337
1940
  #, php-format
1941
  msgctxt "dhl"
1942
  msgid ""
@@ -1948,43 +1952,64 @@ msgstr ""
1948
  "stehen sollen. Sie können die Produktliste auch manuell <a href=\"%s"
1949
  "\">aktualisieren</a>, falls notwendig."
1950
 
1951
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1362
1952
  msgctxt "dhl"
1953
  msgid "API Error"
1954
  msgstr "API Fehler"
1955
 
1956
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1421
1957
  msgctxt "dhl"
1958
  msgid "Charge Portokasse"
1959
  msgstr "Portokasse aufladen"
1960
 
1961
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1422
1962
  #, php-format
1963
  msgctxt "dhl"
1964
  msgid "The minimum amount is %s"
1965
  msgstr "Der Minimalbetrag beträgt %s"
1966
 
1967
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1432
1968
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1434
1969
  msgctxt "dhl"
1970
  msgid "Not yet a customer?"
1971
  msgstr "Noch kein Kunde?"
1972
 
1973
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1462
1974
  msgctxt "dhl"
1975
  msgid "Internetmarke"
1976
  msgstr "Internetmarke"
1977
 
1978
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1463
1979
  msgctxt "dhl"
1980
  msgid "Preferred Services"
1981
  msgstr "Wunschpaket"
1982
 
1983
- #: woocommerce-germanized-dhl/src/Admin/Settings.php:1464
1984
  msgctxt "dhl"
1985
  msgid "Parcel Pickup"
1986
  msgstr "Standorte"
1987
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1988
  #: woocommerce-germanized-dhl/src/Api/FinderSoap.php:37
1989
  msgctxt "dhl"
1990
  msgid "Sunday"
@@ -2002,54 +2027,54 @@ msgctxt "dhl location name"
2002
  msgid "%s %s"
2003
  msgstr "%s %s"
2004
 
2005
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:280
2006
  msgctxt "dhl"
2007
  msgid "PRIO"
2008
  msgstr "PRIO"
2009
 
2010
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:281
2011
  msgctxt "dhl"
2012
  msgid "Einschreiben (Einwurf)"
2013
  msgstr "Einschreiben (Einwurf)"
2014
 
2015
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:282
2016
  msgctxt "dhl"
2017
  msgid "Einschreiben"
2018
  msgstr "Einschreiben"
2019
 
2020
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:283
2021
  msgctxt "dhl"
2022
  msgid "Einschreiben (Eigenhändig)"
2023
  msgstr "Einschreiben (Eigenhändig)"
2024
 
2025
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:284
2026
  msgctxt "dhl"
2027
  msgid "Alterssichtprüfung 16"
2028
  msgstr "Alterssichtprüfung 16"
2029
 
2030
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:285
2031
  msgctxt "dhl"
2032
  msgid "Alterssichtprüfung 18"
2033
  msgstr "Alterssichtprüfung 18"
2034
 
2035
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:286
2036
  msgctxt "dhl"
2037
  msgid "Zusatzentgelt MBf"
2038
  msgstr "Zusatzentgelt MBf"
2039
 
2040
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:287
2041
  msgctxt "dhl"
2042
  msgid "Unterschrift"
2043
  msgstr "Unterschrift"
2044
 
2045
- #: woocommerce-germanized-dhl/src/Api/ImProductList.php:288
2046
  msgctxt "dhl"
2047
  msgid "Tracked"
2048
  msgstr "Tracked"
2049
 
2050
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:43
2051
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:52
2052
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:484
2053
  msgctxt "dhl"
2054
  msgid "Error while fetching label PDF"
2055
  msgstr "Fehler beim Download des PDF Labels"
@@ -2065,18 +2090,18 @@ msgctxt "dhl"
2065
  msgid "Invalid API response"
2066
  msgstr "Fehlerhafte API Rückmeldung"
2067
 
2068
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:192
2069
  msgctxt "dhl"
2070
  msgid "Error while authenticating user."
2071
  msgstr "Fehler beim Autorisieren des Benutzers."
2072
 
2073
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:278
2074
  msgctxt "dhl"
2075
  msgid "Error during Warenpost International request."
2076
  msgstr "Fehler beim Aufruf der Warenpost International API."
2077
 
2078
  # @ woocommerce-germanized
2079
- #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:296
2080
  #, php-format
2081
  msgctxt "dhl"
2082
  msgid "Error during request: %s"
@@ -2113,53 +2138,53 @@ msgctxt "dhl"
2113
  msgid "Wrong username or password"
2114
  msgstr "Falscher Benutzername oder Passwort"
2115
 
2116
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:246
2117
  #, php-format
2118
  msgctxt "dhl"
2119
  msgid "until %s"
2120
  msgstr "bis %s"
2121
 
2122
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:331
2123
  #, php-format
2124
  msgctxt "dhl"
2125
  msgid "Length: %s"
2126
  msgstr "Länge: %s"
2127
 
2128
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:335
2129
  #, php-format
2130
  msgctxt "dhl"
2131
  msgid "Width: %s"
2132
  msgstr "Breite: %s"
2133
 
2134
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:339
2135
  #, php-format
2136
  msgctxt "dhl"
2137
  msgid "Height: %s"
2138
  msgstr "Höhe: %s"
2139
 
2140
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:343
2141
  #, php-format
2142
  msgctxt "dhl"
2143
  msgid "Weight: %s"
2144
  msgstr "Gewicht: %s"
2145
 
2146
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:348
2147
  msgctxt "dhl"
2148
  msgid "Total"
2149
  msgstr "Gesamt"
2150
 
2151
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:538
2152
  #, php-format
2153
  msgctxt "dhl"
2154
  msgid "Could not refund post label: %s"
2155
  msgstr "Deutsche Post Label konnte nicht rückerstattet werden: %s"
2156
 
2157
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:552
2158
  msgctxt "dhl"
2159
  msgid "Refund API could not be instantiated"
2160
  msgstr "Die API für Rückerstattungen konnte nicht initialisiert werden"
2161
 
2162
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:641
2163
  #: woocommerce-germanized-dhl/src/Api/LabelSoap.php:379
2164
  #: woocommerce-germanized-dhl/src/Api/ReturnRest.php:34
2165
  #, php-format
@@ -2167,12 +2192,12 @@ msgctxt "dhl"
2167
  msgid "Could not fetch shipment %d."
2168
  msgstr "Sendung %d konnte nicht gefunden werden."
2169
 
2170
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:681
2171
  msgctxt "dhl"
2172
  msgid "Error while generating shop order id."
2173
  msgstr "Fehler beim Erzeugen der Shop Order Id."
2174
 
2175
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:691
2176
  #, php-format
2177
  msgctxt "dhl"
2178
  msgid ""
@@ -2182,14 +2207,14 @@ msgstr ""
2182
  "Fehler beim Kauf des Labels. Bitte <a href=\"%s\">aktualisieren</a>Sie die "
2183
  "Produktliste manuell und versuchen Sie es erneut."
2184
 
2185
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:734
2186
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:741
2187
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:769
2188
  msgctxt "dhl"
2189
  msgid "Error while downloading the PDF stamp."
2190
  msgstr "Fehler beim Download des PDF Labels."
2191
 
2192
- #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:776
2193
  msgctxt "dhl"
2194
  msgid "Invalid stamp response."
2195
  msgstr "Fehlerhafte Label Rückmeldung."
@@ -2403,31 +2428,31 @@ msgstr ""
2403
  "angegeben wurde."
2404
 
2405
  # @ woocommerce-germanized
2406
- #: woocommerce-germanized-dhl/src/Package.php:961
2407
  msgctxt "dhl"
2408
  msgid "Germany"
2409
  msgstr "Deutschland"
2410
 
2411
  # @ woocommerce-germanized
2412
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:90
2413
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:849
2414
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:878
2415
  msgctxt "dhl"
2416
  msgid "Address Type"
2417
  msgstr "Adresstyp"
2418
 
2419
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:93
2420
  msgctxt "dhl"
2421
  msgid "Select whether delivery to DHL locations should be enabled."
2422
  msgstr ""
2423
  "Wählen Sie aus, ob die Lieferung an DHL Standorte aktiviert werden soll."
2424
 
2425
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:98
2426
  msgctxt "dhl"
2427
  msgid "Postnumber"
2428
  msgstr "Postnummer"
2429
 
2430
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:100
2431
  msgctxt "dhl"
2432
  msgid ""
2433
  "In case delivery to packstation is selected please fill in the corresponding "
@@ -2436,31 +2461,31 @@ msgstr ""
2436
  "Insofern die Lieferung an eine Packstation erfolgt, bitte die Postnummer "
2437
  "eintragen."
2438
 
2439
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:186
2440
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:565
2441
  msgctxt "dhl"
2442
  msgid "Invalid address type."
2443
  msgstr "Ungültiger Adresstyp."
2444
 
2445
  # @ woocommerce-germanized
2446
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:637
2447
  msgctxt "dhl"
2448
  msgid "Sorry, but delivery to packstation is not available."
2449
  msgstr ""
2450
  "Entschuldigung, die Lieferung an eine Packstation steht nicht zur Verfügung."
2451
 
2452
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:642
2453
  msgctxt "dhl"
2454
  msgid "Sorry, but delivery to parcel shops is not available."
2455
  msgstr ""
2456
  "Entschuldigung, die Lieferung an einen Paketshop steht nicht zur Verfügung."
2457
 
2458
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:646
2459
  msgctxt "dhl"
2460
  msgid "Sorry, but delivery to post offices is not available."
2461
  msgstr "Entschuldigung, die Lieferung an Postfilialen ist nicht verfügbar."
2462
 
2463
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:653
2464
  #, php-format
2465
  msgctxt "dhl"
2466
  msgid "Please indicate shipment to %s by one of the following values: %s."
@@ -2468,7 +2493,7 @@ msgstr ""
2468
  "Bitte identifizieren Sie die Lieferung an %s durch die Eingabe einer der "
2469
  "folgenden Werte: %s."
2470
 
2471
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:661
2472
  msgctxt "dhl"
2473
  msgid ""
2474
  "Your DHL customer number (Post number) is not valid. Please check your "
@@ -2477,7 +2502,7 @@ msgstr ""
2477
  "Ihre DHL Kundennummer (Postnummer) ist nicht gültig. Bitte überprüfen Sie "
2478
  "Ihre Eingabe."
2479
 
2480
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:664
2481
  msgctxt "dhl"
2482
  msgid ""
2483
  "Your DHL customer number (Post number) is needed to ship to a packstation."
@@ -2485,64 +2510,64 @@ msgstr ""
2485
  "Ihre DHL Kundennummer (Postnummer) wird für den Versand an eine Packstation "
2486
  "benötigt."
2487
 
2488
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:713
2489
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:840
2490
  msgctxt "dhl"
2491
  msgid "Branch"
2492
  msgstr "Filiale"
2493
 
2494
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:714
2495
  msgctxt "dhl"
2496
  msgid "Postnumber "
2497
  msgstr "Postnummer "
2498
 
2499
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:815
2500
  #, php-format
2501
  msgctxt "dhl"
2502
  msgid "e.g. %s 456"
2503
  msgstr "z.B. %s 456"
2504
 
2505
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:840
2506
  msgctxt "dhl"
2507
  msgid "Branches"
2508
  msgstr "Filialen"
2509
 
2510
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:856
2511
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:889
2512
  msgctxt "dhl"
2513
  msgid "DHL customer number (Post number)"
2514
  msgstr "DHL Kundennummer (Postnummer)"
2515
 
2516
  # @ woocommerce-germanized
2517
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:866
2518
  msgctxt "dhl"
2519
  msgid "Regular Address"
2520
  msgstr "Normale Adresse"
2521
 
2522
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:893
2523
  msgctxt "dhl"
2524
  msgid "Not yet a DHL customer?"
2525
  msgstr "Noch kein DHL Kunde?"
2526
 
2527
  # @ woocommerce-germanized
2528
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:893
2529
  msgctxt "dhl"
2530
  msgid "Register now"
2531
  msgstr "Jetzt registrieren"
2532
 
2533
  # @ woocommerce-germanized
2534
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:942
2535
  #, php-format
2536
  msgctxt "dhl"
2537
  msgid "Search %s"
2538
  msgstr "%s suchen"
2539
 
2540
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1047
2541
  msgctxt "dhl"
2542
  msgid "No DHL locations found"
2543
  msgstr "Keine DHL Standorte gefunden"
2544
 
2545
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2546
  #, php-format
2547
  msgctxt "dhl"
2548
  msgid ""
@@ -2553,12 +2578,12 @@ msgstr ""
2553
  "einen %s oder %s."
2554
 
2555
  # @ woocommerce-germanized
2556
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2557
  msgctxt "dhl"
2558
  msgid "DHL location"
2559
  msgstr "DHL Standort"
2560
 
2561
- #: woocommerce-germanized-dhl/src/ParcelLocator.php:1062
2562
  msgctxt "dhl"
2563
  msgid "retry"
2564
  msgstr "Erneut versuchen"
@@ -2586,7 +2611,7 @@ msgctxt "dhl"
2586
  msgid "Please choose name and address of your preferred neighbor."
2587
  msgstr "Bitte wählen Sie einen Namen und die Adresse Ihres Wunschnachbars."
2588
 
2589
- #: woocommerce-germanized-dhl/src/ReturnLabel.php:124
2590
  #: woocommerce-germanized-dhl/src/SimpleLabel.php:86
2591
  #, php-format
2592
  msgctxt "dhl full name"
@@ -4509,7 +4534,7 @@ msgctxt "shipments"
4509
  msgid "Invalid packaging."
4510
  msgstr "Verpackung nicht verfügbar."
4511
 
4512
- #: woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php:195
4513
  msgctxt "shipments"
4514
  msgid "Invalid shipment item."
4515
  msgstr "Ungültige Sendungsposition."
@@ -5349,20 +5374,20 @@ msgstr ""
5349
 
5350
  # @ woocommerce-germanized
5351
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:122
5352
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:423
5353
  msgid "Downloadable Product"
5354
  msgstr "Herunterladbares Produkt"
5355
 
5356
  # @ woocommerce-germanized
5357
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:123
5358
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:424
5359
  msgid "Virtual Product"
5360
  msgstr "Virtuelles Produkt"
5361
 
5362
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:124
5363
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:46
5364
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:168
5365
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:425
5366
  #: woocommerce-germanized/includes/class-wc-gzd-legal-checkbox-manager.php:146
5367
  msgid "Service"
5368
  msgstr "Dienstleistung"
@@ -5459,8 +5484,8 @@ msgstr "Gleiche wie übergeordnet"
5459
 
5460
  # @ woocommerce-germanized
5461
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-product-categories.php:82
5462
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:432
5463
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:528
5464
  msgid "None"
5465
  msgstr "Keine"
5466
 
@@ -5474,7 +5499,7 @@ msgstr "Germanize"
5474
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:73
5475
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:153
5476
  #: woocommerce-germanized/includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
5477
- #: woocommerce-germanized/woocommerce-germanized.php:816
5478
  msgid "Settings"
5479
  msgstr "Einstellungen"
5480
 
@@ -5805,8 +5830,8 @@ msgstr "Neuer Preis Hinweis"
5805
  # @ woocommerce-germanized
5806
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:90
5807
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:217
5808
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:228
5809
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:260
5810
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/class-wc-gzd-elementor-widget-product-units.php:10
5811
  msgid "Product Units"
5812
  msgstr "Produkteinheiten"
@@ -6230,11 +6255,11 @@ msgstr ""
6230
  msgid "Run the updater"
6231
  msgstr "Update starten"
6232
 
6233
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:178
6234
  msgid "Not now"
6235
  msgstr "Nicht jetzt"
6236
 
6237
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:182
6238
  msgctxt "woocommerce-germanized"
6239
  msgid "Deactivate"
6240
  msgstr "Deaktivieren"
@@ -6743,7 +6768,7 @@ msgstr "E-Mails"
6743
  # @ woocommerce-germanized
6744
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:30
6745
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:21
6746
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:33
6747
  msgid "General"
6748
  msgstr "Allgemein"
6749
 
@@ -6809,8 +6834,8 @@ msgstr ""
6809
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-orders-controller.php:145
6810
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:553
6811
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:566
6812
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:131
6813
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:139
6814
  msgid "Title"
6815
  msgstr "Anrede"
6816
 
@@ -7146,7 +7171,7 @@ msgstr "Jetzt hinzufügen"
7146
 
7147
  # @ woocommerce-germanized
7148
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:209
7149
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:367
7150
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-taxes.php:161
7151
  msgid "Notice Text"
7152
  msgstr "Hinweistext"
@@ -7443,35 +7468,35 @@ msgid "Shopmarks"
7443
  msgstr "Preisauszeichnung"
7444
 
7445
  # @ woocommerce-germanized
7446
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:34
7447
  msgid "Delivery times"
7448
  msgstr "Lieferzeiten"
7449
 
7450
  # @ woocommerce-germanized
7451
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:35
7452
  msgid "Unit prices"
7453
  msgstr "Grundpreise"
7454
 
7455
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:36
7456
  msgid "Price labels"
7457
  msgstr "Preishinweise"
7458
 
7459
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:44
7460
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:206
7461
  msgid "Widgets & Blocks"
7462
  msgstr "Widgets & Blöcke"
7463
 
7464
  # @ woocommerce-germanized
7465
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:45
7466
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:251
7467
  msgid "E-Mails"
7468
  msgstr "E-Mails"
7469
 
7470
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:64
7471
  msgid "Shopmark Display"
7472
  msgstr "Preisauszeichnung"
7473
 
7474
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:65
7475
  msgid ""
7476
  "By adjusting the display settings you might determine where to show or hide "
7477
  "your shopmarks e.g. the tax notice on single product pages."
@@ -7481,12 +7506,12 @@ msgstr ""
7481
  "aktivieren oder deaktivieren."
7482
 
7483
  # @ woocommerce-germanized
7484
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:83
7485
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:326
7486
  msgid "Location"
7487
  msgstr "Ort"
7488
 
7489
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:84
7490
  msgid ""
7491
  "Adjust the location of the shopmark by selecting a location from the list. "
7492
  "Some Themes might apply the locations at different positions that's why the "
@@ -7497,12 +7522,12 @@ msgstr ""
7497
  "an unterschiedlichen Stellen aus, sodass das Ergebnis u.U. von Theme zu "
7498
  "Theme abweichen kann."
7499
 
7500
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:97
7501
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:341
7502
  msgid "Priority"
7503
  msgstr "Priorität"
7504
 
7505
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:98
7506
  msgid ""
7507
  "Many different information may be attached to the location selected. By "
7508
  "adjusting the priority you can choose whether the shopmark gets applied "
@@ -7514,12 +7539,12 @@ msgstr ""
7514
  "soll."
7515
 
7516
  # @ woocommerce-germanized
7517
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:116
7518
  #: woocommerce-germanized/includes/admin/views/html-page-status-germanized.php:50
7519
  msgid "Default Delivery Time"
7520
  msgstr "Standard-Lieferzeit"
7521
 
7522
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:117
7523
  msgid ""
7524
  "Choose a delivery time that serves as fallback in case no delivery time was "
7525
  "added to the product."
@@ -7527,13 +7552,13 @@ msgstr ""
7527
  "Wählen Sie eine Lieferzeit, die verwendet wird, wenn dem Produkt keine "
7528
  "Lieferzeit zugeordnet wurde."
7529
 
7530
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:130
7531
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:454
7532
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:501
7533
  msgid "Format"
7534
  msgstr "Format"
7535
 
7536
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:131
7537
  msgid ""
7538
  "You may want to adjust the delivery time output format. You might use "
7539
  "{delivery_time} to output the current product's delivery time."
@@ -7542,11 +7567,11 @@ msgstr ""
7542
  "Platzhalter zur Ausgabe der Lieferzeit des Produktes."
7543
 
7544
  # @ woocommerce-germanized
7545
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:149
7546
  msgid "Default Sale Label"
7547
  msgstr "Standard-Streichpreis"
7548
 
7549
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:150
7550
  msgid ""
7551
  "Price labels are added to sale products to inform the customers of the "
7552
  "different prices' meaning. You may add a fallback label in case a product "
@@ -7557,11 +7582,11 @@ msgstr ""
7557
  "Standard-Hinweise, um sicherzustellen, dass für Produkte ohne abweichenden "
7558
  "Hinweis im Zweifel der Standard-Hinweis verwendet wird."
7559
 
7560
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:191
7561
  msgid "Adjust Product Widgets & Blocks visibility options."
7562
  msgstr "Passen Sie die Anzeige in Widgets & Blöcken an."
7563
 
7564
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:195
7565
  #, php-format
7566
  msgid ""
7567
  "Adjust %s visibility options and choose which shopmarks to be displayed at "
@@ -7571,59 +7596,59 @@ msgstr ""
7571
  "aus welche Auszeichnungen an welchen Orten angezeigt werden sollen."
7572
 
7573
  # @ woocommerce-germanized
7574
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:207
7575
  msgid "Shipping Costs notice"
7576
  msgstr "Versandkosten-Hinweis"
7577
 
7578
  # @ woocommerce-germanized
7579
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:214
7580
  msgid "Tax Info"
7581
  msgstr "MwSt. Hinweis"
7582
 
7583
  # @ woocommerce-germanized
7584
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:221
7585
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:252
7586
  msgid "Base Price"
7587
  msgstr "Grundpreis"
7588
 
7589
  # @ woocommerce-germanized
7590
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:235
7591
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:268
7592
  msgid "Delivery Time Notice"
7593
  msgstr "Lieferzeiten-Hinweis"
7594
 
7595
  # @ woocommerce-germanized
7596
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:276
7597
  msgid "Short Description"
7598
  msgstr "Warenkorbkurzbeschreibung"
7599
 
7600
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:299
7601
  #, php-format
7602
  msgid "Show %s shopmark"
7603
  msgstr "Preisauszeichnung „%s“ anzeigen"
7604
 
7605
  # @ woocommerce-germanized
7606
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:307
7607
  msgid "Tax"
7608
  msgstr "Steuer"
7609
 
7610
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:308
7611
  msgid "Show Tax shopmark"
7612
  msgstr "Preisauszeichnung „Steuer“ anzeigen"
7613
 
7614
  # @ woocommerce-germanized
7615
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:316
7616
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:361
7617
  #: woocommerce-germanized/includes/wc-gzd-core-functions.php:248
7618
  msgid "Shipping Costs"
7619
  msgstr "Versandkosten"
7620
 
7621
  # @ woocommerce-germanized
7622
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:317
7623
  msgid "Show Shipping Costs shopmark"
7624
  msgstr "Preisauszeichnung „Versandkosten“ anzeigen"
7625
 
7626
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:327
7627
  msgid ""
7628
  "Choose a location for the shopmark. Locations are mapped to specific "
7629
  "WooCommerce hooks and may differ from Theme to Theme."
@@ -7632,7 +7657,7 @@ msgstr ""
7632
  "WooCommerce an bestimmte Hooks gebunden und können sich von Theme zu Theme "
7633
  "unterscheiden."
7634
 
7635
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:342
7636
  #, php-format
7637
  msgid ""
7638
  "Choose a priority by which the shopmark should be attached to the location. "
@@ -7644,7 +7669,7 @@ msgstr ""
7644
  "Preisauszeichnung hinzugefügt. Standard ist %d."
7645
 
7646
  # @ woocommerce-germanized
7647
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:368
7648
  msgid ""
7649
  "This text will be used to inform the customer about shipping costs. Use "
7650
  "{link}{/link} to insert link to shipping costs page."
@@ -7654,17 +7679,17 @@ msgstr ""
7654
  "Link zur Versandkosten-Seite einzufügen."
7655
 
7656
  # @ woocommerce-germanized
7657
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:373
7658
  msgid "plus {link}Shipping Costs{/link}"
7659
  msgstr "zzgl. {link}Versandkosten{/link}"
7660
 
7661
  # @ woocommerce-germanized
7662
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:376
7663
  msgid "Free Shipping Text"
7664
  msgstr "Kostenloser Versand Text"
7665
 
7666
  # @ woocommerce-germanized
7667
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:377
7668
  msgid ""
7669
  "This text will be used to inform the customer about free shipping. Leave "
7670
  "empty to disable notice. Use {link}{/link} to insert link to shipping costs "
@@ -7675,13 +7700,13 @@ msgstr ""
7675
  "zur Versandkosten-Seite einzufügen."
7676
 
7677
  # @ woocommerce-germanized
7678
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:385
7679
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:483
7680
  msgid "Hide Notice"
7681
  msgstr "Hinweis ausblenden"
7682
 
7683
  # @ woocommerce-germanized
7684
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:386
7685
  msgid ""
7686
  "Select product types for which you might want to disable the shipping costs "
7687
  "notice."
@@ -7690,33 +7715,33 @@ msgstr ""
7690
  "ausblenden möchten."
7691
 
7692
  # @ woocommerce-germanized
7693
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:396
7694
  msgid "Footer"
7695
  msgstr "Footer"
7696
 
7697
  # @ woocommerce-germanized
7698
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:399
7699
  msgid "Notice"
7700
  msgstr "Hinweis"
7701
 
7702
  # @ woocommerce-germanized
7703
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:400
7704
  msgid "Attach a global VAT notice to your footer."
7705
  msgstr "Einen seitenübergreifenden MwSt.-Hinweis im Footer einfügen."
7706
 
7707
  # @ woocommerce-germanized
7708
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:407
7709
  msgid "Attach a global sale price notice to your footer."
7710
  msgstr ""
7711
  "Einen seitenübergreifenden Hinweis zu reduzierten Preisen im Footer einfügen."
7712
 
7713
  # @ woocommerce-germanized
7714
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:443
7715
  msgid "Fallback"
7716
  msgstr "Fallback"
7717
 
7718
  # @ woocommerce-germanized
7719
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:444
7720
  msgid ""
7721
  "This delivery time will be added to every product if no delivery time has "
7722
  "been chosen individually"
@@ -7725,12 +7750,12 @@ msgstr ""
7725
  "zugeordnet wurde"
7726
 
7727
  # @ woocommerce-germanized
7728
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:451
7729
  msgid "Manage Delivery Times"
7730
  msgstr "Lieferzeiten verwalten"
7731
 
7732
  # @ woocommerce-germanized
7733
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:455
7734
  msgid ""
7735
  "This text will be used to indicate delivery time for products. Use "
7736
  "{delivery_time} as placeholder."
@@ -7739,15 +7764,15 @@ msgstr ""
7739
  "{delivery_time} als Platzhalter verwenden."
7740
 
7741
  # @ woocommerce-germanized
7742
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:459
7743
  msgid "Delivery time: {delivery_time}"
7744
  msgstr "Lieferzeit: {delivery_time}"
7745
 
7746
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:462
7747
  msgid "Digital text"
7748
  msgstr "Digitaler Text"
7749
 
7750
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:466
7751
  msgid ""
7752
  "Enter a text which will be shown as digital delivery time text (replacement "
7753
  "for default digital time on digital products)."
@@ -7757,24 +7782,24 @@ msgstr ""
7757
  "einfach leer lassen."
7758
 
7759
  # @ woocommerce
7760
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:469
7761
  msgid "Backorder"
7762
  msgstr "Lieferrückstand"
7763
 
7764
  # @ woocommerce-germanized
7765
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:470
7766
  msgid "Hide delivery time if a product is on backorder."
7767
  msgstr "Lieferzeit ausblenden falls das Produkt im Lieferrückstand ist."
7768
 
7769
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:476
7770
  msgid "Not in Stock"
7771
  msgstr "Nicht auf Lager"
7772
 
7773
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:477
7774
  msgid "Hide delivery time if a product is not in stock."
7775
  msgstr "Lieferzeit ausblenden falls das Produkt nicht auf Lager ist."
7776
 
7777
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:484
7778
  msgid ""
7779
  "Select product types for which you might want to disable the delivery time "
7780
  "notice."
@@ -7783,7 +7808,7 @@ msgstr ""
7783
  "deaktivieren möchten."
7784
 
7785
  # @ woocommerce-germanized
7786
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:502
7787
  msgid ""
7788
  "This text will be used to display the base price. Use {price} to insert the "
7789
  "price. If you want to specifically format base price output use {base}, "
@@ -7795,26 +7820,26 @@ msgstr ""
7795
  "{unit} und {base_price} für die einzelnen Elemente."
7796
 
7797
  # @ woocommerce-germanized
7798
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:506
7799
  msgid "{price}"
7800
  msgstr "{price}"
7801
 
7802
  # @ woocommerce-germanized
7803
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:509
7804
  msgid "Variable Price"
7805
  msgstr "Variabler Preis"
7806
 
7807
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:510
7808
  msgid "Enable price range base prices for variable products."
7809
  msgstr "Aktiviert von-bis-Grundpreise für variable Produkte."
7810
 
7811
  # @ woocommerce-germanized
7812
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:516
7813
  msgid "Product units format"
7814
  msgstr "Produkteinheiten Format"
7815
 
7816
  # @ woocommerce-germanized
7817
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:517
7818
  msgid ""
7819
  "This text will be used to display the product units. Use {product_units} to "
7820
  "insert the amount of product units. Use {unit} to insert the unit. "
@@ -7826,21 +7851,21 @@ msgstr ""
7826
  "formatierten Grundpreis."
7827
 
7828
  # @ woocommerce-germanized
7829
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:521
7830
  msgid "Product contains: {product_units} {unit}"
7831
  msgstr "Produkt enthält: {product_units} {unit}"
7832
 
7833
  # @ woocommerce-germanized
7834
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:533
7835
  msgid "Fallback Sale Label"
7836
  msgstr "Standard-Streichpreis-Hinweis"
7837
 
7838
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:540
7839
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:550
7840
  msgid "Manage Price Labels"
7841
  msgstr "Preishinweise verwalten"
7842
 
7843
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:540
7844
  msgid ""
7845
  "Choose whether you would like to have a default sale price label to inform "
7846
  "the customer about the regular price (e.g. Recommended Retail Price)."
@@ -7849,11 +7874,11 @@ msgstr ""
7849
  "Sie den Kunden auf den alten Preis (bei reduzierten Produkten, sog. "
7850
  "Streichpreis) hinweisen (z.B. UVP)."
7851
 
7852
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:543
7853
  msgid "Fallback Regular Label"
7854
  msgstr "Standard-Angebotspreis"
7855
 
7856
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:550
7857
  msgid ""
7858
  "Choose whether you would like to have a default sale price regular label to "
7859
  "inform the customer about the sale price (e.g. New Price)."
@@ -7863,21 +7888,21 @@ msgstr ""
7863
  "Angebotspreis) hinweisen (z.B. Unser neuer Preis)."
7864
 
7865
  # @ woocommerce-germanized
7866
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7867
  #: woocommerce-germanized/src/Shopmarks.php:294
7868
  msgid "Single Product"
7869
  msgstr "Produktdetailseite"
7870
 
7871
  # @ woocommerce-germanized
7872
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:555
7873
  msgid "Show price labels on single product page."
7874
  msgstr "Zeige Preishinweise auf der Produktdetailseite."
7875
 
7876
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:562
7877
  msgid "Loop"
7878
  msgstr "Produktlisten"
7879
 
7880
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:563
7881
  msgid "Show price labels in product loops."
7882
  msgstr "Zeige Preishinweise in Produktlisten."
7883
 
@@ -8824,25 +8849,25 @@ msgid "%s [new]"
8824
  msgstr "%s [neu]"
8825
 
8826
  # @ woocommerce-germanized
8827
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:245
8828
  msgctxt "revocation-form"
8829
  msgid "is not a valid email address."
8830
  msgstr "ist leider keine valide E-Mail Adresse."
8831
 
8832
  # @ woocommerce-germanized
8833
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:249
8834
  msgctxt "revocation-form"
8835
  msgid "Please enter a valid postcode/ZIP"
8836
  msgstr "Bitte geben Sie eine echte Postleitzahl ein"
8837
 
8838
  # @ woocommerce-germanized
8839
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:257
8840
  msgctxt "revocation-form"
8841
  msgid "is not valid."
8842
  msgstr "ist leider nicht korrekt."
8843
 
8844
  # @ woocommerce-germanized
8845
- #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:278
8846
  msgctxt "revocation-form"
8847
  msgid ""
8848
  "Thank you. We have received your Revocation Request. You will receive a "
@@ -8896,9 +8921,9 @@ msgstr ""
8896
  "besteuert. Weitere Informationen finden Sie <a href=\"%s\" target=\"_blank"
8897
  "\">hier</a>."
8898
 
8899
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8900
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
8901
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:349
8902
  msgid ""
8903
  "Please activate your account through clicking on the activation link "
8904
  "received via email."
@@ -8906,18 +8931,34 @@ msgstr ""
8906
  "Bitte aktivieren Sie Ihr Kundenkonto indem Sie auf den Link in der E-Mail "
8907
  "klicken."
8908
 
8909
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:239
 
 
 
 
 
 
 
8910
  #, php-format
8911
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8912
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8913
 
8914
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:241
8915
  msgid "Please create an account or login before continuing to checkout"
8916
  msgstr ""
8917
  "Bitte erstellen Sie ein Kundenkonto oder loggen Sie sich ein, bevor Sie zur "
8918
  "Kasse gehen"
8919
 
8920
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:381
 
 
 
 
 
 
 
 
 
8921
  msgid ""
8922
  "This activation code has expired. We have sent you a new activation code via "
8923
  "e-mail."
@@ -8926,38 +8967,38 @@ msgstr ""
8926
  "Code per E-Mail geschickt."
8927
 
8928
  # @ woocommerce-germanized
8929
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:383
8930
  msgid "Sorry, but this activation code cannot be found."
8931
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8932
 
8933
  # @ woocommerce-germanized
8934
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:387
8935
  msgid "Thank you. You have successfully activated your account."
8936
  msgstr "Vielen Dank. Ihr Benutzerkonto wurde erfolgreich aktiviert."
8937
 
8938
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:574
8939
  msgid "Expired activation key"
8940
  msgstr "Abgelaufener Aktivierungscode"
8941
 
8942
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:579
8943
  msgid "Invalid activation key"
8944
  msgstr "Aktivierungscode ungültig"
8945
 
8946
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:186
8947
  msgid "BCC recipients"
8948
  msgstr "BCC Empfänger"
8949
 
8950
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:188
8951
  msgid "Enter blind-copy recipients (comma separated) for this email."
8952
  msgstr ""
8953
  "Fügen Sie Empfänger (kommasepariert) einer Blindkopie für diese E-Mail ein."
8954
 
8955
  # @ woocommerce-germanized
8956
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:227
8957
  msgid "Confirmation text"
8958
  msgstr "Bestätigung Text"
8959
 
8960
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:228
8961
  msgid ""
8962
  "Your order has been received and is now being processed. Your order details "
8963
  "are shown below for your reference:"
@@ -8966,7 +9007,7 @@ msgstr ""
8966
  "Ihrer Bestellung können Sie der nachfolgenden Tabelle entnehmen:"
8967
 
8968
  # @ woocommerce-germanized
8969
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:229
8970
  msgid ""
8971
  "This text will be inserted within the order confirmation email. Use "
8972
  "{order_number}, {site_title} or {order_date} as placeholder."
@@ -8974,7 +9015,7 @@ msgstr ""
8974
  "Dieser Text wird in die Bestellbestätigung eingefügt. Verwenden Sie "
8975
  "{order_number}, {site_title} oder {order_date} als Platzhalter."
8976
 
8977
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:347
8978
  msgid ""
8979
  "Your order has been received and is now being processed. Your order details "
8980
  "are shown below for your reference."
@@ -8982,17 +9023,17 @@ msgstr ""
8982
  "Ihre Bestellung ist eingegangen und wird nun bearbeitet. Die Einzelheiten "
8983
  "Ihrer Bestellung können Sie der nachfolgenden Tabelle entnehmen."
8984
 
8985
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:395
8986
  msgid "Someone requested a password reset for your account."
8987
  msgstr "Jemand hat das Zurücksetzen des Passworts für Ihren Account beantragt."
8988
 
8989
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:410
8990
  #, php-format
8991
  msgid "Thanks for creating an account on %s."
8992
  msgstr "Danke, dass Sie ein Konto bei %s erstellt haben."
8993
 
8994
  # @ woocommerce-germanized
8995
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1114
8996
  msgctxt "revocation-form"
8997
  msgid "Forward your Revocation online"
8998
  msgstr "Widerruf online erklären"
@@ -10927,7 +10968,7 @@ msgstr ""
10927
  "unserem <a href=\"%s\" target=\"_blank\">Blog-Post</a> wie Sie das Plugin "
10928
  "austauschen können."
10929
 
10930
- #: woocommerce-germanized/woocommerce-germanized.php:1008
10931
  msgid "Pease wait while we are trying to redirect you to the payment provider."
10932
  msgstr "Einen Moment - wir versuchen Sie zum Zahlungsanbieter weiterzuleiten."
10933
 
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2020-12-17 12:54+0100\n"
6
+ "PO-Revision-Date: 2020-12-17 12:57+0100\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE@formal\n"
45
  msgid "Additional Services"
46
  msgstr "Zusätzliche Leistungen"
47
 
48
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:36
49
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:505
50
  #, php-format
51
  msgid ""
52
  "Sorry but none of your selected <a href=\"%s\">Deutsche Post Products</a> is "
58
  "(z.B. Gewicht) und versuchen Sie es erneut."
59
 
60
  # @ woocommerce-germanized
61
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:43
62
  msgctxt "dhl"
63
  msgid "Product"
64
  msgstr "Produkt"
65
 
66
  # @ woocommerce-germanized
67
+ #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php:59
68
  msgctxt "dhl"
69
  msgid "Page Format"
70
  msgstr "Seitenformat"
137
 
138
  # @ woocommerce-germanized
139
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:139
140
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:601
141
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:775
142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:844
143
  msgctxt "dhl"
152
 
153
  # @ woocommerce-germanized
154
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:159
155
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:602
156
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:796
157
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:865
158
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:27
162
 
163
  # @ woocommerce-germanized
164
  #: woocommerce-germanized-dhl/includes/admin/views/html-shipment-label-backbone-form.php:168
165
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:603
166
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:789
167
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:858
168
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:30
268
  msgstr "Empfänger"
269
 
270
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:15
271
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1465
272
  msgctxt "dhl"
273
  msgid "DHL Labels"
274
  msgstr "DHL Labels"
363
  "href=\"%s\">globalen Einstellungen</a>."
364
 
365
  #: woocommerce-germanized-dhl/includes/admin/views/settings-shipping-method.php:94
366
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1374
367
  msgctxt "dhl"
368
  msgid "Printing"
369
  msgstr "Druck"
379
  "\"%s\">globalen Einstellungen</a>."
380
 
381
  # @ woocommerce-germanized
382
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:171
383
  msgctxt "dhl time context"
384
  msgid "None"
385
  msgstr "Keine"
386
 
387
  # @ woocommerce-germanized
388
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:181
389
  #: woocommerce-germanized-dhl/src/Api/Paket.php:280
390
  msgctxt "dhl day context"
391
  msgid "None"
392
  msgstr "Keiner"
393
 
394
  # @ woocommerce-germanized
395
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:206
396
  msgctxt "dhl"
397
  msgid "Delivery Duty Unpaid"
398
  msgstr "Delivery Duty Unpaid"
399
 
400
  # @ woocommerce-germanized
401
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:207
402
  msgctxt "dhl"
403
  msgid "Delivery Duty Paid"
404
  msgstr "Delivery Duty Paid"
405
 
406
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:208
407
  msgctxt "dhl"
408
  msgid "Delivery Duty Paid (excl. VAT )"
409
  msgstr "Delivered Duty Paid (exkl. MwSt.)"
410
 
411
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:209
412
  msgctxt "dhl"
413
  msgid "Delivery Duty Paid (excl. Duties, taxes and VAT)"
414
  msgstr "Delivery Duty Paid (exkl. Zölle, Steuern und MwSt.)"
415
 
416
  # @ woocommerce-germanized
417
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:237
418
  msgctxt "age context"
419
  msgid "None"
420
  msgstr "Keine"
421
 
422
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:238
423
  msgctxt "dhl"
424
  msgid "Minimum age of 16"
425
  msgstr "Mindestens 16 Jahre"
426
 
427
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:239
428
  msgctxt "dhl"
429
  msgid "Minimum age of 18"
430
  msgstr "Mindestens 18 Jahre"
431
 
432
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:264
433
  msgctxt "dhl"
434
  msgid "Shipment #{shipment_id} to order {order_id}"
435
  msgstr "Sendung #{shipment_id} zur Bestellung {order_id}"
436
 
437
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:280
438
  msgctxt "dhl"
439
  msgid "Return #{shipment_id} to order {order_id}"
440
  msgstr "Retoure #{shipment_id} zur Bestellung {order_id}"
441
 
442
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:296
443
  msgctxt "dhl"
444
  msgid "Return shipment #{shipment_id} to order #{order_id}"
445
  msgstr "Retourensendung #{shipment_id} zur Bestellung #{order_id}"
446
 
447
  # @ woocommerce-germanized
448
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:376
449
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:188
450
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:496
451
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:850
452
  #: woocommerce-germanized-dhl/templates/checkout/dhl/parcel-finder.php:38
453
  msgctxt "dhl"
454
  msgid "Packstation"
455
  msgstr "Packstation"
456
 
457
  # @ woocommerce-germanized
458
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:377
459
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:378
460
  msgctxt "dhl"
461
  msgid "Postfiliale"
462
  msgstr "Postfiliale"
463
 
464
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:462
465
  msgctxt "dhl"
466
  msgid "Receiver is missing or does not exist."
467
  msgstr "Empfänger fehlt oder existiert nicht."
468
 
469
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:481
470
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:566
471
  #, php-format
472
  msgctxt "dhl"
473
  msgid "Shipment order #%s does not exist"
474
  msgstr "Bestellung zur Sendung #%s existiert nicht"
475
 
476
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:492
477
  msgctxt "dhl"
478
  msgid "The services chosen are not available for the current product."
479
  msgstr "Die ausgewählten Services sind für dieses Produkt nicht verfügbar."
480
 
481
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:532
482
  #, php-format
483
  msgctxt "dhl"
484
  msgid "Deutsche Post product is missing for %s."
485
  msgstr "Deutsche Post Produkt fehlt oder ist nicht verfügbar für %s."
486
 
487
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:608
488
  #, php-format
489
  msgctxt "dhl"
490
  msgid "%s of the return address is a mandatory field."
491
  msgstr "%s der Rücksendeadresse ist ein Pflichtfeld."
492
 
493
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:613
494
  msgctxt "dhl"
495
  msgid "Please either add a return company or name."
496
  msgstr ""
497
  "Bitte geben Sie entweder einen Firmennamen oder Namen für die "
498
  "Rücksendeadresse an."
499
 
500
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:632
501
  msgctxt "dhl"
502
  msgid "Error while parsing preferred day."
503
  msgstr "Fehler beim Einlesen des Wunschtags."
504
 
505
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:643
506
  msgctxt "dhl"
507
  msgid "Error while parsing preferred time."
508
  msgstr "Fehler beim Einlesen der Wunschzeit."
509
 
510
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:668
511
  msgctxt "dhl"
512
  msgid "The visual min age check is invalid."
513
  msgstr "Das Alter der Alterssichtprüfung ist ungültig."
514
 
515
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:692
516
  msgctxt "dhl"
517
  msgid "The ident min age check is invalid."
518
  msgstr "Das Alter des Ident-Checks ist ungültig."
519
 
520
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:699
521
  msgctxt "dhl"
522
  msgid "There was an error parsing the date of birth for the identity check."
523
  msgstr ""
524
  "Beim Einlesen des Geburtsdatums für den Ident-Check trat ein Problem auf."
525
 
526
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:704
527
  msgctxt "dhl"
528
  msgid ""
529
  "Either a minimum age or a date of birth must be added to the ident check."
532
  "hinzugefügt werden."
533
 
534
  # @ woocommerce-germanized
535
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:718
536
  #, php-format
537
  msgctxt "dhl"
538
  msgid "%s duties element does not exist."
539
  msgstr "%s Zollabgabe existiert nicht."
540
 
541
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1342
542
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1426
543
  msgctxt "dhl"
544
  msgid "Invalid shipment"
545
  msgstr "Ungültige Sendung"
546
 
547
  # @ woocommerce-germanized
548
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1346
549
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1430
550
  msgctxt "dhl"
551
  msgid "Order does not exist"
552
  msgstr "Bestellung existiert nicht"
553
 
554
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1378
555
  msgctxt "dhl"
556
  msgid "Error while creating the label instance"
557
  msgstr "Fehler beim Erstellen der Label-Instanz"
558
 
559
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1501
560
  msgctxt "dhl"
561
  msgid "Invalid label"
562
  msgstr "Ungültiges Label"
563
 
564
  # @ woocommerce-germanized
565
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1589
566
  msgctxt "dhl"
567
  msgid "DHL Retoure International A"
568
  msgstr "DHL Retoure International A"
569
 
570
  # @ woocommerce-germanized
571
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1590
572
  msgctxt "dhl"
573
  msgid "DHL Retoure International B"
574
  msgstr "DHL Retoure International B"
575
 
576
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1599
577
  msgctxt "dhl"
578
  msgid "DHL Retoure Online"
579
  msgstr "DHL Retoure Online"
580
 
581
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1616
582
  msgctxt "dhl"
583
  msgid "DHL Paket Connect"
584
  msgstr "DHL Paket Connect"
585
 
586
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1617
587
  msgctxt "dhl"
588
  msgid "DHL Europaket (B2B)"
589
  msgstr "DHL Europaket (B2B)"
590
 
591
  # @ woocommerce-germanized
592
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1618
593
  msgctxt "dhl"
594
  msgid "DHL Paket International"
595
  msgstr "DHL Paket International"
596
 
597
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1693
598
  msgctxt "dhl"
599
  msgid "DHL Paket"
600
  msgstr "DHL Paket"
601
 
602
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1694
603
  msgctxt "dhl"
604
  msgid "DHL Paket PRIO"
605
  msgstr "DHL Paket PRIO"
606
 
607
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1695
608
  msgctxt "dhl"
609
  msgid "DHL Paket Taggleich"
610
  msgstr "DHL Paket Taggleich"
611
 
612
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1696
613
  msgctxt "dhl"
614
  msgid "DHL Warenpost"
615
  msgstr "DHL Warenpost"
616
 
617
+ #: woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php:1783
618
  msgctxt "dhl"
619
  msgid "Error while uploading label."
620
  msgstr "Fehler beim Hochladen des Labels."
621
 
622
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:59
623
  msgctxt "dhl"
624
  msgid "Refreshed data successfully."
625
  msgstr "Daten erfolgreich aktualisiert."
626
 
627
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:59
628
  #, php-format
629
  msgctxt "dhl"
630
  msgid ""
631
+ "Error while refreshing data. Please make sure that the Internetmarke API URL "
632
+ "can be <a href=\"%s\">accessed</a>."
633
  msgstr ""
634
+ "Fehler beim Datenabruf. Bitte prüfen Sie ob die Internetmarke API URL <a "
635
+ "href=\"%s\">erreichbar</a> ist."
636
 
637
  # @ woocommerce-germanized
638
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:176
639
  msgctxt "dhl"
640
  msgid "Receiver Ids"
641
  msgstr "Empfänger IDs"
642
 
643
  # @ woocommerce-germanized
644
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:183
645
  msgctxt "dhl"
646
  msgid "Receiver Id"
647
  msgstr "Empfänger ID"
648
 
649
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:183
650
  msgctxt "dhl"
651
  msgid "Find your Receiver Ids within your DHL contract data."
652
  msgstr "Die Empfänger IDs finden Sie im DHL Geschäftskundenportal."
653
 
654
  # @ woocommerce-germanized
655
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:184
656
  msgctxt "dhl"
657
  msgid "Country Code"
658
  msgstr "Ländercode"
659
 
660
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:184
661
  msgctxt "dhl"
662
  msgid "Leave empty to use the Receiver Id as fallback."
663
  msgstr "Leer lassen, um diese Empfänger ID als Fallback zu verwenden."
664
 
665
  # @ woocommerce-germanized
666
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:204
667
  msgctxt "dhl"
668
  msgid "+ Add receiver"
669
  msgstr "+ Empfänger hinzufügen"
670
 
671
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:204
672
  msgctxt "dhl"
673
  msgid "Remove selected receiver(s)"
674
  msgstr "Ausgewählte Empfänger löschen"
675
 
676
  # @ woocommerce-germanized
677
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:240
678
  msgctxt "dhl"
679
  msgid "Select a country"
680
  msgstr "Land auswählen"
681
 
682
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:242
683
  msgctxt "dhl"
684
  msgid "HS-Code (DHL)"
685
  msgstr "Zolltarifnummer (HS-Code, DHL)"
686
 
687
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:242
688
  msgctxt "dhl"
689
  msgid ""
690
  "The HS Code is a number assigned to every possible commodity that can be "
694
  "standardisiertes System von Namen und Nummern zur Klassifizierung "
695
  "gehandelter Produkte."
696
 
697
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:243
698
  msgctxt "dhl"
699
  msgid "Country of manufacture (DHL)"
700
  msgstr "Herstellungsland (DHL)"
701
 
702
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:243
703
  msgctxt "dhl"
704
  msgid ""
705
  "The country of manufacture is needed for customs of international shipping."
707
  "Das Herstellungsland wird für die Zollabwicklung bei internationalen "
708
  "Sendungen benötigt."
709
 
710
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:264
711
  #, php-format
712
  msgctxt "dhl"
713
  msgid ""
717
  "Das Verzeichnis zum Speichern von DHL Labels fehlt. Bitte erstellen Sie den "
718
  "Ordner %s manuell und stellen Sie sicher, dass der Ordner beschreibbar ist."
719
 
720
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:271
721
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1464
722
  #: woocommerce-germanized-dhl/src/ShippingProvider/DHL.php:39
723
  msgctxt "dhl"
724
  msgid "DHL"
725
  msgstr "DHL"
726
 
727
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:286
728
  msgctxt "dhl"
729
  msgid "DHL Label"
730
  msgstr "DHL Label"
731
 
732
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:298
733
  msgctxt "dhl"
734
  msgid ""
735
  "This label has been generated by the DHL for WooCommerce Plugin and is shown "
739
  "Kompatibilitäts-Gründen angezeigt."
740
 
741
  # @ woocommerce-germanized
742
+ #: woocommerce-germanized-dhl/src/Admin/Admin.php:299
743
  msgctxt "dhl"
744
  msgid "Download label"
745
  msgstr "Label downloaden"
842
  # @ woocommerce-germanized
843
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:122
844
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:747
845
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1391
846
  msgctxt "dhl"
847
  msgid "Automation"
848
  msgstr "Automatisierung"
1074
  msgstr "Vertragsdaten"
1075
 
1076
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:392
1077
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1222
1078
  msgctxt "dhl"
1079
  msgid "Domestic Default Service"
1080
  msgstr "Nationaler Standard Service"
1091
  "nachträglich ändern)."
1092
 
1093
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:402
1094
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1242
1095
  msgctxt "dhl"
1096
  msgid "Int. Default Service"
1097
  msgstr "Internationaler Standard Service"
1140
 
1141
  # @ woocommerce-germanized
1142
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:432
1143
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1200
1144
  msgctxt "dhl"
1145
  msgid "Default weight (kg)"
1146
  msgstr "Standardgewicht (kg)"
1147
 
1148
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:434
1149
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1202
1150
  msgctxt "dhl"
1151
  msgid ""
1152
  "Choose a default shipment weight to be used for labels if no weight has been "
1156
  "für die das Gewicht nicht automatisch bestimmt werden kann."
1157
 
1158
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:443
1159
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1211
1160
  msgctxt "dhl"
1161
  msgid "Minimum weight (kg)"
1162
  msgstr "Mindestgewicht (kg)"
1163
 
1164
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:445
1165
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1213
1166
  msgctxt "dhl"
1167
  msgid ""
1168
  "Choose a minimum weight to be used for labels e.g. to prevent low shipment "
1420
  msgstr "Premium Lieferung für internationale Sendungen."
1421
 
1422
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:626
1423
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1264
1424
  msgctxt "dhl"
1425
  msgid "Labels"
1426
  msgstr "Labels"
1427
 
1428
  # @ woocommerce-germanized
1429
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:627
1430
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1265
1431
  msgctxt "dhl"
1432
  msgid "Automatically create labels for shipments."
1433
  msgstr "Automatisch Labels zu Sendungen erstellen."
1435
  # @ woocommerce-germanized
1436
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:634
1437
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:661
1438
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1272
1439
  msgctxt "dhl"
1440
  msgid "Status"
1441
  msgstr "Status"
1442
 
1443
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:638
1444
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1276
1445
  msgctxt "dhl"
1446
  msgid "Choose a shipment status which should trigger generation of a label."
1447
  msgstr ""
1450
 
1451
  # @ woocommerce-germanized
1452
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:645
1453
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1283
1454
  msgctxt "dhl"
1455
  msgid "Shipment Status"
1456
  msgstr "Sendungsstatus"
1457
 
1458
  #: woocommerce-germanized-dhl/src/Admin/Settings.php:646
1459
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1284
1460
  msgctxt "dhl"
1461
  msgid "Mark shipment as shipped after label has been created successfully."
1462
  msgstr ""
1862
  msgid "Password"
1863
  msgstr "Passwort"
1864
 
1865
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1226
1866
  msgctxt "dhl"
1867
  msgid ""
1868
  "Please select your default shipping service for domestic shipments that you "
1873
  "für Ihre Kunden anbieten."
1874
 
1875
  # @ woocommerce-germanized
1876
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1232
1877
  msgctxt "dhl"
1878
  msgid "EU Default Service"
1879
  msgstr "Standard Service (EU)"
1880
 
1881
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1236
1882
  msgctxt "dhl"
1883
  msgid ""
1884
  "Please select your default shipping service for EU shipments that you want "
1887
  "Bitte wählen Sie das Standard-Produkt für EU Sendungen aus, das Sie für Ihre "
1888
  "Kunden anbieten."
1889
 
1890
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1246
1891
  msgctxt "dhl"
1892
  msgid ""
1893
  "Please select your default shipping service for cross-border shipments that "
1896
  "Bitte wählen Sie das Standard-Produkt für internationale Sendungen aus, das "
1897
  "Sie für Ihre Kunden anbieten."
1898
 
1899
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1303
1900
  msgctxt "dhl"
1901
  msgid "Default Format"
1902
  msgstr "Standardformat"
1903
 
1904
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1306
1905
  #, php-format
1906
  msgctxt "dhl"
1907
  msgid ""
1913
  "verwendet wird. Sie können die Liste auch manuell <a href=\"%s"
1914
  "\">aktualisieren</a>, falls notwendig."
1915
 
1916
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1333
1917
  msgctxt "dhl"
1918
  msgid "Portokasse"
1919
  msgstr "Portokasse"
1920
 
1921
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1336
1922
  msgctxt "dhl"
1923
  msgid "Balance"
1924
  msgstr "Guthaben"
1925
 
1926
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1343
1927
  msgctxt "dhl"
1928
  msgid "Charge (€)"
1929
  msgstr "Aufladen (€)"
1930
 
1931
  # @ woocommerce-germanized
1932
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1353
1933
  msgctxt "dhl"
1934
  msgid "Products"
1935
  msgstr "Produkte"
1936
 
1937
  # @ woocommerce-germanized
1938
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1356
1939
  msgctxt "dhl"
1940
  msgid "Available Products"
1941
  msgstr "Verfügbare Produkte"
1942
 
1943
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1359
1944
  #, php-format
1945
  msgctxt "dhl"
1946
  msgid ""
1952
  "stehen sollen. Sie können die Produktliste auch manuell <a href=\"%s"
1953
  "\">aktualisieren</a>, falls notwendig."
1954
 
1955
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1384
1956
  msgctxt "dhl"
1957
  msgid "API Error"
1958
  msgstr "API Fehler"
1959
 
1960
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1425
1961
  msgctxt "dhl"
1962
  msgid "Charge Portokasse"
1963
  msgstr "Portokasse aufladen"
1964
 
1965
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1426
1966
  #, php-format
1967
  msgctxt "dhl"
1968
  msgid "The minimum amount is %s"
1969
  msgstr "Der Minimalbetrag beträgt %s"
1970
 
1971
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1436
1972
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1438
1973
  msgctxt "dhl"
1974
  msgid "Not yet a customer?"
1975
  msgstr "Noch kein Kunde?"
1976
 
1977
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1466
1978
  msgctxt "dhl"
1979
  msgid "Internetmarke"
1980
  msgstr "Internetmarke"
1981
 
1982
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1467
1983
  msgctxt "dhl"
1984
  msgid "Preferred Services"
1985
  msgstr "Wunschpaket"
1986
 
1987
+ #: woocommerce-germanized-dhl/src/Admin/Settings.php:1468
1988
  msgctxt "dhl"
1989
  msgid "Parcel Pickup"
1990
  msgstr "Standorte"
1991
 
1992
+ # @ woocommerce-germanized
1993
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:22
1994
+ msgctxt "dhl"
1995
+ msgid "Ping Check"
1996
+ msgstr "Prüfung der Verbindung"
1997
+
1998
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:37
1999
+ msgctxt "dhl"
2000
+ msgid ""
2001
+ "Unable to connect to the URL. Please make sure that your webhost allows "
2002
+ "outgoing connections to that specific URL."
2003
+ msgstr ""
2004
+ "Kein Verbindungsaufbau zu der URL möglich. Bitte stelle sicher, dass dein "
2005
+ "Hoster ausgehende Verbindungen zu dieser URL erlaubt."
2006
+
2007
+ # @ woocommerce-germanized
2008
+ #: woocommerce-germanized-dhl/src/Admin/Status.php:49
2009
+ msgctxt "dhl"
2010
+ msgid "DHL & Post"
2011
+ msgstr "DHL & Post"
2012
+
2013
  #: woocommerce-germanized-dhl/src/Api/FinderSoap.php:37
2014
  msgctxt "dhl"
2015
  msgid "Sunday"
2027
  msgid "%s %s"
2028
  msgstr "%s %s"
2029
 
2030
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:302
2031
  msgctxt "dhl"
2032
  msgid "PRIO"
2033
  msgstr "PRIO"
2034
 
2035
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:303
2036
  msgctxt "dhl"
2037
  msgid "Einschreiben (Einwurf)"
2038
  msgstr "Einschreiben (Einwurf)"
2039
 
2040
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:304
2041
  msgctxt "dhl"
2042
  msgid "Einschreiben"
2043
  msgstr "Einschreiben"
2044
 
2045
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:305
2046
  msgctxt "dhl"
2047
  msgid "Einschreiben (Eigenhändig)"
2048
  msgstr "Einschreiben (Eigenhändig)"
2049
 
2050
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:306
2051
  msgctxt "dhl"
2052
  msgid "Alterssichtprüfung 16"
2053
  msgstr "Alterssichtprüfung 16"
2054
 
2055
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:307
2056
  msgctxt "dhl"
2057
  msgid "Alterssichtprüfung 18"
2058
  msgstr "Alterssichtprüfung 18"
2059
 
2060
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:308
2061
  msgctxt "dhl"
2062
  msgid "Zusatzentgelt MBf"
2063
  msgstr "Zusatzentgelt MBf"
2064
 
2065
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:309
2066
  msgctxt "dhl"
2067
  msgid "Unterschrift"
2068
  msgstr "Unterschrift"
2069
 
2070
+ #: woocommerce-germanized-dhl/src/Api/ImProductList.php:310
2071
  msgctxt "dhl"
2072
  msgid "Tracked"
2073
  msgstr "Tracked"
2074
 
2075
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:43
2076
  #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:52
2077
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:490
2078
  msgctxt "dhl"
2079
  msgid "Error while fetching label PDF"
2080
  msgstr "Fehler beim Download des PDF Labels"
2090
  msgid "Invalid API response"
2091
  msgstr "Fehlerhafte API Rückmeldung"
2092
 
2093
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:190
2094
  msgctxt "dhl"
2095
  msgid "Error while authenticating user."
2096
  msgstr "Fehler beim Autorisieren des Benutzers."
2097
 
2098
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:276
2099
  msgctxt "dhl"
2100
  msgid "Error during Warenpost International request."
2101
  msgstr "Fehler beim Aufruf der Warenpost International API."
2102
 
2103
  # @ woocommerce-germanized
2104
+ #: woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php:298
2105
  #, php-format
2106
  msgctxt "dhl"
2107
  msgid "Error during request: %s"
2138
  msgid "Wrong username or password"
2139
  msgstr "Falscher Benutzername oder Passwort"
2140
 
2141
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:252
2142
  #, php-format
2143
  msgctxt "dhl"
2144
  msgid "until %s"
2145
  msgstr "bis %s"
2146
 
2147
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:337
2148
  #, php-format
2149
  msgctxt "dhl"
2150
  msgid "Length: %s"
2151
  msgstr "Länge: %s"
2152
 
2153
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:341
2154
  #, php-format
2155
  msgctxt "dhl"
2156
  msgid "Width: %s"
2157
  msgstr "Breite: %s"
2158
 
2159
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:345
2160
  #, php-format
2161
  msgctxt "dhl"
2162
  msgid "Height: %s"
2163
  msgstr "Höhe: %s"
2164
 
2165
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:349
2166
  #, php-format
2167
  msgctxt "dhl"
2168
  msgid "Weight: %s"
2169
  msgstr "Gewicht: %s"
2170
 
2171
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:354
2172
  msgctxt "dhl"
2173
  msgid "Total"
2174
  msgstr "Gesamt"
2175
 
2176
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:544
2177
  #, php-format
2178
  msgctxt "dhl"
2179
  msgid "Could not refund post label: %s"
2180
  msgstr "Deutsche Post Label konnte nicht rückerstattet werden: %s"
2181
 
2182
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:558
2183
  msgctxt "dhl"
2184
  msgid "Refund API could not be instantiated"
2185
  msgstr "Die API für Rückerstattungen konnte nicht initialisiert werden"
2186
 
2187
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:647
2188
  #: woocommerce-germanized-dhl/src/Api/LabelSoap.php:379
2189
  #: woocommerce-germanized-dhl/src/Api/ReturnRest.php:34
2190
  #, php-format
2192
  msgid "Could not fetch shipment %d."
2193
  msgstr "Sendung %d konnte nicht gefunden werden."
2194
 
2195
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:687
2196
  msgctxt "dhl"
2197
  msgid "Error while generating shop order id."
2198
  msgstr "Fehler beim Erzeugen der Shop Order Id."
2199
 
2200
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:697
2201
  #, php-format
2202
  msgctxt "dhl"
2203
  msgid ""
2207
  "Fehler beim Kauf des Labels. Bitte <a href=\"%s\">aktualisieren</a>Sie die "
2208
  "Produktliste manuell und versuchen Sie es erneut."
2209
 
2210
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:740
2211
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:747
2212
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:775
2213
  msgctxt "dhl"
2214
  msgid "Error while downloading the PDF stamp."
2215
  msgstr "Fehler beim Download des PDF Labels."
2216
 
2217
+ #: woocommerce-germanized-dhl/src/Api/Internetmarke.php:782
2218
  msgctxt "dhl"
2219
  msgid "Invalid stamp response."
2220
  msgstr "Fehlerhafte Label Rückmeldung."
2428
  "angegeben wurde."
2429
 
2430
  # @ woocommerce-germanized
2431
+ #: woocommerce-germanized-dhl/src/Package.php:994
2432
  msgctxt "dhl"
2433
  msgid "Germany"
2434
  msgstr "Deutschland"
2435
 
2436
  # @ woocommerce-germanized
2437
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:92
2438
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:863
2439
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:892
2440
  msgctxt "dhl"
2441
  msgid "Address Type"
2442
  msgstr "Adresstyp"
2443
 
2444
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:95
2445
  msgctxt "dhl"
2446
  msgid "Select whether delivery to DHL locations should be enabled."
2447
  msgstr ""
2448
  "Wählen Sie aus, ob die Lieferung an DHL Standorte aktiviert werden soll."
2449
 
2450
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:100
2451
  msgctxt "dhl"
2452
  msgid "Postnumber"
2453
  msgstr "Postnummer"
2454
 
2455
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:102
2456
  msgctxt "dhl"
2457
  msgid ""
2458
  "In case delivery to packstation is selected please fill in the corresponding "
2461
  "Insofern die Lieferung an eine Packstation erfolgt, bitte die Postnummer "
2462
  "eintragen."
2463
 
2464
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:188
2465
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:579
2466
  msgctxt "dhl"
2467
  msgid "Invalid address type."
2468
  msgstr "Ungültiger Adresstyp."
2469
 
2470
  # @ woocommerce-germanized
2471
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:651
2472
  msgctxt "dhl"
2473
  msgid "Sorry, but delivery to packstation is not available."
2474
  msgstr ""
2475
  "Entschuldigung, die Lieferung an eine Packstation steht nicht zur Verfügung."
2476
 
2477
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:656
2478
  msgctxt "dhl"
2479
  msgid "Sorry, but delivery to parcel shops is not available."
2480
  msgstr ""
2481
  "Entschuldigung, die Lieferung an einen Paketshop steht nicht zur Verfügung."
2482
 
2483
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:660
2484
  msgctxt "dhl"
2485
  msgid "Sorry, but delivery to post offices is not available."
2486
  msgstr "Entschuldigung, die Lieferung an Postfilialen ist nicht verfügbar."
2487
 
2488
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:667
2489
  #, php-format
2490
  msgctxt "dhl"
2491
  msgid "Please indicate shipment to %s by one of the following values: %s."
2493
  "Bitte identifizieren Sie die Lieferung an %s durch die Eingabe einer der "
2494
  "folgenden Werte: %s."
2495
 
2496
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:675
2497
  msgctxt "dhl"
2498
  msgid ""
2499
  "Your DHL customer number (Post number) is not valid. Please check your "
2502
  "Ihre DHL Kundennummer (Postnummer) ist nicht gültig. Bitte überprüfen Sie "
2503
  "Ihre Eingabe."
2504
 
2505
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:678
2506
  msgctxt "dhl"
2507
  msgid ""
2508
  "Your DHL customer number (Post number) is needed to ship to a packstation."
2510
  "Ihre DHL Kundennummer (Postnummer) wird für den Versand an eine Packstation "
2511
  "benötigt."
2512
 
2513
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:727
2514
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:854
2515
  msgctxt "dhl"
2516
  msgid "Branch"
2517
  msgstr "Filiale"
2518
 
2519
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:728
2520
  msgctxt "dhl"
2521
  msgid "Postnumber "
2522
  msgstr "Postnummer "
2523
 
2524
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:829
2525
  #, php-format
2526
  msgctxt "dhl"
2527
  msgid "e.g. %s 456"
2528
  msgstr "z.B. %s 456"
2529
 
2530
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:854
2531
  msgctxt "dhl"
2532
  msgid "Branches"
2533
  msgstr "Filialen"
2534
 
2535
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:870
2536
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:903
2537
  msgctxt "dhl"
2538
  msgid "DHL customer number (Post number)"
2539
  msgstr "DHL Kundennummer (Postnummer)"
2540
 
2541
  # @ woocommerce-germanized
2542
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:880
2543
  msgctxt "dhl"
2544
  msgid "Regular Address"
2545
  msgstr "Normale Adresse"
2546
 
2547
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:907
2548
  msgctxt "dhl"
2549
  msgid "Not yet a DHL customer?"
2550
  msgstr "Noch kein DHL Kunde?"
2551
 
2552
  # @ woocommerce-germanized
2553
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:907
2554
  msgctxt "dhl"
2555
  msgid "Register now"
2556
  msgstr "Jetzt registrieren"
2557
 
2558
  # @ woocommerce-germanized
2559
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:956
2560
  #, php-format
2561
  msgctxt "dhl"
2562
  msgid "Search %s"
2563
  msgstr "%s suchen"
2564
 
2565
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1061
2566
  msgctxt "dhl"
2567
  msgid "No DHL locations found"
2568
  msgstr "Keine DHL Standorte gefunden"
2569
 
2570
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2571
  #, php-format
2572
  msgctxt "dhl"
2573
  msgid ""
2578
  "einen %s oder %s."
2579
 
2580
  # @ woocommerce-germanized
2581
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2582
  msgctxt "dhl"
2583
  msgid "DHL location"
2584
  msgstr "DHL Standort"
2585
 
2586
+ #: woocommerce-germanized-dhl/src/ParcelLocator.php:1076
2587
  msgctxt "dhl"
2588
  msgid "retry"
2589
  msgstr "Erneut versuchen"
2611
  msgid "Please choose name and address of your preferred neighbor."
2612
  msgstr "Bitte wählen Sie einen Namen und die Adresse Ihres Wunschnachbars."
2613
 
2614
+ #: woocommerce-germanized-dhl/src/ReturnLabel.php:125
2615
  #: woocommerce-germanized-dhl/src/SimpleLabel.php:86
2616
  #, php-format
2617
  msgctxt "dhl full name"
4534
  msgid "Invalid packaging."
4535
  msgstr "Verpackung nicht verfügbar."
4536
 
4537
+ #: woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php:197
4538
  msgctxt "shipments"
4539
  msgid "Invalid shipment item."
4540
  msgstr "Ungültige Sendungsposition."
5374
 
5375
  # @ woocommerce-germanized
5376
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:122
5377
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:427
5378
  msgid "Downloadable Product"
5379
  msgstr "Herunterladbares Produkt"
5380
 
5381
  # @ woocommerce-germanized
5382
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:123
5383
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:428
5384
  msgid "Virtual Product"
5385
  msgstr "Virtuelles Produkt"
5386
 
5387
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-legal-checkboxes.php:124
5388
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:46
5389
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:168
5390
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:429
5391
  #: woocommerce-germanized/includes/class-wc-gzd-legal-checkbox-manager.php:146
5392
  msgid "Service"
5393
  msgstr "Dienstleistung"
5484
 
5485
  # @ woocommerce-germanized
5486
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-product-categories.php:82
5487
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:436
5488
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:532
5489
  msgid "None"
5490
  msgstr "Keine"
5491
 
5499
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:73
5500
  #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-setup-wizard.php:153
5501
  #: woocommerce-germanized/includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
5502
+ #: woocommerce-germanized/woocommerce-germanized.php:820
5503
  msgid "Settings"
5504
  msgstr "Einstellungen"
5505
 
5830
  # @ woocommerce-germanized
5831
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:90
5832
  #: woocommerce-germanized/includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php:217
5833
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:232
5834
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:264
5835
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/class-wc-gzd-elementor-widget-product-units.php:10
5836
  msgid "Product Units"
5837
  msgstr "Produkteinheiten"
6255
  msgid "Run the updater"
6256
  msgstr "Update starten"
6257
 
6258
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:185
6259
  msgid "Not now"
6260
  msgstr "Nicht jetzt"
6261
 
6262
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:189
6263
  msgctxt "woocommerce-germanized"
6264
  msgid "Deactivate"
6265
  msgstr "Deaktivieren"
6768
  # @ woocommerce-germanized
6769
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:30
6770
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:21
6771
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:37
6772
  msgid "General"
6773
  msgstr "Allgemein"
6774
 
6834
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-orders-controller.php:145
6835
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:553
6836
  #: woocommerce-germanized/includes/class-wc-gzd-checkout.php:566
6837
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:221
6838
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
6839
  msgid "Title"
6840
  msgstr "Anrede"
6841
 
7171
 
7172
  # @ woocommerce-germanized
7173
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:209
7174
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:371
7175
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-taxes.php:161
7176
  msgid "Notice Text"
7177
  msgstr "Hinweistext"
7468
  msgstr "Preisauszeichnung"
7469
 
7470
  # @ woocommerce-germanized
7471
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:38
7472
  msgid "Delivery times"
7473
  msgstr "Lieferzeiten"
7474
 
7475
  # @ woocommerce-germanized
7476
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:39
7477
  msgid "Unit prices"
7478
  msgstr "Grundpreise"
7479
 
7480
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:40
7481
  msgid "Price labels"
7482
  msgstr "Preishinweise"
7483
 
7484
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:48
7485
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:210
7486
  msgid "Widgets & Blocks"
7487
  msgstr "Widgets & Blöcke"
7488
 
7489
  # @ woocommerce-germanized
7490
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:49
7491
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:255
7492
  msgid "E-Mails"
7493
  msgstr "E-Mails"
7494
 
7495
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:68
7496
  msgid "Shopmark Display"
7497
  msgstr "Preisauszeichnung"
7498
 
7499
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:69
7500
  msgid ""
7501
  "By adjusting the display settings you might determine where to show or hide "
7502
  "your shopmarks e.g. the tax notice on single product pages."
7506
  "aktivieren oder deaktivieren."
7507
 
7508
  # @ woocommerce-germanized
7509
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:87
7510
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:330
7511
  msgid "Location"
7512
  msgstr "Ort"
7513
 
7514
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:88
7515
  msgid ""
7516
  "Adjust the location of the shopmark by selecting a location from the list. "
7517
  "Some Themes might apply the locations at different positions that's why the "
7522
  "an unterschiedlichen Stellen aus, sodass das Ergebnis u.U. von Theme zu "
7523
  "Theme abweichen kann."
7524
 
7525
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:101
7526
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:345
7527
  msgid "Priority"
7528
  msgstr "Priorität"
7529
 
7530
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:102
7531
  msgid ""
7532
  "Many different information may be attached to the location selected. By "
7533
  "adjusting the priority you can choose whether the shopmark gets applied "
7539
  "soll."
7540
 
7541
  # @ woocommerce-germanized
7542
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:120
7543
  #: woocommerce-germanized/includes/admin/views/html-page-status-germanized.php:50
7544
  msgid "Default Delivery Time"
7545
  msgstr "Standard-Lieferzeit"
7546
 
7547
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:121
7548
  msgid ""
7549
  "Choose a delivery time that serves as fallback in case no delivery time was "
7550
  "added to the product."
7552
  "Wählen Sie eine Lieferzeit, die verwendet wird, wenn dem Produkt keine "
7553
  "Lieferzeit zugeordnet wurde."
7554
 
7555
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:134
7556
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:458
7557
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:505
7558
  msgid "Format"
7559
  msgstr "Format"
7560
 
7561
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:135
7562
  msgid ""
7563
  "You may want to adjust the delivery time output format. You might use "
7564
  "{delivery_time} to output the current product's delivery time."
7567
  "Platzhalter zur Ausgabe der Lieferzeit des Produktes."
7568
 
7569
  # @ woocommerce-germanized
7570
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:153
7571
  msgid "Default Sale Label"
7572
  msgstr "Standard-Streichpreis"
7573
 
7574
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:154
7575
  msgid ""
7576
  "Price labels are added to sale products to inform the customers of the "
7577
  "different prices' meaning. You may add a fallback label in case a product "
7582
  "Standard-Hinweise, um sicherzustellen, dass für Produkte ohne abweichenden "
7583
  "Hinweis im Zweifel der Standard-Hinweis verwendet wird."
7584
 
7585
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:195
7586
  msgid "Adjust Product Widgets & Blocks visibility options."
7587
  msgstr "Passen Sie die Anzeige in Widgets & Blöcken an."
7588
 
7589
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:199
7590
  #, php-format
7591
  msgid ""
7592
  "Adjust %s visibility options and choose which shopmarks to be displayed at "
7596
  "aus welche Auszeichnungen an welchen Orten angezeigt werden sollen."
7597
 
7598
  # @ woocommerce-germanized
7599
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:211
7600
  msgid "Shipping Costs notice"
7601
  msgstr "Versandkosten-Hinweis"
7602
 
7603
  # @ woocommerce-germanized
7604
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:218
7605
  msgid "Tax Info"
7606
  msgstr "MwSt. Hinweis"
7607
 
7608
  # @ woocommerce-germanized
7609
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:225
7610
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:256
7611
  msgid "Base Price"
7612
  msgstr "Grundpreis"
7613
 
7614
  # @ woocommerce-germanized
7615
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:239
7616
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:272
7617
  msgid "Delivery Time Notice"
7618
  msgstr "Lieferzeiten-Hinweis"
7619
 
7620
  # @ woocommerce-germanized
7621
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:280
7622
  msgid "Short Description"
7623
  msgstr "Warenkorbkurzbeschreibung"
7624
 
7625
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:303
7626
  #, php-format
7627
  msgid "Show %s shopmark"
7628
  msgstr "Preisauszeichnung „%s“ anzeigen"
7629
 
7630
  # @ woocommerce-germanized
7631
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:311
7632
  msgid "Tax"
7633
  msgstr "Steuer"
7634
 
7635
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:312
7636
  msgid "Show Tax shopmark"
7637
  msgstr "Preisauszeichnung „Steuer“ anzeigen"
7638
 
7639
  # @ woocommerce-germanized
7640
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:320
7641
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:365
7642
  #: woocommerce-germanized/includes/wc-gzd-core-functions.php:248
7643
  msgid "Shipping Costs"
7644
  msgstr "Versandkosten"
7645
 
7646
  # @ woocommerce-germanized
7647
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:321
7648
  msgid "Show Shipping Costs shopmark"
7649
  msgstr "Preisauszeichnung „Versandkosten“ anzeigen"
7650
 
7651
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:331
7652
  msgid ""
7653
  "Choose a location for the shopmark. Locations are mapped to specific "
7654
  "WooCommerce hooks and may differ from Theme to Theme."
7657
  "WooCommerce an bestimmte Hooks gebunden und können sich von Theme zu Theme "
7658
  "unterscheiden."
7659
 
7660
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:346
7661
  #, php-format
7662
  msgid ""
7663
  "Choose a priority by which the shopmark should be attached to the location. "
7669
  "Preisauszeichnung hinzugefügt. Standard ist %d."
7670
 
7671
  # @ woocommerce-germanized
7672
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:372
7673
  msgid ""
7674
  "This text will be used to inform the customer about shipping costs. Use "
7675
  "{link}{/link} to insert link to shipping costs page."
7679
  "Link zur Versandkosten-Seite einzufügen."
7680
 
7681
  # @ woocommerce-germanized
7682
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:377
7683
  msgid "plus {link}Shipping Costs{/link}"
7684
  msgstr "zzgl. {link}Versandkosten{/link}"
7685
 
7686
  # @ woocommerce-germanized
7687
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:380
7688
  msgid "Free Shipping Text"
7689
  msgstr "Kostenloser Versand Text"
7690
 
7691
  # @ woocommerce-germanized
7692
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:381
7693
  msgid ""
7694
  "This text will be used to inform the customer about free shipping. Leave "
7695
  "empty to disable notice. Use {link}{/link} to insert link to shipping costs "
7700
  "zur Versandkosten-Seite einzufügen."
7701
 
7702
  # @ woocommerce-germanized
7703
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:389
7704
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:487
7705
  msgid "Hide Notice"
7706
  msgstr "Hinweis ausblenden"
7707
 
7708
  # @ woocommerce-germanized
7709
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:390
7710
  msgid ""
7711
  "Select product types for which you might want to disable the shipping costs "
7712
  "notice."
7715
  "ausblenden möchten."
7716
 
7717
  # @ woocommerce-germanized
7718
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:400
7719
  msgid "Footer"
7720
  msgstr "Footer"
7721
 
7722
  # @ woocommerce-germanized
7723
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:403
7724
  msgid "Notice"
7725
  msgstr "Hinweis"
7726
 
7727
  # @ woocommerce-germanized
7728
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:404
7729
  msgid "Attach a global VAT notice to your footer."
7730
  msgstr "Einen seitenübergreifenden MwSt.-Hinweis im Footer einfügen."
7731
 
7732
  # @ woocommerce-germanized
7733
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:411
7734
  msgid "Attach a global sale price notice to your footer."
7735
  msgstr ""
7736
  "Einen seitenübergreifenden Hinweis zu reduzierten Preisen im Footer einfügen."
7737
 
7738
  # @ woocommerce-germanized
7739
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:447
7740
  msgid "Fallback"
7741
  msgstr "Fallback"
7742
 
7743
  # @ woocommerce-germanized
7744
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:448
7745
  msgid ""
7746
  "This delivery time will be added to every product if no delivery time has "
7747
  "been chosen individually"
7750
  "zugeordnet wurde"
7751
 
7752
  # @ woocommerce-germanized
7753
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:455
7754
  msgid "Manage Delivery Times"
7755
  msgstr "Lieferzeiten verwalten"
7756
 
7757
  # @ woocommerce-germanized
7758
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:459
7759
  msgid ""
7760
  "This text will be used to indicate delivery time for products. Use "
7761
  "{delivery_time} as placeholder."
7764
  "{delivery_time} als Platzhalter verwenden."
7765
 
7766
  # @ woocommerce-germanized
7767
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:463
7768
  msgid "Delivery time: {delivery_time}"
7769
  msgstr "Lieferzeit: {delivery_time}"
7770
 
7771
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:466
7772
  msgid "Digital text"
7773
  msgstr "Digitaler Text"
7774
 
7775
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:470
7776
  msgid ""
7777
  "Enter a text which will be shown as digital delivery time text (replacement "
7778
  "for default digital time on digital products)."
7782
  "einfach leer lassen."
7783
 
7784
  # @ woocommerce
7785
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:473
7786
  msgid "Backorder"
7787
  msgstr "Lieferrückstand"
7788
 
7789
  # @ woocommerce-germanized
7790
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:474
7791
  msgid "Hide delivery time if a product is on backorder."
7792
  msgstr "Lieferzeit ausblenden falls das Produkt im Lieferrückstand ist."
7793
 
7794
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:480
7795
  msgid "Not in Stock"
7796
  msgstr "Nicht auf Lager"
7797
 
7798
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:481
7799
  msgid "Hide delivery time if a product is not in stock."
7800
  msgstr "Lieferzeit ausblenden falls das Produkt nicht auf Lager ist."
7801
 
7802
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:488
7803
  msgid ""
7804
  "Select product types for which you might want to disable the delivery time "
7805
  "notice."
7808
  "deaktivieren möchten."
7809
 
7810
  # @ woocommerce-germanized
7811
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:506
7812
  msgid ""
7813
  "This text will be used to display the base price. Use {price} to insert the "
7814
  "price. If you want to specifically format base price output use {base}, "
7820
  "{unit} und {base_price} für die einzelnen Elemente."
7821
 
7822
  # @ woocommerce-germanized
7823
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:510
7824
  msgid "{price}"
7825
  msgstr "{price}"
7826
 
7827
  # @ woocommerce-germanized
7828
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:513
7829
  msgid "Variable Price"
7830
  msgstr "Variabler Preis"
7831
 
7832
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:514
7833
  msgid "Enable price range base prices for variable products."
7834
  msgstr "Aktiviert von-bis-Grundpreise für variable Produkte."
7835
 
7836
  # @ woocommerce-germanized
7837
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:520
7838
  msgid "Product units format"
7839
  msgstr "Produkteinheiten Format"
7840
 
7841
  # @ woocommerce-germanized
7842
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:521
7843
  msgid ""
7844
  "This text will be used to display the product units. Use {product_units} to "
7845
  "insert the amount of product units. Use {unit} to insert the unit. "
7851
  "formatierten Grundpreis."
7852
 
7853
  # @ woocommerce-germanized
7854
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:525
7855
  msgid "Product contains: {product_units} {unit}"
7856
  msgstr "Produkt enthält: {product_units} {unit}"
7857
 
7858
  # @ woocommerce-germanized
7859
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:537
7860
  msgid "Fallback Sale Label"
7861
  msgstr "Standard-Streichpreis-Hinweis"
7862
 
7863
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:544
7864
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7865
  msgid "Manage Price Labels"
7866
  msgstr "Preishinweise verwalten"
7867
 
7868
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:544
7869
  msgid ""
7870
  "Choose whether you would like to have a default sale price label to inform "
7871
  "the customer about the regular price (e.g. Recommended Retail Price)."
7874
  "Sie den Kunden auf den alten Preis (bei reduzierten Produkten, sog. "
7875
  "Streichpreis) hinweisen (z.B. UVP)."
7876
 
7877
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:547
7878
  msgid "Fallback Regular Label"
7879
  msgstr "Standard-Angebotspreis"
7880
 
7881
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:554
7882
  msgid ""
7883
  "Choose whether you would like to have a default sale price regular label to "
7884
  "inform the customer about the sale price (e.g. New Price)."
7888
  "Angebotspreis) hinweisen (z.B. Unser neuer Preis)."
7889
 
7890
  # @ woocommerce-germanized
7891
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:558
7892
  #: woocommerce-germanized/src/Shopmarks.php:294
7893
  msgid "Single Product"
7894
  msgstr "Produktdetailseite"
7895
 
7896
  # @ woocommerce-germanized
7897
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:559
7898
  msgid "Show price labels on single product page."
7899
  msgstr "Zeige Preishinweise auf der Produktdetailseite."
7900
 
7901
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:566
7902
  msgid "Loop"
7903
  msgstr "Produktlisten"
7904
 
7905
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-shopmarks.php:567
7906
  msgid "Show price labels in product loops."
7907
  msgstr "Zeige Preishinweise in Produktlisten."
7908
 
8849
  msgstr "%s [neu]"
8850
 
8851
  # @ woocommerce-germanized
8852
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:269
8853
  msgctxt "revocation-form"
8854
  msgid "is not a valid email address."
8855
  msgstr "ist leider keine valide E-Mail Adresse."
8856
 
8857
  # @ woocommerce-germanized
8858
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:273
8859
  msgctxt "revocation-form"
8860
  msgid "Please enter a valid postcode/ZIP"
8861
  msgstr "Bitte geben Sie eine echte Postleitzahl ein"
8862
 
8863
  # @ woocommerce-germanized
8864
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:281
8865
  msgctxt "revocation-form"
8866
  msgid "is not valid."
8867
  msgstr "ist leider nicht korrekt."
8868
 
8869
  # @ woocommerce-germanized
8870
+ #: woocommerce-germanized/includes/class-wc-gzd-ajax.php:302
8871
  msgctxt "revocation-form"
8872
  msgid ""
8873
  "Thank you. We have received your Revocation Request. You will receive a "
8921
  "besteuert. Weitere Informationen finden Sie <a href=\"%s\" target=\"_blank"
8922
  "\">hier</a>."
8923
 
8924
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:147
8925
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:208
8926
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:319
8927
  msgid ""
8928
  "Please activate your account through clicking on the activation link "
8929
  "received via email."
8931
  "Bitte aktivieren Sie Ihr Kundenkonto indem Sie auf den Link in der E-Mail "
8932
  "klicken."
8933
 
8934
+ # @ woocommerce-germanized
8935
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:154
8936
+ #, php-format
8937
+ msgid "Did not receive the activation email? <a href=\"%s\">Try again</a>."
8938
+ msgstr ""
8939
+ "Keine Aktivierungs-E-Mail erhalten? <a href=\"%s\">Erneut zusenden</a>."
8940
+
8941
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:329
8942
  #, php-format
8943
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8944
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8945
 
8946
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:331
8947
  msgid "Please create an account or login before continuing to checkout"
8948
  msgstr ""
8949
  "Bitte erstellen Sie ein Kundenkonto oder loggen Sie sich ein, bevor Sie zur "
8950
  "Kasse gehen"
8951
 
8952
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:439
8953
+ #, php-format
8954
+ msgid ""
8955
+ "Please activate your account through clicking on the activation link "
8956
+ "received via email. Did not receive the email? <a href=\"%s\">Try again</a>."
8957
+ msgstr ""
8958
+ "Bitte aktivieren Sie Ihr Kundenkonto indem Sie auf den Link in der E-Mail "
8959
+ "klicken. Keine E-Mail erhalten? <a href=\"%s\">Erneut zusenden</a>."
8960
+
8961
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:471
8962
  msgid ""
8963
  "This activation code has expired. We have sent you a new activation code via "
8964
  "e-mail."
8967
  "Code per E-Mail geschickt."
8968
 
8969
  # @ woocommerce-germanized
8970
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:473
8971
  msgid "Sorry, but this activation code cannot be found."
8972
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8973
 
8974
  # @ woocommerce-germanized
8975
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:477
8976
  msgid "Thank you. You have successfully activated your account."
8977
  msgstr "Vielen Dank. Ihr Benutzerkonto wurde erfolgreich aktiviert."
8978
 
8979
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:657
8980
  msgid "Expired activation key"
8981
  msgstr "Abgelaufener Aktivierungscode"
8982
 
8983
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:662
8984
  msgid "Invalid activation key"
8985
  msgstr "Aktivierungscode ungültig"
8986
 
8987
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:191
8988
  msgid "BCC recipients"
8989
  msgstr "BCC Empfänger"
8990
 
8991
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:193
8992
  msgid "Enter blind-copy recipients (comma separated) for this email."
8993
  msgstr ""
8994
  "Fügen Sie Empfänger (kommasepariert) einer Blindkopie für diese E-Mail ein."
8995
 
8996
  # @ woocommerce-germanized
8997
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:232
8998
  msgid "Confirmation text"
8999
  msgstr "Bestätigung Text"
9000
 
9001
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:233
9002
  msgid ""
9003
  "Your order has been received and is now being processed. Your order details "
9004
  "are shown below for your reference:"
9007
  "Ihrer Bestellung können Sie der nachfolgenden Tabelle entnehmen:"
9008
 
9009
  # @ woocommerce-germanized
9010
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:234
9011
  msgid ""
9012
  "This text will be inserted within the order confirmation email. Use "
9013
  "{order_number}, {site_title} or {order_date} as placeholder."
9015
  "Dieser Text wird in die Bestellbestätigung eingefügt. Verwenden Sie "
9016
  "{order_number}, {site_title} oder {order_date} als Platzhalter."
9017
 
9018
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:352
9019
  msgid ""
9020
  "Your order has been received and is now being processed. Your order details "
9021
  "are shown below for your reference."
9023
  "Ihre Bestellung ist eingegangen und wird nun bearbeitet. Die Einzelheiten "
9024
  "Ihrer Bestellung können Sie der nachfolgenden Tabelle entnehmen."
9025
 
9026
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:400
9027
  msgid "Someone requested a password reset for your account."
9028
  msgstr "Jemand hat das Zurücksetzen des Passworts für Ihren Account beantragt."
9029
 
9030
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:415
9031
  #, php-format
9032
  msgid "Thanks for creating an account on %s."
9033
  msgstr "Danke, dass Sie ein Konto bei %s erstellt haben."
9034
 
9035
  # @ woocommerce-germanized
9036
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1130
9037
  msgctxt "revocation-form"
9038
  msgid "Forward your Revocation online"
9039
  msgstr "Widerruf online erklären"
10968
  "unserem <a href=\"%s\" target=\"_blank\">Blog-Post</a> wie Sie das Plugin "
10969
  "austauschen können."
10970
 
10971
+ #: woocommerce-germanized/woocommerce-germanized.php:1012
10972
  msgid "Pease wait while we are trying to redirect you to the payment provider."
10973
  msgstr "Einen Moment - wir versuchen Sie zum Zahlungsanbieter weiterzuleiten."
10974
 
includes/class-wc-gzd-ajax.php CHANGED
@@ -191,6 +191,18 @@ class WC_GZD_AJAX {
191
  wp_send_json( $terms );
192
  }
193
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  public static function gzd_refresh_unit_price() {
195
  check_ajax_referer( 'wc-gzd-refresh-unit-price', 'security' );
196
 
@@ -206,6 +218,18 @@ class WC_GZD_AJAX {
206
  wp_send_json( array( 'result' => 'failure' ) );
207
  }
208
 
 
 
 
 
 
 
 
 
 
 
 
 
209
  $args = array(
210
  'regular_price' => $price,
211
  'sale_price' => ! empty( $price_sale ) ? $price_sale : $price,
191
  wp_send_json( $terms );
192
  }
193
 
194
+ /**
195
+ * @param $price
196
+ * @param WC_Product $product
197
+ */
198
+ protected static function get_price_excluding_tax( $price, $product ) {
199
+ $tax_rates = WC_Tax::get_rates( $product->get_tax_class() );
200
+ $remove_taxes = WC_Tax::calc_tax( $price, $tax_rates, true );
201
+ $price = $price - array_sum( $remove_taxes ); // Unrounded since we're dealing with tax inclusive prices. Matches logic in cart-totals class. @see adjust_non_base_location_price.
202
+
203
+ return $price;
204
+ }
205
+
206
  public static function gzd_refresh_unit_price() {
207
  check_ajax_referer( 'wc-gzd-refresh-unit-price', 'security' );
208
 
218
  wp_send_json( array( 'result' => 'failure' ) );
219
  }
220
 
221
+ /**
222
+ * In case net prices are used and prices are being shown including tax
223
+ * we will need to manually remove taxes from price before recalculating the unit price.
224
+ */
225
+ if ( wc_tax_enabled() && ! wc_prices_include_tax() && 'incl' === get_option( 'woocommerce_tax_display_shop' ) ) {
226
+ $price = self::get_price_excluding_tax( $price, $product->get_wc_product() );
227
+
228
+ if ( ! empty( $price_sale ) ) {
229
+ $price_sale = self::get_price_excluding_tax( $price_sale, $product->get_wc_product() );
230
+ }
231
+ }
232
+
233
  $args = array(
234
  'regular_price' => $price,
235
  'sale_price' => ! empty( $price_sale ) ? $price_sale : $price,
includes/class-wc-gzd-customer-helper.php CHANGED
@@ -47,6 +47,9 @@ class WC_GZD_Customer_Helper {
47
  // Check for customer activation
48
  add_action( 'template_redirect', array( $this, 'customer_account_activation_check' ) );
49
 
 
 
 
50
  // Cronjob to delete unactivated users
51
  add_action( 'woocommerce_gzd_customer_cleanup', array( $this, 'account_cleanup' ) );
52
 
@@ -84,10 +87,81 @@ class WC_GZD_Customer_Helper {
84
 
85
  // WC Social Login comp
86
  add_filter( 'wc_social_login_set_auth_cookie', array( $this, 'social_login_activation_check' ), 10, 2 );
 
 
 
87
  }
88
  }
89
  }
90
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  public function is_customer_title_enabled() {
92
  return 'yes' === get_option( 'woocommerce_gzd_checkout_address_field' );
93
  }
@@ -362,7 +436,7 @@ class WC_GZD_Customer_Helper {
362
 
363
  // Has not been activated yet
364
  if ( $this->enable_double_opt_in_for_user( $user ) && ! wc_gzd_is_customer_activated( $user->ID ) ) {
365
- return new WP_Error( 'woocommerce_gzd_login', __( 'Please activate your account through clicking on the activation link received via email.', 'woocommerce-germanized' ) );
366
  }
367
 
368
  return $user;
@@ -578,14 +652,7 @@ class WC_GZD_Customer_Helper {
578
  */
579
  do_action( 'woocommerce_gzd_customer_activation_expired', $user );
580
 
581
- delete_user_meta( $user->ID, '_woocommerce_activation' );
582
- $activation_code = $this->get_customer_activation_meta( $user->ID, true );
583
-
584
- $user_activation_url = $this->get_customer_activation_url( $activation_code );
585
-
586
- if ( $email = WC_germanized()->emails->get_email_instance_by_id( 'customer_new_account_activation' ) ) {
587
- $email->trigger( $user->ID, $activation_code, $user_activation_url );
588
- }
589
 
590
  return new WP_Error( 'expired_key', __( 'Expired activation key', 'woocommerce-germanized' ) );
591
  }
@@ -595,6 +662,36 @@ class WC_GZD_Customer_Helper {
595
  return new WP_Error( 'invalid_key', __( 'Invalid activation key', 'woocommerce-germanized' ) );
596
  }
597
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
598
  public function email_hooks( $mailer ) {
599
  // Add new customer activation
600
  if ( $this->is_double_opt_in_enabled() ) {
47
  // Check for customer activation
48
  add_action( 'template_redirect', array( $this, 'customer_account_activation_check' ) );
49
 
50
+ // Maybe allow resending the activation notification
51
+ add_action( 'template_redirect', array( $this, 'resend_activation_check' ) );
52
+
53
  // Cronjob to delete unactivated users
54
  add_action( 'woocommerce_gzd_customer_cleanup', array( $this, 'account_cleanup' ) );
55
 
87
 
88
  // WC Social Login comp
89
  add_filter( 'wc_social_login_set_auth_cookie', array( $this, 'social_login_activation_check' ), 10, 2 );
90
+ } else {
91
+ // Add user notice in case the account has not yet been activated
92
+ add_action( 'template_redirect', array( $this, 'maybe_add_activation_notice' ), 30 );
93
  }
94
  }
95
  }
96
 
97
+ public function resend_activation_check() {
98
+ if ( is_account_page() ) {
99
+ if (
100
+ isset( $_GET['action'], $_GET['_wpnonce'] ) &&
101
+ 'wc-gzd-resend-activation' === $_GET['action'] &&
102
+ wp_verify_nonce( $_GET['_wpnonce'], 'wc-gzd-resend-activation' )
103
+ ) {
104
+ $user_mail = isset( $_GET['mail'] ) ? sanitize_email( wp_unslash( $_GET['mail'] ) ) : '';
105
+ $user_id = false;
106
+
107
+ if ( ! empty( $user_mail ) ) {
108
+ $user = get_user_by( 'email', $user_mail );
109
+
110
+ if ( $user ) {
111
+ $user_id = $user->ID;
112
+ }
113
+ } else {
114
+ $user_id = get_current_user_id();
115
+ }
116
+
117
+ if ( ! $user_id || ( ! $user = get_user_by( 'ID', $user_id ) ) || wc_gzd_is_customer_activated( $user_id ) || ! $this->enable_double_opt_in_for_user( $user_id ) ) {
118
+ return;
119
+ }
120
+
121
+ $time_sent = get_user_meta( $user_id, '_gzd_activation_email_sent', true );
122
+ $time_sent = empty( $time_sent ) ? 0 : absint( $time_sent );
123
+
124
+ if ( ! $time_sent || $time_sent <= 5 ) {
125
+ /**
126
+ * Do only allow the user to (re)send the activation mail for 5 times.
127
+ */
128
+ update_user_meta( $user_id, '_gzd_activation_email_sent', ( $time_sent + 1 ) );
129
+
130
+ $this->resend_customer_activation_email( $user_id, true );
131
+
132
+ $url = add_query_arg( array( 'wc-gzd-resent' => 'yes' ) );
133
+ $url = remove_query_arg( array( 'action', '_wpnonce' ), $url );
134
+
135
+ /**
136
+ * Filters the URL after resending the DOI activation email.
137
+ *
138
+ * @param string $url The URL to redirect to.
139
+ * @param integer $user_id The user id.
140
+ *
141
+ * @since 3.3.2
142
+ */
143
+ wp_safe_redirect( apply_filters( 'woocommerce_gzd_double_opt_resent_activation_redirect', $url, $user_id ) );
144
+ exit();
145
+ }
146
+ } elseif( isset( $_GET['wc-gzd-resent'] ) ) {
147
+ wc_add_notice( __( 'Please activate your account through clicking on the activation link received via email.', 'woocommerce-germanized' ), 'notice' );
148
+ }
149
+ }
150
+ }
151
+
152
+ public function maybe_add_activation_notice() {
153
+ if ( is_user_logged_in() && ! is_cart() && ! is_checkout() && ! wc_gzd_is_customer_activated() && ! isset( $_GET['wc-gzd-resent'] ) ) {
154
+ wc_add_notice( sprintf( __( 'Did not receive the activation email? <a href="%s">Try again</a>.', 'woocommerce-germanized' ), $this->get_resend_activation_url() ), 'notice' );
155
+ }
156
+ }
157
+
158
+ protected function get_resend_activation_url( $user_mail = '' ) {
159
+ $url = add_query_arg( array( 'action' => 'wc-gzd-resend-activation', 'mail' => $user_mail ), wc_gzd_get_page_permalink( 'myaccount' ) );
160
+ $url = wp_nonce_url( $url, 'wc-gzd-resend-activation' );
161
+
162
+ return $url;
163
+ }
164
+
165
  public function is_customer_title_enabled() {
166
  return 'yes' === get_option( 'woocommerce_gzd_checkout_address_field' );
167
  }
436
 
437
  // Has not been activated yet
438
  if ( $this->enable_double_opt_in_for_user( $user ) && ! wc_gzd_is_customer_activated( $user->ID ) ) {
439
+ return new WP_Error( 'woocommerce_gzd_login', sprintf( __( 'Please activate your account through clicking on the activation link received via email. Did not receive the email? <a href="%s">Try again</a>.', 'woocommerce-germanized' ), $this->get_resend_activation_url( $user->user_email ) ) );
440
  }
441
 
442
  return $user;
652
  */
653
  do_action( 'woocommerce_gzd_customer_activation_expired', $user );
654
 
655
+ $this->resend_customer_activation_email( $user->ID );
 
 
 
 
 
 
 
656
 
657
  return new WP_Error( 'expired_key', __( 'Expired activation key', 'woocommerce-germanized' ) );
658
  }
662
  return new WP_Error( 'invalid_key', __( 'Invalid activation key', 'woocommerce-germanized' ) );
663
  }
664
 
665
+ protected function resend_customer_activation_email( $user_id, $maybe_generate_new_password = false ) {
666
+ if ( wc_gzd_is_customer_activated( $user_id ) || ! $this->enable_double_opt_in_for_user( $user_id ) ) {
667
+ return false;
668
+ }
669
+
670
+ $password = '';
671
+ $password_generated = false;
672
+
673
+ /**
674
+ * Maybe generate a new password for the user (which has not logged in yet).
675
+ */
676
+ if ( $maybe_generate_new_password && $this->is_double_opt_in_login_enabled() && 'yes' === get_option( 'woocommerce_registration_generate_password' ) ) {
677
+ $password = wp_generate_password();
678
+ $password_generated = true;
679
+ }
680
+
681
+ delete_user_meta( $user_id, '_woocommerce_activation' );
682
+ $activation_code = $this->get_customer_activation_meta( $user_id, true );
683
+
684
+ $user_activation_url = $this->get_customer_activation_url( $activation_code );
685
+
686
+ if ( $email = WC_germanized()->emails->get_email_instance_by_id( 'customer_new_account_activation' ) ) {
687
+ $email->trigger( $user_id, $activation_code, $user_activation_url, $password, $password_generated );
688
+
689
+ return true;
690
+ }
691
+
692
+ return false;
693
+ }
694
+
695
  public function email_hooks( $mailer ) {
696
  // Add new customer activation
697
  if ( $this->is_double_opt_in_enabled() ) {
includes/class-wc-gzd-order-helper.php CHANGED
@@ -348,10 +348,24 @@ class WC_GZD_Order_Helper {
348
  'contains' => array( $base_rate ),
349
  'amount' => $order->get_total_tax(),
350
  );
 
 
 
 
 
 
 
351
  }
352
 
353
  if ( ! empty( $tax_array ) ) {
354
  foreach ( $tax_array as $tax ) {
 
 
 
 
 
 
 
355
  $order_totals[ 'tax_' . WC_Tax::get_rate_code( $tax['tax']->rate_id ) ] = array(
356
  'label' => wc_gzd_get_tax_rate_label( $tax['tax']->rate ),
357
  'value' => wc_price( $tax['amount'], array( 'currency' => $order->get_currency() ) ),
348
  'contains' => array( $base_rate ),
349
  'amount' => $order->get_total_tax(),
350
  );
351
+
352
+ /**
353
+ * Make sure no zero taxes are added for small businesses
354
+ */
355
+ if ( wc_gzd_is_small_business() && $order->get_total_tax() <= 0 ) {
356
+ $tax_array = array();
357
+ }
358
  }
359
 
360
  if ( ! empty( $tax_array ) ) {
361
  foreach ( $tax_array as $tax ) {
362
+ /**
363
+ * Hide zero taxes
364
+ */
365
+ if ( apply_filters( 'woocommerce_order_hide_zero_taxes', true ) && $tax['amount'] <= 0 ) {
366
+ continue;
367
+ }
368
+
369
  $order_totals[ 'tax_' . WC_Tax::get_rate_code( $tax['tax']->rate_id ) ] = array(
370
  'label' => wc_gzd_get_tax_rate_label( $tax['tax']->rate ),
371
  'value' => wc_price( $tax['amount'], array( 'currency' => $order->get_currency() ) ),
packages/woocommerce-germanized-dhl/includes/admin/views/html-shipment-deutsche-post-label-backbone-form.php CHANGED
@@ -10,11 +10,17 @@ use Vendidero\Germanized\DHL\Package;
10
 
11
  $default_args = wc_gzd_dhl_get_deutsche_post_label_default_args( $dhl_order, $shipment );
12
  $im_products = wc_gzd_dhl_get_deutsche_post_products( $shipment );
13
- $selected_product = isset( $default_args['dhl_product'] ) ? $default_args['dhl_product'] : array_key_first( $im_products );
 
 
14
  $selected_product_id = 0;
15
  $is_wp_int = false;
 
16
 
17
  if ( ! empty( $selected_product ) ) {
 
 
 
18
  $is_wp_int = Package::get_internetmarke_api()->is_warenpost_international( $selected_product );
19
  $selected_product_id = Package::get_internetmarke_api()->get_product_id( $selected_product );
20
  }
@@ -42,9 +48,7 @@ if ( ! empty( $selected_product ) ) {
42
 
43
  <div class="wc-gzd-shipment-im-additional-services">
44
  <?php
45
- $product_id = $selected_product_id;
46
- $selected_services = isset( $default_args['additional_services'] ) ? $default_args['additional_services'] : array();
47
-
48
  include( Package::get_path() . '/includes/admin/views/html-deutsche-post-additional-services.php' );
49
  ?>
50
  </div>
10
 
11
  $default_args = wc_gzd_dhl_get_deutsche_post_label_default_args( $dhl_order, $shipment );
12
  $im_products = wc_gzd_dhl_get_deutsche_post_products( $shipment );
13
+ $im_all_products = wc_gzd_dhl_get_deutsche_post_products( $shipment, false );
14
+ $default_product = isset( $default_args['dhl_product'] ) ? $default_args['dhl_product'] : array_keys( $im_all_products )[0];
15
+ $selected_product = isset( $im_all_products[ $default_product ] ) ? $default_product : array_keys( $im_all_products )[0];
16
  $selected_product_id = 0;
17
  $is_wp_int = false;
18
+ $selected_services = array();
19
 
20
  if ( ! empty( $selected_product ) ) {
21
+ $selected_services = Package::get_internetmarke_api()->get_product_services( $selected_product );
22
+ $selected_product = Package::get_internetmarke_api()->get_product_parent_code( $selected_product );
23
+
24
  $is_wp_int = Package::get_internetmarke_api()->is_warenpost_international( $selected_product );
25
  $selected_product_id = Package::get_internetmarke_api()->get_product_id( $selected_product );
26
  }
48
 
49
  <div class="wc-gzd-shipment-im-additional-services">
50
  <?php
51
+ $product_id = $selected_product_id;
 
 
52
  include( Package::get_path() . '/includes/admin/views/html-deutsche-post-additional-services.php' );
53
  ?>
54
  </div>
packages/woocommerce-germanized-dhl/includes/wc-gzd-dhl-core-functions.php CHANGED
@@ -42,16 +42,18 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
42
  $item_description = '';
43
  $total_weight = $label->get_weight();
44
  $item_weights = array();
 
45
 
46
- foreach ( $shipment->get_items() as $key => $item ) {
47
- $per_item_weight = wc_format_decimal( floatval( wc_get_weight( $item->get_weight(), 'kg', $shipment->get_weight_unit() ) ), 2 );
 
48
 
49
  /**
50
  * Set min weight to 0.01 to prevent missing weight error messages
51
  * for really small product weights.
52
  */
53
- if ( $per_item_weight <= 0 ) {
54
- $per_item_weight = '0.01';
55
  }
56
 
57
  $item_weights[ $key ] = $per_item_weight;
@@ -75,6 +77,9 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
75
 
76
  if ( abs( $per_item_diff_rounded ) > 0 ) {
77
  foreach( $item_weights as $key => $weight ) {
 
 
 
78
  $item_weight_before = $item_weights[ $key ];
79
  $new_item_weight = $item_weights[ $key ] += $per_item_diff_rounded;
80
  $item_diff_applied = $per_item_diff;
@@ -83,9 +88,9 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
83
  * In case the diff is negative make sure we are not
84
  * subtracting more than available as min weight per item.
85
  */
86
- if ( $new_item_weight <= 0.01 ) {
87
- $new_item_weight = 0.01;
88
- $item_diff_applied = 0.01 - $item_weight_before;
89
  }
90
 
91
  $item_weights[ $key ] = $new_item_weight;
@@ -97,6 +102,9 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
97
 
98
  if ( abs( $diff_left ) > 0 ) {
99
  foreach( $item_weights as $key => $weight ) {
 
 
 
100
  if ( $diff_left > 0 ) {
101
  /**
102
  * Add the diff left to the first item and stop.
@@ -107,7 +115,7 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
107
  /**
108
  * Remove the diff left from the first item with a weight greater than 0.01 to prevent 0 weights.
109
  */
110
- if ( $weight > 0.01 ) {
111
  $item_weights[ $key ] += $diff_left;
112
  break;
113
  }
@@ -134,7 +142,10 @@ function wc_gzd_dhl_get_shipment_customs_data( $label ) {
134
  'countryCodeOrigin' => ( $dhl_product && $dhl_product->get_manufacture_country() ) ? $dhl_product->get_manufacture_country() : Package::get_base_country(),
135
  'customsTariffNumber' => $dhl_product ? $dhl_product->get_hs_code() : '',
136
  'amount' => intval( $item->get_quantity() ),
137
- 'netWeightInKG' => wc_format_decimal( $item_weights[ $key ], 2 ),
 
 
 
138
  'customsValue' => wc_format_decimal( $product_total, 2 )
139
  );
140
 
@@ -991,16 +1002,30 @@ function wc_gzd_dhl_get_deutsche_post_products_domestic( $shipment = false, $par
991
  }
992
 
993
  function wc_gzd_dhl_im_get_product_list( $products, $parent_only = true ) {
994
- $list = array();
 
995
 
996
  foreach( $products as $product ) {
997
  if ( $parent_only && $product->product_parent_id > 0 ) {
 
998
  continue;
999
  }
1000
 
1001
  $list[ $product->product_code ] = wc_gzd_dhl_get_im_product_title( $product->product_name );
1002
  }
1003
 
 
 
 
 
 
 
 
 
 
 
 
 
1004
  return $list;
1005
  }
1006
 
42
  $item_description = '';
43
  $total_weight = $label->get_weight();
44
  $item_weights = array();
45
+ $shipment_items = $shipment->get_items();
46
 
47
+ foreach ( $shipment_items as $key => $item ) {
48
+ $per_item_weight = wc_format_decimal( floatval( wc_get_weight( $item->get_weight(), 'kg', $shipment->get_weight_unit() ) ), 2 );
49
+ $per_item_min_weight = 0.01 * $item->get_quantity();
50
 
51
  /**
52
  * Set min weight to 0.01 to prevent missing weight error messages
53
  * for really small product weights.
54
  */
55
+ if ( $per_item_weight < $per_item_min_weight ) {
56
+ $per_item_weight = $per_item_min_weight;
57
  }
58
 
59
  $item_weights[ $key ] = $per_item_weight;
77
 
78
  if ( abs( $per_item_diff_rounded ) > 0 ) {
79
  foreach( $item_weights as $key => $weight ) {
80
+ $shipment_item = $shipment_items[ $key ];
81
+ $item_min_weight = 0.01 * $shipment_item->get_quantity();
82
+
83
  $item_weight_before = $item_weights[ $key ];
84
  $new_item_weight = $item_weights[ $key ] += $per_item_diff_rounded;
85
  $item_diff_applied = $per_item_diff;
88
  * In case the diff is negative make sure we are not
89
  * subtracting more than available as min weight per item.
90
  */
91
+ if ( $new_item_weight <= $item_min_weight ) {
92
+ $new_item_weight = $item_min_weight;
93
+ $item_diff_applied = $item_min_weight - $item_weight_before;
94
  }
95
 
96
  $item_weights[ $key ] = $new_item_weight;
102
 
103
  if ( abs( $diff_left ) > 0 ) {
104
  foreach( $item_weights as $key => $weight ) {
105
+ $shipment_item = $shipment_items[ $key ];
106
+ $item_min_weight = 0.01 * $shipment_item->get_quantity();
107
+
108
  if ( $diff_left > 0 ) {
109
  /**
110
  * Add the diff left to the first item and stop.
115
  /**
116
  * Remove the diff left from the first item with a weight greater than 0.01 to prevent 0 weights.
117
  */
118
+ if ( $weight > $item_min_weight ) {
119
  $item_weights[ $key ] += $diff_left;
120
  break;
121
  }
142
  'countryCodeOrigin' => ( $dhl_product && $dhl_product->get_manufacture_country() ) ? $dhl_product->get_manufacture_country() : Package::get_base_country(),
143
  'customsTariffNumber' => $dhl_product ? $dhl_product->get_hs_code() : '',
144
  'amount' => intval( $item->get_quantity() ),
145
+ /**
146
+ * netWeightInKG is defined as the weight per item (e.g. 2 items in case the quantity equals 2).
147
+ */
148
+ 'netWeightInKG' => wc_format_decimal( ( $item_weights[ $key ] / $item->get_quantity() ), 2 ),
149
  'customsValue' => wc_format_decimal( $product_total, 2 )
150
  );
151
 
1002
  }
1003
 
1004
  function wc_gzd_dhl_im_get_product_list( $products, $parent_only = true ) {
1005
+ $list = array();
1006
+ $additional_parent_products = array();
1007
 
1008
  foreach( $products as $product ) {
1009
  if ( $parent_only && $product->product_parent_id > 0 ) {
1010
+ $additional_parent_products[] = $product->product_parent_id;
1011
  continue;
1012
  }
1013
 
1014
  $list[ $product->product_code ] = wc_gzd_dhl_get_im_product_title( $product->product_name );
1015
  }
1016
 
1017
+ $additional_parent_products = array_unique( $additional_parent_products );
1018
+
1019
+ if ( ! empty( $additional_parent_products ) ) {
1020
+ foreach( $additional_parent_products as $product_id ) {
1021
+ $product = Package::get_internetmarke_api()->get_product_data( $product_id );
1022
+
1023
+ if ( ! array_key_exists( $product->product_code, $list ) ) {
1024
+ $list[ $product->product_code ] = wc_gzd_dhl_get_im_product_title( $product->product_name );
1025
+ }
1026
+ }
1027
+ }
1028
+
1029
  return $list;
1030
  }
1031
 
packages/woocommerce-germanized-dhl/src/Admin/Admin.php CHANGED
@@ -49,12 +49,14 @@ class Admin {
49
 
50
  add_action( 'admin_init', array( __CLASS__, 'refresh_im_data' ) );
51
  add_action( 'admin_notices', array( __CLASS__, 'refresh_im_notices' ) );
 
 
52
  }
53
 
54
  public static function refresh_im_notices() {
55
  if ( current_user_can( 'manage_woocommerce' ) && isset( $_GET['im-refresh-type'] ) ) {
56
  ?>
57
- <div class="notice fade <?php echo ( isset( $_GET['success'] ) ? 'updated' : 'error' ); ?>"><p><?php echo ( isset( $_GET['success'] ) ? _x( 'Refreshed data successfully.', 'dhl', 'woocommerce-germanized' ) : sprintf( _x( 'Error while refreshing data. Please check your Internetmarke <a href="%s">logs</a>.', 'dhl', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-status&tab=logs' ) ) ); ?></p></div>
58
  <?php
59
  }
60
  }
49
 
50
  add_action( 'admin_init', array( __CLASS__, 'refresh_im_data' ) );
51
  add_action( 'admin_notices', array( __CLASS__, 'refresh_im_notices' ) );
52
+
53
+ Status::init();
54
  }
55
 
56
  public static function refresh_im_notices() {
57
  if ( current_user_can( 'manage_woocommerce' ) && isset( $_GET['im-refresh-type'] ) ) {
58
  ?>
59
+ <div class="notice fade <?php echo ( isset( $_GET['success'] ) ? 'updated' : 'error' ); ?>"><p><?php echo ( isset( $_GET['success'] ) ? _x( 'Refreshed data successfully.', 'dhl', 'woocommerce-germanized' ) : sprintf( _x( 'Error while refreshing data. Please make sure that the Internetmarke API URL can be <a href="%s">accessed</a>.', 'dhl', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-status&tab=dhl' ) ) ); ?></p></div>
60
  <?php
61
  }
62
  }
packages/woocommerce-germanized-dhl/src/Admin/Status.php ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace Vendidero\Germanized\DHL\Admin;
4
+
5
+ use Vendidero\Germanized\DHL\Package;
6
+
7
+ defined( 'ABSPATH' ) || exit;
8
+
9
+ class Status {
10
+
11
+ public static function init() {
12
+ add_filter( 'woocommerce_admin_status_tabs', array( __CLASS__, 'register_tab' ), 10 );
13
+ add_action( 'woocommerce_admin_status_content_dhl', array( __CLASS__, 'render' ) );
14
+ }
15
+
16
+ public static function render() {
17
+ ?>
18
+ <table class="wc_status_table widefat" cellspacing="0" id="status">
19
+ <thead>
20
+ <tr>
21
+ <th colspan="3" data-export-label="Post & DHL Ping status" style="">
22
+ <h2><?php echo esc_html_x( 'Ping Check', 'dhl', 'woocommerce-germanized' ); ?></h2>
23
+ </th>
24
+ </tr>
25
+ </thead>
26
+ <tbody>
27
+ <?php foreach( self::get_urls_to_ping() as $url ) :
28
+ $result = self::test_url( $url );
29
+ ?>
30
+ <tr>
31
+ <td style="width: 50%" data-export-label="<?php echo esc_attr( $url ); ?>"><code style=""><?php echo $url; ?></code></td>
32
+ <td>
33
+ <?php
34
+ if ( $result ) {
35
+ echo '<mark class="yes"><span class="dashicons dashicons-yes"></span></mark>';
36
+ } else {
37
+ echo '<mark class="error"><span class="dashicons dashicons-warning"></span> ' . esc_html_x( 'Unable to connect to the URL. Please make sure that your webhost allows outgoing connections to that specific URL.', 'dhl', 'woocommerce-germanized' ) . '</mark>';
38
+ }
39
+ ?>
40
+ </td>
41
+ </tr>
42
+ <?php endforeach; ?>
43
+ </tbody>
44
+ </table>
45
+ <?php
46
+ }
47
+
48
+ public static function register_tab( $tabs ) {
49
+ $tabs['dhl'] = _x( 'DHL & Post', 'dhl', 'woocommerce-germanized' );
50
+
51
+ return $tabs;
52
+ }
53
+
54
+ protected static function test_url( $url ) {
55
+ $transient_name = 'woocommerce_gzd_dhl_test_remote_get_' . $url;
56
+ $get_response_code = get_transient( $transient_name );
57
+
58
+ if ( false === $get_response_code || is_wp_error( $get_response_code ) ) {
59
+ $response = wp_remote_get( $url );
60
+
61
+ if ( ! is_wp_error( $response ) ) {
62
+ $get_response_code = $response['response']['code'];
63
+ }
64
+
65
+ set_transient( $transient_name, $get_response_code, HOUR_IN_SECONDS );
66
+ }
67
+
68
+ $get_response_successful = ! is_wp_error( $get_response_code ) && ! empty( $get_response_code );
69
+
70
+ return $get_response_successful;
71
+ }
72
+
73
+ public static function get_urls_to_ping() {
74
+ $urls = array();
75
+
76
+ if ( Package::is_dhl_enabled() ) {
77
+ $urls = array_merge( $urls, array(
78
+ Package::get_gk_api_url(),
79
+ Package::get_rest_url(),
80
+ Package::get_cig_url(),
81
+ ) );
82
+ }
83
+
84
+ if ( Package::is_internetmarke_enabled() ) {
85
+ $urls = array_merge( $urls, array(
86
+ Package::get_warenpost_international_rest_url(),
87
+ Package::get_internetmarke_main_url(),
88
+ Package::get_internetmarke_refund_url(),
89
+ Package::get_internetmarke_products_url()
90
+ ) );
91
+ }
92
+
93
+ return $urls;
94
+ }
95
+ }
packages/woocommerce-germanized-dhl/src/Api/ImProductList.php CHANGED
@@ -382,7 +382,7 @@ class ImProductList {
382
  $result = new \WP_Error();
383
 
384
  try {
385
- $product_soap = new ImProductsSoap();
386
  $product_list = $product_soap->getProducts();
387
 
388
  $wpdb->query( "TRUNCATE TABLE {$wpdb->gzd_dhl_im_products}" );
382
  $result = new \WP_Error();
383
 
384
  try {
385
+ $product_soap = new ImProductsSoap( array(), Package::get_wsdl_file( Package::get_internetmarke_products_url() ) );
386
  $product_list = $product_soap->getProducts();
387
 
388
  $wpdb->query( "TRUNCATE TABLE {$wpdb->gzd_dhl_im_products}" );
packages/woocommerce-germanized-dhl/src/Api/ImProductsSoap.php CHANGED
@@ -13,7 +13,7 @@ class ImProductsSoap extends \SoapClient {
13
  $options = array_merge( array( 'features' => SOAP_SINGLE_ELEMENT_ARRAYS ), $options );
14
 
15
  if ( $wsdl === null ) {
16
- $wsdl = 'https://prodws.deutschepost.de:8443/ProdWSProvider_1_1/prodws?wsdl';
17
  }
18
 
19
  parent::__construct( $wsdl, $options );
13
  $options = array_merge( array( 'features' => SOAP_SINGLE_ELEMENT_ARRAYS ), $options );
14
 
15
  if ( $wsdl === null ) {
16
+ $wsdl = Package::get_internetmarke_products_url();
17
  }
18
 
19
  parent::__construct( $wsdl, $options );
packages/woocommerce-germanized-dhl/src/Api/ImRefundSoap.php CHANGED
@@ -20,7 +20,7 @@ class ImRefundSoap extends \SoapClient {
20
  $options = array_merge( array( 'features' => SOAP_SINGLE_ELEMENT_ARRAYS ), $options );
21
 
22
  if ( $wsdl === null ) {
23
- $wsdl = 'https://internetmarke.deutschepost.de/OneClickForRefund?wsdl';
24
  }
25
 
26
  parent::__construct( $wsdl, $options );
20
  $options = array_merge( array( 'features' => SOAP_SINGLE_ELEMENT_ARRAYS ), $options );
21
 
22
  if ( $wsdl === null ) {
23
+ $wsdl = Package::get_internetmarke_refund_url();
24
  }
25
 
26
  parent::__construct( $wsdl, $options );
packages/woocommerce-germanized-dhl/src/Api/ImWarenpostIntRest.php CHANGED
@@ -16,7 +16,7 @@ class ImWarenpostIntRest extends Rest {
16
  }
17
 
18
  public function get_base_url() {
19
- return self::is_sandbox() ? 'https://api-qa.deutschepost.com' : 'https://api.deutschepost.com';
20
  }
21
 
22
  public function get_pdf( $awb ) {
@@ -172,8 +172,6 @@ class ImWarenpostIntRest extends Rest {
172
  protected function get_user_token() {
173
  $user_token = false;
174
 
175
- delete_transient( 'woocommerce_gzd_im_wp_int_user_token' );
176
-
177
  if ( get_transient( 'woocommerce_gzd_im_wp_int_user_token' ) ) {
178
  $user_token = get_transient( 'woocommerce_gzd_im_wp_int_user_token' );
179
  } else {
@@ -293,6 +291,10 @@ class ImWarenpostIntRest extends Rest {
293
  }
294
  }
295
 
 
 
 
 
296
  throw new Exception( sprintf( _x( 'Error during request: %s', 'dhl', 'woocommerce-germanized' ), $error_message ) );
297
  }
298
  }
16
  }
17
 
18
  public function get_base_url() {
19
+ return self::is_sandbox() ? 'https://api-qa.deutschepost.com' : Package::get_warenpost_international_rest_url();
20
  }
21
 
22
  public function get_pdf( $awb ) {
172
  protected function get_user_token() {
173
  $user_token = false;
174
 
 
 
175
  if ( get_transient( 'woocommerce_gzd_im_wp_int_user_token' ) ) {
176
  $user_token = get_transient( 'woocommerce_gzd_im_wp_int_user_token' );
177
  } else {
291
  }
292
  }
293
 
294
+ if ( empty( $error_message ) ) {
295
+ $error_message = $response_code;
296
+ }
297
+
298
  throw new Exception( sprintf( _x( 'Error during request: %s', 'dhl', 'woocommerce-germanized' ), $error_message ) );
299
  }
300
  }
packages/woocommerce-germanized-dhl/src/Api/Internetmarke.php CHANGED
@@ -64,7 +64,7 @@ class Internetmarke {
64
  throw new \Exception( sprintf( _x( 'To enable communication between your shop and DHL, the PHP <a href="%s">SOAPClient</a> is required. Please contact your host and make sure that SOAPClient is <a href="%s">installed</a>.', 'dhl', 'woocommerce-germanize-dhl' ), 'https://www.php.net/manual/class.soapclient.php', admin_url( 'admin.php?page=wc-status' ) ) );
65
  }
66
 
67
- $this->api = new Service( $this->partner, array(), Package::get_wsdl_file( 'https://internetmarke.deutschepost.de/OneClickForAppV3?wsdl' ) );
68
  } catch( \Exception $e ) {
69
  $this->errors->add( 'startup', sprintf( _x( 'Error while instantiating main Internetmarke API: %s', 'dhl', 'woocommerce-germanized' ), $e->getMessage() ) );
70
  }
@@ -522,7 +522,7 @@ class Internetmarke {
522
 
523
  public function get_refund_api() {
524
  if ( is_null( $this->refund_api ) ) {
525
- $this->refund_api = new ImRefundSoap( $this->partner, array(), Package::get_wsdl_file( 'https://internetmarke.deutschepost.de/OneClickForRefund?wsdl' ) );
526
  }
527
 
528
  return $this->refund_api;
64
  throw new \Exception( sprintf( _x( 'To enable communication between your shop and DHL, the PHP <a href="%s">SOAPClient</a> is required. Please contact your host and make sure that SOAPClient is <a href="%s">installed</a>.', 'dhl', 'woocommerce-germanize-dhl' ), 'https://www.php.net/manual/class.soapclient.php', admin_url( 'admin.php?page=wc-status' ) ) );
65
  }
66
 
67
+ $this->api = new Service( $this->partner, array(), Package::get_wsdl_file( Package::get_internetmarke_main_url() ) );
68
  } catch( \Exception $e ) {
69
  $this->errors->add( 'startup', sprintf( _x( 'Error while instantiating main Internetmarke API: %s', 'dhl', 'woocommerce-germanized' ), $e->getMessage() ) );
70
  }
522
 
523
  public function get_refund_api() {
524
  if ( is_null( $this->refund_api ) ) {
525
+ $this->refund_api = new ImRefundSoap( $this->partner, array(), Package::get_wsdl_file( Package::get_internetmarke_refund_url() ) );
526
  }
527
 
528
  return $this->refund_api;
packages/woocommerce-germanized-dhl/src/Package.php CHANGED
@@ -23,7 +23,7 @@ class Package {
23
  *
24
  * @var string
25
  */
26
- const VERSION = '1.4.1';
27
 
28
  public static $upload_dir_suffix = '';
29
 
@@ -431,6 +431,22 @@ class Package {
431
  return 'https://www.dhl-geschaeftskundenportal.de';
432
  }
433
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
434
  public static function get_internetmarke_partner_id() {
435
  return 'AVHGE';
436
  }
@@ -753,11 +769,14 @@ class Package {
753
  */
754
  foreach( $required_files as $file ) {
755
  $transient = 'wc_gzd_dhl_wsdl_' . sanitize_key( $file );
 
756
 
757
- if ( ( $file_path = get_transient( $transient ) ) && file_exists( $file_path ) ) {
 
 
758
 
759
- } else {
760
- $files_exist = false;
761
  }
762
  }
763
 
@@ -785,7 +804,19 @@ class Package {
785
  }
786
 
787
  if ( function_exists( 'download_url' ) && function_exists( 'unzip_file' ) ) {
788
- $tmp_file = download_url( $file_link );
 
 
 
 
 
 
 
 
 
 
 
 
789
 
790
  if ( ! is_wp_error( $tmp_file ) ) {
791
 
23
  *
24
  * @var string
25
  */
26
+ const VERSION = '1.4.2';
27
 
28
  public static $upload_dir_suffix = '';
29
 
431
  return 'https://www.dhl-geschaeftskundenportal.de';
432
  }
433
 
434
+ public static function get_internetmarke_main_url() {
435
+ return 'https://internetmarke.deutschepost.de/OneClickForAppV3?wsdl';
436
+ }
437
+
438
+ public static function get_warenpost_international_rest_url() {
439
+ return 'https://api.deutschepost.com';
440
+ }
441
+
442
+ public static function get_internetmarke_products_url() {
443
+ return 'https://prodws.deutschepost.de:8443/ProdWSProvider_1_1/prodws?wsdl';
444
+ }
445
+
446
+ public static function get_internetmarke_refund_url() {
447
+ return 'https://internetmarke.deutschepost.de/OneClickForRefund?wsdl';
448
+ }
449
+
450
  public static function get_internetmarke_partner_id() {
451
  return 'AVHGE';
452
  }
769
  */
770
  foreach( $required_files as $file ) {
771
  $transient = 'wc_gzd_dhl_wsdl_' . sanitize_key( $file );
772
+ $file_path = get_transient( $transient );
773
 
774
+ if ( $file_path ) {
775
+ $file_path = self::get_file_by_path( $file_path );
776
+ }
777
 
778
+ if ( ! $file_path || ! file_exists( $file_path ) ) {
779
+ $files_exist = false;
780
  }
781
  }
782
 
804
  }
805
 
806
  if ( function_exists( 'download_url' ) && function_exists( 'unzip_file' ) ) {
807
+ /**
808
+ * Some URLs like https://prodws.deutschepost.de:8443/ProdWSProvider_1_1/prodws?wsdl might
809
+ * be rejected due to not using standard SSL ports, e.g.: 8443. Allow them anyway.
810
+ */
811
+ add_filter( 'http_request_args', function( $args, $url ) use ( $file_link ) {
812
+ if ( $url === $file_link ) {
813
+ $args['reject_unsafe_urls'] = false;
814
+ }
815
+
816
+ return $args;
817
+ }, 10, 2 );
818
+
819
+ $tmp_file = download_url( $file_link, 1500 );
820
 
821
  if ( ! is_wp_error( $tmp_file ) ) {
822
 
packages/woocommerce-germanized-dhl/woocommerce-germanized-dhl.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: The Germanized DHL integration, installed as a feature plugin for development and testing purposes.
6
  * Author: vendidero
7
  * Author URI: https://vendidero.de
8
- * Version: 1.4.1
9
  * Requires PHP: 5.6
10
  * License: GPLv3
11
  *
5
  * Description: The Germanized DHL integration, installed as a feature plugin for development and testing purposes.
6
  * Author: vendidero
7
  * Author URI: https://vendidero.de
8
+ * Version: 1.4.2
9
  * Requires PHP: 5.6
10
  * License: GPLv3
11
  *
packages/woocommerce-germanized-shipments/src/Admin/Admin.php CHANGED
@@ -315,8 +315,8 @@ class Admin {
315
  <th class="sort">&nbsp;</th>
316
  <th style="width: 20ch;"><?php echo esc_html_x( 'Description', 'shipments', 'woocommerce-germanized' ); ?> <?php echo wc_help_tip( _x( 'A description to help you identify the packaging.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
317
  <th style="width: 15ch;"><?php echo esc_html_x( 'Type', 'shipments', 'woocommerce-germanized' ); ?></th>
318
- <th style="width: 5ch;"><?php echo sprintf( esc_html_x( 'Weight (%s)', 'shipments', 'woocommerce-germanized' ), wc_gzd_get_packaging_dimension_unit() ); ?> <?php echo wc_help_tip( _x( 'The weight of the packaging.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
319
- <th style="width: 15ch;"><?php echo sprintf( esc_html_x( 'Dimensions (LxWxH, %s)', 'shipments', 'woocommerce-germanized' ), wc_gzd_get_packaging_weight_unit() ); ?></th>
320
  <th style="width: 5ch;"><?php echo esc_html_x( 'Max weight (kg)', 'shipments', 'woocommerce-germanized' ); ?> <?php echo wc_help_tip( _x( 'The maximum weight this packaging can hold. Leave empty to not restrict maximum weight.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
321
  </tr>
322
  </thead>
315
  <th class="sort">&nbsp;</th>
316
  <th style="width: 20ch;"><?php echo esc_html_x( 'Description', 'shipments', 'woocommerce-germanized' ); ?> <?php echo wc_help_tip( _x( 'A description to help you identify the packaging.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
317
  <th style="width: 15ch;"><?php echo esc_html_x( 'Type', 'shipments', 'woocommerce-germanized' ); ?></th>
318
+ <th style="width: 5ch;"><?php echo sprintf( esc_html_x( 'Weight (%s)', 'shipments', 'woocommerce-germanized' ), wc_gzd_get_packaging_weight_unit() ); ?> <?php echo wc_help_tip( _x( 'The weight of the packaging.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
319
+ <th style="width: 15ch;"><?php echo sprintf( esc_html_x( 'Dimensions (LxWxH, %s)', 'shipments', 'woocommerce-germanized' ), wc_gzd_get_packaging_dimension_unit() ); ?></th>
320
  <th style="width: 5ch;"><?php echo esc_html_x( 'Max weight (kg)', 'shipments', 'woocommerce-germanized' ); ?> <?php echo wc_help_tip( _x( 'The maximum weight this packaging can hold. Leave empty to not restrict maximum weight.', 'shipments', 'woocommerce-germanized' ) ); ?></th>
321
  </tr>
322
  </thead>
packages/woocommerce-germanized-shipments/src/Package.php CHANGED
@@ -17,7 +17,7 @@ class Package {
17
  *
18
  * @var string
19
  */
20
- const VERSION = '1.4.1';
21
 
22
  public static $upload_dir_suffix = '';
23
 
17
  *
18
  * @var string
19
  */
20
+ const VERSION = '1.4.2';
21
 
22
  public static $upload_dir_suffix = '';
23
 
packages/woocommerce-germanized-shipments/woocommerce-germanized-shipments.php CHANGED
@@ -5,7 +5,7 @@
5
  * Description: The Germanized Shipments integration, installed as a feature plugin for development and testing purposes.
6
  * Author: vendidero
7
  * Author URI: https://vendidero.de
8
- * Version: 1.4.1
9
  * Requires PHP: 5.6
10
  * License: GPLv3
11
  *
5
  * Description: The Germanized Shipments integration, installed as a feature plugin for development and testing purposes.
6
  * Author: vendidero
7
  * Author URI: https://vendidero.de
8
+ * Version: 1.4.2
9
  * Requires PHP: 5.6
10
  * License: GPLv3
11
  *
readme.txt CHANGED
@@ -5,7 +5,7 @@ Requires at least: 5.4
5
  Tested up to: 5.6
6
  WC requires at least: 3.9
7
  WC tested up to: 4.8
8
- Stable tag: 3.3.1
9
  Requires PHP: 5.6
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
@@ -186,10 +186,19 @@ Bug reports may be filed via our [GitHub repository](https://github.com/vendider
186
  6. Edit pdf documents (Pro)
187
 
188
  == Changelog ==
 
 
 
 
 
 
 
 
189
  = 3.3.1 =
190
  * Fix: DHL retoure label
191
  * Fix: Shipments namespace exception in item data store
192
  * Fix: Deprecated WC_Admin_Note usage
 
193
  * Improvement: Woo blocks gutenberg checkout support
194
  * Improvement: Error catch in case SOAP request throws error for IM
195
 
5
  Tested up to: 5.6
6
  WC requires at least: 3.9
7
  WC tested up to: 4.8
8
+ Stable tag: 3.3.2
9
  Requires PHP: 5.6
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
186
  6. Edit pdf documents (Pro)
187
 
188
  == Changelog ==
189
+ = 3.3.2 =
190
+ * Improvement: DOI - allow customers to resend activation mail
191
+ * Improvement: Internetmarke child product selection
192
+ * Improvement: Added Post & DHL status page to check for connection issues
193
+ * Improvement: By default hide zero taxes within order totals
194
+ * Fix: DHL customs weight calculation
195
+ * Fix: Packaging admin table unit
196
+
197
  = 3.3.1 =
198
  * Fix: DHL retoure label
199
  * Fix: Shipments namespace exception in item data store
200
  * Fix: Deprecated WC_Admin_Note usage
201
+ * Improvement: Unit price recalculation for net prices
202
  * Improvement: Woo blocks gutenberg checkout support
203
  * Improvement: Error catch in case SOAP request throws error for IM
204
 
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit5ab615d17eae4e49bf0e7d0d1f73bc0f::getLoader();
vendor/autoload_packages.php CHANGED
@@ -5,9 +5,10 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
12
- require_once __DIR__ . '/jetpack-autoloader/class-autoloader.php';
13
- Autoloader::init();
 
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
12
+ require_once trailingslashit( __DIR__ ) . 'jetpack-autoloader/autoload_functions.php';
13
+
14
+ set_up_autoloader();
vendor/automattic/jetpack-autoloader/src/AutoloadFileWriter.php DELETED
@@ -1,105 +0,0 @@
1
- <?php // phpcs:ignore WordPress.Files.FileName
2
- /**
3
- * Autoloader file writer.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- // phpcs:disable WordPress.Files.FileName.InvalidClassFileName
9
- // phpcs:disable WordPress.NamingConventions.ValidFunctionName.MethodNameInvalid
10
- // phpcs:disable WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase
11
- // phpcs:disable WordPress.NamingConventions.ValidVariableName.InterpolatedVariableNotSnakeCase
12
- // phpcs:disable WordPress.NamingConventions.ValidVariableName.VariableNotSnakeCase
13
- // phpcs:disable WordPress.NamingConventions.ValidVariableName.PropertyNotSnakeCase
14
- // phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_var_export
15
- // phpcs:disable WordPress.WP.AlternativeFunctions.file_system_read_file_put_contents
16
- // phpcs:disable WordPress.WP.AlternativeFunctions.file_system_read_fopen
17
- // phpcs:disable WordPress.WP.AlternativeFunctions.file_system_read_fwrite
18
-
19
- namespace Automattic\Jetpack\Autoloader;
20
-
21
- /**
22
- * Class AutoloadFileWriter.
23
- */
24
- class AutoloadFileWriter {
25
-
26
- /**
27
- * The file comment to use.
28
- */
29
- const COMMENT = <<<AUTOLOADER_COMMENT
30
- /**
31
- * This file was automatically generated by automattic/jetpack-autoloader.
32
- *
33
- * @package automattic/jetpack-autoloader
34
- */
35
-
36
- AUTOLOADER_COMMENT;
37
-
38
- /**
39
- * Copies autoloader files and replaces any placeholders in them.
40
- *
41
- * @param IOInterface|null $io An IO for writing to.
42
- * @param string $outDir The directory to place the autoloader files in.
43
- * @param string $suffix The suffix to use in the autoloader's namespace.
44
- */
45
- public static function copyAutoloaderFiles( $io, $outDir, $suffix ) {
46
- $renameList = array(
47
- 'autoload.php' => '../autoload_packages.php',
48
- );
49
- $ignoreList = array(
50
- 'AutoloadGenerator.php',
51
- 'AutoloadProcessor.php',
52
- 'CustomAutoloaderPlugin.php',
53
- 'ManifestGenerator.php',
54
- 'AutoloadFileWriter.php',
55
- );
56
-
57
- // Copy all of the autoloader files.
58
- $files = scandir( __DIR__ );
59
- foreach ( $files as $file ) {
60
- // Only PHP files will be copied.
61
- if ( substr( $file, -4 ) !== '.php' ) {
62
- continue;
63
- }
64
-
65
- if ( in_array( $file, $ignoreList, true ) ) {
66
- continue;
67
- }
68
-
69
- $newFile = isset( $renameList[ $file ] ) ? $renameList[ $file ] : $file;
70
- $content = self::prepareAutoloaderFile( $file, $suffix );
71
-
72
- $written = file_put_contents( $outDir . '/' . $newFile, $content );
73
- if ( $io ) {
74
- if ( $written ) {
75
- $io->writeError( " <info>Generated: $newFile</info>" );
76
- } else {
77
- $io->writeError( " <error>Error: $newFile</error>" );
78
- }
79
- }
80
- }
81
- }
82
-
83
- /**
84
- * Prepares an autoloader file to be written to the destination.
85
- *
86
- * @param String $filename a file to prepare.
87
- * @param String $suffix Unique suffix used in the namespace.
88
- *
89
- * @return string
90
- */
91
- private static function prepareAutoloaderFile( $filename, $suffix ) {
92
- $header = self::COMMENT;
93
- $header .= PHP_EOL;
94
- $header .= 'namespace Automattic\Jetpack\Autoloader\jp' . $suffix . ';';
95
- $header .= PHP_EOL . PHP_EOL;
96
-
97
- $sourceLoader = fopen( __DIR__ . '/' . $filename, 'r' );
98
- $file_contents = stream_get_contents( $sourceLoader );
99
- return str_replace(
100
- '/* HEADER */',
101
- $header,
102
- $file_contents
103
- );
104
- }
105
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/AutoloadGenerator.php CHANGED
@@ -38,6 +38,15 @@ use Composer\Util\PackageSorter;
38
  */
39
  class AutoloadGenerator {
40
 
 
 
 
 
 
 
 
 
 
41
  /**
42
  * The filesystem utility.
43
  *
@@ -351,8 +360,28 @@ class AutoloadGenerator {
351
  // We will remove all autoloader files to generate this again.
352
  $this->filesystem->emptyDirectory( $outDir );
353
 
354
- // Write the autoloader files.
355
- AutoloadFileWriter::copyAutoloaderFiles( $this->io, $outDir, $suffix );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
356
  }
357
 
358
  /**
@@ -389,4 +418,27 @@ class AutoloadGenerator {
389
  }
390
  }
391
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
392
  }
38
  */
39
  class AutoloadGenerator {
40
 
41
+ const COMMENT = <<<AUTOLOADER_COMMENT
42
+ /**
43
+ * This file was automatically generated by automattic/jetpack-autoloader.
44
+ *
45
+ * @package automattic/jetpack-autoloader
46
+ */
47
+
48
+ AUTOLOADER_COMMENT;
49
+
50
  /**
51
  * The filesystem utility.
52
  *
360
  // We will remove all autoloader files to generate this again.
361
  $this->filesystem->emptyDirectory( $outDir );
362
 
363
+ $packageFiles = array(
364
+ 'autoload.php' => '../autoload_packages.php',
365
+ 'functions.php' => 'autoload_functions.php',
366
+ 'class-autoloader-locator.php' => null,
367
+ 'class-autoloader-handler.php' => null,
368
+ 'class-manifest-handler.php' => null,
369
+ 'class-plugins-handler.php' => null,
370
+ 'class-version-selector.php' => null,
371
+ 'class-version-loader.php' => null,
372
+ );
373
+
374
+ foreach ( $packageFiles as $file => $newFile ) {
375
+ $newFile = isset( $newFile ) ? $newFile : $file;
376
+
377
+ $content = $this->getAutoloadPackageFile( $file, $suffix );
378
+
379
+ if ( file_put_contents( $outDir . '/' . $newFile, $content ) ) {
380
+ $this->io->writeError( " <info>Generated: $newFile</info>" );
381
+ } else {
382
+ $this->io->writeError( " <error>Error: $newFile</error>" );
383
+ }
384
+ }
385
  }
386
 
387
  /**
418
  }
419
  }
420
  }
421
+
422
+ /**
423
+ * Generate the PHP that will be used in the autoload_packages.php files.
424
+ *
425
+ * @param String $filename a file to prepare.
426
+ * @param String $suffix Unique suffix used in the namespace.
427
+ *
428
+ * @return string
429
+ */
430
+ private function getAutoloadPackageFile( $filename, $suffix ) {
431
+ $header = self::COMMENT;
432
+ $header .= PHP_EOL;
433
+ $header .= 'namespace Automattic\Jetpack\Autoloader\jp' . $suffix . ';';
434
+ $header .= PHP_EOL . PHP_EOL;
435
+
436
+ $sourceLoader = fopen( __DIR__ . '/' . $filename, 'r' );
437
+ $file_contents = stream_get_contents( $sourceLoader );
438
+ return str_replace(
439
+ '/* HEADER */',
440
+ $header,
441
+ $file_contents
442
+ );
443
+ }
444
  }
vendor/automattic/jetpack-autoloader/src/autoload.php CHANGED
@@ -1,5 +1,6 @@
1
  <?php
2
  /* HEADER */ // phpcs:ignore
3
 
4
- require_once __DIR__ . '/jetpack-autoloader/class-autoloader.php';
5
- Autoloader::init();
 
1
  <?php
2
  /* HEADER */ // phpcs:ignore
3
 
4
+ require_once trailingslashit( __DIR__ ) . 'jetpack-autoloader/autoload_functions.php';
5
+
6
+ set_up_autoloader();
vendor/automattic/jetpack-autoloader/src/class-autoloader-handler.php CHANGED
@@ -6,22 +6,39 @@
6
  */
7
  class Autoloader_Handler {
8
 
 
 
 
 
 
 
 
 
 
 
9
  /**
10
- * The Hook_Manager instance.
11
  *
12
- * @var Hook_Manager
13
  */
14
- private $hook_manager;
15
 
16
  /**
17
- * The Manifest_Reader instance.
18
  *
19
- * @var Manifest_Reader
20
  */
21
- private $manifest_reader;
22
 
23
  /**
24
- * The Version_Selector instance.
 
 
 
 
 
 
 
25
  *
26
  * @var Version_Selector
27
  */
@@ -30,54 +47,144 @@ class Autoloader_Handler {
30
  /**
31
  * The constructor.
32
  *
33
- * @param Hook_Manager $hook_manager The Hook_Manager instance.
34
- * @param Manifest_Reader $manifest_reader The Manifest_Reader instance.
35
- * @param Version_Selector $version_selector The Version_Selector instance.
 
36
  */
37
- public function __construct( $hook_manager, $manifest_reader, $version_selector ) {
38
- $this->hook_manager = $hook_manager;
39
- $this->manifest_reader = $manifest_reader;
40
- $this->version_selector = $version_selector;
 
41
  }
42
 
43
  /**
44
- * Creates an autoloader using the given plugins and activates it.
45
  *
46
- * @param string[] $plugins The plugins to initialize the autoloader for.
47
  */
48
- public function create_autoloader( $plugins ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  global $jetpack_packages_psr4;
50
  $jetpack_packages_psr4 = array();
51
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_psr4.php', $jetpack_packages_psr4 );
52
 
53
  global $jetpack_packages_classmap;
54
  $jetpack_packages_classmap = array();
55
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_classmap.php', $jetpack_packages_classmap );
56
 
57
  global $jetpack_packages_filemap;
58
  $jetpack_packages_filemap = array();
59
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_filemap.php', $jetpack_packages_filemap );
60
 
61
- $loader = new Version_Loader(
 
62
  $this->version_selector,
63
  $jetpack_packages_classmap,
64
  $jetpack_packages_psr4,
65
  $jetpack_packages_filemap
66
  );
67
-
68
- // Activate the autoloader.
69
- Autoloader::activate( $loader );
70
  }
71
 
72
  /**
73
- * Resets the active autoloader and all related global state.
 
 
 
 
74
  */
75
- public function reset_autoloader() {
76
- global $jetpack_autoloader_loader;
77
- global $jetpack_autoloader_latest_version;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
 
79
- $this->hook_manager->reset();
80
- $jetpack_autoloader_loader = null;
81
- $jetpack_autoloader_latest_version = null;
 
 
 
 
 
82
  }
83
  }
6
  */
7
  class Autoloader_Handler {
8
 
9
+ // The name of the autoloader function registered by v1.* autoloaders.
10
+ const V1_AUTOLOADER_NAME = 'Automattic\Jetpack\Autoloader\autoloader';
11
+
12
+ /*
13
+ * The autoloader function for v2.* autoloaders is named __NAMESPACE__ . \autoloader.
14
+ * The namespace is defined in AutoloadGenerator as
15
+ * 'Automattic\Jetpack\Autoloader\jp' plus a unique suffix.
16
+ */
17
+ const V2_AUTOLOADER_BASE = 'Automattic\Jetpack\Autoloader\jp';
18
+
19
  /**
20
+ * The current plugin path.
21
  *
22
+ * @var string
23
  */
24
+ private $current_plugin_path;
25
 
26
  /**
27
+ * The paths for all of the active plugins.
28
  *
29
+ * @var array
30
  */
31
+ private $active_plugin_paths;
32
 
33
  /**
34
+ * The Autoloader_Locator object.
35
+ *
36
+ * @var Autoloader_Locator
37
+ */
38
+ private $autoloader_locator;
39
+
40
+ /**
41
+ * The Version_Selector object.
42
  *
43
  * @var Version_Selector
44
  */
47
  /**
48
  * The constructor.
49
  *
50
+ * @param string $current_plugin_path The current plugin path.
51
+ * @param array $active_plugin_paths The active plugin paths.
52
+ * @param Autoloader_Locator $autoloader_locator The Autoloader_Locator object.
53
+ * @param Version_Selector $version_selector The Version_Selector object.
54
  */
55
+ public function __construct( $current_plugin_path, $active_plugin_paths, $autoloader_locator, $version_selector ) {
56
+ $this->current_plugin_path = $current_plugin_path;
57
+ $this->active_plugin_paths = $active_plugin_paths;
58
+ $this->autoloader_locator = $autoloader_locator;
59
+ $this->version_selector = $version_selector;
60
  }
61
 
62
  /**
63
+ * Finds the latest installed autoloader.
64
  *
65
+ * @return bool True if this autoloader is the latest, false otherwise.
66
  */
67
+ public function is_latest_autoloader() {
68
+ global $jetpack_autoloader_latest_version;
69
+
70
+ if ( isset( $jetpack_autoloader_latest_version ) ) {
71
+ return $jetpack_autoloader_latest_version === $this->autoloader_locator->get_autoloader_version( $this->current_plugin_path );
72
+ }
73
+
74
+ $latest_plugin = $this->autoloader_locator->find_latest_autoloader( $this->active_plugin_paths, $jetpack_autoloader_latest_version );
75
+ if ( ! isset( $latest_plugin ) ) {
76
+ return true;
77
+ }
78
+
79
+ if ( $latest_plugin !== $this->current_plugin_path ) {
80
+ require $this->autoloader_locator->get_autoloader_path( $latest_plugin );
81
+ return false;
82
+ }
83
+
84
+ return true;
85
+ }
86
+
87
+ /**
88
+ * Checks whether the autoloader should be reset. The autoloader should be reset:
89
+ *
90
+ * - When a plugin is activated via a method other than a request, for example using WP-CLI.
91
+ * - When the active plugins list changes between autoloader checks, for example when filtered by a plugin.
92
+ *
93
+ * We perform this reset because the manifest files for the plugin will have been initially unknown when
94
+ * selecting versions for classes and files.
95
+ *
96
+ * If the current plugin is not already known, this method will add it to the
97
+ * $jetpack_autoloader_activating_plugins_paths global.
98
+ * The $jetpack_autoloader_cached_plugin_paths global will store a cache of the
99
+ * active plugin paths when last changed.
100
+ *
101
+ * @return boolean True if the autoloader must be reset, else false.
102
+ */
103
+ public function should_autoloader_reset() {
104
+ global $jetpack_autoloader_activating_plugins_paths;
105
+ global $jetpack_autoloader_cached_plugin_paths;
106
+
107
+ $plugin_unknown = ! in_array( $this->current_plugin_path, $this->active_plugin_paths, true );
108
+ if ( $plugin_unknown ) {
109
+ if ( ! isset( $jetpack_autoloader_activating_plugins_paths ) ) {
110
+ $jetpack_autoloader_activating_plugins_paths = array();
111
+ }
112
+
113
+ // If the current plugin isn't known, add it to the activating plugins list.
114
+ $jetpack_autoloader_activating_plugins_paths[] = $this->current_plugin_path;
115
+ $this->active_plugin_paths[] = $this->current_plugin_path;
116
+ }
117
+
118
+ $cache_invalidated = $jetpack_autoloader_cached_plugin_paths !== $this->active_plugin_paths;
119
+ if ( $cache_invalidated ) {
120
+ $jetpack_autoloader_cached_plugin_paths = $this->active_plugin_paths;
121
+ }
122
+
123
+ return $plugin_unknown || $cache_invalidated;
124
+ }
125
+
126
+ /**
127
+ * Builds the Version_Autoloader class that is used for autoloading.
128
+ *
129
+ * @return Version_Loader
130
+ */
131
+ public function build_autoloader() {
132
+ $manifest_handler = new Manifest_Handler( $this->active_plugin_paths, $this->version_selector );
133
+
134
  global $jetpack_packages_psr4;
135
  $jetpack_packages_psr4 = array();
136
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_psr4.php', $jetpack_packages_psr4 );
137
 
138
  global $jetpack_packages_classmap;
139
  $jetpack_packages_classmap = array();
140
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_classmap.php', $jetpack_packages_classmap );
141
 
142
  global $jetpack_packages_filemap;
143
  $jetpack_packages_filemap = array();
144
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_filemap.php', $jetpack_packages_filemap );
145
 
146
+ // Store the generated autoloader data in the loader so we can use it.
147
+ return new Version_Loader(
148
  $this->version_selector,
149
  $jetpack_packages_classmap,
150
  $jetpack_packages_psr4,
151
  $jetpack_packages_filemap
152
  );
 
 
 
153
  }
154
 
155
  /**
156
+ * Updates the spl autoloader chain:
157
+ * - Registers this namespace's autoloader function.
158
+ * - If a v1 autoloader function is registered, moves it to the end of the chain.
159
+ * - Removes any other v2 autoloader functions that have already been registered. This
160
+ * can occur when the autoloader is being reset by an activating plugin.
161
  */
162
+ public function update_autoloader_chain() {
163
+ spl_autoload_register( __NAMESPACE__ . '\autoloader' );
164
+
165
+ $autoload_chain = spl_autoload_functions();
166
+
167
+ foreach ( $autoload_chain as $autoloader ) {
168
+ if ( ! is_string( $autoloader ) ) {
169
+ /*
170
+ * The Jetpack Autoloader functions are registered as strings, so
171
+ * just continue if $autoloader isn't a string.
172
+ */
173
+ continue;
174
+ }
175
+
176
+ if ( self::V1_AUTOLOADER_NAME === $autoloader ) {
177
+ // Move the v1.* autoloader function to the end of the spl autoloader chain.
178
+ spl_autoload_unregister( $autoloader );
179
+ spl_autoload_register( $autoloader );
180
 
181
+ } elseif (
182
+ self::V2_AUTOLOADER_BASE === substr( $autoloader, 0, strlen( self::V2_AUTOLOADER_BASE ) )
183
+ && __NAMESPACE__ !== substr( $autoloader, 0, strlen( __NAMESPACE__ ) )
184
+ ) {
185
+ // Unregister any other v2.* autoloader functions if they're in the chain.
186
+ spl_autoload_unregister( $autoloader );
187
+ }
188
+ }
189
  }
190
  }
vendor/automattic/jetpack-autoloader/src/class-autoloader.php DELETED
@@ -1,151 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * This class handles management of the actual PHP autoloader.
6
- */
7
- class Autoloader {
8
-
9
- /**
10
- * Checks to see whether or not the autoloader should be initialized and then initializes it if so.
11
- *
12
- * @param Container|null $container The container we want to use for autoloader initialization. If none is given
13
- * then a container will be created automatically.
14
- */
15
- public static function init( $container = null ) {
16
- // The container holds and manages the lifecycle of our dependencies
17
- // to make them easier to work with and increase flexibility.
18
- if ( ! isset( $container ) ) {
19
- require_once __DIR__ . '/class-container.php';
20
- $container = new Container();
21
- }
22
-
23
- // phpcs:disable Generic.Commenting.DocComment.MissingShort
24
-
25
- /** @var Plugin_Locator $plugin_locator */
26
- $plugin_locator = $container->get( Plugin_Locator::class );
27
-
28
- /** @var Plugins_Handler $plugins_handler */
29
- $plugins_handler = $container->get( Plugins_Handler::class );
30
-
31
- // The current plugin is the one that we are attempting to initialize here.
32
- $current_plugin = $plugin_locator->find_current_plugin();
33
-
34
- // The cached plugins are all of those that were active or discovered by the autoloader during a previous request.
35
- // Note that it's possible this list will include plugins that have since been deactivated, but after a request
36
- // the cache should be updated and the deactivated plugins will be removed.
37
- $cached_plugins = $plugins_handler->get_cached_plugins();
38
-
39
- // The active plugins are those that we were able to discover in on the site. This list will not include
40
- // mu-plugins, those activated by code, or those who are hidden by filtering.
41
- // By combining these lists we can preemptively load classes for plugins that are activated via another method.
42
- // While this may result in us considering packages in deactivated plugins the request after they're removed,
43
- // there shouldn't be any problems as a result and the eventual consistency is reliable enough.
44
- $all_plugins = array_values( array_unique( array_merge( $plugins_handler->get_active_plugins(), $cached_plugins ) ) );
45
-
46
- /** @var Latest_Autoloader_Guard $guard */
47
- $guard = $container->get( Latest_Autoloader_Guard::class );
48
- if ( $guard->should_stop_init( $current_plugin, $all_plugins ) ) {
49
- return;
50
- }
51
-
52
- /** @var Autoloader_Handler $autoloader_handler */
53
- $autoloader_handler = $container->get( Autoloader_Handler::class );
54
-
55
- // Initialize the autoloader using the handler now that we're ready.
56
- $autoloader_handler->create_autoloader( $all_plugins );
57
-
58
- /** @var Hook_Manager $hook_manager */
59
- $hook_manager = $container->get( Hook_Manager::class );
60
-
61
- // When the active and cached plugin lists do not match we should
62
- // update the cache. This will prevent plugins that have been
63
- // deactivated from being considered in other requests.
64
- $hook_manager->add_action(
65
- 'shutdown',
66
- function () use ( $plugins_handler, $cached_plugins ) {
67
- // Don't save a broken cache if an error happens during some plugin's initialization.
68
- if ( ! did_action( 'plugins_loaded' ) ) {
69
- // Ensure that the cache is emptied to prevent consecutive failures if the cache is to blame.
70
- if ( ! empty( $cached_plugins ) ) {
71
- $plugins_handler->cache_plugins( array() );
72
- }
73
-
74
- return;
75
- }
76
-
77
- // Load the active plugins fresh since the list we have above might not contain
78
- // plugins that were activated but did not reset the autoloader. This happens
79
- // because they were already included in the cache.
80
- $active_plugins = $plugins_handler->get_active_plugins();
81
-
82
- // The paths should be sorted for easy comparisons with those loaded from the cache.
83
- // Note we don't need to sort the cached entries because they're already sorted.
84
- sort( $active_plugins );
85
-
86
- // We don't want to waste time saving a cache that hasn't changed.
87
- if ( $cached_plugins === $active_plugins ) {
88
- return;
89
- }
90
-
91
- $plugins_handler->cache_plugins( $active_plugins );
92
- }
93
- );
94
-
95
- // phpcs:enable Generic.Commenting.DocComment.MissingShort
96
- }
97
-
98
- /**
99
- * Loads a class file if one could be found.
100
- *
101
- * @param string $class_name The name of the class to autoload.
102
- *
103
- * @return bool Indicates whether or not a class file was loaded.
104
- */
105
- public static function load_class( $class_name ) {
106
- global $jetpack_autoloader_loader;
107
- if ( ! isset( $jetpack_autoloader_loader ) ) {
108
- return;
109
- }
110
-
111
- $file = $jetpack_autoloader_loader->find_class_file( $class_name );
112
- if ( ! isset( $file ) ) {
113
- return false;
114
- }
115
-
116
- require $file;
117
- return true;
118
- }
119
-
120
- /**
121
- * Activates this autoloader and deactivates any other v2 autoloaders that may be present.
122
- *
123
- * @param Version_Loader $version_loader The version loader for our autoloader.
124
- */
125
- public static function activate( $version_loader ) {
126
- // Set the global autoloader to indicate that we've activated this autoloader.
127
- global $jetpack_autoloader_loader;
128
- $jetpack_autoloader_loader = $version_loader;
129
-
130
- // Remove any v2 autoloader that we've already registered.
131
- $autoload_chain = spl_autoload_functions();
132
- foreach ( $autoload_chain as $autoloader ) {
133
- // Jetpack autoloaders are always strings.
134
- if ( ! is_string( $autoloader ) ) {
135
- continue;
136
- }
137
-
138
- // We can identify a v2 autoloader using the namespace prefix without the unique suffix.
139
- if ( 'Automattic\\Jetpack\\Autoloader\\jp' === substr( $autoloader, 0, 32 ) ) {
140
- spl_autoload_unregister( $autoloader );
141
- continue;
142
- }
143
- }
144
-
145
- // Ensure that the autoloader is first to avoid contention with others.
146
- spl_autoload_register( self::class . '::load_class', true, true );
147
-
148
- // Now that we've activated the autoloader we should load the filemap.
149
- $jetpack_autoloader_loader->load_filemap();
150
- }
151
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/class-container.php DELETED
@@ -1,141 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * This class manages the files and dependencies of the autoloader.
6
- */
7
- class Container {
8
-
9
- /**
10
- * Since each autoloader's class files exist within their own namespace we need a map to
11
- * convert between the local class and a shared key. Note that no version checking is
12
- * performed on these dependencies and the first autoloader to register will be the
13
- * one that is utilized.
14
- */
15
- const SHARED_DEPENDENCY_KEYS = array(
16
- Hook_Manager::class => 'Hook_Manager',
17
- );
18
-
19
- /**
20
- * A map of all the dependencies we've registered with the container and created.
21
- *
22
- * @var array
23
- */
24
- protected $dependencies;
25
-
26
- /**
27
- * The constructor.
28
- */
29
- public function __construct() {
30
- $this->dependencies = array();
31
-
32
- $this->register_shared_dependencies();
33
- $this->register_dependencies();
34
- $this->initialize_globals();
35
- }
36
-
37
- /**
38
- * Gets a dependency out of the container.
39
- *
40
- * @param string $class The class to fetch.
41
- *
42
- * @return mixed
43
- * @throws \InvalidArgumentException When a class that isn't registered with the container is fetched.
44
- */
45
- public function get( $class ) {
46
- if ( ! isset( $this->dependencies[ $class ] ) ) {
47
- throw new \InvalidArgumentException( "Class '$class' is not registered with the container." );
48
- }
49
-
50
- return $this->dependencies[ $class ];
51
- }
52
-
53
- /**
54
- * Registers all of the dependencies that are shared between all instances of the autoloader.
55
- */
56
- private function register_shared_dependencies() {
57
- global $jetpack_autoloader_container_shared;
58
- if ( ! isset( $jetpack_autoloader_container_shared ) ) {
59
- $jetpack_autoloader_container_shared = array();
60
- }
61
-
62
- $key = self::SHARED_DEPENDENCY_KEYS[ Hook_Manager::class ];
63
- if ( ! isset( $jetpack_autoloader_container_shared[ $key ] ) ) {
64
- require_once __DIR__ . '/class-hook-manager.php';
65
- $jetpack_autoloader_container_shared[ $key ] = new Hook_Manager();
66
- }
67
- $this->dependencies[ Hook_Manager::class ] = &$jetpack_autoloader_container_shared[ $key ];
68
- }
69
-
70
- /**
71
- * Registers all of the dependencies with the container.
72
- */
73
- private function register_dependencies() {
74
- require_once __DIR__ . '/class-path-processor.php';
75
- $this->dependencies[ Path_Processor::class ] = new Path_Processor();
76
-
77
- require_once __DIR__ . '/class-plugin-locator.php';
78
- $this->dependencies[ Plugin_Locator::class ] = new Plugin_Locator(
79
- $this->get( Path_Processor::class )
80
- );
81
-
82
- require_once __DIR__ . '/class-version-selector.php';
83
- $this->dependencies[ Version_Selector::class ] = new Version_Selector();
84
-
85
- require_once __DIR__ . '/class-autoloader-locator.php';
86
- $this->dependencies[ Autoloader_Locator::class ] = new Autoloader_Locator(
87
- $this->get( Version_Selector::class )
88
- );
89
-
90
- require_once __DIR__ . '/class-manifest-reader.php';
91
- $this->dependencies[ Manifest_Reader::class ] = new Manifest_Reader(
92
- $this->get( Version_Selector::class )
93
- );
94
-
95
- require_once __DIR__ . '/class-plugins-handler.php';
96
- $this->dependencies[ Plugins_Handler::class ] = new Plugins_Handler(
97
- $this->get( Plugin_Locator::class ),
98
- $this->get( Path_Processor::class )
99
- );
100
-
101
- require_once __DIR__ . '/class-autoloader-handler.php';
102
- $this->dependencies[ Autoloader_Handler::class ] = new Autoloader_Handler(
103
- $this->get( Hook_Manager::class ),
104
- $this->get( Manifest_Reader::class ),
105
- $this->get( Version_Selector::class )
106
- );
107
-
108
- require_once __DIR__ . '/class-latest-autoloader-guard.php';
109
- $this->dependencies[ Latest_Autoloader_Guard::class ] = new Latest_Autoloader_Guard(
110
- $this->get( Plugins_Handler::class ),
111
- $this->get( Autoloader_Handler::class ),
112
- $this->get( Autoloader_Locator::class )
113
- );
114
-
115
- // Register any classes that we will use elsewhere.
116
- require_once __DIR__ . '/class-version-loader.php';
117
- }
118
-
119
- /**
120
- * Initializes any of the globals needed by the autoloader.
121
- */
122
- private function initialize_globals() {
123
- // Not all plugins can be found using the locator. In cases where a plugin loads the autoloader
124
- // but was not discoverable, we will record them in this array to track them as "active".
125
- global $jetpack_autoloader_activating_plugins_paths;
126
- if ( ! isset( $jetpack_autoloader_activating_plugins_paths ) ) {
127
- $jetpack_autoloader_activating_plugins_paths = array();
128
- }
129
-
130
- // Since older autoloaders include newer ones, we need to be able to tell the difference between an
131
- // inclusion via autoloader and an inclusion via plugin file. This allows the autoloader to
132
- // perform special tasks for each kind of inclusion.
133
- global $jetpack_autoloader_including_latest;
134
- if ( ! isset( $jetpack_autoloader_including_latest ) ) {
135
- // If the latest version global has been set but the including latest hasn't, it means that an
136
- // older autoloader without support for the global is including us.
137
- global $jetpack_autoloader_latest_version;
138
- $jetpack_autoloader_including_latest = isset( $jetpack_autoloader_latest_version );
139
- }
140
- }
141
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/class-hook-manager.php DELETED
@@ -1,68 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * Allows the latest autoloader to register hooks that can be removed when the autoloader is reset.
6
- */
7
- class Hook_Manager {
8
-
9
- /**
10
- * An array containing all of the hooks that we've registered.
11
- *
12
- * @var array
13
- */
14
- private $registered_hooks;
15
-
16
- /**
17
- * The constructor.
18
- */
19
- public function __construct() {
20
- $this->registered_hooks = array();
21
- }
22
-
23
- /**
24
- * Adds an action to WordPress and registers it internally.
25
- *
26
- * @param string $tag The name of the action which is hooked.
27
- * @param callable $callable The function to call.
28
- * @param int $priority Used to specify the priority of the action.
29
- * @param int $accepted_args Used to specify the number of arguments the callable accepts.
30
- */
31
- public function add_action( $tag, $callable, $priority = 10, $accepted_args = 1 ) {
32
- $this->registered_hooks[ $tag ][] = array(
33
- 'priority' => $priority,
34
- 'callable' => $callable,
35
- );
36
-
37
- add_action( $tag, $callable, $priority, $accepted_args );
38
- }
39
-
40
- /**
41
- * Adds a filter to WordPress and registers it internally.
42
- *
43
- * @param string $tag The name of the filter which is hooked.
44
- * @param callable $callable The function to call.
45
- * @param int $priority Used to specify the priority of the filter.
46
- * @param int $accepted_args Used to specify the number of arguments the callable accepts.
47
- */
48
- public function add_filter( $tag, $callable, $priority = 10, $accepted_args = 1 ) {
49
- $this->registered_hooks[ $tag ][] = array(
50
- 'priority' => $priority,
51
- 'callable' => $callable,
52
- );
53
-
54
- add_filter( $tag, $callable, $priority, $accepted_args );
55
- }
56
-
57
- /**
58
- * Removes all of the registered hooks.
59
- */
60
- public function reset() {
61
- foreach ( $this->registered_hooks as $tag => $hooks ) {
62
- foreach ( $hooks as $hook ) {
63
- remove_filter( $tag, $hook['callable'], $hook['priority'] );
64
- }
65
- }
66
- $this->registered_hooks = array();
67
- }
68
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/class-latest-autoloader-guard.php DELETED
@@ -1,85 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * This class ensures that we're only executing the latest autoloader.
6
- */
7
- class Latest_Autoloader_Guard {
8
-
9
- /**
10
- * The Plugins_Handler instance.
11
- *
12
- * @var Plugins_Handler
13
- */
14
- private $plugins_handler;
15
-
16
- /**
17
- * The Autoloader_Handler instance.
18
- *
19
- * @var Autoloader_Handler
20
- */
21
- private $autoloader_handler;
22
-
23
- /**
24
- * The Autoloader_locator instance.
25
- *
26
- * @var Autoloader_Locator
27
- */
28
- private $autoloader_locator;
29
-
30
- /**
31
- * The constructor.
32
- *
33
- * @param Plugins_Handler $plugins_handler The Plugins_Handler instance.
34
- * @param Autoloader_Handler $autoloader_handler The Autoloader_Handler instance.
35
- * @param Autoloader_Locator $autoloader_locator The Autoloader_Locator instance.
36
- */
37
- public function __construct( $plugins_handler, $autoloader_handler, $autoloader_locator ) {
38
- $this->plugins_handler = $plugins_handler;
39
- $this->autoloader_handler = $autoloader_handler;
40
- $this->autoloader_locator = $autoloader_locator;
41
- }
42
-
43
- /**
44
- * Indicates whether or not the autoloader should be initialized. Note that this function
45
- * has the side-effect of actually loading the latest autoloader in the event that this
46
- * is not it.
47
- *
48
- * @param string $current_plugin The current plugin we're checking.
49
- * @param string[] $plugins The active plugins to check for autoloaders in.
50
- *
51
- * @return bool True if we should stop initialization, otherwise false.
52
- */
53
- public function should_stop_init( $current_plugin, $plugins ) {
54
- global $jetpack_autoloader_including_latest;
55
- global $jetpack_autoloader_latest_version;
56
-
57
- // When we're being included from an older autoloader we need to
58
- // reset the latest version so that the new autoloader can look
59
- // for the latest autoloader again.
60
- if ( $jetpack_autoloader_including_latest ) {
61
- $jetpack_autoloader_latest_version = null;
62
- }
63
-
64
- // We need to reset the autoloader when the plugins change because
65
- // that means the autoloader was generated with a different list.
66
- if ( $this->plugins_handler->have_plugins_changed( $plugins ) ) {
67
- $this->autoloader_handler->reset_autoloader();
68
- }
69
-
70
- // Don't bother initializing the autoloader if it already has been.
71
- if ( isset( $jetpack_autoloader_latest_version ) ) {
72
- return true;
73
- }
74
-
75
- $latest_plugin = $this->autoloader_locator->find_latest_autoloader( $plugins, $jetpack_autoloader_latest_version );
76
- if ( isset( $latest_plugin ) && $latest_plugin !== $current_plugin ) {
77
- $jetpack_autoloader_including_latest = true;
78
- require $this->autoloader_locator->get_autoloader_path( $latest_plugin );
79
- $jetpack_autoloader_including_latest = false;
80
- return true;
81
- }
82
-
83
- return false;
84
- }
85
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/{class-manifest-reader.php → class-manifest-handler.php} RENAMED
@@ -2,9 +2,16 @@
2
  /* HEADER */ // phpcs:ignore
3
 
4
  /**
5
- * This class reads autoloader manifest files.
6
  */
7
- class Manifest_Reader {
 
 
 
 
 
 
 
8
 
9
  /**
10
  * The Version_Selector object.
@@ -16,27 +23,28 @@ class Manifest_Reader {
16
  /**
17
  * The constructor.
18
  *
 
19
  * @param Version_Selector $version_selector The Version_Selector object.
20
  */
21
- public function __construct( $version_selector ) {
22
- $this->version_selector = $version_selector;
 
23
  }
24
 
25
  /**
26
- * Reads all of the manifests in the given plugin paths.
27
  *
28
- * @param array $plugin_paths The paths to the plugins we're loading the manifest in.
29
  * @param string $manifest_path The path that we're loading the manifest from in each plugin.
30
  * @param array $path_map The path map to add the contents of the manifests to.
31
  *
32
  * @return array $path_map The path map we've built using the manifests in each plugin.
33
  */
34
- public function read_manifests( $plugin_paths, $manifest_path, &$path_map ) {
35
  $file_paths = array_map(
36
  function ( $path ) use ( $manifest_path ) {
37
  return trailingslashit( $path ) . $manifest_path;
38
  },
39
- $plugin_paths
40
  );
41
 
42
  foreach ( $file_paths as $path ) {
2
  /* HEADER */ // phpcs:ignore
3
 
4
  /**
5
+ * This class selects the most recent version of a registered path.
6
  */
7
+ class Manifest_Handler {
8
+
9
+ /**
10
+ * An array of the active plugin paths we want to search.
11
+ *
12
+ * @var array
13
+ */
14
+ private $active_plugin_paths;
15
 
16
  /**
17
  * The Version_Selector object.
23
  /**
24
  * The constructor.
25
  *
26
+ * @param array $active_plugin_paths An array of the active plugin paths we want to search.
27
  * @param Version_Selector $version_selector The Version_Selector object.
28
  */
29
+ public function __construct( $active_plugin_paths, $version_selector ) {
30
+ $this->active_plugin_paths = $active_plugin_paths;
31
+ $this->version_selector = $version_selector;
32
  }
33
 
34
  /**
35
+ * Registers all of the paths in a given manifest.
36
  *
 
37
  * @param string $manifest_path The path that we're loading the manifest from in each plugin.
38
  * @param array $path_map The path map to add the contents of the manifests to.
39
  *
40
  * @return array $path_map The path map we've built using the manifests in each plugin.
41
  */
42
+ public function register_plugin_manifests( $manifest_path, &$path_map ) {
43
  $file_paths = array_map(
44
  function ( $path ) use ( $manifest_path ) {
45
  return trailingslashit( $path ) . $manifest_path;
46
  },
47
+ $this->active_plugin_paths
48
  );
49
 
50
  foreach ( $file_paths as $path ) {
vendor/automattic/jetpack-autoloader/src/class-path-processor.php DELETED
@@ -1,157 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * This class handles dealing with paths for the autoloader.
6
- */
7
- class Path_Processor {
8
- /**
9
- * Given a path this will replace any of the path constants with a token to represent it.
10
- *
11
- * @param string $path The path we want to process.
12
- * @return string The tokenized path.
13
- */
14
- public function tokenize_path_constants( $path ) {
15
- $path = wp_normalize_path( $path );
16
-
17
- $constants = $this->get_normalized_constants();
18
- foreach ( $constants as $constant => $constant_path ) {
19
- $len = strlen( $constant_path );
20
- if ( substr( $path, 0, $len ) !== $constant_path ) {
21
- continue;
22
- }
23
-
24
- return substr_replace( $path, '{{' . $constant . '}}', 0, $len );
25
- }
26
-
27
- return $path;
28
- }
29
-
30
- /**
31
- * Given a path this will replace any of the path constant tokens with the expanded path.
32
- *
33
- * @param string $tokenized_path The path we want to process.
34
- * @return string The expanded path.
35
- */
36
- public function untokenize_path_constants( $tokenized_path ) {
37
- $tokenized_path = wp_normalize_path( $tokenized_path );
38
-
39
- $constants = $this->get_normalized_constants();
40
- foreach ( $constants as $constant => $constant_path ) {
41
- $constant = '{{' . $constant . '}}';
42
-
43
- $len = strlen( $constant );
44
- if ( substr( $tokenized_path, 0, $len ) !== $constant ) {
45
- continue;
46
- }
47
-
48
- return substr_replace( $tokenized_path, $constant_path, 0, $len );
49
- }
50
-
51
- return $tokenized_path;
52
- }
53
-
54
- /**
55
- * Given a file and an array of places it might be, this will find the absolute path and return it.
56
- *
57
- * @param string $file The plugin or theme file to resolve.
58
- * @param array $directories_to_check The directories we should check for the file if it isn't an absolute path.
59
- * @return string|false Returns the absolute path to the directory, otherwise false.
60
- */
61
- public function find_directory_with_autoloader( $file, $directories_to_check ) {
62
- $file = wp_normalize_path( $file );
63
-
64
- // We need an absolute path to the plugin directory to check for an autoloader.
65
- if ( $this->is_absolute_path( $file ) ) {
66
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
67
- $directory = @is_file( $file ) ? dirname( $file ) : $file;
68
- } else {
69
- $directory = $this->find_plugin_directory( $file, $directories_to_check );
70
- if ( ! isset( $directory ) ) {
71
- return false;
72
- }
73
- }
74
-
75
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
76
- if ( ! @is_file( $directory . '/vendor/composer/jetpack_autoload_classmap.php' ) ) {
77
- return false;
78
- }
79
-
80
- return $directory;
81
- }
82
-
83
- /**
84
- * Fetches an array of normalized paths keyed by the constant they came from.
85
- *
86
- * @return string[] The normalized paths keyed by the constant.
87
- */
88
- private function get_normalized_constants() {
89
- $raw_constants = array(
90
- // Order the constants from most-specific to least-specific.
91
- 'WP_PLUGIN_DIR',
92
- 'WPMU_PLUGIN_DIR',
93
- 'WP_CONTENT_DIR',
94
- 'ABSPATH',
95
- );
96
-
97
- $constants = array();
98
- foreach ( $raw_constants as $raw ) {
99
- if ( ! defined( $raw ) ) {
100
- continue;
101
- }
102
-
103
- $path = wp_normalize_path( constant( $raw ) );
104
- if ( isset( $path ) ) {
105
- $constants[ $raw ] = $path;
106
- }
107
- }
108
-
109
- return $constants;
110
- }
111
-
112
- /**
113
- * Indicates whether or not a path is absolute.
114
- *
115
- * @param string $path The path to check.
116
- * @return bool True if the path is absolute, otherwise false.
117
- */
118
- private function is_absolute_path( $path ) {
119
- if ( 0 === strlen( $path ) || '.' === $path[0] ) {
120
- return false;
121
- }
122
-
123
- // Absolute paths on Windows may begin with a drive letter.
124
- if ( preg_match( '/^[a-zA-Z]:[\/\\\\]/', $path ) ) {
125
- return true;
126
- }
127
-
128
- // A path starting with / or \ is absolute; anything else is relative.
129
- return ( '/' === $path[0] || '\\' === $path[0] );
130
- }
131
-
132
- /**
133
- * Given a file and a list of directories to check, this method will try to figure out
134
- * the absolute path to the file in question.
135
- *
136
- * @param string $normalized_path The normalized path to the plugin or theme file to resolve.
137
- * @param array $directories_to_check The directories we should check for the file if it isn't an absolute path.
138
- *
139
- * @return string|null The absolute path to the plugin directory, otherwise null.
140
- */
141
- private function find_plugin_directory( $normalized_path, $directories_to_check ) {
142
- // We're only able to find the absolute path for plugin/theme PHP files.
143
- if ( ! is_string( $normalized_path ) || '.php' !== substr( $normalized_path, -4 ) ) {
144
- return null;
145
- }
146
-
147
- foreach ( $directories_to_check as $directory ) {
148
- $normalized_check = wp_normalize_path( trailingslashit( $directory ) ) . $normalized_path;
149
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
150
- if ( @is_file( $normalized_check ) ) {
151
- return dirname( $normalized_check );
152
- }
153
- }
154
-
155
- return null;
156
- }
157
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/class-plugin-locator.php DELETED
@@ -1,132 +0,0 @@
1
- <?php
2
- /* HEADER */ // phpcs:ignore
3
-
4
- /**
5
- * This class scans the WordPress installation to find active plugins.
6
- */
7
- class Plugin_Locator {
8
-
9
- /**
10
- * The path processor for finding plugin paths.
11
- *
12
- * @var Path_Processor
13
- */
14
- private $path_processor;
15
-
16
- /**
17
- * The constructor.
18
- *
19
- * @param Path_Processor $path_processor The Path_Processor instance.
20
- */
21
- public function __construct( $path_processor ) {
22
- $this->path_processor = $path_processor;
23
- }
24
-
25
- /**
26
- * Finds the path to the current plugin.
27
- *
28
- * @return string $path The path to the current plugin.
29
- * @throws \RuntimeException If the current plugin does not have an autoloader.
30
- */
31
- public function find_current_plugin() {
32
- // Escape from `vendor/__DIR__` to root plugin directory.
33
- $plugin_directory = dirname( dirname( __DIR__ ) );
34
-
35
- // Use the path processor to ensure that this is an autoloader we're referencing.
36
- $path = $this->path_processor->find_directory_with_autoloader( $plugin_directory, array() );
37
- if ( false === $path ) {
38
- throw new \RuntimeException( 'Failed to locate plugin ' . $plugin_directory );
39
- }
40
-
41
- return $path;
42
- }
43
-
44
- /**
45
- * Checks a given option for plugin paths.
46
- *
47
- * @param string $option_name The option that we want to check for plugin information.
48
- * @param bool $site_option Indicates whether or not we want to check the site option.
49
- *
50
- * @return array $plugin_paths The list of absolute paths we've found.
51
- */
52
- public function find_using_option( $option_name, $site_option = false ) {
53
- $raw = $site_option ? get_site_option( $option_name, array() ) : get_option( $option_name, array() );
54
- if ( empty( $raw ) ) {
55
- return array();
56
- }
57
-
58
- return $this->convert_plugins_to_paths( $raw );
59
- }
60
-
61
- /**
62
- * Checks for plugins that are being activated in this request and returns all that it finds.
63
- *
64
- * @return array $plugin_paths The list of absolute paths we've found.
65
- */
66
- public function find_activating_this_request() {
67
- // phpcs:disable WordPress.Security.NonceVerification.Recommended
68
-
69
- /**
70
- * Note: we're not actually checking the nonce here because it's too early
71
- * in the execution. The pluggable functions are not yet loaded to give
72
- * plugins a chance to plug their versions. Therefore we're doing the bare
73
- * minimum: checking whether the nonce exists and it's in the right place.
74
- * The request will fail later if the nonce doesn't pass the check.
75
- */
76
- if ( empty( $_REQUEST['_wpnonce'] ) ) {
77
- return array();
78
- }
79
-
80
- $plugin_slugs = array();
81
-
82
- $action = isset( $_REQUEST['action'] ) ? wp_unslash( $_REQUEST['action'] ) : false;
83
- switch ( $action ) {
84
- case 'activate':
85
- if ( empty( $_REQUEST['plugin'] ) ) {
86
- break;
87
- }
88
-
89
- $plugin_slugs[] = wp_unslash( $_REQUEST['plugin'] );
90
- break;
91
-
92
- case 'activate-selected':
93
- if ( empty( $_REQUEST['checked'] ) ) {
94
- break;
95
- }
96
-
97
- $plugin_slugs = wp_unslash( $_REQUEST['checked'] );
98
- break;
99
- }
100
-
101
- return $this->convert_plugins_to_paths( $plugin_slugs );
102
- }
103
-
104
- /**
105
- * Given an array of plugin slugs or paths, this will convert them to absolute paths and filter
106
- * out the plugins that are not directory plugins. Note that array keys will also be included
107
- * if they are plugin paths!
108
- *
109
- * @param string[] $plugins Plugin paths or slugs to filter.
110
- *
111
- * @return string[]
112
- */
113
- private function convert_plugins_to_paths( $plugins ) {
114
- // We're going to look for plugins in the standard directories.
115
- $path_constants = array( WP_PLUGIN_DIR, WPMU_PLUGIN_DIR );
116
-
117
- $plugin_paths = array();
118
- foreach ( $plugins as $key => $value ) {
119
- $path = $this->path_processor->find_directory_with_autoloader( $key, $path_constants );
120
- if ( $path ) {
121
- $plugin_paths[] = $path;
122
- }
123
-
124
- $path = $this->path_processor->find_directory_with_autoloader( $value, $path_constants );
125
- if ( $path ) {
126
- $plugin_paths[] = $path;
127
- }
128
- }
129
-
130
- return $plugin_paths;
131
- }
132
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/automattic/jetpack-autoloader/src/class-plugins-handler.php CHANGED
@@ -2,149 +2,128 @@
2
  /* HEADER */ // phpcs:ignore
3
 
4
  /**
5
- * This class handles locating and caching all of the active plugins.
6
  */
7
  class Plugins_Handler {
8
- /**
9
- * The transient key for plugin paths.
10
- */
11
- const TRANSIENT_KEY = 'jetpack_autoloader_plugin_paths';
12
 
13
  /**
14
- * The locator for finding plugins in different locations.
15
  *
16
- * @var Plugin_Locator
17
  */
18
- private $plugin_locator;
 
19
 
20
- /**
21
- * The processor for transforming cached paths.
22
- *
23
- * @var Path_Processor
24
- */
25
- private $path_processor;
 
 
 
 
 
 
 
26
 
27
  /**
28
- * The constructor.
29
  *
30
- * @param Plugin_Locator $plugin_locator The locator for finding active plugins.
31
- * @param Path_Processor $path_processor The processor for transforming cached paths.
32
  */
33
- public function __construct( $plugin_locator, $path_processor ) {
34
- $this->plugin_locator = $plugin_locator;
35
- $this->path_processor = $path_processor;
 
 
 
 
36
  }
37
 
38
  /**
39
- * Gets all of the active plugins we can find.
40
  *
41
- * @return string[]
42
  */
43
- public function get_active_plugins() {
44
- global $jetpack_autoloader_activating_plugins_paths;
45
- global $jetpack_autoloader_including_latest;
46
-
47
- // We're going to build a unique list of plugins from a few different sources
48
- // to find all of our "active" plugins. While we need to return an integer
49
- // array, we're going to use an associative array internally to reduce
50
- // the amount of time that we're going to spend checking uniqueness
51
- // and merging different arrays together to form the output.
52
- $active_plugins = array();
53
-
54
- // Make sure that plugins which have activated this request are considered as "active" even though
55
- // they probably won't be present in any option.
56
- if ( is_array( $jetpack_autoloader_activating_plugins_paths ) ) {
57
- foreach ( $jetpack_autoloader_activating_plugins_paths as $path ) {
58
- $active_plugins[ $path ] = $path;
59
- }
60
- }
61
-
62
- // This option contains all of the plugins that have been activated.
63
- $plugins = $this->plugin_locator->find_using_option( 'active_plugins' );
64
- foreach ( $plugins as $path ) {
65
- $active_plugins[ $path ] = $path;
66
- }
67
-
68
- // This option contains all of the multisite plugins that have been activated.
69
- if ( is_multisite() ) {
70
- $plugins = $this->plugin_locator->find_using_option( 'active_sitewide_plugins', true );
71
- foreach ( $plugins as $path ) {
72
- $active_plugins[ $path ] = $path;
73
- }
74
- }
75
-
76
- $plugins = $this->plugin_locator->find_activating_this_request();
77
- foreach ( $plugins as $path ) {
78
- $active_plugins[ $path ] = $path;
79
- }
80
-
81
- // When the current plugin isn't considered "active" there's a problem.
82
- // Since we're here, the plugin is active and currently being loaded.
83
- // We can support this case (mu-plugins and non-standard activation)
84
- // by adding the current plugin to the active list and marking it
85
- // as an unknown (activating) plugin. This also has the benefit
86
- // of causing a reset because the active plugins list has
87
- // been changed since it was saved in the global.
88
- $current_plugin = $this->plugin_locator->find_current_plugin();
89
- if ( ! in_array( $current_plugin, $active_plugins, true ) && ! $jetpack_autoloader_including_latest ) {
90
- $active_plugins[ $current_plugin ] = $current_plugin;
91
- $jetpack_autoloader_activating_plugins_paths[] = $current_plugin;
92
- }
93
-
94
- // Transform the array so that we don't have to worry about the keys interacting with other array types later.
95
- return array_values( $active_plugins );
96
  }
97
 
98
  /**
99
- * Gets all of the cached plugins if there are any.
100
  *
101
- * @return string[]
102
  */
103
- public function get_cached_plugins() {
104
- $cached = get_transient( self::TRANSIENT_KEY );
105
- if ( false === $cached ) {
106
- return array();
107
- }
108
-
109
- // We need to expand the tokens to an absolute path for this webserver.
110
- return array_map( array( $this->path_processor, 'untokenize_path_constants' ), $cached );
111
  }
112
 
113
  /**
114
- * Saves the plugin list to the cache.
 
 
115
  *
116
- * @param array $plugins The plugin list to save to the cache.
117
  */
118
- public function cache_plugins( $plugins ) {
119
- // We store the paths in a tokenized form so that that webservers with different absolute paths don't break.
120
- $plugins = array_map( array( $this->path_processor, 'tokenize_path_constants' ), $plugins );
121
-
122
- set_transient( self::TRANSIENT_KEY, $plugins );
123
  }
124
 
125
  /**
126
- * Checks to see whether or not the plugin list given has changed when compared to the
127
- * shared `$jetpack_autoloader_cached_plugin_paths` global. This allows us to deal
128
- * with cases where the active list may change due to filtering..
129
- *
130
- * @param string[] $plugins The plugins list to check against the global cache.
131
  *
132
- * @return bool True if the plugins have changed, otherwise false.
133
  */
134
- public function have_plugins_changed( $plugins ) {
135
- global $jetpack_autoloader_cached_plugin_paths;
136
-
137
- // When no autoloader has executed there is nothing to have changed.
138
- if ( ! isset( $jetpack_autoloader_cached_plugin_paths ) ) {
139
- $jetpack_autoloader_cached_plugin_paths = $plugins;
140
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  }
142
 
143
- if ( $jetpack_autoloader_cached_plugin_paths !== $plugins ) {
144
- $jetpack_autoloader_cached_plugin_paths = $plugins;
145
- return true;
 
 
 
146
  }
147
 
148
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
149
  }
150
  }
2
  /* HEADER */ // phpcs:ignore
3
 
4
  /**
5
+ * This class provides information about the current plugin and the site's active plugins.
6
  */
7
  class Plugins_Handler {
 
 
 
 
8
 
9
  /**
10
+ * Returns an array containing the paths of all active plugins and all known activating plugins.
11
  *
12
+ * @return array An array of plugin paths as strings or an empty array.
13
  */
14
+ public function get_all_active_plugins_paths() {
15
+ global $jetpack_autoloader_activating_plugins_paths;
16
 
17
+ $active_plugins_paths = $this->get_active_plugins_paths();
18
+ $multisite_plugins_paths = $this->get_multisite_plugins_paths();
19
+ $activating_plugins_paths = $this->get_plugins_activating_via_request();
20
+
21
+ return array_unique(
22
+ array_merge(
23
+ $active_plugins_paths,
24
+ $activating_plugins_paths,
25
+ $multisite_plugins_paths,
26
+ (array) $jetpack_autoloader_activating_plugins_paths
27
+ )
28
+ );
29
+ }
30
 
31
  /**
32
+ * Returns an array containing the paths of the active sitewide plugins in a multisite environment.
33
  *
34
+ * @return array The paths of the active sitewide plugins or an empty array.
 
35
  */
36
+ protected function get_multisite_plugins_paths() {
37
+ $plugin_slugs = is_multisite()
38
+ ? array_keys( get_site_option( 'active_sitewide_plugins', array() ) )
39
+ : array();
40
+
41
+ $plugin_slugs = array_filter( $plugin_slugs, array( $this, 'is_directory_plugin' ) );
42
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
43
  }
44
 
45
  /**
46
+ * Returns an array containing the paths of the currently active plugins.
47
  *
48
+ * @return array The active plugins' paths or an empty array.
49
  */
50
+ protected function get_active_plugins_paths() {
51
+ $plugin_slugs = (array) get_option( 'active_plugins', array() );
52
+ $plugin_slugs = array_filter( $plugin_slugs, array( $this, 'is_directory_plugin' ) );
53
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  }
55
 
56
  /**
57
+ * Adds the plugin directory from the WP_PLUGIN_DIR constant to the plugin slug.
58
  *
59
+ * @param string $plugin_slug The plugin slug.
60
  */
61
+ private function create_plugin_path( $plugin_slug ) {
62
+ $plugin_dir = str_replace( '\\', '/', WP_PLUGIN_DIR );
63
+ return trailingslashit( $plugin_dir ) . substr( $plugin_slug, 0, strrpos( $plugin_slug, '/' ) );
 
 
 
 
 
64
  }
65
 
66
  /**
67
+ * Ensure the plugin has its own directory and not a single-file plugin.
68
+ *
69
+ * @param string $plugin Plugin name, may be prefixed with "/".
70
  *
71
+ * @return bool
72
  */
73
+ public function is_directory_plugin( $plugin ) {
74
+ return strlen( $plugin ) > 1 && false !== strpos( $plugin, '/', 1 );
 
 
 
75
  }
76
 
77
  /**
78
+ * Returns an array containing the names of plugins that are activating via a request.
 
 
 
 
79
  *
80
+ * @return array An array of names of the activating plugins or an empty array.
81
  */
82
+ private function get_plugins_activating_via_request() {
83
+
84
+ // phpcs:disable WordPress.Security.NonceVerification.Recommended
85
+ // phpcs:disable WordPress.Security.ValidatedSanitizedInput.MissingUnslash
86
+ // phpcs:disable WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
87
+
88
+ $action = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : false;
89
+ $plugin = isset( $_REQUEST['plugin'] ) ? $_REQUEST['plugin'] : false;
90
+ $nonce = isset( $_REQUEST['_wpnonce'] ) ? $_REQUEST['_wpnonce'] : false;
91
+
92
+ /**
93
+ * Note: we're not actually checking the nonce here becase it's too early
94
+ * in the execution. The pluggable functions are not yet loaded to give
95
+ * plugins a chance to plug their versions. Therefore we're doing the bare
96
+ * minimum: checking whether the nonce exists and it's in the right place.
97
+ * The request will fail later if the nonce doesn't pass the check.
98
+ */
99
+
100
+ // In case of a single plugin activation there will be a plugin slug.
101
+ if ( 'activate' === $action && ! empty( $nonce ) ) {
102
+ return array( $this->create_plugin_path( wp_unslash( $plugin ) ) );
103
  }
104
 
105
+ $plugins = isset( $_REQUEST['checked'] ) ? $_REQUEST['checked'] : array();
106
+
107
+ // In case of bulk activation there will be an array of plugins.
108
+ if ( 'activate-selected' === $action && ! empty( $nonce ) ) {
109
+ $plugin_slugs = array_map( 'wp_unslash', $plugins );
110
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
111
  }
112
 
113
+ // phpcs:enable WordPress.Security.NonceVerification.Recommended
114
+ // phpcs:enable WordPress.Security.ValidatedSanitizedInput.MissingUnslash
115
+ // phpcs:enable WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
116
+ return array();
117
+ }
118
+
119
+ /**
120
+ * Returns the path of the current plugin.
121
+ *
122
+ * @return string The path of the current plugin.
123
+ */
124
+ public function get_current_plugin_path() {
125
+ $vendor_path = str_replace( '\\', '/', dirname( __DIR__ ) );
126
+ // Path to the plugin's folder (the parent of the vendor/jetpack-autoloader folder).
127
+ return substr( $vendor_path, 0, strrpos( $vendor_path, '/' ) );
128
  }
129
  }
vendor/automattic/jetpack-autoloader/src/class-version-selector.php CHANGED
@@ -15,7 +15,7 @@ class Version_Selector {
15
  * @param String $compare_version The package version that is being evaluated to
16
  * determine if the version needs to be updated.
17
  *
18
- * @return bool Returns true if the selected package version should be updated,
19
  * else false.
20
  */
21
  public function is_version_update_required( $selected_version, $compare_version ) {
@@ -49,7 +49,7 @@ class Version_Selector {
49
  *
50
  * @param String $version The package version.
51
  *
52
- * @return bool True if the version is a dev version, else false.
53
  */
54
  private function is_package_version_dev( $version ) {
55
  if ( 'dev-' === substr( $version, 0, 4 ) || '9999999-dev' === $version ) {
15
  * @param String $compare_version The package version that is being evaluated to
16
  * determine if the version needs to be updated.
17
  *
18
+ * @return Boolean Returns true if the selected package version should be updated,
19
  * else false.
20
  */
21
  public function is_version_update_required( $selected_version, $compare_version ) {
49
  *
50
  * @param String $version The package version.
51
  *
52
+ * @return Boolean True if the version is a dev version, else false.
53
  */
54
  private function is_package_version_dev( $version ) {
55
  if ( 'dev-' === substr( $version, 0, 4 ) || '9999999-dev' === $version ) {
vendor/automattic/jetpack-autoloader/src/functions.php ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /* HEADER */ // phpcs:ignore
3
+
4
+ /**
5
+ * Used for autoloading jetpack packages.
6
+ *
7
+ * @param string $class_name Class Name to load.
8
+ *
9
+ * @return Boolean Whether the class_name was found in the classmap.
10
+ */
11
+ function autoloader( $class_name ) {
12
+ global $jetpack_autoloader_loader;
13
+ if ( ! isset( $jetpack_autoloader_loader ) ) {
14
+ return false;
15
+ }
16
+
17
+ $file = $jetpack_autoloader_loader->find_class_file( $class_name );
18
+ if ( ! isset( $file ) ) {
19
+ return false;
20
+ }
21
+
22
+ require_once $file;
23
+ return true;
24
+ }
25
+
26
+ /**
27
+ * Finds the latest installed autoloader. If this is the latest autoloader, sets
28
+ * up the classmap and filemap.
29
+ */
30
+ function set_up_autoloader() {
31
+ global $jetpack_autoloader_latest_version;
32
+ global $jetpack_autoloader_loader;
33
+
34
+ require_once __DIR__ . '/class-plugins-handler.php';
35
+ require_once __DIR__ . '/class-version-selector.php';
36
+ require_once __DIR__ . '/class-autoloader-locator.php';
37
+ require_once __DIR__ . '/class-autoloader-handler.php';
38
+
39
+ $plugins_handler = new Plugins_Handler();
40
+ $version_selector = new Version_Selector();
41
+ $autoloader_handler = new Autoloader_Handler(
42
+ $plugins_handler->get_current_plugin_path(),
43
+ $plugins_handler->get_all_active_plugins_paths(),
44
+ new Autoloader_Locator( $version_selector ),
45
+ $version_selector
46
+ );
47
+
48
+ // The autoloader must be reset when a plugin that was previously unknown is detected.
49
+ if ( $autoloader_handler->should_autoloader_reset() ) {
50
+ $jetpack_autoloader_latest_version = null;
51
+ $jetpack_autoloader_loader = null;
52
+ }
53
+
54
+ if ( ! $autoloader_handler->is_latest_autoloader() || isset( $jetpack_autoloader_loader ) ) {
55
+ return;
56
+ }
57
+
58
+ require_once __DIR__ . '/class-manifest-handler.php';
59
+ require_once __DIR__ . '/class-version-loader.php';
60
+
61
+ $jetpack_autoloader_loader = $autoloader_handler->build_autoloader();
62
+ $autoloader_handler->update_autoloader_chain();
63
+
64
+ // Now that the autoloader is ready we can load the files in the filemap safely.
65
+ $jetpack_autoloader_loader->load_filemap();
66
+ }
vendor/composer/InstalledVersions.php CHANGED
@@ -19,19 +19,19 @@ private static $installed = array (
19
  'aliases' =>
20
  array (
21
  ),
22
- 'reference' => '7bbf49437a646d8c1ffea3ae8281131c22a8398f',
23
  'name' => 'vendidero/woocommerce-germanized',
24
  ),
25
  'versions' =>
26
  array (
27
  'automattic/jetpack-autoloader' =>
28
  array (
29
- 'pretty_version' => 'v2.7.0',
30
- 'version' => '2.7.0.0',
31
  'aliases' =>
32
  array (
33
  ),
34
- 'reference' => 'd6d89b71c0f9ba13bbbfb28a75a9174c79193d2a',
35
  ),
36
  'baltpeter/internetmarke-php' =>
37
  array (
@@ -103,25 +103,25 @@ private static $installed = array (
103
  'aliases' =>
104
  array (
105
  ),
106
- 'reference' => '7bbf49437a646d8c1ffea3ae8281131c22a8398f',
107
  ),
108
  'vendidero/woocommerce-germanized-dhl' =>
109
  array (
110
- 'pretty_version' => 'v1.4.1',
111
- 'version' => '1.4.1.0',
112
  'aliases' =>
113
  array (
114
  ),
115
- 'reference' => '380a991df877aa8efd736dbdd1abfdd5fd9ce0af',
116
  ),
117
  'vendidero/woocommerce-germanized-shipments' =>
118
  array (
119
- 'pretty_version' => 'v1.4.1',
120
- 'version' => '1.4.1.0',
121
  'aliases' =>
122
  array (
123
  ),
124
- 'reference' => '1e7f4bf2caefe8eb84a5e043555a0206837eecef',
125
  ),
126
  'vendidero/woocommerce-trusted-shops' =>
127
  array (
19
  'aliases' =>
20
  array (
21
  ),
22
+ 'reference' => '286f3d1c3d4c6ea1a197c7b0a23b313121b49edd',
23
  'name' => 'vendidero/woocommerce-germanized',
24
  ),
25
  'versions' =>
26
  array (
27
  'automattic/jetpack-autoloader' =>
28
  array (
29
+ 'pretty_version' => 'v2.6.0',
30
+ 'version' => '2.6.0.0',
31
  'aliases' =>
32
  array (
33
  ),
34
+ 'reference' => '47dde8dbca6b1e30f176725f2f748a9abefcaf58',
35
  ),
36
  'baltpeter/internetmarke-php' =>
37
  array (
103
  'aliases' =>
104
  array (
105
  ),
106
+ 'reference' => '286f3d1c3d4c6ea1a197c7b0a23b313121b49edd',
107
  ),
108
  'vendidero/woocommerce-germanized-dhl' =>
109
  array (
110
+ 'pretty_version' => 'v1.4.2',
111
+ 'version' => '1.4.2.0',
112
  'aliases' =>
113
  array (
114
  ),
115
+ 'reference' => '6429384329e525755bdc463ee09f04a5e1b628ef',
116
  ),
117
  'vendidero/woocommerce-germanized-shipments' =>
118
  array (
119
+ 'pretty_version' => 'v1.4.2',
120
+ 'version' => '1.4.2.0',
121
  'aliases' =>
122
  array (
123
  ),
124
+ 'reference' => 'c9fd71a33b9731bcd7e7f674c0245c4c8ca67fc7',
125
  ),
126
  'vendidero/woocommerce-trusted-shops' =>
127
  array (
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f
6
  {
7
  private static $loader;
8
 
@@ -24,15 +24,15 @@ class ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
- spl_autoload_register(array('ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
29
- spl_autoload_unregister(array('ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
- call_user_func(\Composer\Autoload\ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
@@ -53,19 +53,19 @@ class ComposerAutoloaderInitaee4de30c4f137154f4b9bffbe5c7d1f
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
- $includeFiles = Composer\Autoload\ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
- composerRequireaee4de30c4f137154f4b9bffbe5c7d1f($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
- function composerRequireaee4de30c4f137154f4b9bffbe5c7d1f($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit5ab615d17eae4e49bf0e7d0d1f73bc0f
6
  {
7
  private static $loader;
8
 
24
 
25
  require __DIR__ . '/platform_check.php';
26
 
27
+ spl_autoload_register(array('ComposerAutoloaderInit5ab615d17eae4e49bf0e7d0d1f73bc0f', 'loadClassLoader'), true, true);
28
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
29
+ spl_autoload_unregister(array('ComposerAutoloaderInit5ab615d17eae4e49bf0e7d0d1f73bc0f', 'loadClassLoader'));
30
 
31
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
32
  if ($useStaticLoader) {
33
  require __DIR__ . '/autoload_static.php';
34
 
35
+ call_user_func(\Composer\Autoload\ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f::getInitializer($loader));
36
  } else {
37
  $map = require __DIR__ . '/autoload_namespaces.php';
38
  foreach ($map as $namespace => $path) {
53
  $loader->register(true);
54
 
55
  if ($useStaticLoader) {
56
+ $includeFiles = Composer\Autoload\ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f::$files;
57
  } else {
58
  $includeFiles = require __DIR__ . '/autoload_files.php';
59
  }
60
  foreach ($includeFiles as $fileIdentifier => $file) {
61
+ composerRequire5ab615d17eae4e49bf0e7d0d1f73bc0f($fileIdentifier, $file);
62
  }
63
 
64
  return $loader;
65
  }
66
  }
67
 
68
+ function composerRequire5ab615d17eae4e49bf0e7d0d1f73bc0f($fileIdentifier, $file)
69
  {
70
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
71
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f
8
  {
9
  public static $files = array (
10
  '6124b4c8570aa390c21fafd04a26c69f' => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php',
@@ -96,9 +96,9 @@ class ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f
96
  public static function getInitializer(ClassLoader $loader)
97
  {
98
  return \Closure::bind(function () use ($loader) {
99
- $loader->prefixLengthsPsr4 = ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f::$prefixLengthsPsr4;
100
- $loader->prefixDirsPsr4 = ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f::$prefixDirsPsr4;
101
- $loader->classMap = ComposerStaticInitaee4de30c4f137154f4b9bffbe5c7d1f::$classMap;
102
 
103
  }, null, ClassLoader::class);
104
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f
8
  {
9
  public static $files = array (
10
  '6124b4c8570aa390c21fafd04a26c69f' => __DIR__ . '/..' . '/myclabs/deep-copy/src/DeepCopy/deep_copy.php',
96
  public static function getInitializer(ClassLoader $loader)
97
  {
98
  return \Closure::bind(function () use ($loader) {
99
+ $loader->prefixLengthsPsr4 = ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f::$prefixLengthsPsr4;
100
+ $loader->prefixDirsPsr4 = ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f::$prefixDirsPsr4;
101
+ $loader->classMap = ComposerStaticInit5ab615d17eae4e49bf0e7d0d1f73bc0f::$classMap;
102
 
103
  }, null, ClassLoader::class);
104
  }
vendor/composer/installed.json CHANGED
@@ -2,26 +2,26 @@
2
  "packages": [
3
  {
4
  "name": "automattic/jetpack-autoloader",
5
- "version": "v2.7.0",
6
- "version_normalized": "2.7.0.0",
7
  "source": {
8
  "type": "git",
9
  "url": "https://github.com/Automattic/jetpack-autoloader.git",
10
- "reference": "d6d89b71c0f9ba13bbbfb28a75a9174c79193d2a"
11
  },
12
  "dist": {
13
  "type": "zip",
14
- "url": "https://api.github.com/repos/Automattic/jetpack-autoloader/zipball/d6d89b71c0f9ba13bbbfb28a75a9174c79193d2a",
15
- "reference": "d6d89b71c0f9ba13bbbfb28a75a9174c79193d2a",
16
  "shasum": ""
17
  },
18
  "require": {
19
  "composer-plugin-api": "^1.1 || ^2.0"
20
  },
21
  "require-dev": {
22
- "yoast/phpunit-polyfills": "0.2.0"
23
  },
24
- "time": "2020-12-08T17:35:08+00:00",
25
  "type": "composer-plugin",
26
  "extra": {
27
  "class": "Automattic\\Jetpack\\Autoloader\\CustomAutoloaderPlugin"
@@ -41,7 +41,7 @@
41
  ],
42
  "description": "Creates a custom autoloader for a plugin or theme.",
43
  "support": {
44
- "source": "https://github.com/Automattic/jetpack-autoloader/tree/v2.7.0"
45
  },
46
  "install-path": "../automattic/jetpack-autoloader"
47
  },
@@ -415,28 +415,28 @@
415
  },
416
  {
417
  "name": "vendidero/woocommerce-germanized-dhl",
418
- "version": "v1.4.1",
419
- "version_normalized": "1.4.1.0",
420
  "source": {
421
  "type": "git",
422
  "url": "https://github.com/vendidero/woocommerce-germanized-dhl.git",
423
- "reference": "380a991df877aa8efd736dbdd1abfdd5fd9ce0af"
424
  },
425
  "dist": {
426
  "type": "zip",
427
- "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-dhl/zipball/380a991df877aa8efd736dbdd1abfdd5fd9ce0af",
428
- "reference": "380a991df877aa8efd736dbdd1abfdd5fd9ce0af",
429
  "shasum": ""
430
  },
431
  "require": {
432
- "automattic/jetpack-autoloader": "^2.2.0",
433
  "baltpeter/internetmarke-php": "^0.5.0",
434
  "wsdltophp/wssecurity": "^1.1"
435
  },
436
  "require-dev": {
437
  "phpunit/phpunit": "6.5.14"
438
  },
439
- "time": "2020-12-11T14:09:17+00:00",
440
  "type": "wordpress-plugin",
441
  "installation-source": "dist",
442
  "autoload": {
@@ -460,35 +460,35 @@
460
  "description": "The Germanized DHL implementation.",
461
  "homepage": "https://github.com/vendidero/woocommerce-germanized-dhl",
462
  "support": {
463
- "source": "https://github.com/vendidero/woocommerce-germanized-dhl/tree/v1.4.1",
464
  "issues": "https://github.com/vendidero/woocommerce-germanized-dhl/issues"
465
  },
466
  "install-path": "../../packages/woocommerce-germanized-dhl"
467
  },
468
  {
469
  "name": "vendidero/woocommerce-germanized-shipments",
470
- "version": "v1.4.1",
471
- "version_normalized": "1.4.1.0",
472
  "source": {
473
  "type": "git",
474
  "url": "https://github.com/vendidero/woocommerce-germanized-shipments.git",
475
- "reference": "1e7f4bf2caefe8eb84a5e043555a0206837eecef"
476
  },
477
  "dist": {
478
  "type": "zip",
479
- "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-shipments/zipball/1e7f4bf2caefe8eb84a5e043555a0206837eecef",
480
- "reference": "1e7f4bf2caefe8eb84a5e043555a0206837eecef",
481
  "shasum": ""
482
  },
483
  "require": {
484
- "automattic/jetpack-autoloader": "^2.2.0",
485
  "setasign/fpdf": "^1.8.2",
486
  "setasign/fpdi": "^2.3"
487
  },
488
  "require-dev": {
489
  "phpunit/phpunit": "6.5.14"
490
  },
491
- "time": "2020-12-11T14:07:47+00:00",
492
  "type": "wordpress-plugin",
493
  "installation-source": "dist",
494
  "autoload": {
@@ -510,7 +510,7 @@
510
  "description": "The Germanized Shipments implementation.",
511
  "homepage": "https://github.com/vendidero/woocommerce-germanized-shipments",
512
  "support": {
513
- "source": "https://github.com/vendidero/woocommerce-germanized-shipments/tree/v1.4.1",
514
  "issues": "https://github.com/vendidero/woocommerce-germanized-shipments/issues"
515
  },
516
  "install-path": "../../packages/woocommerce-germanized-shipments"
2
  "packages": [
3
  {
4
  "name": "automattic/jetpack-autoloader",
5
+ "version": "v2.6.0",
6
+ "version_normalized": "2.6.0.0",
7
  "source": {
8
  "type": "git",
9
  "url": "https://github.com/Automattic/jetpack-autoloader.git",
10
+ "reference": "47dde8dbca6b1e30f176725f2f748a9abefcaf58"
11
  },
12
  "dist": {
13
  "type": "zip",
14
+ "url": "https://api.github.com/repos/Automattic/jetpack-autoloader/zipball/47dde8dbca6b1e30f176725f2f748a9abefcaf58",
15
+ "reference": "47dde8dbca6b1e30f176725f2f748a9abefcaf58",
16
  "shasum": ""
17
  },
18
  "require": {
19
  "composer-plugin-api": "^1.1 || ^2.0"
20
  },
21
  "require-dev": {
22
+ "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5"
23
  },
24
+ "time": "2020-11-19T21:20:12+00:00",
25
  "type": "composer-plugin",
26
  "extra": {
27
  "class": "Automattic\\Jetpack\\Autoloader\\CustomAutoloaderPlugin"
41
  ],
42
  "description": "Creates a custom autoloader for a plugin or theme.",
43
  "support": {
44
+ "source": "https://github.com/Automattic/jetpack-autoloader/tree/v2.6.0"
45
  },
46
  "install-path": "../automattic/jetpack-autoloader"
47
  },
415
  },
416
  {
417
  "name": "vendidero/woocommerce-germanized-dhl",
418
+ "version": "v1.4.2",
419
+ "version_normalized": "1.4.2.0",
420
  "source": {
421
  "type": "git",
422
  "url": "https://github.com/vendidero/woocommerce-germanized-dhl.git",
423
+ "reference": "6429384329e525755bdc463ee09f04a5e1b628ef"
424
  },
425
  "dist": {
426
  "type": "zip",
427
+ "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-dhl/zipball/6429384329e525755bdc463ee09f04a5e1b628ef",
428
+ "reference": "6429384329e525755bdc463ee09f04a5e1b628ef",
429
  "shasum": ""
430
  },
431
  "require": {
432
+ "automattic/jetpack-autoloader": "2.6.0",
433
  "baltpeter/internetmarke-php": "^0.5.0",
434
  "wsdltophp/wssecurity": "^1.1"
435
  },
436
  "require-dev": {
437
  "phpunit/phpunit": "6.5.14"
438
  },
439
+ "time": "2020-12-17T11:49:46+00:00",
440
  "type": "wordpress-plugin",
441
  "installation-source": "dist",
442
  "autoload": {
460
  "description": "The Germanized DHL implementation.",
461
  "homepage": "https://github.com/vendidero/woocommerce-germanized-dhl",
462
  "support": {
463
+ "source": "https://github.com/vendidero/woocommerce-germanized-dhl/tree/v1.4.2",
464
  "issues": "https://github.com/vendidero/woocommerce-germanized-dhl/issues"
465
  },
466
  "install-path": "../../packages/woocommerce-germanized-dhl"
467
  },
468
  {
469
  "name": "vendidero/woocommerce-germanized-shipments",
470
+ "version": "v1.4.2",
471
+ "version_normalized": "1.4.2.0",
472
  "source": {
473
  "type": "git",
474
  "url": "https://github.com/vendidero/woocommerce-germanized-shipments.git",
475
+ "reference": "c9fd71a33b9731bcd7e7f674c0245c4c8ca67fc7"
476
  },
477
  "dist": {
478
  "type": "zip",
479
+ "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-shipments/zipball/c9fd71a33b9731bcd7e7f674c0245c4c8ca67fc7",
480
+ "reference": "c9fd71a33b9731bcd7e7f674c0245c4c8ca67fc7",
481
  "shasum": ""
482
  },
483
  "require": {
484
+ "automattic/jetpack-autoloader": "2.6.0",
485
  "setasign/fpdf": "^1.8.2",
486
  "setasign/fpdi": "^2.3"
487
  },
488
  "require-dev": {
489
  "phpunit/phpunit": "6.5.14"
490
  },
491
+ "time": "2020-12-17T11:50:43+00:00",
492
  "type": "wordpress-plugin",
493
  "installation-source": "dist",
494
  "autoload": {
510
  "description": "The Germanized Shipments implementation.",
511
  "homepage": "https://github.com/vendidero/woocommerce-germanized-shipments",
512
  "support": {
513
+ "source": "https://github.com/vendidero/woocommerce-germanized-shipments/tree/v1.4.2",
514
  "issues": "https://github.com/vendidero/woocommerce-germanized-shipments/issues"
515
  },
516
  "install-path": "../../packages/woocommerce-germanized-shipments"
vendor/composer/installed.php CHANGED
@@ -6,19 +6,19 @@
6
  'aliases' =>
7
  array (
8
  ),
9
- 'reference' => '7bbf49437a646d8c1ffea3ae8281131c22a8398f',
10
  'name' => 'vendidero/woocommerce-germanized',
11
  ),
12
  'versions' =>
13
  array (
14
  'automattic/jetpack-autoloader' =>
15
  array (
16
- 'pretty_version' => 'v2.7.0',
17
- 'version' => '2.7.0.0',
18
  'aliases' =>
19
  array (
20
  ),
21
- 'reference' => 'd6d89b71c0f9ba13bbbfb28a75a9174c79193d2a',
22
  ),
23
  'baltpeter/internetmarke-php' =>
24
  array (
@@ -90,25 +90,25 @@
90
  'aliases' =>
91
  array (
92
  ),
93
- 'reference' => '7bbf49437a646d8c1ffea3ae8281131c22a8398f',
94
  ),
95
  'vendidero/woocommerce-germanized-dhl' =>
96
  array (
97
- 'pretty_version' => 'v1.4.1',
98
- 'version' => '1.4.1.0',
99
  'aliases' =>
100
  array (
101
  ),
102
- 'reference' => '380a991df877aa8efd736dbdd1abfdd5fd9ce0af',
103
  ),
104
  'vendidero/woocommerce-germanized-shipments' =>
105
  array (
106
- 'pretty_version' => 'v1.4.1',
107
- 'version' => '1.4.1.0',
108
  'aliases' =>
109
  array (
110
  ),
111
- 'reference' => '1e7f4bf2caefe8eb84a5e043555a0206837eecef',
112
  ),
113
  'vendidero/woocommerce-trusted-shops' =>
114
  array (
6
  'aliases' =>
7
  array (
8
  ),
9
+ 'reference' => '286f3d1c3d4c6ea1a197c7b0a23b313121b49edd',
10
  'name' => 'vendidero/woocommerce-germanized',
11
  ),
12
  'versions' =>
13
  array (
14
  'automattic/jetpack-autoloader' =>
15
  array (
16
+ 'pretty_version' => 'v2.6.0',
17
+ 'version' => '2.6.0.0',
18
  'aliases' =>
19
  array (
20
  ),
21
+ 'reference' => '47dde8dbca6b1e30f176725f2f748a9abefcaf58',
22
  ),
23
  'baltpeter/internetmarke-php' =>
24
  array (
90
  'aliases' =>
91
  array (
92
  ),
93
+ 'reference' => '286f3d1c3d4c6ea1a197c7b0a23b313121b49edd',
94
  ),
95
  'vendidero/woocommerce-germanized-dhl' =>
96
  array (
97
+ 'pretty_version' => 'v1.4.2',
98
+ 'version' => '1.4.2.0',
99
  'aliases' =>
100
  array (
101
  ),
102
+ 'reference' => '6429384329e525755bdc463ee09f04a5e1b628ef',
103
  ),
104
  'vendidero/woocommerce-germanized-shipments' =>
105
  array (
106
+ 'pretty_version' => 'v1.4.2',
107
+ 'version' => '1.4.2.0',
108
  'aliases' =>
109
  array (
110
  ),
111
+ 'reference' => 'c9fd71a33b9731bcd7e7f674c0245c4c8ca67fc7',
112
  ),
113
  'vendidero/woocommerce-trusted-shops' =>
114
  array (
vendor/composer/jetpack_autoload_classmap.php CHANGED
@@ -11,7 +11,7 @@ return array(
11
  'path' => $vendorDir . '/setasign/fpdf/fpdf.php'
12
  ),
13
  'Automattic\\Jetpack\\Autoloader\\AutoloadGenerator' => array(
14
- 'version' => '2.7.0.0',
15
  'path' => $vendorDir . '/automattic/jetpack-autoloader/src/AutoloadGenerator.php'
16
  ),
17
  );
11
  'path' => $vendorDir . '/setasign/fpdf/fpdf.php'
12
  ),
13
  'Automattic\\Jetpack\\Autoloader\\AutoloadGenerator' => array(
14
+ 'version' => '2.6.0.0',
15
  'path' => $vendorDir . '/automattic/jetpack-autoloader/src/AutoloadGenerator.php'
16
  ),
17
  );
vendor/composer/jetpack_autoload_psr4.php CHANGED
@@ -23,11 +23,11 @@ return array(
23
  'path' => array( $baseDir . '/packages/woocommerce-trusted-shops/src' )
24
  ),
25
  'Vendidero\\Germanized\\Shipments\\' => array(
26
- 'version' => '1.4.1.0',
27
  'path' => array( $baseDir . '/packages/woocommerce-germanized-shipments/src' )
28
  ),
29
  'Vendidero\\Germanized\\DHL\\' => array(
30
- 'version' => '1.4.1.0',
31
  'path' => array( $baseDir . '/packages/woocommerce-germanized-dhl/src' )
32
  ),
33
  'Vendidero\\Germanized\\' => array(
@@ -43,7 +43,7 @@ return array(
43
  'path' => array( $vendorDir . '/composer/installers/src/Composer/Installers' )
44
  ),
45
  'Automattic\\Jetpack\\Autoloader\\' => array(
46
- 'version' => '2.7.0.0',
47
  'path' => array( $vendorDir . '/automattic/jetpack-autoloader/src' )
48
  ),
49
  );
23
  'path' => array( $baseDir . '/packages/woocommerce-trusted-shops/src' )
24
  ),
25
  'Vendidero\\Germanized\\Shipments\\' => array(
26
+ 'version' => '1.4.2.0',
27
  'path' => array( $baseDir . '/packages/woocommerce-germanized-shipments/src' )
28
  ),
29
  'Vendidero\\Germanized\\DHL\\' => array(
30
+ 'version' => '1.4.2.0',
31
  'path' => array( $baseDir . '/packages/woocommerce-germanized-dhl/src' )
32
  ),
33
  'Vendidero\\Germanized\\' => array(
43
  'path' => array( $vendorDir . '/composer/installers/src/Composer/Installers' )
44
  ),
45
  'Automattic\\Jetpack\\Autoloader\\' => array(
46
+ 'version' => '2.6.0.0',
47
  'path' => array( $vendorDir . '/automattic/jetpack-autoloader/src' )
48
  ),
49
  );
vendor/jetpack-autoloader/autoload_functions.php ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * This file was automatically generated by automattic/jetpack-autoloader.
4
+ *
5
+ * @package automattic/jetpack-autoloader
6
+ */
7
+
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
+
10
+ // phpcs:ignore
11
+
12
+ /**
13
+ * Used for autoloading jetpack packages.
14
+ *
15
+ * @param string $class_name Class Name to load.
16
+ *
17
+ * @return Boolean Whether the class_name was found in the classmap.
18
+ */
19
+ function autoloader( $class_name ) {
20
+ global $jetpack_autoloader_loader;
21
+ if ( ! isset( $jetpack_autoloader_loader ) ) {
22
+ return false;
23
+ }
24
+
25
+ $file = $jetpack_autoloader_loader->find_class_file( $class_name );
26
+ if ( ! isset( $file ) ) {
27
+ return false;
28
+ }
29
+
30
+ require_once $file;
31
+ return true;
32
+ }
33
+
34
+ /**
35
+ * Finds the latest installed autoloader. If this is the latest autoloader, sets
36
+ * up the classmap and filemap.
37
+ */
38
+ function set_up_autoloader() {
39
+ global $jetpack_autoloader_latest_version;
40
+ global $jetpack_autoloader_loader;
41
+
42
+ require_once __DIR__ . '/class-plugins-handler.php';
43
+ require_once __DIR__ . '/class-version-selector.php';
44
+ require_once __DIR__ . '/class-autoloader-locator.php';
45
+ require_once __DIR__ . '/class-autoloader-handler.php';
46
+
47
+ $plugins_handler = new Plugins_Handler();
48
+ $version_selector = new Version_Selector();
49
+ $autoloader_handler = new Autoloader_Handler(
50
+ $plugins_handler->get_current_plugin_path(),
51
+ $plugins_handler->get_all_active_plugins_paths(),
52
+ new Autoloader_Locator( $version_selector ),
53
+ $version_selector
54
+ );
55
+
56
+ // The autoloader must be reset when a plugin that was previously unknown is detected.
57
+ if ( $autoloader_handler->should_autoloader_reset() ) {
58
+ $jetpack_autoloader_latest_version = null;
59
+ $jetpack_autoloader_loader = null;
60
+ }
61
+
62
+ if ( ! $autoloader_handler->is_latest_autoloader() || isset( $jetpack_autoloader_loader ) ) {
63
+ return;
64
+ }
65
+
66
+ require_once __DIR__ . '/class-manifest-handler.php';
67
+ require_once __DIR__ . '/class-version-loader.php';
68
+
69
+ $jetpack_autoloader_loader = $autoloader_handler->build_autoloader();
70
+ $autoloader_handler->update_autoloader_chain();
71
+
72
+ // Now that the autoloader is ready we can load the files in the filemap safely.
73
+ $jetpack_autoloader_loader->load_filemap();
74
+ }
vendor/jetpack-autoloader/class-autoloader-handler.php CHANGED
@@ -5,7 +5,7 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
@@ -14,22 +14,39 @@ namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
14
  */
15
  class Autoloader_Handler {
16
 
 
 
 
 
 
 
 
 
 
 
17
  /**
18
- * The Hook_Manager instance.
19
  *
20
- * @var Hook_Manager
21
  */
22
- private $hook_manager;
23
 
24
  /**
25
- * The Manifest_Reader instance.
26
  *
27
- * @var Manifest_Reader
28
  */
29
- private $manifest_reader;
30
 
31
  /**
32
- * The Version_Selector instance.
 
 
 
 
 
 
 
33
  *
34
  * @var Version_Selector
35
  */
@@ -38,54 +55,144 @@ class Autoloader_Handler {
38
  /**
39
  * The constructor.
40
  *
41
- * @param Hook_Manager $hook_manager The Hook_Manager instance.
42
- * @param Manifest_Reader $manifest_reader The Manifest_Reader instance.
43
- * @param Version_Selector $version_selector The Version_Selector instance.
 
44
  */
45
- public function __construct( $hook_manager, $manifest_reader, $version_selector ) {
46
- $this->hook_manager = $hook_manager;
47
- $this->manifest_reader = $manifest_reader;
48
- $this->version_selector = $version_selector;
 
49
  }
50
 
51
  /**
52
- * Creates an autoloader using the given plugins and activates it.
53
  *
54
- * @param string[] $plugins The plugins to initialize the autoloader for.
55
  */
56
- public function create_autoloader( $plugins ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
57
  global $jetpack_packages_psr4;
58
  $jetpack_packages_psr4 = array();
59
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_psr4.php', $jetpack_packages_psr4 );
60
 
61
  global $jetpack_packages_classmap;
62
  $jetpack_packages_classmap = array();
63
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_classmap.php', $jetpack_packages_classmap );
64
 
65
  global $jetpack_packages_filemap;
66
  $jetpack_packages_filemap = array();
67
- $this->manifest_reader->read_manifests( $plugins, 'vendor/composer/jetpack_autoload_filemap.php', $jetpack_packages_filemap );
68
 
69
- $loader = new Version_Loader(
 
70
  $this->version_selector,
71
  $jetpack_packages_classmap,
72
  $jetpack_packages_psr4,
73
  $jetpack_packages_filemap
74
  );
75
-
76
- // Activate the autoloader.
77
- Autoloader::activate( $loader );
78
  }
79
 
80
  /**
81
- * Resets the active autoloader and all related global state.
 
 
 
 
82
  */
83
- public function reset_autoloader() {
84
- global $jetpack_autoloader_loader;
85
- global $jetpack_autoloader_latest_version;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
 
87
- $this->hook_manager->reset();
88
- $jetpack_autoloader_loader = null;
89
- $jetpack_autoloader_latest_version = null;
 
 
 
 
 
90
  }
91
  }
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
14
  */
15
  class Autoloader_Handler {
16
 
17
+ // The name of the autoloader function registered by v1.* autoloaders.
18
+ const V1_AUTOLOADER_NAME = 'Automattic\Jetpack\Autoloader\autoloader';
19
+
20
+ /*
21
+ * The autoloader function for v2.* autoloaders is named __NAMESPACE__ . \autoloader.
22
+ * The namespace is defined in AutoloadGenerator as
23
+ * 'Automattic\Jetpack\Autoloader\jp' plus a unique suffix.
24
+ */
25
+ const V2_AUTOLOADER_BASE = 'Automattic\Jetpack\Autoloader\jp';
26
+
27
  /**
28
+ * The current plugin path.
29
  *
30
+ * @var string
31
  */
32
+ private $current_plugin_path;
33
 
34
  /**
35
+ * The paths for all of the active plugins.
36
  *
37
+ * @var array
38
  */
39
+ private $active_plugin_paths;
40
 
41
  /**
42
+ * The Autoloader_Locator object.
43
+ *
44
+ * @var Autoloader_Locator
45
+ */
46
+ private $autoloader_locator;
47
+
48
+ /**
49
+ * The Version_Selector object.
50
  *
51
  * @var Version_Selector
52
  */
55
  /**
56
  * The constructor.
57
  *
58
+ * @param string $current_plugin_path The current plugin path.
59
+ * @param array $active_plugin_paths The active plugin paths.
60
+ * @param Autoloader_Locator $autoloader_locator The Autoloader_Locator object.
61
+ * @param Version_Selector $version_selector The Version_Selector object.
62
  */
63
+ public function __construct( $current_plugin_path, $active_plugin_paths, $autoloader_locator, $version_selector ) {
64
+ $this->current_plugin_path = $current_plugin_path;
65
+ $this->active_plugin_paths = $active_plugin_paths;
66
+ $this->autoloader_locator = $autoloader_locator;
67
+ $this->version_selector = $version_selector;
68
  }
69
 
70
  /**
71
+ * Finds the latest installed autoloader.
72
  *
73
+ * @return bool True if this autoloader is the latest, false otherwise.
74
  */
75
+ public function is_latest_autoloader() {
76
+ global $jetpack_autoloader_latest_version;
77
+
78
+ if ( isset( $jetpack_autoloader_latest_version ) ) {
79
+ return $jetpack_autoloader_latest_version === $this->autoloader_locator->get_autoloader_version( $this->current_plugin_path );
80
+ }
81
+
82
+ $latest_plugin = $this->autoloader_locator->find_latest_autoloader( $this->active_plugin_paths, $jetpack_autoloader_latest_version );
83
+ if ( ! isset( $latest_plugin ) ) {
84
+ return true;
85
+ }
86
+
87
+ if ( $latest_plugin !== $this->current_plugin_path ) {
88
+ require $this->autoloader_locator->get_autoloader_path( $latest_plugin );
89
+ return false;
90
+ }
91
+
92
+ return true;
93
+ }
94
+
95
+ /**
96
+ * Checks whether the autoloader should be reset. The autoloader should be reset:
97
+ *
98
+ * - When a plugin is activated via a method other than a request, for example using WP-CLI.
99
+ * - When the active plugins list changes between autoloader checks, for example when filtered by a plugin.
100
+ *
101
+ * We perform this reset because the manifest files for the plugin will have been initially unknown when
102
+ * selecting versions for classes and files.
103
+ *
104
+ * If the current plugin is not already known, this method will add it to the
105
+ * $jetpack_autoloader_activating_plugins_paths global.
106
+ * The $jetpack_autoloader_cached_plugin_paths global will store a cache of the
107
+ * active plugin paths when last changed.
108
+ *
109
+ * @return boolean True if the autoloader must be reset, else false.
110
+ */
111
+ public function should_autoloader_reset() {
112
+ global $jetpack_autoloader_activating_plugins_paths;
113
+ global $jetpack_autoloader_cached_plugin_paths;
114
+
115
+ $plugin_unknown = ! in_array( $this->current_plugin_path, $this->active_plugin_paths, true );
116
+ if ( $plugin_unknown ) {
117
+ if ( ! isset( $jetpack_autoloader_activating_plugins_paths ) ) {
118
+ $jetpack_autoloader_activating_plugins_paths = array();
119
+ }
120
+
121
+ // If the current plugin isn't known, add it to the activating plugins list.
122
+ $jetpack_autoloader_activating_plugins_paths[] = $this->current_plugin_path;
123
+ $this->active_plugin_paths[] = $this->current_plugin_path;
124
+ }
125
+
126
+ $cache_invalidated = $jetpack_autoloader_cached_plugin_paths !== $this->active_plugin_paths;
127
+ if ( $cache_invalidated ) {
128
+ $jetpack_autoloader_cached_plugin_paths = $this->active_plugin_paths;
129
+ }
130
+
131
+ return $plugin_unknown || $cache_invalidated;
132
+ }
133
+
134
+ /**
135
+ * Builds the Version_Autoloader class that is used for autoloading.
136
+ *
137
+ * @return Version_Loader
138
+ */
139
+ public function build_autoloader() {
140
+ $manifest_handler = new Manifest_Handler( $this->active_plugin_paths, $this->version_selector );
141
+
142
  global $jetpack_packages_psr4;
143
  $jetpack_packages_psr4 = array();
144
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_psr4.php', $jetpack_packages_psr4 );
145
 
146
  global $jetpack_packages_classmap;
147
  $jetpack_packages_classmap = array();
148
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_classmap.php', $jetpack_packages_classmap );
149
 
150
  global $jetpack_packages_filemap;
151
  $jetpack_packages_filemap = array();
152
+ $manifest_handler->register_plugin_manifests( 'vendor/composer/jetpack_autoload_filemap.php', $jetpack_packages_filemap );
153
 
154
+ // Store the generated autoloader data in the loader so we can use it.
155
+ return new Version_Loader(
156
  $this->version_selector,
157
  $jetpack_packages_classmap,
158
  $jetpack_packages_psr4,
159
  $jetpack_packages_filemap
160
  );
 
 
 
161
  }
162
 
163
  /**
164
+ * Updates the spl autoloader chain:
165
+ * - Registers this namespace's autoloader function.
166
+ * - If a v1 autoloader function is registered, moves it to the end of the chain.
167
+ * - Removes any other v2 autoloader functions that have already been registered. This
168
+ * can occur when the autoloader is being reset by an activating plugin.
169
  */
170
+ public function update_autoloader_chain() {
171
+ spl_autoload_register( __NAMESPACE__ . '\autoloader' );
172
+
173
+ $autoload_chain = spl_autoload_functions();
174
+
175
+ foreach ( $autoload_chain as $autoloader ) {
176
+ if ( ! is_string( $autoloader ) ) {
177
+ /*
178
+ * The Jetpack Autoloader functions are registered as strings, so
179
+ * just continue if $autoloader isn't a string.
180
+ */
181
+ continue;
182
+ }
183
+
184
+ if ( self::V1_AUTOLOADER_NAME === $autoloader ) {
185
+ // Move the v1.* autoloader function to the end of the spl autoloader chain.
186
+ spl_autoload_unregister( $autoloader );
187
+ spl_autoload_register( $autoloader );
188
 
189
+ } elseif (
190
+ self::V2_AUTOLOADER_BASE === substr( $autoloader, 0, strlen( self::V2_AUTOLOADER_BASE ) )
191
+ && __NAMESPACE__ !== substr( $autoloader, 0, strlen( __NAMESPACE__ ) )
192
+ ) {
193
+ // Unregister any other v2.* autoloader functions if they're in the chain.
194
+ spl_autoload_unregister( $autoloader );
195
+ }
196
+ }
197
  }
198
  }
vendor/jetpack-autoloader/class-autoloader-locator.php CHANGED
@@ -5,7 +5,7 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
vendor/jetpack-autoloader/class-autoloader.php DELETED
@@ -1,159 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * This class handles management of the actual PHP autoloader.
14
- */
15
- class Autoloader {
16
-
17
- /**
18
- * Checks to see whether or not the autoloader should be initialized and then initializes it if so.
19
- *
20
- * @param Container|null $container The container we want to use for autoloader initialization. If none is given
21
- * then a container will be created automatically.
22
- */
23
- public static function init( $container = null ) {
24
- // The container holds and manages the lifecycle of our dependencies
25
- // to make them easier to work with and increase flexibility.
26
- if ( ! isset( $container ) ) {
27
- require_once __DIR__ . '/class-container.php';
28
- $container = new Container();
29
- }
30
-
31
- // phpcs:disable Generic.Commenting.DocComment.MissingShort
32
-
33
- /** @var Plugin_Locator $plugin_locator */
34
- $plugin_locator = $container->get( Plugin_Locator::class );
35
-
36
- /** @var Plugins_Handler $plugins_handler */
37
- $plugins_handler = $container->get( Plugins_Handler::class );
38
-
39
- // The current plugin is the one that we are attempting to initialize here.
40
- $current_plugin = $plugin_locator->find_current_plugin();
41
-
42
- // The cached plugins are all of those that were active or discovered by the autoloader during a previous request.
43
- // Note that it's possible this list will include plugins that have since been deactivated, but after a request
44
- // the cache should be updated and the deactivated plugins will be removed.
45
- $cached_plugins = $plugins_handler->get_cached_plugins();
46
-
47
- // The active plugins are those that we were able to discover in on the site. This list will not include
48
- // mu-plugins, those activated by code, or those who are hidden by filtering.
49
- // By combining these lists we can preemptively load classes for plugins that are activated via another method.
50
- // While this may result in us considering packages in deactivated plugins the request after they're removed,
51
- // there shouldn't be any problems as a result and the eventual consistency is reliable enough.
52
- $all_plugins = array_values( array_unique( array_merge( $plugins_handler->get_active_plugins(), $cached_plugins ) ) );
53
-
54
- /** @var Latest_Autoloader_Guard $guard */
55
- $guard = $container->get( Latest_Autoloader_Guard::class );
56
- if ( $guard->should_stop_init( $current_plugin, $all_plugins ) ) {
57
- return;
58
- }
59
-
60
- /** @var Autoloader_Handler $autoloader_handler */
61
- $autoloader_handler = $container->get( Autoloader_Handler::class );
62
-
63
- // Initialize the autoloader using the handler now that we're ready.
64
- $autoloader_handler->create_autoloader( $all_plugins );
65
-
66
- /** @var Hook_Manager $hook_manager */
67
- $hook_manager = $container->get( Hook_Manager::class );
68
-
69
- // When the active and cached plugin lists do not match we should
70
- // update the cache. This will prevent plugins that have been
71
- // deactivated from being considered in other requests.
72
- $hook_manager->add_action(
73
- 'shutdown',
74
- function () use ( $plugins_handler, $cached_plugins ) {
75
- // Don't save a broken cache if an error happens during some plugin's initialization.
76
- if ( ! did_action( 'plugins_loaded' ) ) {
77
- // Ensure that the cache is emptied to prevent consecutive failures if the cache is to blame.
78
- if ( ! empty( $cached_plugins ) ) {
79
- $plugins_handler->cache_plugins( array() );
80
- }
81
-
82
- return;
83
- }
84
-
85
- // Load the active plugins fresh since the list we have above might not contain
86
- // plugins that were activated but did not reset the autoloader. This happens
87
- // because they were already included in the cache.
88
- $active_plugins = $plugins_handler->get_active_plugins();
89
-
90
- // The paths should be sorted for easy comparisons with those loaded from the cache.
91
- // Note we don't need to sort the cached entries because they're already sorted.
92
- sort( $active_plugins );
93
-
94
- // We don't want to waste time saving a cache that hasn't changed.
95
- if ( $cached_plugins === $active_plugins ) {
96
- return;
97
- }
98
-
99
- $plugins_handler->cache_plugins( $active_plugins );
100
- }
101
- );
102
-
103
- // phpcs:enable Generic.Commenting.DocComment.MissingShort
104
- }
105
-
106
- /**
107
- * Loads a class file if one could be found.
108
- *
109
- * @param string $class_name The name of the class to autoload.
110
- *
111
- * @return bool Indicates whether or not a class file was loaded.
112
- */
113
- public static function load_class( $class_name ) {
114
- global $jetpack_autoloader_loader;
115
- if ( ! isset( $jetpack_autoloader_loader ) ) {
116
- return;
117
- }
118
-
119
- $file = $jetpack_autoloader_loader->find_class_file( $class_name );
120
- if ( ! isset( $file ) ) {
121
- return false;
122
- }
123
-
124
- require $file;
125
- return true;
126
- }
127
-
128
- /**
129
- * Activates this autoloader and deactivates any other v2 autoloaders that may be present.
130
- *
131
- * @param Version_Loader $version_loader The version loader for our autoloader.
132
- */
133
- public static function activate( $version_loader ) {
134
- // Set the global autoloader to indicate that we've activated this autoloader.
135
- global $jetpack_autoloader_loader;
136
- $jetpack_autoloader_loader = $version_loader;
137
-
138
- // Remove any v2 autoloader that we've already registered.
139
- $autoload_chain = spl_autoload_functions();
140
- foreach ( $autoload_chain as $autoloader ) {
141
- // Jetpack autoloaders are always strings.
142
- if ( ! is_string( $autoloader ) ) {
143
- continue;
144
- }
145
-
146
- // We can identify a v2 autoloader using the namespace prefix without the unique suffix.
147
- if ( 'Automattic\\Jetpack\\Autoloader\\jp' === substr( $autoloader, 0, 32 ) ) {
148
- spl_autoload_unregister( $autoloader );
149
- continue;
150
- }
151
- }
152
-
153
- // Ensure that the autoloader is first to avoid contention with others.
154
- spl_autoload_register( self::class . '::load_class', true, true );
155
-
156
- // Now that we've activated the autoloader we should load the filemap.
157
- $jetpack_autoloader_loader->load_filemap();
158
- }
159
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/class-container.php DELETED
@@ -1,149 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * This class manages the files and dependencies of the autoloader.
14
- */
15
- class Container {
16
-
17
- /**
18
- * Since each autoloader's class files exist within their own namespace we need a map to
19
- * convert between the local class and a shared key. Note that no version checking is
20
- * performed on these dependencies and the first autoloader to register will be the
21
- * one that is utilized.
22
- */
23
- const SHARED_DEPENDENCY_KEYS = array(
24
- Hook_Manager::class => 'Hook_Manager',
25
- );
26
-
27
- /**
28
- * A map of all the dependencies we've registered with the container and created.
29
- *
30
- * @var array
31
- */
32
- protected $dependencies;
33
-
34
- /**
35
- * The constructor.
36
- */
37
- public function __construct() {
38
- $this->dependencies = array();
39
-
40
- $this->register_shared_dependencies();
41
- $this->register_dependencies();
42
- $this->initialize_globals();
43
- }
44
-
45
- /**
46
- * Gets a dependency out of the container.
47
- *
48
- * @param string $class The class to fetch.
49
- *
50
- * @return mixed
51
- * @throws \InvalidArgumentException When a class that isn't registered with the container is fetched.
52
- */
53
- public function get( $class ) {
54
- if ( ! isset( $this->dependencies[ $class ] ) ) {
55
- throw new \InvalidArgumentException( "Class '$class' is not registered with the container." );
56
- }
57
-
58
- return $this->dependencies[ $class ];
59
- }
60
-
61
- /**
62
- * Registers all of the dependencies that are shared between all instances of the autoloader.
63
- */
64
- private function register_shared_dependencies() {
65
- global $jetpack_autoloader_container_shared;
66
- if ( ! isset( $jetpack_autoloader_container_shared ) ) {
67
- $jetpack_autoloader_container_shared = array();
68
- }
69
-
70
- $key = self::SHARED_DEPENDENCY_KEYS[ Hook_Manager::class ];
71
- if ( ! isset( $jetpack_autoloader_container_shared[ $key ] ) ) {
72
- require_once __DIR__ . '/class-hook-manager.php';
73
- $jetpack_autoloader_container_shared[ $key ] = new Hook_Manager();
74
- }
75
- $this->dependencies[ Hook_Manager::class ] = &$jetpack_autoloader_container_shared[ $key ];
76
- }
77
-
78
- /**
79
- * Registers all of the dependencies with the container.
80
- */
81
- private function register_dependencies() {
82
- require_once __DIR__ . '/class-path-processor.php';
83
- $this->dependencies[ Path_Processor::class ] = new Path_Processor();
84
-
85
- require_once __DIR__ . '/class-plugin-locator.php';
86
- $this->dependencies[ Plugin_Locator::class ] = new Plugin_Locator(
87
- $this->get( Path_Processor::class )
88
- );
89
-
90
- require_once __DIR__ . '/class-version-selector.php';
91
- $this->dependencies[ Version_Selector::class ] = new Version_Selector();
92
-
93
- require_once __DIR__ . '/class-autoloader-locator.php';
94
- $this->dependencies[ Autoloader_Locator::class ] = new Autoloader_Locator(
95
- $this->get( Version_Selector::class )
96
- );
97
-
98
- require_once __DIR__ . '/class-manifest-reader.php';
99
- $this->dependencies[ Manifest_Reader::class ] = new Manifest_Reader(
100
- $this->get( Version_Selector::class )
101
- );
102
-
103
- require_once __DIR__ . '/class-plugins-handler.php';
104
- $this->dependencies[ Plugins_Handler::class ] = new Plugins_Handler(
105
- $this->get( Plugin_Locator::class ),
106
- $this->get( Path_Processor::class )
107
- );
108
-
109
- require_once __DIR__ . '/class-autoloader-handler.php';
110
- $this->dependencies[ Autoloader_Handler::class ] = new Autoloader_Handler(
111
- $this->get( Hook_Manager::class ),
112
- $this->get( Manifest_Reader::class ),
113
- $this->get( Version_Selector::class )
114
- );
115
-
116
- require_once __DIR__ . '/class-latest-autoloader-guard.php';
117
- $this->dependencies[ Latest_Autoloader_Guard::class ] = new Latest_Autoloader_Guard(
118
- $this->get( Plugins_Handler::class ),
119
- $this->get( Autoloader_Handler::class ),
120
- $this->get( Autoloader_Locator::class )
121
- );
122
-
123
- // Register any classes that we will use elsewhere.
124
- require_once __DIR__ . '/class-version-loader.php';
125
- }
126
-
127
- /**
128
- * Initializes any of the globals needed by the autoloader.
129
- */
130
- private function initialize_globals() {
131
- // Not all plugins can be found using the locator. In cases where a plugin loads the autoloader
132
- // but was not discoverable, we will record them in this array to track them as "active".
133
- global $jetpack_autoloader_activating_plugins_paths;
134
- if ( ! isset( $jetpack_autoloader_activating_plugins_paths ) ) {
135
- $jetpack_autoloader_activating_plugins_paths = array();
136
- }
137
-
138
- // Since older autoloaders include newer ones, we need to be able to tell the difference between an
139
- // inclusion via autoloader and an inclusion via plugin file. This allows the autoloader to
140
- // perform special tasks for each kind of inclusion.
141
- global $jetpack_autoloader_including_latest;
142
- if ( ! isset( $jetpack_autoloader_including_latest ) ) {
143
- // If the latest version global has been set but the including latest hasn't, it means that an
144
- // older autoloader without support for the global is including us.
145
- global $jetpack_autoloader_latest_version;
146
- $jetpack_autoloader_including_latest = isset( $jetpack_autoloader_latest_version );
147
- }
148
- }
149
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/class-hook-manager.php DELETED
@@ -1,76 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * Allows the latest autoloader to register hooks that can be removed when the autoloader is reset.
14
- */
15
- class Hook_Manager {
16
-
17
- /**
18
- * An array containing all of the hooks that we've registered.
19
- *
20
- * @var array
21
- */
22
- private $registered_hooks;
23
-
24
- /**
25
- * The constructor.
26
- */
27
- public function __construct() {
28
- $this->registered_hooks = array();
29
- }
30
-
31
- /**
32
- * Adds an action to WordPress and registers it internally.
33
- *
34
- * @param string $tag The name of the action which is hooked.
35
- * @param callable $callable The function to call.
36
- * @param int $priority Used to specify the priority of the action.
37
- * @param int $accepted_args Used to specify the number of arguments the callable accepts.
38
- */
39
- public function add_action( $tag, $callable, $priority = 10, $accepted_args = 1 ) {
40
- $this->registered_hooks[ $tag ][] = array(
41
- 'priority' => $priority,
42
- 'callable' => $callable,
43
- );
44
-
45
- add_action( $tag, $callable, $priority, $accepted_args );
46
- }
47
-
48
- /**
49
- * Adds a filter to WordPress and registers it internally.
50
- *
51
- * @param string $tag The name of the filter which is hooked.
52
- * @param callable $callable The function to call.
53
- * @param int $priority Used to specify the priority of the filter.
54
- * @param int $accepted_args Used to specify the number of arguments the callable accepts.
55
- */
56
- public function add_filter( $tag, $callable, $priority = 10, $accepted_args = 1 ) {
57
- $this->registered_hooks[ $tag ][] = array(
58
- 'priority' => $priority,
59
- 'callable' => $callable,
60
- );
61
-
62
- add_filter( $tag, $callable, $priority, $accepted_args );
63
- }
64
-
65
- /**
66
- * Removes all of the registered hooks.
67
- */
68
- public function reset() {
69
- foreach ( $this->registered_hooks as $tag => $hooks ) {
70
- foreach ( $hooks as $hook ) {
71
- remove_filter( $tag, $hook['callable'], $hook['priority'] );
72
- }
73
- }
74
- $this->registered_hooks = array();
75
- }
76
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/class-latest-autoloader-guard.php DELETED
@@ -1,93 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * This class ensures that we're only executing the latest autoloader.
14
- */
15
- class Latest_Autoloader_Guard {
16
-
17
- /**
18
- * The Plugins_Handler instance.
19
- *
20
- * @var Plugins_Handler
21
- */
22
- private $plugins_handler;
23
-
24
- /**
25
- * The Autoloader_Handler instance.
26
- *
27
- * @var Autoloader_Handler
28
- */
29
- private $autoloader_handler;
30
-
31
- /**
32
- * The Autoloader_locator instance.
33
- *
34
- * @var Autoloader_Locator
35
- */
36
- private $autoloader_locator;
37
-
38
- /**
39
- * The constructor.
40
- *
41
- * @param Plugins_Handler $plugins_handler The Plugins_Handler instance.
42
- * @param Autoloader_Handler $autoloader_handler The Autoloader_Handler instance.
43
- * @param Autoloader_Locator $autoloader_locator The Autoloader_Locator instance.
44
- */
45
- public function __construct( $plugins_handler, $autoloader_handler, $autoloader_locator ) {
46
- $this->plugins_handler = $plugins_handler;
47
- $this->autoloader_handler = $autoloader_handler;
48
- $this->autoloader_locator = $autoloader_locator;
49
- }
50
-
51
- /**
52
- * Indicates whether or not the autoloader should be initialized. Note that this function
53
- * has the side-effect of actually loading the latest autoloader in the event that this
54
- * is not it.
55
- *
56
- * @param string $current_plugin The current plugin we're checking.
57
- * @param string[] $plugins The active plugins to check for autoloaders in.
58
- *
59
- * @return bool True if we should stop initialization, otherwise false.
60
- */
61
- public function should_stop_init( $current_plugin, $plugins ) {
62
- global $jetpack_autoloader_including_latest;
63
- global $jetpack_autoloader_latest_version;
64
-
65
- // When we're being included from an older autoloader we need to
66
- // reset the latest version so that the new autoloader can look
67
- // for the latest autoloader again.
68
- if ( $jetpack_autoloader_including_latest ) {
69
- $jetpack_autoloader_latest_version = null;
70
- }
71
-
72
- // We need to reset the autoloader when the plugins change because
73
- // that means the autoloader was generated with a different list.
74
- if ( $this->plugins_handler->have_plugins_changed( $plugins ) ) {
75
- $this->autoloader_handler->reset_autoloader();
76
- }
77
-
78
- // Don't bother initializing the autoloader if it already has been.
79
- if ( isset( $jetpack_autoloader_latest_version ) ) {
80
- return true;
81
- }
82
-
83
- $latest_plugin = $this->autoloader_locator->find_latest_autoloader( $plugins, $jetpack_autoloader_latest_version );
84
- if ( isset( $latest_plugin ) && $latest_plugin !== $current_plugin ) {
85
- $jetpack_autoloader_including_latest = true;
86
- require $this->autoloader_locator->get_autoloader_path( $latest_plugin );
87
- $jetpack_autoloader_including_latest = false;
88
- return true;
89
- }
90
-
91
- return false;
92
- }
93
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/{class-manifest-reader.php → class-manifest-handler.php} RENAMED
@@ -5,14 +5,21 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
12
  /**
13
- * This class reads autoloader manifest files.
14
  */
15
- class Manifest_Reader {
 
 
 
 
 
 
 
16
 
17
  /**
18
  * The Version_Selector object.
@@ -24,27 +31,28 @@ class Manifest_Reader {
24
  /**
25
  * The constructor.
26
  *
 
27
  * @param Version_Selector $version_selector The Version_Selector object.
28
  */
29
- public function __construct( $version_selector ) {
30
- $this->version_selector = $version_selector;
 
31
  }
32
 
33
  /**
34
- * Reads all of the manifests in the given plugin paths.
35
  *
36
- * @param array $plugin_paths The paths to the plugins we're loading the manifest in.
37
  * @param string $manifest_path The path that we're loading the manifest from in each plugin.
38
  * @param array $path_map The path map to add the contents of the manifests to.
39
  *
40
  * @return array $path_map The path map we've built using the manifests in each plugin.
41
  */
42
- public function read_manifests( $plugin_paths, $manifest_path, &$path_map ) {
43
  $file_paths = array_map(
44
  function ( $path ) use ( $manifest_path ) {
45
  return trailingslashit( $path ) . $manifest_path;
46
  },
47
- $plugin_paths
48
  );
49
 
50
  foreach ( $file_paths as $path ) {
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
12
  /**
13
+ * This class selects the most recent version of a registered path.
14
  */
15
+ class Manifest_Handler {
16
+
17
+ /**
18
+ * An array of the active plugin paths we want to search.
19
+ *
20
+ * @var array
21
+ */
22
+ private $active_plugin_paths;
23
 
24
  /**
25
  * The Version_Selector object.
31
  /**
32
  * The constructor.
33
  *
34
+ * @param array $active_plugin_paths An array of the active plugin paths we want to search.
35
  * @param Version_Selector $version_selector The Version_Selector object.
36
  */
37
+ public function __construct( $active_plugin_paths, $version_selector ) {
38
+ $this->active_plugin_paths = $active_plugin_paths;
39
+ $this->version_selector = $version_selector;
40
  }
41
 
42
  /**
43
+ * Registers all of the paths in a given manifest.
44
  *
 
45
  * @param string $manifest_path The path that we're loading the manifest from in each plugin.
46
  * @param array $path_map The path map to add the contents of the manifests to.
47
  *
48
  * @return array $path_map The path map we've built using the manifests in each plugin.
49
  */
50
+ public function register_plugin_manifests( $manifest_path, &$path_map ) {
51
  $file_paths = array_map(
52
  function ( $path ) use ( $manifest_path ) {
53
  return trailingslashit( $path ) . $manifest_path;
54
  },
55
+ $this->active_plugin_paths
56
  );
57
 
58
  foreach ( $file_paths as $path ) {
vendor/jetpack-autoloader/class-path-processor.php DELETED
@@ -1,165 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * This class handles dealing with paths for the autoloader.
14
- */
15
- class Path_Processor {
16
- /**
17
- * Given a path this will replace any of the path constants with a token to represent it.
18
- *
19
- * @param string $path The path we want to process.
20
- * @return string The tokenized path.
21
- */
22
- public function tokenize_path_constants( $path ) {
23
- $path = wp_normalize_path( $path );
24
-
25
- $constants = $this->get_normalized_constants();
26
- foreach ( $constants as $constant => $constant_path ) {
27
- $len = strlen( $constant_path );
28
- if ( substr( $path, 0, $len ) !== $constant_path ) {
29
- continue;
30
- }
31
-
32
- return substr_replace( $path, '{{' . $constant . '}}', 0, $len );
33
- }
34
-
35
- return $path;
36
- }
37
-
38
- /**
39
- * Given a path this will replace any of the path constant tokens with the expanded path.
40
- *
41
- * @param string $tokenized_path The path we want to process.
42
- * @return string The expanded path.
43
- */
44
- public function untokenize_path_constants( $tokenized_path ) {
45
- $tokenized_path = wp_normalize_path( $tokenized_path );
46
-
47
- $constants = $this->get_normalized_constants();
48
- foreach ( $constants as $constant => $constant_path ) {
49
- $constant = '{{' . $constant . '}}';
50
-
51
- $len = strlen( $constant );
52
- if ( substr( $tokenized_path, 0, $len ) !== $constant ) {
53
- continue;
54
- }
55
-
56
- return substr_replace( $tokenized_path, $constant_path, 0, $len );
57
- }
58
-
59
- return $tokenized_path;
60
- }
61
-
62
- /**
63
- * Given a file and an array of places it might be, this will find the absolute path and return it.
64
- *
65
- * @param string $file The plugin or theme file to resolve.
66
- * @param array $directories_to_check The directories we should check for the file if it isn't an absolute path.
67
- * @return string|false Returns the absolute path to the directory, otherwise false.
68
- */
69
- public function find_directory_with_autoloader( $file, $directories_to_check ) {
70
- $file = wp_normalize_path( $file );
71
-
72
- // We need an absolute path to the plugin directory to check for an autoloader.
73
- if ( $this->is_absolute_path( $file ) ) {
74
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
75
- $directory = @is_file( $file ) ? dirname( $file ) : $file;
76
- } else {
77
- $directory = $this->find_plugin_directory( $file, $directories_to_check );
78
- if ( ! isset( $directory ) ) {
79
- return false;
80
- }
81
- }
82
-
83
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
84
- if ( ! @is_file( $directory . '/vendor/composer/jetpack_autoload_classmap.php' ) ) {
85
- return false;
86
- }
87
-
88
- return $directory;
89
- }
90
-
91
- /**
92
- * Fetches an array of normalized paths keyed by the constant they came from.
93
- *
94
- * @return string[] The normalized paths keyed by the constant.
95
- */
96
- private function get_normalized_constants() {
97
- $raw_constants = array(
98
- // Order the constants from most-specific to least-specific.
99
- 'WP_PLUGIN_DIR',
100
- 'WPMU_PLUGIN_DIR',
101
- 'WP_CONTENT_DIR',
102
- 'ABSPATH',
103
- );
104
-
105
- $constants = array();
106
- foreach ( $raw_constants as $raw ) {
107
- if ( ! defined( $raw ) ) {
108
- continue;
109
- }
110
-
111
- $path = wp_normalize_path( constant( $raw ) );
112
- if ( isset( $path ) ) {
113
- $constants[ $raw ] = $path;
114
- }
115
- }
116
-
117
- return $constants;
118
- }
119
-
120
- /**
121
- * Indicates whether or not a path is absolute.
122
- *
123
- * @param string $path The path to check.
124
- * @return bool True if the path is absolute, otherwise false.
125
- */
126
- private function is_absolute_path( $path ) {
127
- if ( 0 === strlen( $path ) || '.' === $path[0] ) {
128
- return false;
129
- }
130
-
131
- // Absolute paths on Windows may begin with a drive letter.
132
- if ( preg_match( '/^[a-zA-Z]:[\/\\\\]/', $path ) ) {
133
- return true;
134
- }
135
-
136
- // A path starting with / or \ is absolute; anything else is relative.
137
- return ( '/' === $path[0] || '\\' === $path[0] );
138
- }
139
-
140
- /**
141
- * Given a file and a list of directories to check, this method will try to figure out
142
- * the absolute path to the file in question.
143
- *
144
- * @param string $normalized_path The normalized path to the plugin or theme file to resolve.
145
- * @param array $directories_to_check The directories we should check for the file if it isn't an absolute path.
146
- *
147
- * @return string|null The absolute path to the plugin directory, otherwise null.
148
- */
149
- private function find_plugin_directory( $normalized_path, $directories_to_check ) {
150
- // We're only able to find the absolute path for plugin/theme PHP files.
151
- if ( ! is_string( $normalized_path ) || '.php' !== substr( $normalized_path, -4 ) ) {
152
- return null;
153
- }
154
-
155
- foreach ( $directories_to_check as $directory ) {
156
- $normalized_check = wp_normalize_path( trailingslashit( $directory ) ) . $normalized_path;
157
- // phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
158
- if ( @is_file( $normalized_check ) ) {
159
- return dirname( $normalized_check );
160
- }
161
- }
162
-
163
- return null;
164
- }
165
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/class-plugin-locator.php DELETED
@@ -1,140 +0,0 @@
1
- <?php
2
- /**
3
- * This file was automatically generated by automattic/jetpack-autoloader.
4
- *
5
- * @package automattic/jetpack-autoloader
6
- */
7
-
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
-
10
- // phpcs:ignore
11
-
12
- /**
13
- * This class scans the WordPress installation to find active plugins.
14
- */
15
- class Plugin_Locator {
16
-
17
- /**
18
- * The path processor for finding plugin paths.
19
- *
20
- * @var Path_Processor
21
- */
22
- private $path_processor;
23
-
24
- /**
25
- * The constructor.
26
- *
27
- * @param Path_Processor $path_processor The Path_Processor instance.
28
- */
29
- public function __construct( $path_processor ) {
30
- $this->path_processor = $path_processor;
31
- }
32
-
33
- /**
34
- * Finds the path to the current plugin.
35
- *
36
- * @return string $path The path to the current plugin.
37
- * @throws \RuntimeException If the current plugin does not have an autoloader.
38
- */
39
- public function find_current_plugin() {
40
- // Escape from `vendor/__DIR__` to root plugin directory.
41
- $plugin_directory = dirname( dirname( __DIR__ ) );
42
-
43
- // Use the path processor to ensure that this is an autoloader we're referencing.
44
- $path = $this->path_processor->find_directory_with_autoloader( $plugin_directory, array() );
45
- if ( false === $path ) {
46
- throw new \RuntimeException( 'Failed to locate plugin ' . $plugin_directory );
47
- }
48
-
49
- return $path;
50
- }
51
-
52
- /**
53
- * Checks a given option for plugin paths.
54
- *
55
- * @param string $option_name The option that we want to check for plugin information.
56
- * @param bool $site_option Indicates whether or not we want to check the site option.
57
- *
58
- * @return array $plugin_paths The list of absolute paths we've found.
59
- */
60
- public function find_using_option( $option_name, $site_option = false ) {
61
- $raw = $site_option ? get_site_option( $option_name, array() ) : get_option( $option_name, array() );
62
- if ( empty( $raw ) ) {
63
- return array();
64
- }
65
-
66
- return $this->convert_plugins_to_paths( $raw );
67
- }
68
-
69
- /**
70
- * Checks for plugins that are being activated in this request and returns all that it finds.
71
- *
72
- * @return array $plugin_paths The list of absolute paths we've found.
73
- */
74
- public function find_activating_this_request() {
75
- // phpcs:disable WordPress.Security.NonceVerification.Recommended
76
-
77
- /**
78
- * Note: we're not actually checking the nonce here because it's too early
79
- * in the execution. The pluggable functions are not yet loaded to give
80
- * plugins a chance to plug their versions. Therefore we're doing the bare
81
- * minimum: checking whether the nonce exists and it's in the right place.
82
- * The request will fail later if the nonce doesn't pass the check.
83
- */
84
- if ( empty( $_REQUEST['_wpnonce'] ) ) {
85
- return array();
86
- }
87
-
88
- $plugin_slugs = array();
89
-
90
- $action = isset( $_REQUEST['action'] ) ? wp_unslash( $_REQUEST['action'] ) : false;
91
- switch ( $action ) {
92
- case 'activate':
93
- if ( empty( $_REQUEST['plugin'] ) ) {
94
- break;
95
- }
96
-
97
- $plugin_slugs[] = wp_unslash( $_REQUEST['plugin'] );
98
- break;
99
-
100
- case 'activate-selected':
101
- if ( empty( $_REQUEST['checked'] ) ) {
102
- break;
103
- }
104
-
105
- $plugin_slugs = wp_unslash( $_REQUEST['checked'] );
106
- break;
107
- }
108
-
109
- return $this->convert_plugins_to_paths( $plugin_slugs );
110
- }
111
-
112
- /**
113
- * Given an array of plugin slugs or paths, this will convert them to absolute paths and filter
114
- * out the plugins that are not directory plugins. Note that array keys will also be included
115
- * if they are plugin paths!
116
- *
117
- * @param string[] $plugins Plugin paths or slugs to filter.
118
- *
119
- * @return string[]
120
- */
121
- private function convert_plugins_to_paths( $plugins ) {
122
- // We're going to look for plugins in the standard directories.
123
- $path_constants = array( WP_PLUGIN_DIR, WPMU_PLUGIN_DIR );
124
-
125
- $plugin_paths = array();
126
- foreach ( $plugins as $key => $value ) {
127
- $path = $this->path_processor->find_directory_with_autoloader( $key, $path_constants );
128
- if ( $path ) {
129
- $plugin_paths[] = $path;
130
- }
131
-
132
- $path = $this->path_processor->find_directory_with_autoloader( $value, $path_constants );
133
- if ( $path ) {
134
- $plugin_paths[] = $path;
135
- }
136
- }
137
-
138
- return $plugin_paths;
139
- }
140
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
vendor/jetpack-autoloader/class-plugins-handler.php CHANGED
@@ -5,154 +5,133 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
12
  /**
13
- * This class handles locating and caching all of the active plugins.
14
  */
15
  class Plugins_Handler {
16
- /**
17
- * The transient key for plugin paths.
18
- */
19
- const TRANSIENT_KEY = 'jetpack_autoloader_plugin_paths';
20
 
21
  /**
22
- * The locator for finding plugins in different locations.
23
  *
24
- * @var Plugin_Locator
25
  */
26
- private $plugin_locator;
 
27
 
28
- /**
29
- * The processor for transforming cached paths.
30
- *
31
- * @var Path_Processor
32
- */
33
- private $path_processor;
 
 
 
 
 
 
 
34
 
35
  /**
36
- * The constructor.
37
  *
38
- * @param Plugin_Locator $plugin_locator The locator for finding active plugins.
39
- * @param Path_Processor $path_processor The processor for transforming cached paths.
40
  */
41
- public function __construct( $plugin_locator, $path_processor ) {
42
- $this->plugin_locator = $plugin_locator;
43
- $this->path_processor = $path_processor;
 
 
 
 
44
  }
45
 
46
  /**
47
- * Gets all of the active plugins we can find.
48
  *
49
- * @return string[]
50
  */
51
- public function get_active_plugins() {
52
- global $jetpack_autoloader_activating_plugins_paths;
53
- global $jetpack_autoloader_including_latest;
54
-
55
- // We're going to build a unique list of plugins from a few different sources
56
- // to find all of our "active" plugins. While we need to return an integer
57
- // array, we're going to use an associative array internally to reduce
58
- // the amount of time that we're going to spend checking uniqueness
59
- // and merging different arrays together to form the output.
60
- $active_plugins = array();
61
-
62
- // Make sure that plugins which have activated this request are considered as "active" even though
63
- // they probably won't be present in any option.
64
- if ( is_array( $jetpack_autoloader_activating_plugins_paths ) ) {
65
- foreach ( $jetpack_autoloader_activating_plugins_paths as $path ) {
66
- $active_plugins[ $path ] = $path;
67
- }
68
- }
69
-
70
- // This option contains all of the plugins that have been activated.
71
- $plugins = $this->plugin_locator->find_using_option( 'active_plugins' );
72
- foreach ( $plugins as $path ) {
73
- $active_plugins[ $path ] = $path;
74
- }
75
-
76
- // This option contains all of the multisite plugins that have been activated.
77
- if ( is_multisite() ) {
78
- $plugins = $this->plugin_locator->find_using_option( 'active_sitewide_plugins', true );
79
- foreach ( $plugins as $path ) {
80
- $active_plugins[ $path ] = $path;
81
- }
82
- }
83
-
84
- $plugins = $this->plugin_locator->find_activating_this_request();
85
- foreach ( $plugins as $path ) {
86
- $active_plugins[ $path ] = $path;
87
- }
88
-
89
- // When the current plugin isn't considered "active" there's a problem.
90
- // Since we're here, the plugin is active and currently being loaded.
91
- // We can support this case (mu-plugins and non-standard activation)
92
- // by adding the current plugin to the active list and marking it
93
- // as an unknown (activating) plugin. This also has the benefit
94
- // of causing a reset because the active plugins list has
95
- // been changed since it was saved in the global.
96
- $current_plugin = $this->plugin_locator->find_current_plugin();
97
- if ( ! in_array( $current_plugin, $active_plugins, true ) && ! $jetpack_autoloader_including_latest ) {
98
- $active_plugins[ $current_plugin ] = $current_plugin;
99
- $jetpack_autoloader_activating_plugins_paths[] = $current_plugin;
100
- }
101
-
102
- // Transform the array so that we don't have to worry about the keys interacting with other array types later.
103
- return array_values( $active_plugins );
104
  }
105
 
106
  /**
107
- * Gets all of the cached plugins if there are any.
108
  *
109
- * @return string[]
110
  */
111
- public function get_cached_plugins() {
112
- $cached = get_transient( self::TRANSIENT_KEY );
113
- if ( false === $cached ) {
114
- return array();
115
- }
116
-
117
- // We need to expand the tokens to an absolute path for this webserver.
118
- return array_map( array( $this->path_processor, 'untokenize_path_constants' ), $cached );
119
  }
120
 
121
  /**
122
- * Saves the plugin list to the cache.
 
 
123
  *
124
- * @param array $plugins The plugin list to save to the cache.
125
  */
126
- public function cache_plugins( $plugins ) {
127
- // We store the paths in a tokenized form so that that webservers with different absolute paths don't break.
128
- $plugins = array_map( array( $this->path_processor, 'tokenize_path_constants' ), $plugins );
129
-
130
- set_transient( self::TRANSIENT_KEY, $plugins );
131
  }
132
 
133
  /**
134
- * Checks to see whether or not the plugin list given has changed when compared to the
135
- * shared `$jetpack_autoloader_cached_plugin_paths` global. This allows us to deal
136
- * with cases where the active list may change due to filtering..
137
- *
138
- * @param string[] $plugins The plugins list to check against the global cache.
139
  *
140
- * @return bool True if the plugins have changed, otherwise false.
141
  */
142
- public function have_plugins_changed( $plugins ) {
143
- global $jetpack_autoloader_cached_plugin_paths;
144
-
145
- // When no autoloader has executed there is nothing to have changed.
146
- if ( ! isset( $jetpack_autoloader_cached_plugin_paths ) ) {
147
- $jetpack_autoloader_cached_plugin_paths = $plugins;
148
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
149
  }
150
 
151
- if ( $jetpack_autoloader_cached_plugin_paths !== $plugins ) {
152
- $jetpack_autoloader_cached_plugin_paths = $plugins;
153
- return true;
 
 
 
154
  }
155
 
156
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
157
  }
158
  }
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
12
  /**
13
+ * This class provides information about the current plugin and the site's active plugins.
14
  */
15
  class Plugins_Handler {
 
 
 
 
16
 
17
  /**
18
+ * Returns an array containing the paths of all active plugins and all known activating plugins.
19
  *
20
+ * @return array An array of plugin paths as strings or an empty array.
21
  */
22
+ public function get_all_active_plugins_paths() {
23
+ global $jetpack_autoloader_activating_plugins_paths;
24
 
25
+ $active_plugins_paths = $this->get_active_plugins_paths();
26
+ $multisite_plugins_paths = $this->get_multisite_plugins_paths();
27
+ $activating_plugins_paths = $this->get_plugins_activating_via_request();
28
+
29
+ return array_unique(
30
+ array_merge(
31
+ $active_plugins_paths,
32
+ $activating_plugins_paths,
33
+ $multisite_plugins_paths,
34
+ (array) $jetpack_autoloader_activating_plugins_paths
35
+ )
36
+ );
37
+ }
38
 
39
  /**
40
+ * Returns an array containing the paths of the active sitewide plugins in a multisite environment.
41
  *
42
+ * @return array The paths of the active sitewide plugins or an empty array.
 
43
  */
44
+ protected function get_multisite_plugins_paths() {
45
+ $plugin_slugs = is_multisite()
46
+ ? array_keys( get_site_option( 'active_sitewide_plugins', array() ) )
47
+ : array();
48
+
49
+ $plugin_slugs = array_filter( $plugin_slugs, array( $this, 'is_directory_plugin' ) );
50
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
51
  }
52
 
53
  /**
54
+ * Returns an array containing the paths of the currently active plugins.
55
  *
56
+ * @return array The active plugins' paths or an empty array.
57
  */
58
+ protected function get_active_plugins_paths() {
59
+ $plugin_slugs = (array) get_option( 'active_plugins', array() );
60
+ $plugin_slugs = array_filter( $plugin_slugs, array( $this, 'is_directory_plugin' ) );
61
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  }
63
 
64
  /**
65
+ * Adds the plugin directory from the WP_PLUGIN_DIR constant to the plugin slug.
66
  *
67
+ * @param string $plugin_slug The plugin slug.
68
  */
69
+ private function create_plugin_path( $plugin_slug ) {
70
+ $plugin_dir = str_replace( '\\', '/', WP_PLUGIN_DIR );
71
+ return trailingslashit( $plugin_dir ) . substr( $plugin_slug, 0, strrpos( $plugin_slug, '/' ) );
 
 
 
 
 
72
  }
73
 
74
  /**
75
+ * Ensure the plugin has its own directory and not a single-file plugin.
76
+ *
77
+ * @param string $plugin Plugin name, may be prefixed with "/".
78
  *
79
+ * @return bool
80
  */
81
+ public function is_directory_plugin( $plugin ) {
82
+ return strlen( $plugin ) > 1 && false !== strpos( $plugin, '/', 1 );
 
 
 
83
  }
84
 
85
  /**
86
+ * Returns an array containing the names of plugins that are activating via a request.
 
 
 
 
87
  *
88
+ * @return array An array of names of the activating plugins or an empty array.
89
  */
90
+ private function get_plugins_activating_via_request() {
91
+
92
+ // phpcs:disable WordPress.Security.NonceVerification.Recommended
93
+ // phpcs:disable WordPress.Security.ValidatedSanitizedInput.MissingUnslash
94
+ // phpcs:disable WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
95
+
96
+ $action = isset( $_REQUEST['action'] ) ? $_REQUEST['action'] : false;
97
+ $plugin = isset( $_REQUEST['plugin'] ) ? $_REQUEST['plugin'] : false;
98
+ $nonce = isset( $_REQUEST['_wpnonce'] ) ? $_REQUEST['_wpnonce'] : false;
99
+
100
+ /**
101
+ * Note: we're not actually checking the nonce here becase it's too early
102
+ * in the execution. The pluggable functions are not yet loaded to give
103
+ * plugins a chance to plug their versions. Therefore we're doing the bare
104
+ * minimum: checking whether the nonce exists and it's in the right place.
105
+ * The request will fail later if the nonce doesn't pass the check.
106
+ */
107
+
108
+ // In case of a single plugin activation there will be a plugin slug.
109
+ if ( 'activate' === $action && ! empty( $nonce ) ) {
110
+ return array( $this->create_plugin_path( wp_unslash( $plugin ) ) );
111
  }
112
 
113
+ $plugins = isset( $_REQUEST['checked'] ) ? $_REQUEST['checked'] : array();
114
+
115
+ // In case of bulk activation there will be an array of plugins.
116
+ if ( 'activate-selected' === $action && ! empty( $nonce ) ) {
117
+ $plugin_slugs = array_map( 'wp_unslash', $plugins );
118
+ return array_map( array( $this, 'create_plugin_path' ), $plugin_slugs );
119
  }
120
 
121
+ // phpcs:enable WordPress.Security.NonceVerification.Recommended
122
+ // phpcs:enable WordPress.Security.ValidatedSanitizedInput.MissingUnslash
123
+ // phpcs:enable WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
124
+ return array();
125
+ }
126
+
127
+ /**
128
+ * Returns the path of the current plugin.
129
+ *
130
+ * @return string The path of the current plugin.
131
+ */
132
+ public function get_current_plugin_path() {
133
+ $vendor_path = str_replace( '\\', '/', dirname( __DIR__ ) );
134
+ // Path to the plugin's folder (the parent of the vendor/jetpack-autoloader folder).
135
+ return substr( $vendor_path, 0, strrpos( $vendor_path, '/' ) );
136
  }
137
  }
vendor/jetpack-autoloader/class-version-loader.php CHANGED
@@ -5,7 +5,7 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
vendor/jetpack-autoloader/class-version-selector.php CHANGED
@@ -5,7 +5,7 @@
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
- namespace Automattic\Jetpack\Autoloader\jpaee4de30c4f137154f4b9bffbe5c7d1f;
9
 
10
  // phpcs:ignore
11
 
@@ -23,7 +23,7 @@ class Version_Selector {
23
  * @param String $compare_version The package version that is being evaluated to
24
  * determine if the version needs to be updated.
25
  *
26
- * @return bool Returns true if the selected package version should be updated,
27
  * else false.
28
  */
29
  public function is_version_update_required( $selected_version, $compare_version ) {
@@ -57,7 +57,7 @@ class Version_Selector {
57
  *
58
  * @param String $version The package version.
59
  *
60
- * @return bool True if the version is a dev version, else false.
61
  */
62
  private function is_package_version_dev( $version ) {
63
  if ( 'dev-' === substr( $version, 0, 4 ) || '9999999-dev' === $version ) {
5
  * @package automattic/jetpack-autoloader
6
  */
7
 
8
+ namespace Automattic\Jetpack\Autoloader\jp5ab615d17eae4e49bf0e7d0d1f73bc0f;
9
 
10
  // phpcs:ignore
11
 
23
  * @param String $compare_version The package version that is being evaluated to
24
  * determine if the version needs to be updated.
25
  *
26
+ * @return Boolean Returns true if the selected package version should be updated,
27
  * else false.
28
  */
29
  public function is_version_update_required( $selected_version, $compare_version ) {
57
  *
58
  * @param String $version The package version.
59
  *
60
+ * @return Boolean True if the version is a dev version, else false.
61
  */
62
  private function is_package_version_dev( $version ) {
63
  if ( 'dev-' === substr( $version, 0, 4 ) || '9999999-dev' === $version ) {
woocommerce-germanized.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Germanized for WooCommerce
4
  * Plugin URI: https://www.vendidero.de/woocommerce-germanized
5
  * Description: Germanized for WooCommerce extends WooCommerce to become a legally compliant store in the german market.
6
- * Version: 3.3.1
7
  * Author: vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 4.9
@@ -69,7 +69,7 @@ if ( ! class_exists( 'WooCommerce_Germanized' ) ) :
69
  *
70
  * @var string
71
  */
72
- public $version = '3.3.1';
73
 
74
  /**
75
  * @var WooCommerce_Germanized $instance of the plugin
3
  * Plugin Name: Germanized for WooCommerce
4
  * Plugin URI: https://www.vendidero.de/woocommerce-germanized
5
  * Description: Germanized for WooCommerce extends WooCommerce to become a legally compliant store in the german market.
6
+ * Version: 3.3.2
7
  * Author: vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 4.9
69
  *
70
  * @var string
71
  */
72
+ public $version = '3.3.2';
73
 
74
  /**
75
  * @var WooCommerce_Germanized $instance of the plugin