WooCommerce Germanized - Version 3.2.0

Version Description

  • Feature: WC 4.5 support
  • Improvement: WPML compatibility
  • Improvement: Tax-exclusive price calculation for vouchers
  • Improvement: Added woocommerce_checkout_after_terms_and_condtions hook to T&C template
  • Improvement: DOI check signup disable on woocommerce_checkout_init
Download this release

Release Info

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

Code changes from version 3.1.12 to 3.2.0

Files changed (100) hide show
  1. assets/css/admin-activation.css +13 -40
  2. assets/css/admin-activation.min.css +1 -1
  3. assets/css/admin-activation.scss +12 -39
  4. assets/css/admin-settings.css +2 -0
  5. assets/css/admin-settings.min.css +1 -1
  6. assets/css/admin-settings.scss +11 -0
  7. assets/images/add-return-request.png +0 -0
  8. assets/images/dhl.png +0 -0
  9. assets/images/edit-pdf-documents.png +0 -0
  10. assets/images/lexoffice.png +0 -0
  11. assets/images/pro/settings-emails.png +0 -0
  12. assets/images/pro/settings-invoices.png +0 -0
  13. assets/images/pro/settings-pdf.png +0 -0
  14. assets/images/sevdesk.png +0 -0
  15. assets/images/shipments.png +0 -0
  16. assets/js/admin/settings.js +48 -1
  17. assets/js/admin/settings.min.js +1 -1
  18. i18n/languages/woocommerce-germanized-de_DE.mo +0 -0
  19. i18n/languages/woocommerce-germanized-de_DE.po +65 -44
  20. i18n/languages/woocommerce-germanized-de_DE_formal.mo +0 -0
  21. i18n/languages/woocommerce-germanized-de_DE_formal.po +66 -45
  22. includes/admin/class-wc-gzd-admin-welcome.php +53 -70
  23. includes/admin/class-wc-gzd-admin.php +6 -0
  24. includes/admin/settings/class-wc-gzd-settings-pointers.php +1 -1
  25. includes/admin/settings/class-wc-gzd-settings-tab-emails.php +0 -1
  26. includes/admin/settings/class-wc-gzd-settings-tab-general.php +2 -2
  27. includes/admin/settings/class-wc-gzd-settings-tab-invoices.php +24 -0
  28. includes/class-wc-gzd-coupon-helper.php +32 -2
  29. includes/class-wc-gzd-customer-helper.php +6 -7
  30. includes/class-wc-gzd-emails.php +0 -1
  31. includes/class-wc-gzd-install.php +3 -1
  32. includes/class-wc-gzd-legal-checkbox-manager.php +1 -1
  33. includes/compatibility/class-wc-gzd-compatibility-wpml.php +3 -3
  34. packages/woocommerce-germanized-shipments/assets/css/admin.css +1 -1
  35. packages/woocommerce-germanized-shipments/assets/css/admin.min.css +1 -1
  36. packages/woocommerce-germanized-shipments/assets/css/admin.scss +1 -1
  37. packages/woocommerce-germanized-shipments/src/Admin/BulkActionHandler.php +1 -1
  38. packages/woocommerce-germanized-shipments/src/Package.php +1 -1
  39. packages/woocommerce-germanized-shipments/src/Shipment.php +12 -0
  40. packages/woocommerce-germanized-shipments/src/ShipmentFactory.php +9 -1
  41. packages/woocommerce-germanized-shipments/woocommerce-germanized-shipments.php +1 -1
  42. readme.txt +14 -7
  43. templates/checkout/terms.php +3 -1
  44. vendor/autoload.php +1 -1
  45. vendor/autoload_packages.php +2 -2
  46. vendor/composer/autoload_classmap_package.php +85 -85
  47. vendor/composer/autoload_real.php +4 -4
  48. vendor/composer/autoload_static.php +4 -4
  49. vendor/composer/installed.json +14 -13
  50. vendor/setasign/fpdi/phpstan.neon +19 -0
  51. vendor/setasign/fpdi/src/FpdfTpl.php +1 -2
  52. vendor/setasign/fpdi/src/FpdfTplTrait.php +11 -7
  53. vendor/setasign/fpdi/src/Fpdi.php +2 -4
  54. vendor/setasign/fpdi/src/FpdiException.php +1 -2
  55. vendor/setasign/fpdi/src/FpdiTrait.php +7 -18
  56. vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php +1 -2
  57. vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php +2 -4
  58. vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php +1 -2
  59. vendor/setasign/fpdi/src/PdfParser/CrossReference/FixedReader.php +5 -2
  60. vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php +40 -46
  61. vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php +1 -2
  62. vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85.php +1 -4
  63. vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php +1 -2
  64. vendor/setasign/fpdi/src/PdfParser/Filter/AsciiHex.php +1 -2
  65. vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php +1 -2
  66. vendor/setasign/fpdi/src/PdfParser/Filter/FilterInterface.php +1 -2
  67. vendor/setasign/fpdi/src/PdfParser/Filter/Flate.php +5 -6
  68. vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php +1 -2
  69. vendor/setasign/fpdi/src/PdfParser/Filter/Lzw.php +1 -3
  70. vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php +1 -2
  71. vendor/setasign/fpdi/src/PdfParser/PdfParser.php +45 -42
  72. vendor/setasign/fpdi/src/PdfParser/PdfParserException.php +1 -2
  73. vendor/setasign/fpdi/src/PdfParser/StreamReader.php +13 -10
  74. vendor/setasign/fpdi/src/PdfParser/Tokenizer.php +2 -9
  75. vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php +3 -3
  76. vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php +3 -4
  77. vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php +4 -5
  78. vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php +3 -8
  79. vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php +3 -4
  80. vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php +2 -3
  81. vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php +7 -7
  82. vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php +1 -2
  83. vendor/setasign/fpdi/src/PdfParser/Type/PdfNumeric.php +2 -3
  84. vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php +5 -6
  85. vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php +12 -12
  86. vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php +2 -3
  87. vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php +1 -2
  88. vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php +1 -2
  89. vendor/setasign/fpdi/src/PdfReader/DataStructure/Rectangle.php +1 -2
  90. vendor/setasign/fpdi/src/PdfReader/Page.php +1 -2
  91. vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php +1 -2
  92. vendor/setasign/fpdi/src/PdfReader/PdfReader.php +2 -2
  93. vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php +1 -2
  94. vendor/setasign/fpdi/src/Tcpdf/Fpdi.php +13 -9
  95. vendor/setasign/fpdi/src/TcpdfFpdi.php +1 -1
  96. vendor/setasign/fpdi/src/Tfpdf/FpdfTpl.php +2 -3
  97. vendor/setasign/fpdi/src/Tfpdf/Fpdi.php +3 -5
  98. vendor/setasign/fpdi/src/autoload.php +3 -1
  99. woocommerce-germanized.php +4 -4
  100. wpml-config.xml +7 -0
assets/css/admin-activation.css CHANGED
@@ -1,3 +1,7 @@
 
 
 
 
1
  .wc-gzd-news .about-logo-wrapper {
2
  display: flex;
3
  flex-wrap: wrap;
@@ -21,7 +25,7 @@
21
  margin-left: 3%; }
22
 
23
  .wc-gzd-news .new-feature img {
24
- align-self: flex-start; }
25
 
26
  .wc-gzd-news p.price {
27
  font-size: .8em; }
@@ -36,7 +40,10 @@
36
  .wc-gzd-news .columns .col {
37
  margin-right: 0;
38
  padding: 0 1em;
39
- width: 33.3333%; }
 
 
 
40
  .wc-gzd-news .columns .col h4 .dashicons {
41
  margin-right: 5px; }
42
  .wc-gzd-news .columns .col.align-center {
@@ -51,25 +58,10 @@
51
 
52
  .dashboard_page_wc-gzd-about h3 .wc-gzd-pro {
53
  font-size: 0.7em;
54
- margin-left: 1em; }
55
-
56
- .dashboard_page_wc-gzd-about .wc-vendipro-features {
57
- margin-top: 0;
58
- border: none;
59
- padding-bottom: 15px; }
60
-
61
- .dashboard_page_wc-gzd-about .wc-vendipro-features div h4 {
62
- margin-top: 0.5em;
63
- font-size: 1.1em;
64
- line-height: 1.1em; }
65
-
66
- .vendipro-buttons a, .vendipro-buttons p {
67
- display: inline-block; }
68
-
69
- .vendipro-buttons p {
70
- font-size: 0.8em;
71
- padding-top: 3px;
72
- margin: 0 0 0 5px; }
73
 
74
  .dashboard_page_wc-gzd-about .changelog {
75
  margin-top: 3em;
@@ -79,25 +71,6 @@
79
  .dashboard_page_wc-gzd-about .feature-section {
80
  border: none; }
81
 
82
- .dashboard_page_wc-gzd-about .vendipro .left {
83
- display: inline-block;
84
- width: 40%;
85
- padding-right: 2em;
86
- vertical-align: top; }
87
-
88
- .dashboard_page_wc-gzd-about .vendipro .right {
89
- display: inline-block;
90
- vertical-align: top;
91
- width: 50%; }
92
-
93
- .dashboard_page_wc-gzd-about .vendipro .right p:first-child {
94
- margin-top: 5px; }
95
-
96
- .dashboard_page_wc-gzd-about .vendipro .left img {
97
- width: 100%;
98
- border: 1px solid #CCC;
99
- border-radius: 3px; }
100
-
101
  .wc-gzd-actions a.button {
102
  margin-right: .5em; }
103
 
1
+ .wc-gzd-news p {
2
+ line-height: 1.8;
3
+ font-size: 15px; }
4
+
5
  .wc-gzd-news .about-logo-wrapper {
6
  display: flex;
7
  flex-wrap: wrap;
25
  margin-left: 3%; }
26
 
27
  .wc-gzd-news .new-feature img {
28
+ align-self: center; }
29
 
30
  .wc-gzd-news p.price {
31
  font-size: .8em; }
40
  .wc-gzd-news .columns .col {
41
  margin-right: 0;
42
  padding: 0 1em;
43
+ width: 33.3333%;
44
+ align-items: center;
45
+ display: inline-flex;
46
+ flex-wrap: wrap; }
47
  .wc-gzd-news .columns .col h4 .dashicons {
48
  margin-right: 5px; }
49
  .wc-gzd-news .columns .col.align-center {
58
 
59
  .dashboard_page_wc-gzd-about h3 .wc-gzd-pro {
60
  font-size: 0.7em;
61
+ margin-left: 5px;
62
+ background: transparent;
63
+ border: 1px solid #000;
64
+ color: #000; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
65
 
66
  .dashboard_page_wc-gzd-about .changelog {
67
  margin-top: 3em;
71
  .dashboard_page_wc-gzd-about .feature-section {
72
  border: none; }
73
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  .wc-gzd-actions a.button {
75
  margin-right: .5em; }
76
 
assets/css/admin-activation.min.css CHANGED
@@ -1 +1 @@
1
- .wc-gzd-news .about-logo-wrapper{display:flex;flex-wrap:wrap;justify-content:flex-start}.wc-gzd-news .about-logo-wrapper .wc-gzd-logo{display:inline-block!important;text-indent:-9999px;width:298px;vertical-align:top;margin-top:2rem;height:89px;background:url(../images/germanized.svg) no-repeat;background-size:298px auto}.wc-gzd-news .about-logo-wrapper .about-text{display:inline-block;padding:0;max-width:50%;width:50%;margin:0;margin-top:1rem;margin-left:3%}.wc-gzd-news .new-feature img{align-self:flex-start}.wc-gzd-news p.price{font-size:.8em}.wc-gzd-news .columns{display:flex;flex-wrap:wrap;margin-left:-1em;margin-right:-1em}.wc-gzd-news .columns *{box-sizing:border-box}.wc-gzd-news .columns .col{margin-right:0;padding:0 1em;width:33.3333%}.wc-gzd-news .columns .col h4 .dashicons{margin-right:5px}.wc-gzd-news .columns .col.align-center{display:inline-flex;align-self:center}.wc-gzd-news .columns.two-col .col{width:50%}.dashboard_page_wc-gzd-about h1{width:100%;margin-right:0}.dashboard_page_wc-gzd-about h3 .wc-gzd-pro{font-size:.7em;margin-left:1em}.dashboard_page_wc-gzd-about .wc-vendipro-features{margin-top:0;border:none;padding-bottom:15px}.dashboard_page_wc-gzd-about .wc-vendipro-features div h4{margin-top:.5em;font-size:1.1em;line-height:1.1em}.vendipro-buttons a,.vendipro-buttons p{display:inline-block}.vendipro-buttons p{font-size:.8em;padding-top:3px;margin:0 0 0 5px}.dashboard_page_wc-gzd-about .changelog{margin-top:3em;border-top:1px solid #ccc;padding-top:0}.dashboard_page_wc-gzd-about .feature-section{border:none}.dashboard_page_wc-gzd-about .vendipro .left{display:inline-block;width:40%;padding-right:2em;vertical-align:top}.dashboard_page_wc-gzd-about .vendipro .right{display:inline-block;vertical-align:top;width:50%}.dashboard_page_wc-gzd-about .vendipro .right p:first-child{margin-top:5px}.dashboard_page_wc-gzd-about .vendipro .left img{width:100%;border:1px solid #ccc;border-radius:3px}.wc-gzd-actions a.button{margin-right:.5em}.wc-gzd-actions .woocommerce-gzd-message .button-primary,.wc-gzd-actions a.button-primary{background-color:#262626!important;border:1px solid #000!important;text-shadow:none!important}.wc-gzd-actions .woocommerce-gzd-message .button-primary:hover,.wc-gzd-actions a.button-primary:hover{background-color:#363636!important;border:1px solid #000!important;text-shadow:none!important}.woocommerce-gzd-message .form-table tr td,.woocommerce-gzd-message .form-table tr th{padding:.7rem 0;margin:0}.woocommerce-gzd-message a.wc-gzd-skip{opacity:.7}div.woocommerce-gzd-message{border-left:4px solid #bb2525!important}div.woocommerce-gzd-message p{max-width:100%!important}
1
+ .wc-gzd-news p{line-height:1.8;font-size:15px}.wc-gzd-news .about-logo-wrapper{display:flex;flex-wrap:wrap;justify-content:flex-start}.wc-gzd-news .about-logo-wrapper .wc-gzd-logo{display:inline-block!important;text-indent:-9999px;width:298px;vertical-align:top;margin-top:2rem;height:89px;background:url(../images/germanized.svg) no-repeat;background-size:298px auto}.wc-gzd-news .about-logo-wrapper .about-text{display:inline-block;padding:0;max-width:50%;width:50%;margin:0;margin-top:1rem;margin-left:3%}.wc-gzd-news .new-feature img{align-self:center}.wc-gzd-news p.price{font-size:.8em}.wc-gzd-news .columns{display:flex;flex-wrap:wrap;margin-left:-1em;margin-right:-1em}.wc-gzd-news .columns *{box-sizing:border-box}.wc-gzd-news .columns .col{margin-right:0;padding:0 1em;width:33.3333%;align-items:center;display:inline-flex;flex-wrap:wrap}.wc-gzd-news .columns .col h4 .dashicons{margin-right:5px}.wc-gzd-news .columns .col.align-center{display:inline-flex;align-self:center}.wc-gzd-news .columns.two-col .col{width:50%}.dashboard_page_wc-gzd-about h1{width:100%;margin-right:0}.dashboard_page_wc-gzd-about h3 .wc-gzd-pro{font-size:.7em;margin-left:5px;background:0 0;border:1px solid #000;color:#000}.dashboard_page_wc-gzd-about .changelog{margin-top:3em;border-top:1px solid #ccc;padding-top:0}.dashboard_page_wc-gzd-about .feature-section{border:none}.wc-gzd-actions a.button{margin-right:.5em}.wc-gzd-actions .woocommerce-gzd-message .button-primary,.wc-gzd-actions a.button-primary{background-color:#262626!important;border:1px solid #000!important;text-shadow:none!important}.wc-gzd-actions .woocommerce-gzd-message .button-primary:hover,.wc-gzd-actions a.button-primary:hover{background-color:#363636!important;border:1px solid #000!important;text-shadow:none!important}.woocommerce-gzd-message .form-table tr td,.woocommerce-gzd-message .form-table tr th{padding:.7rem 0;margin:0}.woocommerce-gzd-message a.wc-gzd-skip{opacity:.7}div.woocommerce-gzd-message{border-left:4px solid #bb2525!important}div.woocommerce-gzd-message p{max-width:100%!important}
assets/css/admin-activation.scss CHANGED
@@ -1,4 +1,8 @@
1
  .wc-gzd-news {
 
 
 
 
2
 
3
  .about-logo-wrapper {
4
  display: flex;
@@ -29,7 +33,7 @@
29
 
30
  .new-feature {
31
  img {
32
- align-self: flex-start;
33
  }
34
  }
35
 
@@ -51,6 +55,9 @@
51
  margin-right: 0;
52
  padding: 0 1em;
53
  width: 33.3333%;
 
 
 
54
 
55
  h4 {
56
  .dashicons {
@@ -77,25 +84,10 @@
77
  }
78
  .dashboard_page_wc-gzd-about h3 .wc-gzd-pro {
79
  font-size: 0.7em;
80
- margin-left: 1em;
81
- }
82
- .dashboard_page_wc-gzd-about .wc-vendipro-features {
83
- margin-top: 0;
84
- border: none;
85
- padding-bottom: 15px;
86
- }
87
- .dashboard_page_wc-gzd-about .wc-vendipro-features div h4 {
88
- margin-top: 0.5em;
89
- font-size: 1.1em;
90
- line-height: 1.1em;
91
- }
92
- .vendipro-buttons a, .vendipro-buttons p {
93
- display: inline-block;
94
- }
95
- .vendipro-buttons p {
96
- font-size: 0.8em;
97
- padding-top: 3px;
98
- margin: 0 0 0 5px;
99
  }
100
  .dashboard_page_wc-gzd-about .changelog {
101
  margin-top: 3em;
@@ -105,25 +97,6 @@
105
  .dashboard_page_wc-gzd-about .feature-section {
106
  border: none;
107
  }
108
- .dashboard_page_wc-gzd-about .vendipro .left {
109
- display: inline-block;
110
- width: 40%;
111
- padding-right: 2em;
112
- vertical-align: top;
113
- }
114
- .dashboard_page_wc-gzd-about .vendipro .right {
115
- display: inline-block;
116
- vertical-align: top;
117
- width: 50%;
118
- }
119
- .dashboard_page_wc-gzd-about .vendipro .right p:first-child {
120
- margin-top: 5px;
121
- }
122
- .dashboard_page_wc-gzd-about .vendipro .left img {
123
- width: 100%;
124
- border: 1px solid #CCC;
125
- border-radius: 3px;
126
- }
127
 
128
  .wc-gzd-actions {
129
  a.button {
1
  .wc-gzd-news {
2
+ p {
3
+ line-height: 1.8;
4
+ font-size: 15px;
5
+ }
6
 
7
  .about-logo-wrapper {
8
  display: flex;
33
 
34
  .new-feature {
35
  img {
36
+ align-self: center;
37
  }
38
  }
39
 
55
  margin-right: 0;
56
  padding: 0 1em;
57
  width: 33.3333%;
58
+ align-items: center;
59
+ display: inline-flex;
60
+ flex-wrap: wrap;
61
 
62
  h4 {
63
  .dashicons {
84
  }
85
  .dashboard_page_wc-gzd-about h3 .wc-gzd-pro {
86
  font-size: 0.7em;
87
+ margin-left: 5px;
88
+ background: transparent;
89
+ border: 1px solid #000;
90
+ color: #000;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  }
92
  .dashboard_page_wc-gzd-about .changelog {
93
  margin-top: 3em;
97
  .dashboard_page_wc-gzd-about .feature-section {
98
  border: none;
99
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
 
101
  .wc-gzd-actions {
102
  a.button {
assets/css/admin-settings.css CHANGED
@@ -155,6 +155,8 @@
155
  margin-bottom: 1em; }
156
  .wc-gzd-admin-settings th.forminp-image {
157
  padding-right: 0 !important; }
 
 
158
  .wc-gzd-admin-settings .wc-gzd-premium img, .wc-gzd-admin-settings .forminp-image img {
159
  max-width: 100%;
160
  height: auto;
155
  margin-bottom: 1em; }
156
  .wc-gzd-admin-settings th.forminp-image {
157
  padding-right: 0 !important; }
158
+ .wc-gzd-admin-settings.wc-gzd-admin-settings-germanized-emails-attachments th.forminp-image, .wc-gzd-admin-settings.wc-gzd-admin-settings-contract th.forminp-image, .wc-gzd-admin-settings.wc-gzd-admin-settings-invoices th.forminp-image, .wc-gzd-admin-settings.wc-gzd-admin-settings-multistep_checkout th.forminp-image, .wc-gzd-admin-settings.wc-gzd-admin-settings-terms_generator th.forminp-image, .wc-gzd-admin-settings.wc-gzd-admin-settings-revocation_generator th.forminp-image {
159
+ padding-top: 0; }
160
  .wc-gzd-admin-settings .wc-gzd-premium img, .wc-gzd-admin-settings .forminp-image img {
161
  max-width: 100%;
162
  height: auto;
assets/css/admin-settings.min.css CHANGED
@@ -1 +1 @@
1
- .wc-gzd-settings .nav-tab-wrapper a.nav-tab[href*="tab=germanized"]{border-bottom:1px solid #f1f1f1;background:#f1f1f1;color:#000;margin-bottom:-1px;box-shadow:none}.wc-gzd-settings ul.subsubsub{margin-top:0}.wc-gzd-settings ul.subsubsub li a .wc-gzd-pro{margin-left:3px}.wc-gzd-settings ul.subsubsub li a.current .wc-gzd-pro{color:#222;border:1px solid #222}.wc-gzd-settings .wc-gzd-pro-outlined{margin-left:5px;margin-top:3px;border:1px solid #222;color:#222;background:0 0}.wc-gzd-settings a .wc-gzd-pro-outlined{border:1px solid #0073aa;color:#0073aa}.wc-gzd-settings .wc-gzd-dash-button{margin-right:5px;text-indent:9999px;position:relative;display:inline-block;padding:0;height:2em;width:2em;overflow:hidden;vertical-align:middle}.wc-gzd-settings .wc-gzd-dash-button::after{font-family:Dashicons;speak:none;font-weight:400;font-variant:normal;text-transform:none;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85;content:"\f464"}.wc-gzd-settings .wc-gzd-dash-button.help-link::after{content:"?";font-family:inherit;font-weight:700}.wc-gzd-settings .wc-gzd-settings-breadcrumb{display:flex;flex-wrap:wrap;justify-content:flex-start;font-size:1.4em;align-items:center;margin-bottom:.5em}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item{display:flex;flex-wrap:wrap;align-items:center}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.page-title-action{margin-left:1em;position:inherit;top:0}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link{text-decoration:none;display:inline-flex;white-space:nowrap;align-items:center;color:#444}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link:hover{color:#000!important}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link::after{font-family:Dashicons;font-weight:400;margin:0 2px;margin-top:2px;font-size:.9em;text-transform:none;line-height:1;text-indent:0;width:100%;height:100%;text-align:center;content:"\f345"}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item.breadcrumb-item-active{font-weight:600;color:#000}.wc-gzd-settings .wc-gzd-setting-header{font-size:1.4em}.wc-gzd-settings .wc-gzd-setting-header .page-title-action{top:-1px}.wc-gzd-settings .wc-gzd-setting-tabs{margin-top:1.5em}.wc-gzd-settings .wc-gzd-setting-tabs td,.wc-gzd-settings .wc-gzd-setting-tabs th{display:table-cell!important;padding:1em!important;vertical-align:top;line-height:1.75em;font-size:14px}.wc-gzd-settings .wc-gzd-setting-tabs th{font-weight:600}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled{width:1%;text-align:center}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled .status-disabled,.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled .status-enabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled .status-disabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled .status-enabled{display:inline-block;margin-top:3px}.wc-gzd-settings .wc-gzd-setting-tabs a .wc-gzd-pro{margin-left:3px}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-actions{width:15%;text-align:right}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions .button{margin-right:5px}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions .button:last-child{margin-right:0}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-name,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-name{width:25ch}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-name{font-weight:700;white-space:nowrap}.wc-gzd-settings .wc-gzd-setting-tabs tr:nth-child(odd) td{background:#f9f9f9}.wc-gzd-admin-settings{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-top:1em}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar{box-sizing:border-box}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar .wc-gzd-admin-settings-fields{width:65%;padding-right:5%}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar .wc-gzd-admin-settings-sidebar{width:30%}.wc-gzd-admin-settings tbody.ui-sortable tr:hover{cursor:move}.wc-gzd-admin-settings .forminp-radio fieldset p{margin-bottom:1em}.wc-gzd-admin-settings th.forminp-image{padding-right:0!important}.wc-gzd-admin-settings .forminp-image img,.wc-gzd-admin-settings .wc-gzd-premium img{max-width:100%;height:auto;opacity:.7}.wc-gzd-admin-settings #woocommerce_gzdp_terms_generator img{max-width:100%}.wc-gzd-admin-settings .woocommerce table.form-table th.forminp-image{padding-right:0}.wc-gzd-admin-settings tr.single_select_page .description{display:block;margin-top:.5em}.wc-gzd-admin-settings tr.wc-gzd-setting-invisible{display:none}.wc-gzd-admin-settings td .wc-gzd-additional-desc{margin-top:1em;line-height:1.5em;background:#fff;padding:.5em;font-style:normal;font-size:14px;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.wc-gzd-admin-settings td .wc-gzd-additional-desc .wc-gzd-tax-example{margin-top:.5em}.wc-gzd-admin-settings .wc-gzd-label-wrap{position:relative;display:block;vertical-align:middle}.wc-gzd-admin-settings .wc-gzd-label-wrap .woocommerce-help-tip{margin:-8px -24px 0 0!important;position:absolute;right:0;top:50%}.wc-gzd-admin-settings td.forminp-gzd_toggle p.description,.wc-gzd-admin-settings td.forminp-gzd_toggle span.description{display:inline-block;font-style:normal;font-size:14px;margin-left:5px}.wc-gzd-admin-settings td.forminp-gzd_toggle p.description .wc-gzd-additional-desc,.wc-gzd-admin-settings td.forminp-gzd_toggle span.description .wc-gzd-additional-desc{margin-bottom:-1em}.wc-gzd-admin-settings td.forminp-gzd_toggle fieldset{margin-top:1.25em}.wc-gzd-admin-settings td.forminp-gzd_toggle fieldset:first-child{margin-top:0}.wc-gzd-admin-settings a.woocommerce-gzd-input-toggle-trigger,.wc-gzd-setting-tabs a.woocommerce-gzd-input-toggle-trigger{color:transparent;border:none;text-decoration:none}.wc-gzd-admin-settings a.woocommerce-gzd-input-toggle-trigger:focus,.wc-gzd-setting-tabs a.woocommerce-gzd-input-toggle-trigger:focus{color:transparent;box-shadow:none;border:none}a.page-title-action .wc-gzd-pro{background:#0073aa}a.page-title-action:hover .wc-gzd-pro{background:#fff;color:#0073aa}table.wc-gzd-legal-checkboxes thead th{vertical-align:middle}table.wc-gzd-legal-checkboxes thead th.wc-gzd-legal-checkbox-sort{text-align:center}table.wc-gzd-legal-checkboxes td,table.wc-gzd-legal-checkboxes th{vertical-align:top;line-height:24px;padding:1em!important;font-size:14px;background:#fff;display:table-cell!important}table.wc-gzd-legal-checkboxes td ul,table.wc-gzd-legal-checkboxes th ul{margin:0}table.wc-gzd-legal-checkboxes td .status-disabled,table.wc-gzd-legal-checkboxes td .status-enabled,table.wc-gzd-legal-checkboxes th .status-disabled,table.wc-gzd-legal-checkboxes th .status-enabled{margin-top:3px}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li{line-height:24px;font-size:14px;color:#555;display:inline;margin:0}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li::before,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li::before{content:', '}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li:first-child::before,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li:first-child::before{content:''}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-sort::before{content:'\f333';font-family:Dashicons;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%;line-height:24px}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows td{border-top:2px solid #f9f9f9}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows tr:first-child td{border-top:0}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows tr:nth-child(odd) td{background:#f9f9f9}.wc-gzd-premium-overlay{border-left-color:#639aff!important}.wc-gzd-admin-settings-sidebar{box-sizing:border-box}.wc-gzd-admin-settings-sidebar .wc-gzd-admin-settings-sidebar-inner{padding:1em;background:#fff;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.wc-gzd-admin-settings-sidebar .wc-gzd-admin-settings-sidebar-inner.sticky{position:-webkit-sticky;position:sticky;top:50px}.wc-gzd-admin-settings-sidebar h1:first-of-type,.wc-gzd-admin-settings-sidebar h2:first-of-type,.wc-gzd-admin-settings-sidebar h3:first-of-type{margin-top:0}.wc-gzd-admin-settings-sidebar img{width:100%}.wc-gzd-admin-settings-sidebar .browser{border-radius:3px}.wc-gzd-admin-settings-sidebar .small{font-size:.9em;display:block;margin-top:.5em;color:#888}.wc-gzd-admin-settings-checkboxes td.forminp-textarea p code{margin:.5em 0;display:block}.wc-gzd-admin-settings-checkboxes td.forminp-textarea p{margin-bottom:1em}.wc-gzd-admin-settings-checkboxes td.forminp-textarea .gzd-small-desc{font-size:12px;font-style:italic;display:block}.wc-gzd-admin-settings-checkboxes td.forminp-text .description{margin-top:.5em;line-height:1.5em;display:block}
1
+ .wc-gzd-settings .nav-tab-wrapper a.nav-tab[href*="tab=germanized"]{border-bottom:1px solid #f1f1f1;background:#f1f1f1;color:#000;margin-bottom:-1px;box-shadow:none}.wc-gzd-settings ul.subsubsub{margin-top:0}.wc-gzd-settings ul.subsubsub li a .wc-gzd-pro{margin-left:3px}.wc-gzd-settings ul.subsubsub li a.current .wc-gzd-pro{color:#222;border:1px solid #222}.wc-gzd-settings .wc-gzd-pro-outlined{margin-left:5px;margin-top:3px;border:1px solid #222;color:#222;background:0 0}.wc-gzd-settings a .wc-gzd-pro-outlined{border:1px solid #0073aa;color:#0073aa}.wc-gzd-settings .wc-gzd-dash-button{margin-right:5px;text-indent:9999px;position:relative;display:inline-block;padding:0;height:2em;width:2em;overflow:hidden;vertical-align:middle}.wc-gzd-settings .wc-gzd-dash-button::after{font-family:Dashicons;speak:none;font-weight:400;font-variant:normal;text-transform:none;margin:0;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85;content:"\f464"}.wc-gzd-settings .wc-gzd-dash-button.help-link::after{content:"?";font-family:inherit;font-weight:700}.wc-gzd-settings .wc-gzd-settings-breadcrumb{display:flex;flex-wrap:wrap;justify-content:flex-start;font-size:1.4em;align-items:center;margin-bottom:.5em}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item{display:flex;flex-wrap:wrap;align-items:center}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.page-title-action{margin-left:1em;position:inherit;top:0}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link{text-decoration:none;display:inline-flex;white-space:nowrap;align-items:center;color:#444}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link:hover{color:#000!important}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item a.breadcrumb-link::after{font-family:Dashicons;font-weight:400;margin:0 2px;margin-top:2px;font-size:.9em;text-transform:none;line-height:1;text-indent:0;width:100%;height:100%;text-align:center;content:"\f345"}.wc-gzd-settings .wc-gzd-settings-breadcrumb li.breadcrumb-item.breadcrumb-item-active{font-weight:600;color:#000}.wc-gzd-settings .wc-gzd-setting-header{font-size:1.4em}.wc-gzd-settings .wc-gzd-setting-header .page-title-action{top:-1px}.wc-gzd-settings .wc-gzd-setting-tabs{margin-top:1.5em}.wc-gzd-settings .wc-gzd-setting-tabs td,.wc-gzd-settings .wc-gzd-setting-tabs th{display:table-cell!important;padding:1em!important;vertical-align:top;line-height:1.75em;font-size:14px}.wc-gzd-settings .wc-gzd-setting-tabs th{font-weight:600}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled{width:1%;text-align:center}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled .status-disabled,.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-enabled .status-enabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled .status-disabled,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-enabled .status-enabled{display:inline-block;margin-top:3px}.wc-gzd-settings .wc-gzd-setting-tabs a .wc-gzd-pro{margin-left:3px}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-actions{width:15%;text-align:right}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions .button{margin-right:5px}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-actions .button:last-child{margin-right:0}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-name,.wc-gzd-settings .wc-gzd-setting-tabs th.wc-gzd-setting-tab-name{width:25ch}.wc-gzd-settings .wc-gzd-setting-tabs td.wc-gzd-setting-tab-name{font-weight:700;white-space:nowrap}.wc-gzd-settings .wc-gzd-setting-tabs tr:nth-child(odd) td{background:#f9f9f9}.wc-gzd-admin-settings{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-top:1em}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar{box-sizing:border-box}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar .wc-gzd-admin-settings-fields{width:65%;padding-right:5%}.wc-gzd-admin-settings.wc-gzd-admin-settings-has-sidebar .wc-gzd-admin-settings-sidebar{width:30%}.wc-gzd-admin-settings tbody.ui-sortable tr:hover{cursor:move}.wc-gzd-admin-settings .forminp-radio fieldset p{margin-bottom:1em}.wc-gzd-admin-settings th.forminp-image{padding-right:0!important}.wc-gzd-admin-settings.wc-gzd-admin-settings-contract th.forminp-image,.wc-gzd-admin-settings.wc-gzd-admin-settings-germanized-emails-attachments th.forminp-image,.wc-gzd-admin-settings.wc-gzd-admin-settings-invoices th.forminp-image,.wc-gzd-admin-settings.wc-gzd-admin-settings-multistep_checkout th.forminp-image,.wc-gzd-admin-settings.wc-gzd-admin-settings-revocation_generator th.forminp-image,.wc-gzd-admin-settings.wc-gzd-admin-settings-terms_generator th.forminp-image{padding-top:0}.wc-gzd-admin-settings .forminp-image img,.wc-gzd-admin-settings .wc-gzd-premium img{max-width:100%;height:auto;opacity:.7}.wc-gzd-admin-settings #woocommerce_gzdp_terms_generator img{max-width:100%}.wc-gzd-admin-settings .woocommerce table.form-table th.forminp-image{padding-right:0}.wc-gzd-admin-settings tr.single_select_page .description{display:block;margin-top:.5em}.wc-gzd-admin-settings tr.wc-gzd-setting-invisible{display:none}.wc-gzd-admin-settings td .wc-gzd-additional-desc{margin-top:1em;line-height:1.5em;background:#fff;padding:.5em;font-style:normal;font-size:14px;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.wc-gzd-admin-settings td .wc-gzd-additional-desc .wc-gzd-tax-example{margin-top:.5em}.wc-gzd-admin-settings .wc-gzd-label-wrap{position:relative;display:block;vertical-align:middle}.wc-gzd-admin-settings .wc-gzd-label-wrap .woocommerce-help-tip{margin:-8px -24px 0 0!important;position:absolute;right:0;top:50%}.wc-gzd-admin-settings td.forminp-gzd_toggle p.description,.wc-gzd-admin-settings td.forminp-gzd_toggle span.description{display:inline-block;font-style:normal;font-size:14px;margin-left:5px}.wc-gzd-admin-settings td.forminp-gzd_toggle p.description .wc-gzd-additional-desc,.wc-gzd-admin-settings td.forminp-gzd_toggle span.description .wc-gzd-additional-desc{margin-bottom:-1em}.wc-gzd-admin-settings td.forminp-gzd_toggle fieldset{margin-top:1.25em}.wc-gzd-admin-settings td.forminp-gzd_toggle fieldset:first-child{margin-top:0}.wc-gzd-admin-settings a.woocommerce-gzd-input-toggle-trigger,.wc-gzd-setting-tabs a.woocommerce-gzd-input-toggle-trigger{color:transparent;border:none;text-decoration:none}.wc-gzd-admin-settings a.woocommerce-gzd-input-toggle-trigger:focus,.wc-gzd-setting-tabs a.woocommerce-gzd-input-toggle-trigger:focus{color:transparent;box-shadow:none;border:none}a.page-title-action .wc-gzd-pro{background:#0073aa}a.page-title-action:hover .wc-gzd-pro{background:#fff;color:#0073aa}table.wc-gzd-legal-checkboxes thead th{vertical-align:middle}table.wc-gzd-legal-checkboxes thead th.wc-gzd-legal-checkbox-sort{text-align:center}table.wc-gzd-legal-checkboxes td,table.wc-gzd-legal-checkboxes th{vertical-align:top;line-height:24px;padding:1em!important;font-size:14px;background:#fff;display:table-cell!important}table.wc-gzd-legal-checkboxes td ul,table.wc-gzd-legal-checkboxes th ul{margin:0}table.wc-gzd-legal-checkboxes td .status-disabled,table.wc-gzd-legal-checkboxes td .status-enabled,table.wc-gzd-legal-checkboxes th .status-disabled,table.wc-gzd-legal-checkboxes th .status-enabled{margin-top:3px}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li{line-height:24px;font-size:14px;color:#555;display:inline;margin:0}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li::before,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li::before{content:', '}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-locations ul li:first-child::before,table.wc-gzd-legal-checkboxes th.wc-gzd-legal-checkbox-locations ul li:first-child::before{content:''}table.wc-gzd-legal-checkboxes td.wc-gzd-legal-checkbox-sort::before{content:'\f333';font-family:Dashicons;text-align:center;line-height:1;color:#999;display:block;width:17px;float:left;height:100%;line-height:24px}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows td{border-top:2px solid #f9f9f9}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows tr:first-child td{border-top:0}table.wc-gzd-legal-checkboxes tbody.wc-gzd-legal-checkbox-rows tr:nth-child(odd) td{background:#f9f9f9}.wc-gzd-premium-overlay{border-left-color:#639aff!important}.wc-gzd-admin-settings-sidebar{box-sizing:border-box}.wc-gzd-admin-settings-sidebar .wc-gzd-admin-settings-sidebar-inner{padding:1em;background:#fff;box-shadow:0 1px 1px 0 rgba(0,0,0,.1)}.wc-gzd-admin-settings-sidebar .wc-gzd-admin-settings-sidebar-inner.sticky{position:-webkit-sticky;position:sticky;top:50px}.wc-gzd-admin-settings-sidebar h1:first-of-type,.wc-gzd-admin-settings-sidebar h2:first-of-type,.wc-gzd-admin-settings-sidebar h3:first-of-type{margin-top:0}.wc-gzd-admin-settings-sidebar img{width:100%}.wc-gzd-admin-settings-sidebar .browser{border-radius:3px}.wc-gzd-admin-settings-sidebar .small{font-size:.9em;display:block;margin-top:.5em;color:#888}.wc-gzd-admin-settings-checkboxes td.forminp-textarea p code{margin:.5em 0;display:block}.wc-gzd-admin-settings-checkboxes td.forminp-textarea p{margin-bottom:1em}.wc-gzd-admin-settings-checkboxes td.forminp-textarea .gzd-small-desc{font-size:12px;font-style:italic;display:block}.wc-gzd-admin-settings-checkboxes td.forminp-text .description{margin-top:.5em;line-height:1.5em;display:block}
assets/css/admin-settings.scss CHANGED
@@ -239,6 +239,17 @@
239
  padding-right: 0 !important;
240
  }
241
 
 
 
 
 
 
 
 
 
 
 
 
242
  .wc-gzd-premium img, .forminp-image img {
243
  max-width: 100%;
244
  height: auto;
239
  padding-right: 0 !important;
240
  }
241
 
242
+ &.wc-gzd-admin-settings-germanized-emails-attachments,
243
+ &.wc-gzd-admin-settings-contract,
244
+ &.wc-gzd-admin-settings-invoices,
245
+ &.wc-gzd-admin-settings-multistep_checkout,
246
+ &.wc-gzd-admin-settings-terms_generator,
247
+ &.wc-gzd-admin-settings-revocation_generator {
248
+ th.forminp-image {
249
+ padding-top: 0;
250
+ }
251
+ }
252
+
253
  .wc-gzd-premium img, .forminp-image img {
254
  max-width: 100%;
255
  height: auto;
assets/images/add-return-request.png DELETED
Binary file
assets/images/dhl.png DELETED
Binary file
assets/images/edit-pdf-documents.png ADDED
Binary file
assets/images/lexoffice.png ADDED
Binary file
assets/images/pro/settings-emails.png CHANGED
Binary file
assets/images/pro/settings-invoices.png CHANGED
Binary file
assets/images/pro/settings-pdf.png DELETED
Binary file
assets/images/sevdesk.png ADDED
Binary file
assets/images/shipments.png DELETED
Binary file
assets/js/admin/settings.js CHANGED
@@ -155,9 +155,56 @@ window.germanized = window.germanized || {};
155
 
156
  $fields.each( function() {
157
  var dataValue = $( this ).data( 'show_if_' + name ),
 
158
  currentVal = $( this ).val(),
159
  currentName = $( this ).attr( 'name' ).replace( /[\[\]']+/g, '' ),
160
- $field = $( this ).parents( 'tr' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
 
162
  $field.removeClass( 'wc-gzd-setting-visible wc-gzd-setting-invisible' );
163
 
155
 
156
  $fields.each( function() {
157
  var dataValue = $( this ).data( 'show_if_' + name ),
158
+ data = $( this ).data(),
159
  currentVal = $( this ).val(),
160
  currentName = $( this ).attr( 'name' ).replace( /[\[\]']+/g, '' ),
161
+ $field = $( this ).parents( 'tr' ),
162
+ skipField = false;
163
+
164
+ var isFieldVisible = $field.hasClass( 'wc-gzd-setting-visible' );
165
+ var deps = [];
166
+
167
+ for ( var dataName in data ) {
168
+ if ( data.hasOwnProperty( dataName ) ) {
169
+ if ( dataName.substring( 0, 8 ) === 'show_if_' ) {
170
+ var cleanName = dataName.replace( 'show_if_', '' );
171
+ var $dependendField = $( '.wc-gzd-admin-settings' ).find( ':input#' + cleanName );
172
+ var index = $dependendField.index( ':input' );
173
+
174
+ deps[ index ] = cleanName;
175
+ }
176
+ }
177
+ }
178
+
179
+ deps = deps.filter(function(){return true;});
180
+
181
+ if ( deps.length > 1 ) {
182
+ if ( ! isFieldVisible ) {
183
+ var nameToUse = deps.slice(-1)[0];
184
+
185
+ if ( name !== nameToUse ) {
186
+ skipField = true;
187
+
188
+ if ( $( ':input#' + nameToUse ).parents( 'tr' ).is( ':visible' ) ) {
189
+ $( '.wc-gzd-admin-settings' ).find( ':input#' + nameToUse ).trigger( 'gzd_show_or_hide_fields' );
190
+ }
191
+ } else {
192
+ if ( ! $( ':input#' + nameToUse ).parents( 'tr' ).is( ':visible' ) ) {
193
+ console.log(nameToUse);
194
+ console.log($field);
195
+
196
+ $field.addClass( 'wc-gzd-setting-invisible' );
197
+ $( document.body ).trigger( 'woocommerce_gzd_setting_field_invisible', [ $field, currentName, currentVal ] );
198
+
199
+ skipField = true;
200
+ }
201
+ }
202
+ }
203
+ }
204
+
205
+ if ( skipField ) {
206
+ return;
207
+ }
208
 
209
  $field.removeClass( 'wc-gzd-setting-visible wc-gzd-setting-invisible' );
210
 
assets/js/admin/settings.min.js CHANGED
@@ -1 +1 @@
1
- window.germanized=window.germanized||{},function(d,c){c.settings={params:{},init:function(){var e=this;this.params=wc_gzd_admin_settings_params;try{d(document.body).on("wc-enhanced-select-init wc-gzd-enhanced-select-init",this.onEnhancedSelectInit).trigger("wc-gzd-enhanced-select-init")}catch(e){window.console.log(e)}d(document).on("change","input[name=woocommerce_gzd_dispute_resolution_type]",this.onChangeDisputeResolutionType).on("click","a.woocommerce-gzd-input-toggle-trigger",this.onInputToogleClick).on("change",".wc-gzd-setting-tabs input.woocommerce-gzd-tab-status-checkbox",this.onChangeTabStatus).on("change gzd_show_or_hide_fields",".wc-gzd-admin-settings :input",this.onChangeInput),d(document.body).on("woocommerce_gzd_setting_field_visible",this.onShowField).on("woocommerce_gzd_setting_field_invisible",this.onHideField),d(".wc-gzd-admin-settings :input").trigger("gzd_show_or_hide_fields"),d("input[name=woocommerce_gzd_dispute_resolution_type]:checked").trigger("change"),this.initMailSortable(),d(document.body).on("init_tooltips",function(){e.initTipTips()}),e.initTipTip()},initTipTip:function(){d(".wc-gzd-setting-tab-actions a.button").tipTip({fadeIn:50,fadeOut:50,delay:200})},onChangeTabStatus:function(){var e=d(this),t=c.settings,i=e.data("tab"),o=e.parents("td").find(".woocommerce-gzd-input-toggle"),n=o.parents("a"),s=e.is(":checked")?"yes":"no",a={action:"woocommerce_gzd_toggle_tab_enabled",security:t.params.tab_toggle_nonce,enable:s,tab:i};return o.addClass("woocommerce-input-toggle--loading"),d.ajax({url:t.params.ajax_url,data:a,dataType:"json",type:"POST",success:function(e){!0===e.data?(o.removeClass("woocommerce-input-toggle--enabled, woocommerce-input-toggle--disabled"),o.addClass("woocommerce-input-toggle--enabled"),o.removeClass("woocommerce-input-toggle--loading"),e.hasOwnProperty("message")&&0<e.message.length&&(d(".wc-gzd-setting-tabs").before('<div class="error inline" id="message"><p>'+e.message+"</p></div>"),d("html, body").animate({scrollTop:d("#message").offset().top-32},1e3))):!1===e.data?(o.removeClass("woocommerce-input-toggle--enabled, woocommerce-input-toggle--disabled"),o.addClass("woocommerce-input-toggle--disabled"),o.removeClass("woocommerce-input-toggle--loading")):"needs_setup"===e.data&&(window.location.href=n.attr("href"))}}),!1},onShowField:function(e,t,i,o){t.parents("table").find(":input[data-show_if_"+i+"]").each(function(){d(this).trigger("gzd_show_or_hide_fields")})},onHideField:function(e,t,i,o){t.parents("table").find(":input[data-show_if_"+i+"]").each(function(){d(this).trigger("gzd_show_or_hide_fields")})},onChangeInput:function(){d(this).parents("tr").find(":input:not(.select2-focusser, .select2-input)").each(function(){var n,s,e,t,i,o=d(this),a=!1,c=d(this).attr("name");(o.is(":checked")||o.is(":selected"))&&(a=!0,o.parents("tr").is(":visible")||(a=!1)),void 0!==c&&!1!==c&&(n=c.replace(/[\[\]']+/g,""),s=o.val(),e=d(".wc-gzd-admin-settings").find(":input[data-show_if_"+n+"]"),o.is(":checkbox")&&(s=o.is(":checked")?"yes":"no",o.parents("tr").is(":visible")||(s="no")),e.each(function(){var e=d(this).data("show_if_"+n),t=d(this).val(),i=d(this).attr("name").replace(/[\[\]']+/g,""),o=d(this).parents("tr");o.removeClass("wc-gzd-setting-visible wc-gzd-setting-invisible"),void 0!==e&&0<e.length?s===e?(o.addClass("wc-gzd-setting-visible"),d(document.body).trigger("woocommerce_gzd_setting_field_visible",[o,i,t])):(o.addClass("wc-gzd-setting-invisible"),d(document.body).trigger("woocommerce_gzd_setting_field_invisible",[o,i,t])):a?(o.addClass("wc-gzd-setting-visible"),d(document.body).trigger("woocommerce_gzd_setting_field_visible",[o,i,t])):(o.addClass("wc-gzd-setting-invisible"),d(document.body).trigger("woocommerce_gzd_setting_field_invisible",[o,i,t]))}),t=d(this).parents(".form-table"),i=!1,t.find("tr").each(function(){if(!d(this).hasClass("wc-gzd-setting-invisible"))return!(i=!0)}),i?t.show():t.hide())})},onEnhancedSelectInit:function(){d(":input.wc-gzd-enhanced-tags").filter(":not(.enhanced)").each(function(){var e={minimumResultsForSearch:10,allowClear:!!d(this).data("allow_clear"),placeholder:d(this).data("placeholder"),tags:!0};d(this).selectWoo(e).addClass("enhanced")})},onParcelDeliveryShowSpecial:function(){"shipping_methods"===d(this).val()?d("select#woocommerce_gzd_checkboxes_parcel_delivery_show_shipping_methods").parents("tr").show():d("select#woocommerce_gzd_checkboxes_parcel_delivery_show_shipping_methods").parents("tr").hide()},onChangeDisputeResolutionType:function(){var e=d(this).val();d("#woocommerce_gzd_alternative_complaints_text_"+e);d("[id^=woocommerce_gzd_alternative_complaints_text_]").parents("tr").hide(),d("#woocommerce_gzd_alternative_complaints_text_"+e).parents("tr").show()},onInputToogleClick:function(){var e=d(this).find("span.woocommerce-gzd-input-toggle"),t=e.parents("fieldset").find("input[type=checkbox]"),i=e.hasClass("woocommerce-input-toggle--enabled");return e.removeClass("woocommerce-input-toggle--enabled"),e.removeClass("woocommerce-input-toggle--disabled"),i?(t.prop("checked",!1),e.addClass("woocommerce-input-toggle--disabled")):(t.prop("checked",!0),e.addClass("woocommerce-input-toggle--enabled")),t.trigger("change"),!1},initMailSortable:function(){var o;0<d("#woocommerce_gzd_mail_attach_imprint").length&&(o=d("#woocommerce_gzd_mail_attach_imprint").parents("table"),d(o).find("tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td, th",scrollSensitivity:40,helper:function(e,t){return t.children().each(function(){jQuery(this).width(jQuery(this).width())}),t.css("left","0"),t},start:function(e,t){t.item.css("background-color","#f6f6f6")},stop:function(e,t){t.item.removeAttr("style");var i=[];d(o).find("tr select").each(function(){i.push(d(this).attr("id").replace("woocommerce_gzd_mail_attach_",""))}),d("#woocommerce_gzd_mail_attach_order").val(i.join())}}))}},d(document).ready(function(){c.settings.init()})}(jQuery,window.germanized);
1
+ window.germanized=window.germanized||{},function(_,c){c.settings={params:{},init:function(){var e=this;this.params=wc_gzd_admin_settings_params;try{_(document.body).on("wc-enhanced-select-init wc-gzd-enhanced-select-init",this.onEnhancedSelectInit).trigger("wc-gzd-enhanced-select-init")}catch(e){window.console.log(e)}_(document).on("change","input[name=woocommerce_gzd_dispute_resolution_type]",this.onChangeDisputeResolutionType).on("click","a.woocommerce-gzd-input-toggle-trigger",this.onInputToogleClick).on("change",".wc-gzd-setting-tabs input.woocommerce-gzd-tab-status-checkbox",this.onChangeTabStatus).on("change gzd_show_or_hide_fields",".wc-gzd-admin-settings :input",this.onChangeInput),_(document.body).on("woocommerce_gzd_setting_field_visible",this.onShowField).on("woocommerce_gzd_setting_field_invisible",this.onHideField),_(".wc-gzd-admin-settings :input").trigger("gzd_show_or_hide_fields"),_("input[name=woocommerce_gzd_dispute_resolution_type]:checked").trigger("change"),this.initMailSortable(),_(document.body).on("init_tooltips",function(){e.initTipTips()}),e.initTipTip()},initTipTip:function(){_(".wc-gzd-setting-tab-actions a.button").tipTip({fadeIn:50,fadeOut:50,delay:200})},onChangeTabStatus:function(){var e=_(this),t=c.settings,i=e.data("tab"),o=e.parents("td").find(".woocommerce-gzd-input-toggle"),n=o.parents("a"),s=e.is(":checked")?"yes":"no",a={action:"woocommerce_gzd_toggle_tab_enabled",security:t.params.tab_toggle_nonce,enable:s,tab:i};return o.addClass("woocommerce-input-toggle--loading"),_.ajax({url:t.params.ajax_url,data:a,dataType:"json",type:"POST",success:function(e){!0===e.data?(o.removeClass("woocommerce-input-toggle--enabled, woocommerce-input-toggle--disabled"),o.addClass("woocommerce-input-toggle--enabled"),o.removeClass("woocommerce-input-toggle--loading"),e.hasOwnProperty("message")&&0<e.message.length&&(_(".wc-gzd-setting-tabs").before('<div class="error inline" id="message"><p>'+e.message+"</p></div>"),_("html, body").animate({scrollTop:_("#message").offset().top-32},1e3))):!1===e.data?(o.removeClass("woocommerce-input-toggle--enabled, woocommerce-input-toggle--disabled"),o.addClass("woocommerce-input-toggle--disabled"),o.removeClass("woocommerce-input-toggle--loading")):"needs_setup"===e.data&&(window.location.href=n.attr("href"))}}),!1},onShowField:function(e,t,i,o){t.parents("table").find(":input[data-show_if_"+i+"]").each(function(){_(this).trigger("gzd_show_or_hide_fields")})},onHideField:function(e,t,i,o){t.parents("table").find(":input[data-show_if_"+i+"]").each(function(){_(this).trigger("gzd_show_or_hide_fields")})},onChangeInput:function(){_(this).parents("tr").find(":input:not(.select2-focusser, .select2-input)").each(function(){var g,m,e,t,i,o=_(this),h=!1,n=_(this).attr("name");(o.is(":checked")||o.is(":selected"))&&(h=!0,o.parents("tr").is(":visible")||(h=!1)),void 0!==n&&!1!==n&&(g=n.replace(/[\[\]']+/g,""),m=o.val(),e=_(".wc-gzd-admin-settings").find(":input[data-show_if_"+g+"]"),o.is(":checkbox")&&(m=o.is(":checked")?"yes":"no",o.parents("tr").is(":visible")||(m="no")),e.each(function(){var e,t,i,o=_(this).data("show_if_"+g),n=_(this).data(),s=_(this).val(),a=_(this).attr("name").replace(/[\[\]']+/g,""),c=_(this).parents("tr"),d=!1,r=c.hasClass("wc-gzd-setting-visible"),l=[];for(e in n){n.hasOwnProperty(e)&&"show_if_"===e.substring(0,8)&&(t=e.replace("show_if_",""),l[_(".wc-gzd-admin-settings").find(":input#"+t).index(":input")]=t)}1<(l=l.filter(function(){return!0})).length&&(r||(i=l.slice(-1)[0],g!==i?(d=!0,_(":input#"+i).parents("tr").is(":visible")&&_(".wc-gzd-admin-settings").find(":input#"+i).trigger("gzd_show_or_hide_fields")):_(":input#"+i).parents("tr").is(":visible")||(console.log(i),console.log(c),c.addClass("wc-gzd-setting-invisible"),_(document.body).trigger("woocommerce_gzd_setting_field_invisible",[c,a,s]),d=!0))),d||(c.removeClass("wc-gzd-setting-visible wc-gzd-setting-invisible"),void 0!==o&&0<o.length?m===o?(c.addClass("wc-gzd-setting-visible"),_(document.body).trigger("woocommerce_gzd_setting_field_visible",[c,a,s])):(c.addClass("wc-gzd-setting-invisible"),_(document.body).trigger("woocommerce_gzd_setting_field_invisible",[c,a,s])):h?(c.addClass("wc-gzd-setting-visible"),_(document.body).trigger("woocommerce_gzd_setting_field_visible",[c,a,s])):(c.addClass("wc-gzd-setting-invisible"),_(document.body).trigger("woocommerce_gzd_setting_field_invisible",[c,a,s])))}),t=_(this).parents(".form-table"),i=!1,t.find("tr").each(function(){if(!_(this).hasClass("wc-gzd-setting-invisible"))return!(i=!0)}),i?t.show():t.hide())})},onEnhancedSelectInit:function(){_(":input.wc-gzd-enhanced-tags").filter(":not(.enhanced)").each(function(){var e={minimumResultsForSearch:10,allowClear:!!_(this).data("allow_clear"),placeholder:_(this).data("placeholder"),tags:!0};_(this).selectWoo(e).addClass("enhanced")})},onParcelDeliveryShowSpecial:function(){"shipping_methods"===_(this).val()?_("select#woocommerce_gzd_checkboxes_parcel_delivery_show_shipping_methods").parents("tr").show():_("select#woocommerce_gzd_checkboxes_parcel_delivery_show_shipping_methods").parents("tr").hide()},onChangeDisputeResolutionType:function(){var e=_(this).val();_("#woocommerce_gzd_alternative_complaints_text_"+e);_("[id^=woocommerce_gzd_alternative_complaints_text_]").parents("tr").hide(),_("#woocommerce_gzd_alternative_complaints_text_"+e).parents("tr").show()},onInputToogleClick:function(){var e=_(this).find("span.woocommerce-gzd-input-toggle"),t=e.parents("fieldset").find("input[type=checkbox]"),i=e.hasClass("woocommerce-input-toggle--enabled");return e.removeClass("woocommerce-input-toggle--enabled"),e.removeClass("woocommerce-input-toggle--disabled"),i?(t.prop("checked",!1),e.addClass("woocommerce-input-toggle--disabled")):(t.prop("checked",!0),e.addClass("woocommerce-input-toggle--enabled")),t.trigger("change"),!1},initMailSortable:function(){var o;0<_("#woocommerce_gzd_mail_attach_imprint").length&&(o=_("#woocommerce_gzd_mail_attach_imprint").parents("table"),_(o).find("tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td, th",scrollSensitivity:40,helper:function(e,t){return t.children().each(function(){jQuery(this).width(jQuery(this).width())}),t.css("left","0"),t},start:function(e,t){t.item.css("background-color","#f6f6f6")},stop:function(e,t){t.item.removeAttr("style");var i=[];_(o).find("tr select").each(function(){i.push(_(this).attr("id").replace("woocommerce_gzd_mail_attach_",""))}),_("#woocommerce_gzd_mail_attach_order").val(i.join())}}))}},_(document).ready(function(){c.settings.init()})}(jQuery,window.germanized);
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-08-05 13:58+0200\n"
6
- "PO-Revision-Date: 2020-08-05 14:01+0200\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
@@ -11,7 +11,7 @@ msgstr ""
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
- "X-Generator: Poedit 2.3.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
@@ -3981,7 +3981,7 @@ msgid "Sorry, this order is invalid and cannot be returned."
3981
  msgstr "Sorry, diese Bestellung existiert nicht."
3982
 
3983
  #: woocommerce-germanized-shipments/src/ReturnShipment.php:365
3984
- #: woocommerce-germanized-shipments/src/Shipment.php:843
3985
  #, php-format
3986
  msgctxt "full name"
3987
  msgid "%1$s %2$s"
@@ -4956,7 +4956,7 @@ msgid "Welcome to Germanized"
4956
  msgstr "Willkommen bei Germanized"
4957
 
4958
  # @ woocommerce-germanized
4959
- #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-welcome.php:281
4960
  msgid "Go to Germanized Settings"
4961
  msgstr "Germanized Einstellungen"
4962
 
@@ -5486,17 +5486,18 @@ msgstr ""
5486
  msgid "Run the updater"
5487
  msgstr "Update starten"
5488
 
5489
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:175
5490
  msgid "Not now"
5491
  msgstr "Nicht jetzt"
5492
 
5493
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:179
5494
  msgctxt "woocommerce-germanized"
5495
  msgid "Deactivate"
5496
  msgstr "Deaktivieren"
5497
 
5498
  # @ woocommerce-germanized
5499
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:39
 
5500
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:23
5501
  msgid "Get Germanized Pro to unlock"
5502
  msgstr "Upgrade zur Pro Version um dieses Feature nutzen zu können"
@@ -5517,6 +5518,7 @@ msgstr ""
5517
  # @ woocommerce-germanized
5518
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:42
5519
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-pointers.php:177
 
5520
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:26
5521
  #: woocommerce-germanized/includes/admin/views/setup/first-steps.php:35
5522
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/abstact-class-wc-gzd-elementor-widget.php:54
@@ -5525,6 +5527,7 @@ msgid "Upgrade now"
5525
  msgstr "Jetzt upgraden"
5526
 
5527
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:152
 
5528
  msgid "Learn more"
5529
  msgstr "Mehr erfahren"
5530
 
@@ -5890,7 +5893,6 @@ msgstr "Verspäteter Vertragsschluss"
5890
 
5891
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-contract.php:21
5892
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
5893
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:33
5894
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:21
5895
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:21
5896
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-revocation-generator.php:21
@@ -6010,20 +6012,16 @@ msgstr "Darstellung"
6010
 
6011
  # @ woocommerce-germanized
6012
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
6013
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:65
6014
  msgid "PDF Attachments"
6015
  msgstr "PDF-Anhänge"
6016
 
6017
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:33
6018
- msgid "PDF Layout"
6019
- msgstr "PDF Layout"
6020
-
6021
  # @ woocommerce-germanized
6022
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:50
6023
  msgid "Email attachments"
6024
  msgstr "E-Mail-Anhänge"
6025
 
6026
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:51
6027
  msgid ""
6028
  "Choose which of your email templates (e.g. order confirmation) should "
6029
  "contain your legal page content e.g. terms and conditions within it's footer."
@@ -6031,7 +6029,7 @@ msgstr ""
6031
  "Wähle aus, an welche deiner E-Mail-Templates (z.B. Bestellbestätigung), "
6032
  "deine rechtlich relevanten Seiten z.B. AGB angefügt werden sollen."
6033
 
6034
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:66
6035
  msgid ""
6036
  "Customers of our pro version may attach PDF files instead of plain text "
6037
  "content to emails."
@@ -6040,7 +6038,7 @@ msgstr ""
6040
  "alternativ als PDF-Datei anhängen."
6041
 
6042
  # @ woocommerce-germanized
6043
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:82
6044
  msgid ""
6045
  "Use drag & drop to customize attachment order. Don't forget to save your "
6046
  "changes."
@@ -6049,8 +6047,8 @@ msgstr ""
6049
  "beeinflussen und speichere anschließend deine Änderungen."
6050
 
6051
  # @ woocommerce-germanized
6052
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:121
6053
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:142
6054
  #, php-format
6055
  msgid ""
6056
  "Want to attach automatically generated PDF files to emails instead of plain "
@@ -6061,7 +6059,7 @@ msgstr ""
6061
 
6062
  # @ woocommerce-germanized
6063
  # @ woocommerce
6064
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:164
6065
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:239
6066
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:137
6067
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:144
@@ -6075,7 +6073,7 @@ msgid "Title"
6075
  msgstr "Anrede"
6076
 
6077
  # @ woocommerce-germanized
6078
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:165
6079
  msgid ""
6080
  "Adjust the title to be used within emails. Use {first_name}, {last_name} and "
6081
  "{title} as placeholders."
@@ -6084,21 +6082,21 @@ msgstr ""
6084
  "{title} als Platzhalter."
6085
 
6086
  # @ woocommerce-germanized
6087
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:167
6088
  msgid "Hi {first_name},"
6089
  msgstr "Hallo {first_name},"
6090
 
6091
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6092
  msgid "Hide Username"
6093
  msgstr "Nutzernamen verstecken"
6094
 
6095
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:172
6096
  msgid ""
6097
  "Hide username from email content if password or password reset link is "
6098
  "embedded."
6099
  msgstr "Nutzernamen nicht zusammen mit einem Passwort versenden."
6100
 
6101
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:172
6102
  msgid ""
6103
  "Trusted Shops advises to not show the username together with an account "
6104
  "password or password reset link. This option hides (or masks) the username "
@@ -6109,19 +6107,19 @@ msgstr ""
6109
  "Trusted Shops Mitglied bist, solltest du diese Option aktivieren."
6110
 
6111
  # @ woocommerce-germanized
6112
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:179
6113
  msgid "Pay now Button"
6114
  msgstr "Jetzt bezahlen Button"
6115
 
6116
  # @ woocommerce-germanized
6117
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:180
6118
  msgid "Add a pay now button to emails and order success page."
6119
  msgstr ""
6120
  "Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
6121
  "hinzu."
6122
 
6123
  # @ woocommerce-germanized
6124
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:181
6125
  msgid ""
6126
  "Add a pay now button to order confirmation email and order success page if "
6127
  "the order awaits payment (PayPal etc)."
@@ -6131,33 +6129,33 @@ msgstr ""
6131
  "benötigt (z.B. per PayPal)."
6132
 
6133
  # @ woocommerce-germanized
6134
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:187
6135
  msgid "Disabled for"
6136
  msgstr "Deaktiviert für"
6137
 
6138
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:188
6139
  msgid "You may want to disable the pay now button for certain payment methods."
6140
  msgstr ""
6141
  "Du kannst den jetzt bezahlen Button hier bei Bedarf für bestimmte "
6142
  "Zahlungsarten deaktivieren."
6143
 
6144
  # @ woocommerce-germanized
6145
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:215
6146
  msgid "Customer"
6147
  msgstr "Kunde"
6148
 
6149
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:215
6150
  msgid "Admin"
6151
  msgstr "Admin"
6152
 
6153
  # @ woocommerce-germanized
6154
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:232
6155
  #, php-format
6156
  msgid "Attach %s"
6157
  msgstr "%s"
6158
 
6159
  # @ woocommerce-germanized
6160
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:233
6161
  #, php-format
6162
  msgid "Attach %s to the following email templates"
6163
  msgstr "%s an die folgenden E-Mail Templates anfügen"
@@ -6642,6 +6640,26 @@ msgstr ""
6642
  msgid "Invoices & Packing Slips"
6643
  msgstr "Rechnungen & Lieferscheine"
6644
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6645
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:17
6646
  msgid "Transform your checkout into a multistep checkout process."
6647
  msgstr "Verwandle deine Kasse in einen mehrstufigen Kaufprozess."
@@ -8111,25 +8129,25 @@ msgstr ""
8111
  "\">hier</a>."
8112
 
8113
  #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8114
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:230
8115
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:350
8116
  msgid ""
8117
  "Please activate your account through clicking on the activation link "
8118
  "received via email."
8119
  msgstr ""
8120
  "Bitte aktiviere dein Kundenkonto indem du auf den Link in der E-Mail klickst."
8121
 
8122
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:240
8123
  #, php-format
8124
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8125
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8126
 
8127
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:242
8128
  msgid "Please create an account or login before continuing to checkout"
8129
  msgstr ""
8130
  "Bitte erstelle ein Kundenkonto oder logge dich ein, bevor du zur Kasse gehst"
8131
 
8132
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:382
8133
  msgid ""
8134
  "This activation code has expired. We have sent you a new activation code via "
8135
  "e-mail."
@@ -8138,20 +8156,20 @@ msgstr ""
8138
  "Code per E-Mail geschickt."
8139
 
8140
  # @ woocommerce-germanized
8141
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:384
8142
  msgid "Sorry, but this activation code cannot be found."
8143
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8144
 
8145
  # @ woocommerce-germanized
8146
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:388
8147
  msgid "Thank you. You have successfully activated your account."
8148
  msgstr "Vielen Dank. Dein Benutzerkonto wurde erfolgreich aktiviert."
8149
 
8150
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:574
8151
  msgid "Expired activation key"
8152
  msgstr "Abgelaufener Aktivierungscode"
8153
 
8154
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:579
8155
  msgid "Invalid activation key"
8156
  msgstr "Aktivierungscode ungültig"
8157
 
@@ -8196,7 +8214,7 @@ msgid "Thanks for creating an account on %s."
8196
  msgstr "Danke, dass du ein Konto bei %s erstellt hast."
8197
 
8198
  # @ woocommerce-germanized
8199
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1067
8200
  msgctxt "revocation-form"
8201
  msgid "Forward your Revocation online"
8202
  msgstr "Deinen Widerruf online erklären"
@@ -11336,6 +11354,9 @@ msgstr "vendidero"
11336
  msgid "https://vendidero.de"
11337
  msgstr "https://vendidero.de"
11338
 
 
 
 
11339
  # @ woocommerce-germanized
11340
  #~ msgid "No VAT notice"
11341
  #~ msgstr "Umsatzsteuerbefreiung"
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2020-09-08 12:59+0200\n"
6
+ "PO-Revision-Date: 2020-09-08 13:00+0200\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Generator: Poedit 2.4.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
3981
  msgstr "Sorry, diese Bestellung existiert nicht."
3982
 
3983
  #: woocommerce-germanized-shipments/src/ReturnShipment.php:365
3984
+ #: woocommerce-germanized-shipments/src/Shipment.php:851
3985
  #, php-format
3986
  msgctxt "full name"
3987
  msgid "%1$s %2$s"
4956
  msgstr "Willkommen bei Germanized"
4957
 
4958
  # @ woocommerce-germanized
4959
+ #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-welcome.php:264
4960
  msgid "Go to Germanized Settings"
4961
  msgstr "Germanized Einstellungen"
4962
 
5486
  msgid "Run the updater"
5487
  msgstr "Update starten"
5488
 
5489
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:174
5490
  msgid "Not now"
5491
  msgstr "Nicht jetzt"
5492
 
5493
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:178
5494
  msgctxt "woocommerce-germanized"
5495
  msgid "Deactivate"
5496
  msgstr "Deaktivieren"
5497
 
5498
  # @ woocommerce-germanized
5499
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:39
5500
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:52
5501
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:23
5502
  msgid "Get Germanized Pro to unlock"
5503
  msgstr "Upgrade zur Pro Version um dieses Feature nutzen zu können"
5518
  # @ woocommerce-germanized
5519
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:42
5520
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-pointers.php:177
5521
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:63
5522
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:26
5523
  #: woocommerce-germanized/includes/admin/views/setup/first-steps.php:35
5524
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/abstact-class-wc-gzd-elementor-widget.php:54
5527
  msgstr "Jetzt upgraden"
5528
 
5529
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:152
5530
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:61
5531
  msgid "Learn more"
5532
  msgstr "Mehr erfahren"
5533
 
5893
 
5894
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-contract.php:21
5895
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
 
5896
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:21
5897
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:21
5898
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-revocation-generator.php:21
6012
 
6013
  # @ woocommerce-germanized
6014
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
6015
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:64
6016
  msgid "PDF Attachments"
6017
  msgstr "PDF-Anhänge"
6018
 
 
 
 
 
6019
  # @ woocommerce-germanized
6020
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:49
6021
  msgid "Email attachments"
6022
  msgstr "E-Mail-Anhänge"
6023
 
6024
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:50
6025
  msgid ""
6026
  "Choose which of your email templates (e.g. order confirmation) should "
6027
  "contain your legal page content e.g. terms and conditions within it's footer."
6029
  "Wähle aus, an welche deiner E-Mail-Templates (z.B. Bestellbestätigung), "
6030
  "deine rechtlich relevanten Seiten z.B. AGB angefügt werden sollen."
6031
 
6032
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:65
6033
  msgid ""
6034
  "Customers of our pro version may attach PDF files instead of plain text "
6035
  "content to emails."
6038
  "alternativ als PDF-Datei anhängen."
6039
 
6040
  # @ woocommerce-germanized
6041
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:81
6042
  msgid ""
6043
  "Use drag & drop to customize attachment order. Don't forget to save your "
6044
  "changes."
6047
  "beeinflussen und speichere anschließend deine Änderungen."
6048
 
6049
  # @ woocommerce-germanized
6050
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:120
6051
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:141
6052
  #, php-format
6053
  msgid ""
6054
  "Want to attach automatically generated PDF files to emails instead of plain "
6059
 
6060
  # @ woocommerce-germanized
6061
  # @ woocommerce
6062
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:163
6063
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:239
6064
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:137
6065
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:144
6073
  msgstr "Anrede"
6074
 
6075
  # @ woocommerce-germanized
6076
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:164
6077
  msgid ""
6078
  "Adjust the title to be used within emails. Use {first_name}, {last_name} and "
6079
  "{title} as placeholders."
6082
  "{title} als Platzhalter."
6083
 
6084
  # @ woocommerce-germanized
6085
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:166
6086
  msgid "Hi {first_name},"
6087
  msgstr "Hallo {first_name},"
6088
 
6089
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:170
6090
  msgid "Hide Username"
6091
  msgstr "Nutzernamen verstecken"
6092
 
6093
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6094
  msgid ""
6095
  "Hide username from email content if password or password reset link is "
6096
  "embedded."
6097
  msgstr "Nutzernamen nicht zusammen mit einem Passwort versenden."
6098
 
6099
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6100
  msgid ""
6101
  "Trusted Shops advises to not show the username together with an account "
6102
  "password or password reset link. This option hides (or masks) the username "
6107
  "Trusted Shops Mitglied bist, solltest du diese Option aktivieren."
6108
 
6109
  # @ woocommerce-germanized
6110
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:178
6111
  msgid "Pay now Button"
6112
  msgstr "Jetzt bezahlen Button"
6113
 
6114
  # @ woocommerce-germanized
6115
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:179
6116
  msgid "Add a pay now button to emails and order success page."
6117
  msgstr ""
6118
  "Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
6119
  "hinzu."
6120
 
6121
  # @ woocommerce-germanized
6122
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:180
6123
  msgid ""
6124
  "Add a pay now button to order confirmation email and order success page if "
6125
  "the order awaits payment (PayPal etc)."
6129
  "benötigt (z.B. per PayPal)."
6130
 
6131
  # @ woocommerce-germanized
6132
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:186
6133
  msgid "Disabled for"
6134
  msgstr "Deaktiviert für"
6135
 
6136
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:187
6137
  msgid "You may want to disable the pay now button for certain payment methods."
6138
  msgstr ""
6139
  "Du kannst den jetzt bezahlen Button hier bei Bedarf für bestimmte "
6140
  "Zahlungsarten deaktivieren."
6141
 
6142
  # @ woocommerce-germanized
6143
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:214
6144
  msgid "Customer"
6145
  msgstr "Kunde"
6146
 
6147
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:214
6148
  msgid "Admin"
6149
  msgstr "Admin"
6150
 
6151
  # @ woocommerce-germanized
6152
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:231
6153
  #, php-format
6154
  msgid "Attach %s"
6155
  msgstr "%s"
6156
 
6157
  # @ woocommerce-germanized
6158
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:232
6159
  #, php-format
6160
  msgid "Attach %s to the following email templates"
6161
  msgstr "%s an die folgenden E-Mail Templates anfügen"
6640
  msgid "Invoices & Packing Slips"
6641
  msgstr "Rechnungen & Lieferscheine"
6642
 
6643
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:53
6644
+ msgid ""
6645
+ "Generate custom and professional PDF invoices, cancellations and packing "
6646
+ "slips automatically with Germanized Pro."
6647
+ msgstr ""
6648
+ "Erstelle automatisch individuelle PDF Rechnungen, Stornierungen und "
6649
+ "Lieferscheine mit Germanized Pro."
6650
+
6651
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:55
6652
+ msgid "Customize your documents with the built-in document editor"
6653
+ msgstr "Passe deine Dokumente mit dem integrierten visuellen Editor an"
6654
+
6655
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:56
6656
+ msgid "Transfer your documents to your lexoffice and/or sevDesk account"
6657
+ msgstr "Übertrage deine Belege an deinen lexoffice und/oder sevDesk Account"
6658
+
6659
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:57
6660
+ msgid "Export your documents as CSV and ZIP"
6661
+ msgstr "Exportiere deine Dokumente als CSV und ZIP Datei"
6662
+
6663
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:17
6664
  msgid "Transform your checkout into a multistep checkout process."
6665
  msgstr "Verwandle deine Kasse in einen mehrstufigen Kaufprozess."
8129
  "\">hier</a>."
8130
 
8131
  #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8132
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
8133
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:349
8134
  msgid ""
8135
  "Please activate your account through clicking on the activation link "
8136
  "received via email."
8137
  msgstr ""
8138
  "Bitte aktiviere dein Kundenkonto indem du auf den Link in der E-Mail klickst."
8139
 
8140
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:239
8141
  #, php-format
8142
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8143
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8144
 
8145
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:241
8146
  msgid "Please create an account or login before continuing to checkout"
8147
  msgstr ""
8148
  "Bitte erstelle ein Kundenkonto oder logge dich ein, bevor du zur Kasse gehst"
8149
 
8150
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:381
8151
  msgid ""
8152
  "This activation code has expired. We have sent you a new activation code via "
8153
  "e-mail."
8156
  "Code per E-Mail geschickt."
8157
 
8158
  # @ woocommerce-germanized
8159
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:383
8160
  msgid "Sorry, but this activation code cannot be found."
8161
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8162
 
8163
  # @ woocommerce-germanized
8164
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:387
8165
  msgid "Thank you. You have successfully activated your account."
8166
  msgstr "Vielen Dank. Dein Benutzerkonto wurde erfolgreich aktiviert."
8167
 
8168
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:573
8169
  msgid "Expired activation key"
8170
  msgstr "Abgelaufener Aktivierungscode"
8171
 
8172
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:578
8173
  msgid "Invalid activation key"
8174
  msgstr "Aktivierungscode ungültig"
8175
 
8214
  msgstr "Danke, dass du ein Konto bei %s erstellt hast."
8215
 
8216
  # @ woocommerce-germanized
8217
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1066
8218
  msgctxt "revocation-form"
8219
  msgid "Forward your Revocation online"
8220
  msgstr "Deinen Widerruf online erklären"
11354
  msgid "https://vendidero.de"
11355
  msgstr "https://vendidero.de"
11356
 
11357
+ #~ msgid "PDF Layout"
11358
+ #~ msgstr "PDF Layout"
11359
+
11360
  # @ woocommerce-germanized
11361
  #~ msgid "No VAT notice"
11362
  #~ msgstr "Umsatzsteuerbefreiung"
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-08-05 14:00+0200\n"
6
- "PO-Revision-Date: 2020-08-05 14:01+0200\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE@formal\n"
@@ -11,7 +11,7 @@ msgstr ""
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
- "X-Generator: Poedit 2.3.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
@@ -3974,7 +3974,7 @@ msgid "Sorry, this order is invalid and cannot be returned."
3974
  msgstr "Sorry, diese Bestellung existiert nicht."
3975
 
3976
  #: woocommerce-germanized-shipments/src/ReturnShipment.php:365
3977
- #: woocommerce-germanized-shipments/src/Shipment.php:843
3978
  #, php-format
3979
  msgctxt "full name"
3980
  msgid "%1$s %2$s"
@@ -4209,7 +4209,7 @@ msgstr "%s Rücksende-Anweisungen"
4209
  #: woocommerce-germanized-shipments/templates/emails/plain/customer-shipment.php:24
4210
  #, php-format
4211
  msgid "Hi %s,"
4212
- msgstr ""
4213
 
4214
  #: woocommerce-germanized-shipments/templates/emails/customer-guest-return-shipment-request.php:30
4215
  #: woocommerce-germanized-shipments/templates/emails/plain/customer-guest-return-shipment-request.php:26
@@ -4947,7 +4947,7 @@ msgid "Welcome to Germanized"
4947
  msgstr "Willkommen bei Germanized"
4948
 
4949
  # @ woocommerce-germanized
4950
- #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-welcome.php:281
4951
  msgid "Go to Germanized Settings"
4952
  msgstr "Germanized Einstellungen"
4953
 
@@ -5479,17 +5479,18 @@ msgstr ""
5479
  msgid "Run the updater"
5480
  msgstr "Update starten"
5481
 
5482
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:175
5483
  msgid "Not now"
5484
  msgstr "Nicht jetzt"
5485
 
5486
- #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:179
5487
  msgctxt "woocommerce-germanized"
5488
  msgid "Deactivate"
5489
  msgstr "Deaktivieren"
5490
 
5491
  # @ woocommerce-germanized
5492
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:39
 
5493
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:23
5494
  msgid "Get Germanized Pro to unlock"
5495
  msgstr "Upgraden Sie zur Pro Version um dieses Feature zu nutzen"
@@ -5510,6 +5511,7 @@ msgstr ""
5510
  # @ woocommerce-germanized
5511
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:42
5512
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-pointers.php:177
 
5513
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:26
5514
  #: woocommerce-germanized/includes/admin/views/setup/first-steps.php:35
5515
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/abstact-class-wc-gzd-elementor-widget.php:54
@@ -5518,6 +5520,7 @@ msgid "Upgrade now"
5518
  msgstr "Jetzt upgraden"
5519
 
5520
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:152
 
5521
  msgid "Learn more"
5522
  msgstr "Mehr erfahren"
5523
 
@@ -5883,7 +5886,6 @@ msgstr "Verspäteter Vertragsschluss"
5883
 
5884
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-contract.php:21
5885
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
5886
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:33
5887
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:21
5888
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:21
5889
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-revocation-generator.php:21
@@ -6003,20 +6005,16 @@ msgstr "Darstellung"
6003
 
6004
  # @ woocommerce-germanized
6005
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
6006
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:65
6007
  msgid "PDF Attachments"
6008
  msgstr "PDF-Anhänge"
6009
 
6010
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:33
6011
- msgid "PDF Layout"
6012
- msgstr "PDF Layout"
6013
-
6014
  # @ woocommerce-germanized
6015
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:50
6016
  msgid "Email attachments"
6017
  msgstr "E-Mail-Anhänge"
6018
 
6019
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:51
6020
  msgid ""
6021
  "Choose which of your email templates (e.g. order confirmation) should "
6022
  "contain your legal page content e.g. terms and conditions within it's footer."
@@ -6024,7 +6022,7 @@ msgstr ""
6024
  "Wählen Sie aus, an welche der E-Mail-Templates (z.B. Bestellbestätigung), "
6025
  "Ihre rechtlich relevanten Seiten z.B. AGB angefügt werden sollen."
6026
 
6027
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:66
6028
  msgid ""
6029
  "Customers of our pro version may attach PDF files instead of plain text "
6030
  "content to emails."
@@ -6033,7 +6031,7 @@ msgstr ""
6033
  "alternativ als PDF-Datei anhängen."
6034
 
6035
  # @ woocommerce-germanized
6036
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:82
6037
  msgid ""
6038
  "Use drag & drop to customize attachment order. Don't forget to save your "
6039
  "changes."
@@ -6042,8 +6040,8 @@ msgstr ""
6042
  "beeinflussen und speichern Sie anschließend Ihre Änderungen."
6043
 
6044
  # @ woocommerce-germanized
6045
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:121
6046
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:142
6047
  #, php-format
6048
  msgid ""
6049
  "Want to attach automatically generated PDF files to emails instead of plain "
@@ -6054,7 +6052,7 @@ msgstr ""
6054
 
6055
  # @ woocommerce-germanized
6056
  # @ woocommerce
6057
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:164
6058
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:239
6059
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:137
6060
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:144
@@ -6068,7 +6066,7 @@ msgid "Title"
6068
  msgstr "Anrede"
6069
 
6070
  # @ woocommerce-germanized
6071
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:165
6072
  msgid ""
6073
  "Adjust the title to be used within emails. Use {first_name}, {last_name} and "
6074
  "{title} as placeholders."
@@ -6077,21 +6075,21 @@ msgstr ""
6077
  "{last_name} und {title} als Platzhalter."
6078
 
6079
  # @ woocommerce-germanized
6080
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:167
6081
  msgid "Hi {first_name},"
6082
  msgstr "Sehr geehrte(r) {title} {last_name},"
6083
 
6084
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6085
  msgid "Hide Username"
6086
  msgstr "Nutzernamen verstecken"
6087
 
6088
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:172
6089
  msgid ""
6090
  "Hide username from email content if password or password reset link is "
6091
  "embedded."
6092
  msgstr "Nutzernamen nicht zusammen mit einem Passwort versenden."
6093
 
6094
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:172
6095
  msgid ""
6096
  "Trusted Shops advises to not show the username together with an account "
6097
  "password or password reset link. This option hides (or masks) the username "
@@ -6102,19 +6100,19 @@ msgstr ""
6102
  "Trusted Shops Mitglied sind, sollten Sie diese Option aktivieren."
6103
 
6104
  # @ woocommerce-germanized
6105
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:179
6106
  msgid "Pay now Button"
6107
  msgstr "Jetzt bezahlen Button"
6108
 
6109
  # @ woocommerce-germanized
6110
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:180
6111
  msgid "Add a pay now button to emails and order success page."
6112
  msgstr ""
6113
  "Fügt einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
6114
  "hinzu."
6115
 
6116
  # @ woocommerce-germanized
6117
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:181
6118
  msgid ""
6119
  "Add a pay now button to order confirmation email and order success page if "
6120
  "the order awaits payment (PayPal etc)."
@@ -6124,33 +6122,33 @@ msgstr ""
6124
  "benötigt (z.B. per PayPal)."
6125
 
6126
  # @ woocommerce-germanized
6127
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:187
6128
  msgid "Disabled for"
6129
  msgstr "Deaktiviert für"
6130
 
6131
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:188
6132
  msgid "You may want to disable the pay now button for certain payment methods."
6133
  msgstr ""
6134
  "Sie können den jetzt bezahlen Button hier bei Bedarf für bestimmte "
6135
  "Zahlungsarten deaktivieren."
6136
 
6137
  # @ woocommerce-germanized
6138
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:215
6139
  msgid "Customer"
6140
  msgstr "Kunde"
6141
 
6142
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:215
6143
  msgid "Admin"
6144
  msgstr "Admin"
6145
 
6146
  # @ woocommerce-germanized
6147
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:232
6148
  #, php-format
6149
  msgid "Attach %s"
6150
  msgstr "%s"
6151
 
6152
  # @ woocommerce-germanized
6153
- #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:233
6154
  #, php-format
6155
  msgid "Attach %s to the following email templates"
6156
  msgstr "%s an die folgenden E-Mail Templates anfügen"
@@ -6637,6 +6635,26 @@ msgstr ""
6637
  msgid "Invoices & Packing Slips"
6638
  msgstr "Rechnungen & Lieferscheine"
6639
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6640
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:17
6641
  msgid "Transform your checkout into a multistep checkout process."
6642
  msgstr "Verwandeln Sie Ihre Kasse in einen mehrstufigen Kaufprozess."
@@ -8109,8 +8127,8 @@ msgstr ""
8109
  "\">hier</a>."
8110
 
8111
  #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8112
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:230
8113
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:350
8114
  msgid ""
8115
  "Please activate your account through clicking on the activation link "
8116
  "received via email."
@@ -8118,18 +8136,18 @@ msgstr ""
8118
  "Bitte aktivieren Sie Ihr Kundenkonto indem Sie auf den Link in der E-Mail "
8119
  "klicken."
8120
 
8121
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:240
8122
  #, php-format
8123
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8124
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8125
 
8126
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:242
8127
  msgid "Please create an account or login before continuing to checkout"
8128
  msgstr ""
8129
  "Bitte erstellen Sie ein Kundenkonto oder loggen Sie sich ein, bevor Sie zur "
8130
  "Kasse gehen"
8131
 
8132
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:382
8133
  msgid ""
8134
  "This activation code has expired. We have sent you a new activation code via "
8135
  "e-mail."
@@ -8138,20 +8156,20 @@ msgstr ""
8138
  "Code per E-Mail geschickt."
8139
 
8140
  # @ woocommerce-germanized
8141
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:384
8142
  msgid "Sorry, but this activation code cannot be found."
8143
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8144
 
8145
  # @ woocommerce-germanized
8146
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:388
8147
  msgid "Thank you. You have successfully activated your account."
8148
  msgstr "Vielen Dank. Ihr Benutzerkonto wurde erfolgreich aktiviert."
8149
 
8150
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:574
8151
  msgid "Expired activation key"
8152
  msgstr "Abgelaufener Aktivierungscode"
8153
 
8154
- #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:579
8155
  msgid "Invalid activation key"
8156
  msgstr "Aktivierungscode ungültig"
8157
 
@@ -8195,7 +8213,7 @@ msgid "Thanks for creating an account on %s."
8195
  msgstr "Danke, dass Sie ein Konto bei %s erstellt haben."
8196
 
8197
  # @ woocommerce-germanized
8198
- #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1067
8199
  msgctxt "revocation-form"
8200
  msgid "Forward your Revocation online"
8201
  msgstr "Widerruf online erklären"
@@ -11347,6 +11365,9 @@ msgstr "vendidero"
11347
  msgid "https://vendidero.de"
11348
  msgstr "https://vendidero.de"
11349
 
 
 
 
11350
  # @ woocommerce-germanized
11351
  #~ msgid "No VAT notice"
11352
  #~ msgstr "Umsatzsteuerbefreiung"
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2020-09-08 13:00+0200\n"
6
+ "PO-Revision-Date: 2020-09-08 13:02+0200\n"
7
  "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE@formal\n"
11
  "Content-Type: text/plain; charset=UTF-8\n"
12
  "Content-Transfer-Encoding: 8bit\n"
13
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
14
+ "X-Generator: Poedit 2.4.1\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
17
  "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
3974
  msgstr "Sorry, diese Bestellung existiert nicht."
3975
 
3976
  #: woocommerce-germanized-shipments/src/ReturnShipment.php:365
3977
+ #: woocommerce-germanized-shipments/src/Shipment.php:851
3978
  #, php-format
3979
  msgctxt "full name"
3980
  msgid "%1$s %2$s"
4209
  #: woocommerce-germanized-shipments/templates/emails/plain/customer-shipment.php:24
4210
  #, php-format
4211
  msgid "Hi %s,"
4212
+ msgstr "Hallo %s,"
4213
 
4214
  #: woocommerce-germanized-shipments/templates/emails/customer-guest-return-shipment-request.php:30
4215
  #: woocommerce-germanized-shipments/templates/emails/plain/customer-guest-return-shipment-request.php:26
4947
  msgstr "Willkommen bei Germanized"
4948
 
4949
  # @ woocommerce-germanized
4950
+ #: woocommerce-germanized/includes/admin/class-wc-gzd-admin-welcome.php:264
4951
  msgid "Go to Germanized Settings"
4952
  msgstr "Germanized Einstellungen"
4953
 
5479
  msgid "Run the updater"
5480
  msgstr "Update starten"
5481
 
5482
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:174
5483
  msgid "Not now"
5484
  msgstr "Nicht jetzt"
5485
 
5486
+ #: woocommerce-germanized/includes/admin/notes/class-wc-gzd-admin-note.php:178
5487
  msgctxt "woocommerce-germanized"
5488
  msgid "Deactivate"
5489
  msgstr "Deaktivieren"
5490
 
5491
  # @ woocommerce-germanized
5492
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:39
5493
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:52
5494
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:23
5495
  msgid "Get Germanized Pro to unlock"
5496
  msgstr "Upgraden Sie zur Pro Version um dieses Feature zu nutzen"
5511
  # @ woocommerce-germanized
5512
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:42
5513
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-pointers.php:177
5514
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:63
5515
  #: woocommerce-germanized/includes/admin/views/html-settings-pro.php:26
5516
  #: woocommerce-germanized/includes/admin/views/setup/first-steps.php:35
5517
  #: woocommerce-germanized/includes/compatibility/elementor/widgets/abstact-class-wc-gzd-elementor-widget.php:54
5520
  msgstr "Jetzt upgraden"
5521
 
5522
  #: woocommerce-germanized/includes/admin/settings/abstract-wc-gzd-settings-tab.php:152
5523
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:61
5524
  msgid "Learn more"
5525
  msgstr "Mehr erfahren"
5526
 
5886
 
5887
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-contract.php:21
5888
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
 
5889
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:21
5890
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:21
5891
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-revocation-generator.php:21
6005
 
6006
  # @ woocommerce-germanized
6007
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:32
6008
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:64
6009
  msgid "PDF Attachments"
6010
  msgstr "PDF-Anhänge"
6011
 
 
 
 
 
6012
  # @ woocommerce-germanized
6013
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:49
6014
  msgid "Email attachments"
6015
  msgstr "E-Mail-Anhänge"
6016
 
6017
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:50
6018
  msgid ""
6019
  "Choose which of your email templates (e.g. order confirmation) should "
6020
  "contain your legal page content e.g. terms and conditions within it's footer."
6022
  "Wählen Sie aus, an welche der E-Mail-Templates (z.B. Bestellbestätigung), "
6023
  "Ihre rechtlich relevanten Seiten z.B. AGB angefügt werden sollen."
6024
 
6025
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:65
6026
  msgid ""
6027
  "Customers of our pro version may attach PDF files instead of plain text "
6028
  "content to emails."
6031
  "alternativ als PDF-Datei anhängen."
6032
 
6033
  # @ woocommerce-germanized
6034
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:81
6035
  msgid ""
6036
  "Use drag & drop to customize attachment order. Don't forget to save your "
6037
  "changes."
6040
  "beeinflussen und speichern Sie anschließend Ihre Änderungen."
6041
 
6042
  # @ woocommerce-germanized
6043
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:120
6044
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:141
6045
  #, php-format
6046
  msgid ""
6047
  "Want to attach automatically generated PDF files to emails instead of plain "
6052
 
6053
  # @ woocommerce-germanized
6054
  # @ woocommerce
6055
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:163
6056
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-general.php:239
6057
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:137
6058
  #: woocommerce-germanized/includes/api/class-wc-gzd-rest-customers-controller.php:144
6066
  msgstr "Anrede"
6067
 
6068
  # @ woocommerce-germanized
6069
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:164
6070
  msgid ""
6071
  "Adjust the title to be used within emails. Use {first_name}, {last_name} and "
6072
  "{title} as placeholders."
6075
  "{last_name} und {title} als Platzhalter."
6076
 
6077
  # @ woocommerce-germanized
6078
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:166
6079
  msgid "Hi {first_name},"
6080
  msgstr "Sehr geehrte(r) {title} {last_name},"
6081
 
6082
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:170
6083
  msgid "Hide Username"
6084
  msgstr "Nutzernamen verstecken"
6085
 
6086
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6087
  msgid ""
6088
  "Hide username from email content if password or password reset link is "
6089
  "embedded."
6090
  msgstr "Nutzernamen nicht zusammen mit einem Passwort versenden."
6091
 
6092
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:171
6093
  msgid ""
6094
  "Trusted Shops advises to not show the username together with an account "
6095
  "password or password reset link. This option hides (or masks) the username "
6100
  "Trusted Shops Mitglied sind, sollten Sie diese Option aktivieren."
6101
 
6102
  # @ woocommerce-germanized
6103
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:178
6104
  msgid "Pay now Button"
6105
  msgstr "Jetzt bezahlen Button"
6106
 
6107
  # @ woocommerce-germanized
6108
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:179
6109
  msgid "Add a pay now button to emails and order success page."
6110
  msgstr ""
6111
  "Fügt einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
6112
  "hinzu."
6113
 
6114
  # @ woocommerce-germanized
6115
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:180
6116
  msgid ""
6117
  "Add a pay now button to order confirmation email and order success page if "
6118
  "the order awaits payment (PayPal etc)."
6122
  "benötigt (z.B. per PayPal)."
6123
 
6124
  # @ woocommerce-germanized
6125
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:186
6126
  msgid "Disabled for"
6127
  msgstr "Deaktiviert für"
6128
 
6129
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:187
6130
  msgid "You may want to disable the pay now button for certain payment methods."
6131
  msgstr ""
6132
  "Sie können den jetzt bezahlen Button hier bei Bedarf für bestimmte "
6133
  "Zahlungsarten deaktivieren."
6134
 
6135
  # @ woocommerce-germanized
6136
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:214
6137
  msgid "Customer"
6138
  msgstr "Kunde"
6139
 
6140
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:214
6141
  msgid "Admin"
6142
  msgstr "Admin"
6143
 
6144
  # @ woocommerce-germanized
6145
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:231
6146
  #, php-format
6147
  msgid "Attach %s"
6148
  msgstr "%s"
6149
 
6150
  # @ woocommerce-germanized
6151
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-emails.php:232
6152
  #, php-format
6153
  msgid "Attach %s to the following email templates"
6154
  msgstr "%s an die folgenden E-Mail Templates anfügen"
6635
  msgid "Invoices & Packing Slips"
6636
  msgstr "Rechnungen & Lieferscheine"
6637
 
6638
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:53
6639
+ msgid ""
6640
+ "Generate custom and professional PDF invoices, cancellations and packing "
6641
+ "slips automatically with Germanized Pro."
6642
+ msgstr ""
6643
+ "Erstellen Sie automatisch individuelle PDF Rechnungen, Stornierungen und "
6644
+ "Lieferscheine mit Germanized Pro."
6645
+
6646
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:55
6647
+ msgid "Customize your documents with the built-in document editor"
6648
+ msgstr "Passen Sie Ihre Dokumente mit dem integrierten visuellen Editor an"
6649
+
6650
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:56
6651
+ msgid "Transfer your documents to your lexoffice and/or sevDesk account"
6652
+ msgstr "Übertragen Sie Belege an Ihren lexoffice und/oder sevDesk Account"
6653
+
6654
+ #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-invoices.php:57
6655
+ msgid "Export your documents as CSV and ZIP"
6656
+ msgstr "Exportieren Sie Dokumente als CSV und ZIP Datei"
6657
+
6658
  #: woocommerce-germanized/includes/admin/settings/class-wc-gzd-settings-tab-multistep-checkout.php:17
6659
  msgid "Transform your checkout into a multistep checkout process."
6660
  msgstr "Verwandeln Sie Ihre Kasse in einen mehrstufigen Kaufprozess."
8127
  "\">hier</a>."
8128
 
8129
  #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:118
8130
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:229
8131
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:349
8132
  msgid ""
8133
  "Please activate your account through clicking on the activation link "
8134
  "received via email."
8136
  "Bitte aktivieren Sie Ihr Kundenkonto indem Sie auf den Link in der E-Mail "
8137
  "klicken."
8138
 
8139
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:239
8140
  #, php-format
8141
  msgid "Continue without creating an account? <a href=\"%s\">Click here</a>"
8142
  msgstr "Weiter zur Kasse ohne Kundenkonto? <a href=\"%s\">Hier klicken</a>"
8143
 
8144
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:241
8145
  msgid "Please create an account or login before continuing to checkout"
8146
  msgstr ""
8147
  "Bitte erstellen Sie ein Kundenkonto oder loggen Sie sich ein, bevor Sie zur "
8148
  "Kasse gehen"
8149
 
8150
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:381
8151
  msgid ""
8152
  "This activation code has expired. We have sent you a new activation code via "
8153
  "e-mail."
8156
  "Code per E-Mail geschickt."
8157
 
8158
  # @ woocommerce-germanized
8159
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:383
8160
  msgid "Sorry, but this activation code cannot be found."
8161
  msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
8162
 
8163
  # @ woocommerce-germanized
8164
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:387
8165
  msgid "Thank you. You have successfully activated your account."
8166
  msgstr "Vielen Dank. Ihr Benutzerkonto wurde erfolgreich aktiviert."
8167
 
8168
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:573
8169
  msgid "Expired activation key"
8170
  msgstr "Abgelaufener Aktivierungscode"
8171
 
8172
+ #: woocommerce-germanized/includes/class-wc-gzd-customer-helper.php:578
8173
  msgid "Invalid activation key"
8174
  msgstr "Aktivierungscode ungültig"
8175
 
8213
  msgstr "Danke, dass Sie ein Konto bei %s erstellt haben."
8214
 
8215
  # @ woocommerce-germanized
8216
+ #: woocommerce-germanized/includes/class-wc-gzd-emails.php:1066
8217
  msgctxt "revocation-form"
8218
  msgid "Forward your Revocation online"
8219
  msgstr "Widerruf online erklären"
11365
  msgid "https://vendidero.de"
11366
  msgstr "https://vendidero.de"
11367
 
11368
+ #~ msgid "PDF Layout"
11369
+ #~ msgstr "PDF Layout"
11370
+
11371
  # @ woocommerce-germanized
11372
  #~ msgid "No VAT notice"
11373
  #~ msgstr "Umsatzsteuerbefreiung"
includes/admin/class-wc-gzd-admin-welcome.php CHANGED
@@ -49,7 +49,7 @@ class WC_GZD_Admin_Welcome {
49
  return;
50
  }
51
 
52
- $welcome_page_name = __( 'About Germanized', 'woocommerce-germanized' );
53
  $welcome_page_title = __( 'Welcome to Germanized', 'woocommerce-germanized' );
54
 
55
  switch ( $_GET['page'] ) {
@@ -137,13 +137,23 @@ class WC_GZD_Admin_Welcome {
137
  </p>
138
 
139
  <div class="changelog new-feature">
140
- <h3>Hinweis: Mehrwertsteuersenkung in Deutschland</h3>
141
 
142
- <p>
143
- Damit ihr, was die Mehrwertsteuersenkung im Rahmen der Corona-Pandemie angeht, nicht in Zeitnot geratet, haben wir euch in unserem <a href="https://vendidero.de/senkung-der-mehrwertsteuer-in-woocommerce-im-rahmen-der-corona-pandemie" target="_blank">Blog-Eintrag</a> einige
144
- Möglichkeiten zur <a href="https://vendidero.de/senkung-der-mehrwertsteuer-in-woocommerce-im-rahmen-der-corona-pandemie#automatisches-update-der-steuersaetze" target="_blank">automatischen</a> oder manuellen Anpassung der Mehrwertsteuersätze in WooCommerce bereitgestellt.
145
- Mit Hilfe unseres kleinen Zusatz-Plugins könnt ihr eure Steuersätze einfach über Nacht automatisch anpassen lassen und damit hoffentlich ruhig(er) schlafen. Wir wünschen euch weiterhin viel Erfolg!
146
- </p>
 
 
 
 
 
 
 
 
 
 
147
 
148
  <div class="wc-germanized-welcome-pro">
149
  <a href="https://vendidero.de/woocommerce-germanized" target="_blank"
@@ -154,86 +164,59 @@ class WC_GZD_Admin_Welcome {
154
  </div>
155
 
156
  <div class="wc-gzd-actions">
157
- <a href="https://vendidero.de/senkung-der-mehrwertsteuer-in-woocommerce-im-rahmen-der-corona-pandemie" class="button button-primary" target="_blank">Mehr erfahren</a>
158
  </div>
159
  </div>
160
 
161
  <div class="changelog new-feature">
162
- <h3>Neu: Sendungen zu Bestellungen erstellen</h3>
163
 
164
  <div class="columns two-col">
165
- <div class="col align-center">
166
- <img src="<?php echo WC_germanized()->plugin_url(); ?>/assets/images/shipments.png"/>
167
  </div>
168
  <div class="col">
169
  <p>
170
- Version 3.0 führt eine neue Abstraktion zur (besseren) Verwaltung von Sendungen zu
171
- Bestellungen hinzu. Über eine einfache UI kannst du nun
172
- unkompliziert (mehrere) Sendungen zu deinen Bestellungen hinzufügen. Über eine eigene
173
- Benachrichtigungsmail werden deine Kunden einfach über neue Sendungen informiert.
174
- Zu jeder Sendung kannst du optional Retouren anlegen, falls dein Kunde Waren zurückschicken
175
- möchte.
176
  </p>
177
-
178
- <p>
179
- Sendungen lassen sich auch automatisch bei Erreichen eines bestimmten Bestellstatus
180
- erzeugen.
181
- Als Kunde unserer Pro-Version kannst du zudem PDF-Lieferscheine zu Sendungen erzeugen.
182
- </p>
183
-
184
- <div class="wc-germanized-welcome-pro">
185
- <a href="https://vendidero.de/woocommerce-germanized" target="_blank"
186
- class="button button-primary wc-gzd-button"><span class="wc-gzd-pro">pro</span> Version
187
- entdecken</a>
188
- <p class="price smaller">ab 69 € inkl. MwSt. - inkl. 1 Jahr Updates & Premium
189
- Support!</p>
190
- </div>
191
-
192
- <div class="wc-gzd-actions">
193
- <a href="<?php echo admin_url( 'admin.php?page=wc-settings&tab=germanized-shipments' ); ?>"
194
- class="button button-primary" target="_blank">Einstellungen anpassen</a>
195
- <a href="https://vendidero.de/dokument/sendungen-zu-bestellungen-erzeugen" class="button button-primary" target="_blank">Mehr erfahren</a>
196
- </div>
197
  </div>
198
  </div>
 
 
 
 
 
 
 
 
199
  </div>
200
 
201
- <?php if ( Vendidero\Germanized\DHL\Package::base_country_is_supported() ) : ?>
202
-
203
- <div class="changelog new-feature">
204
- <h3>Neu: Nahtlose Integration von DHL Produkten</h3>
205
-
206
- <div class="columns two-col">
207
-
208
- <div class="col align-center">
209
- <img src="<?php echo WC_germanized()->plugin_url(); ?>/assets/images/dhl.png"/>
210
- </div>
211
-
212
- <div class="col">
213
- <p>
214
- Germanized & DHL sind nun Partner. Wir haben beschlossen, die DHL Produkte nahtlos in
215
- Germanized zu integrieren, um euren Aufwand bei der Sendungsverwaltung zu verringern.
216
- Als DHL Geschäftskunde könnt ihr nun bequem Labels zu Sendungen und Retouren erzeugen.
217
- Unsere DHL Integration bietet umfangreiche Anpassungsmöglichkeiten.
218
- Du kannst z.B. je Versandmethode unterschiedliche DHL Services für deine Labels
219
- konfigurieren.
220
- </p>
221
-
222
- <p>
223
- Du kannst DHL Labels auch automatisch zu deinen Sendungen erstellen lassen und deinen
224
- Aufwand somit weiter verringern.
225
- </p>
226
-
227
- <div class="wc-gzd-actions">
228
- <a href="<?php echo admin_url( 'admin.php?page=wc-settings&tab=germanized-dhl' ); ?>"
229
- class="button button-primary" target="_blank">Einstellungen anpassen</a>
230
- <a href="https://vendidero.de/dokument/dhl-integration-einrichten" class="button button-primary" target="_blank">Mehr erfahren</a>
231
- </div>
232
- </div>
233
  </div>
234
  </div>
235
 
236
- <?php endif; ?>
 
 
 
 
 
 
 
237
 
238
  <div class="changelog">
239
  <h3>Weitere Neuigkeiten in Germanized 3.0</h3>
49
  return;
50
  }
51
 
52
+ $welcome_page_name = __( 'About Germanized', 'woocommerce-germanized' );
53
  $welcome_page_title = __( 'Welcome to Germanized', 'woocommerce-germanized' );
54
 
55
  switch ( $_GET['page'] ) {
137
  </p>
138
 
139
  <div class="changelog new-feature">
140
+ <h3>Neu: PDF-Dokumente visuell bearbeiten <span class="wc-gzd-pro wc-gzd-pro-outlined">pro</span></h3>
141
 
142
+ <div class="columns two-col">
143
+ <div class="col">
144
+ <p>
145
+ Endlich ist es soweit: <a href="https://vendidero.de/germanized-pro-3-0" target="_blank">Germanized Pro 3.0</a> wurde veröffentlicht. Mit diesem neuen Update kannst du deine PDF-Dokumente (Rechnungen, Stornierungen, Lieferscheine, rechtl. Hinweisseiten)
146
+ über den Gutenberg-Editor komplett frei gestalten. Dafür haben wir Gutenberg explizit für PDF-Dokumente vorbereitet und viele individuelle Blöcke hinzugefügt, mit denen du deine PDF-Dokumente an deine Bedürfnisse anpasst. Das Ergebnis siehst du als Live-Vorschau im Browser.
147
+ </p>
148
+ <p>
149
+ Mit dem Dokumenten-Editor in Germanized Pro baust du deine Belege individuell auf. Über die Google Fonts Integration suchst du dir eine passende Schriftart für dein PDF Dokument aus. Auch die Tabelle der Positionen einer Rechnung kannst du individuell gestalten.
150
+ Wähle aus welche Spalten, mit welcher Breite und welcher Bezeichnung angezeigt werden sollen. Damit hast du die volle Kontrolle.
151
+ </p>
152
+ </div>
153
+ <div class="col col-center">
154
+ <img src="<?php echo WC_germanized()->plugin_url(); ?>/assets/images/edit-pdf-documents.png"/>
155
+ </div>
156
+ </div>
157
 
158
  <div class="wc-germanized-welcome-pro">
159
  <a href="https://vendidero.de/woocommerce-germanized" target="_blank"
164
  </div>
165
 
166
  <div class="wc-gzd-actions">
167
+ <a href="https://vendidero.de/germanized-pro-3-0" class="button button-primary" target="_blank">Mehr erfahren</a>
168
  </div>
169
  </div>
170
 
171
  <div class="changelog new-feature">
172
+ <h3>Neu: Belege an lexoffice übertagen <span class="wc-gzd-pro">pro</span></h3>
173
 
174
  <div class="columns two-col">
175
+ <div class="col col-center">
176
+ <img src="<?php echo WC_germanized()->plugin_url(); ?>/assets/images/lexoffice.png"/>
177
  </div>
178
  <div class="col">
179
  <p>
180
+ Damit eure Buchhaltung möglichst wenig Arbeit bereitet, haben wir in Germanized Pro 3.0 eine Schnittstelle zu lexoffice für euch parat.
181
+ Mit der Integration von lexoffice könnt ihr eure Belege ganz einfach per API übertragen. Auf Wunsch geht das auch vollautomatisch, d.h. Germanized
182
+ überträgt eure Belege nach Erzeugung automatisch an lexoffice. Verringert euren Zeitaufwand bei der Buchhaltung mit Germanized Pro und lexoffice.
 
 
 
183
  </p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
184
  </div>
185
  </div>
186
+
187
+ <div class="wc-germanized-welcome-pro">
188
+ <a href="https://vendidero.de/woocommerce-germanized" target="_blank"
189
+ class="button button-primary wc-gzd-button"><span class="wc-gzd-pro">pro</span> Version
190
+ entdecken</a>
191
+ <p class="price smaller">ab 69 € inkl. MwSt. - inkl. 1 Jahr Updates & Premium
192
+ Support!</p>
193
+ </div>
194
  </div>
195
 
196
+ <div class="changelog new-feature">
197
+ <h3>Neu: sevDesk Integration <span class="wc-gzd-pro">pro</span></h3>
198
+
199
+ <div class="columns two-col">
200
+ <div class="col">
201
+ <p>
202
+ Mit sevDesk bieten wir euch eine Schnittstelle zu einer weiteren Cloud-Buchhaltungs-Lösung an. Auch mit unserer
203
+ sevDesk Integration könnt ihr eure Belege, auf Wunsch vollautomatisch, per API an sevDesk übertragen. Optional
204
+ habt ihr in den sevDesk Einstellungen die Möglichkeit, falls möglich, die Rechnung direkt mit einer konkreten Transaktion zu verknüpfen.
205
+ </p>
206
+ </div>
207
+ <div class="col col-center">
208
+ <img src="<?php echo WC_germanized()->plugin_url(); ?>/assets/images/sevdesk.png"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
209
  </div>
210
  </div>
211
 
212
+ <div class="wc-germanized-welcome-pro">
213
+ <a href="https://vendidero.de/woocommerce-germanized" target="_blank"
214
+ class="button button-primary wc-gzd-button"><span class="wc-gzd-pro">pro</span> Version
215
+ entdecken</a>
216
+ <p class="price smaller">ab 69 € inkl. MwSt. - inkl. 1 Jahr Updates & Premium
217
+ Support!</p>
218
+ </div>
219
+ </div>
220
 
221
  <div class="changelog">
222
  <h3>Weitere Neuigkeiten in Germanized 3.0</h3>
includes/admin/class-wc-gzd-admin.php CHANGED
@@ -637,6 +637,12 @@ class WC_GZD_Admin {
637
  }
638
  }
639
 
 
 
 
 
 
 
640
  $manager->update_options( $options );
641
 
642
  // Reinstall options
637
  }
638
  }
639
 
640
+ /**
641
+ * Clear options cache before calling add_option again
642
+ */
643
+ wp_cache_delete( 'notoptions', 'options' );
644
+ wp_cache_delete( 'alloptions', 'options' );
645
+
646
  $manager->update_options( $options );
647
 
648
  // Reinstall options
includes/admin/settings/class-wc-gzd-settings-pointers.php CHANGED
@@ -174,7 +174,7 @@ class WC_GZD_Settings_Pointers {
174
  }
175
 
176
  if ( pointer.hasOwnProperty( 'pro' ) ) {
177
- var button_pro = $( '<a class=\"button button-secondary button-wc-gzd-pro\" target=\"_blank\" style=\"margin-right: 1em;\" href=\"https://vendidero.de/woocommerce-germanized\">" . esc_js( __( 'Upgrade now', 'woocommerce-germanized' ) ) . "</a>' );
178
  wrapper.append( button_pro );
179
  }
180
 
174
  }
175
 
176
  if ( pointer.hasOwnProperty( 'pro' ) ) {
177
+ var button_pro = $( '<a class=\"button button-secondary is-gzd-pro button-wc-gzd-pro\" target=\"_blank\" style=\"margin-right: 1em;\" href=\"https://vendidero.de/woocommerce-germanized\">" . esc_js( __( 'Upgrade now', 'woocommerce-germanized' ) ) . "</a>' );
178
  wrapper.append( button_pro );
179
  }
180
 
includes/admin/settings/class-wc-gzd-settings-tab-emails.php CHANGED
@@ -30,7 +30,6 @@ class WC_GZD_Settings_Tab_Emails extends WC_GZD_Settings_Tab {
30
  '' => __( 'General', 'woocommerce-germanized' ),
31
  'visibility' => __( 'Visibility', 'woocommerce-germanized' ),
32
  'attachments' => __( 'PDF Attachments', 'woocommerce-germanized' ) . ( WC_germanized()->is_pro() ? '' : '<span class="wc-gzd-pro wc-gzd-pro-outlined">' . __( 'pro', 'woocommerce-germanized' ) . '</span>' ),
33
- 'attachments_pdf' => __( 'PDF Layout', 'woocommerce-germanized' ) . ( WC_germanized()->is_pro() ? '' : '<span class="wc-gzd-pro wc-gzd-pro-outlined">' . __( 'pro', 'woocommerce-germanized' ) . '</span>' ),
34
  );
35
  }
36
 
30
  '' => __( 'General', 'woocommerce-germanized' ),
31
  'visibility' => __( 'Visibility', 'woocommerce-germanized' ),
32
  'attachments' => __( 'PDF Attachments', 'woocommerce-germanized' ) . ( WC_germanized()->is_pro() ? '' : '<span class="wc-gzd-pro wc-gzd-pro-outlined">' . __( 'pro', 'woocommerce-germanized' ) . '</span>' ),
 
33
  );
34
  }
35
 
includes/admin/settings/class-wc-gzd-settings-tab-general.php CHANGED
@@ -57,7 +57,7 @@ class WC_GZD_Settings_Tab_General extends WC_GZD_Settings_Tab {
57
  'default' => '',
58
  'class' => 'wc-enhanced-select-nostd',
59
  'css' => 'min-width:300px;',
60
- 'desc' => ( ! get_option( 'woocommerce_terms_page_id' ) ? sprintf( __( 'Don\'t have terms & conditions yet? <a href="%s">Generate now</a>!', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-settings&tab=germanized&section=agbs' ) ) : '' ),
61
  ),
62
  array(
63
  'title' => __( 'Power of Revocation', 'woocommerce-germanized' ),
@@ -67,7 +67,7 @@ class WC_GZD_Settings_Tab_General extends WC_GZD_Settings_Tab {
67
  'default' => '',
68
  'class' => 'wc-enhanced-select-nostd',
69
  'css' => 'min-width:300px;',
70
- 'desc' => ( ! get_option( 'woocommerce_revocation_page_id' ) ? sprintf( __( 'Don\'t have a revocation page yet? <a href="%s">Generate now</a>!', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-settings&tab=germanized&section=widerruf' ) ) : '' ),
71
  ),
72
 
73
  array(
57
  'default' => '',
58
  'class' => 'wc-enhanced-select-nostd',
59
  'css' => 'min-width:300px;',
60
+ 'desc' => ( ! get_option( 'woocommerce_terms_page_id' ) ? sprintf( __( 'Don\'t have terms & conditions yet? <a href="%s">Generate now</a>!', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-settings&tab=germanized-terms_generator' ) ) : '' ),
61
  ),
62
  array(
63
  'title' => __( 'Power of Revocation', 'woocommerce-germanized' ),
67
  'default' => '',
68
  'class' => 'wc-enhanced-select-nostd',
69
  'css' => 'min-width:300px;',
70
+ 'desc' => ( ! get_option( 'woocommerce_revocation_page_id' ) ? sprintf( __( 'Don\'t have a revocation page yet? <a href="%s">Generate now</a>!', 'woocommerce-germanized' ), admin_url( 'admin.php?page=wc-settings&tab=germanized-revocation_generator' ) ) : '' ),
71
  ),
72
 
73
  array(
includes/admin/settings/class-wc-gzd-settings-tab-invoices.php CHANGED
@@ -45,6 +45,30 @@ class WC_GZD_Settings_Tab_Invoices extends WC_GZD_Settings_Tab {
45
  );
46
  }
47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  public function is_enabled() {
49
  return false;
50
  }
45
  );
46
  }
47
 
48
+ protected function get_pro_content_html() {
49
+ ob_start();
50
+ ?>
51
+ <div class="wc-gzd-premium-overlay notice notice-warning inline">
52
+ <h3><?php _e( 'Get Germanized Pro to unlock', 'woocommerce-germanized' ); ?></h3>
53
+ <p><?php _e( 'Generate custom and professional PDF invoices, cancellations and packing slips automatically with Germanized Pro.', 'woocommerce-germanized' ); ?></p>
54
+ <ul>
55
+ <li>✓ <?php _e( 'Customize your documents with the built-in document editor', 'woocommerce-germanized' ); ?></li>
56
+ <li>✓ <?php _e( 'Transfer your documents to your lexoffice and/or sevDesk account', 'woocommerce-germanized' ); ?></li>
57
+ <li>✓ <?php _e( 'Export your documents as CSV and ZIP', 'woocommerce-germanized' ); ?></li>
58
+ </ul>
59
+ <p>
60
+ <a class="button button-secondary" href="https://vendidero.de/woocommerce-germanized/features/#accounting"
61
+ target="_blank"><?php _e( 'Learn more', 'woocommerce-germanized' ); ?></a>
62
+ <a class="button button-primary wc-gzd-button" style="margin-left: 5px;" href="https://vendidero.de/woocommerce-germanized"
63
+ target="_blank"><?php _e( 'Upgrade now', 'woocommerce-germanized' ); ?></a>
64
+ </p>
65
+ </div>
66
+ <?php
67
+ $html = ob_get_clean();
68
+
69
+ return $html;
70
+ }
71
+
72
  public function is_enabled() {
73
  return false;
74
  }
includes/class-wc-gzd-coupon-helper.php CHANGED
@@ -194,7 +194,12 @@ class WC_GZD_Coupon_Helper {
194
 
195
  $item_tax_rates = $tax_rates[ $product->get_tax_class() ];
196
 
197
- $cart->cart_contents[ $cart_item_key ]['line_total'] = ( ( $values['line_total'] + $values['line_tax'] ) - $values['line_subtotal_tax'] );
 
 
 
 
 
198
  $cart->cart_contents[ $cart_item_key ]['line_tax'] = $values['line_subtotal_tax'];
199
  $cart->cart_contents[ $cart_item_key ]['line_tax_data']['total'] = $values['line_tax_data']['subtotal'];
200
 
@@ -208,10 +213,35 @@ class WC_GZD_Coupon_Helper {
208
  'set_cart_contents_taxes'
209
  ) ) ) {
210
 
 
 
211
  $cart->set_cart_contents_taxes( $tax_totals );
212
- $cart->set_discount_total( wc_cart_round_discount( ( $cart->get_discount_total() + $cart->get_discount_tax() ), $cart->dp ) );
 
 
 
 
 
 
213
  $cart->set_discount_tax( 0 );
214
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
215
  // Total up/round taxes
216
  if ( $cart->round_at_subtotal ) {
217
  $cart->set_total_tax( WC_Tax::get_tax_total( $tax_totals ) );
194
 
195
  $item_tax_rates = $tax_rates[ $product->get_tax_class() ];
196
 
197
+ if ( wc_prices_include_tax() ) {
198
+ $cart->cart_contents[ $cart_item_key ]['line_total'] = ( ( $values['line_total'] + $values['line_tax'] ) - $values['line_subtotal_tax'] );
199
+ } else {
200
+ $cart->cart_contents[ $cart_item_key ]['line_total'] = $values['line_total'];
201
+ }
202
+
203
  $cart->cart_contents[ $cart_item_key ]['line_tax'] = $values['line_subtotal_tax'];
204
  $cart->cart_contents[ $cart_item_key ]['line_tax_data']['total'] = $values['line_tax_data']['subtotal'];
205
 
213
  'set_cart_contents_taxes'
214
  ) ) ) {
215
 
216
+ $discount_tax = $cart->get_discount_tax();
217
+
218
  $cart->set_cart_contents_taxes( $tax_totals );
219
+
220
+ if ( wc_prices_include_tax() ) {
221
+ $cart->set_discount_total( wc_cart_round_discount( ( $cart->get_discount_total() + $cart->get_discount_tax() ), $cart->dp ) );
222
+ } else {
223
+ $cart->set_discount_total( wc_cart_round_discount( $cart->get_discount_total(), $cart->dp ) );
224
+ }
225
+
226
  $cart->set_discount_tax( 0 );
227
 
228
+ /**
229
+ * Necessary in case Woo prices do not include taxes
230
+ */
231
+ if ( ! wc_prices_include_tax() ) {
232
+ $cart->set_total( $cart->get_total( 'edit' ) + $discount_tax );
233
+
234
+ if ( is_callable( array( $cart, 'set_coupon_discount_tax_totals' ) ) ) {
235
+ $totals = $cart->get_coupon_discount_tax_totals();
236
+
237
+ foreach( $totals as $key => $total ) {
238
+ $totals[ $key ] = 0;
239
+ }
240
+
241
+ $cart->set_coupon_discount_tax_totals( $totals );
242
+ }
243
+ }
244
+
245
  // Total up/round taxes
246
  if ( $cart->round_at_subtotal ) {
247
  $cart->set_total_tax( WC_Tax::get_tax_total( $tax_totals ) );
includes/class-wc-gzd-customer-helper.php CHANGED
@@ -60,12 +60,12 @@ class WC_GZD_Customer_Helper {
60
 
61
  /**
62
  * Maybe redirect customers that are not logged in to customer account page or
63
- * force guest checkouts.
64
  *
65
  * Use a low priority so that plugins that redirect the checkout page (e.g. cart-flows)
66
  * still receive our updates to the session before the actual redirect happens.
67
  */
68
- add_action( 'template_redirect', array( $this, 'disable_checkout' ), 0 );
69
 
70
  // Show notices on customer account page
71
  add_action( 'template_redirect', array( $this, 'show_disabled_checkout_notice' ), 20 );
@@ -74,7 +74,7 @@ class WC_GZD_Customer_Helper {
74
  add_filter( 'woocommerce_login_redirect', array( $this, 'login_redirect' ), 10, 2 );
75
 
76
  // Disable customer signup if customer has forced guest checkout
77
- add_action( 'woocommerce_checkout_init', array( $this, 'disable_signup' ), 10, 1 );
78
 
79
  // Remove the checkout signup cookie if customer logs out
80
  add_action( 'wp_logout', array( $this, 'delete_checkout_signup_cookie' ) );
@@ -160,13 +160,12 @@ class WC_GZD_Customer_Helper {
160
  }
161
 
162
  public function disable_signup( $checkout ) {
163
-
164
- remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_login_form', 10 );
165
-
166
  if ( WC()->session && WC()->session->get( 'disable_checkout_signup' ) ) {
 
 
 
167
  $checkout->enable_signup = false;
168
  }
169
-
170
  }
171
 
172
  public function login_redirect( $redirect, $user ) {
60
 
61
  /**
62
  * Maybe redirect customers that are not logged in to customer account page or
63
+ * force guest checkouts on checkout_init.
64
  *
65
  * Use a low priority so that plugins that redirect the checkout page (e.g. cart-flows)
66
  * still receive our updates to the session before the actual redirect happens.
67
  */
68
+ add_action( 'woocommerce_checkout_init', array( $this, 'disable_checkout' ), 1 );
69
 
70
  // Show notices on customer account page
71
  add_action( 'template_redirect', array( $this, 'show_disabled_checkout_notice' ), 20 );
74
  add_filter( 'woocommerce_login_redirect', array( $this, 'login_redirect' ), 10, 2 );
75
 
76
  // Disable customer signup if customer has forced guest checkout
77
+ add_action( 'woocommerce_checkout_init', array( $this, 'disable_signup' ), 100, 1 );
78
 
79
  // Remove the checkout signup cookie if customer logs out
80
  add_action( 'wp_logout', array( $this, 'delete_checkout_signup_cookie' ) );
160
  }
161
 
162
  public function disable_signup( $checkout ) {
 
 
 
163
  if ( WC()->session && WC()->session->get( 'disable_checkout_signup' ) ) {
164
+ remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_login_form', 10 );
165
+ add_filter( 'woocommerce_checkout_registration_enabled', '__return_false', 100 );
166
+
167
  $checkout->enable_signup = false;
168
  }
 
169
  }
170
 
171
  public function login_redirect( $redirect, $user ) {
includes/class-wc-gzd-emails.php CHANGED
@@ -316,7 +316,6 @@ class WC_GZD_Emails {
316
  }
317
 
318
  public function check_for_partial_refund_mail( $result, $mail_id, $tpl ) {
319
-
320
  if ( $mail_id === 'customer_partially_refunded_order' && $tpl === 'customer_refunded_order' ) {
321
  return true;
322
  }
316
  }
317
 
318
  public function check_for_partial_refund_mail( $result, $mail_id, $tpl ) {
 
319
  if ( $mail_id === 'customer_partially_refunded_order' && $tpl === 'customer_refunded_order' ) {
320
  return true;
321
  }
includes/class-wc-gzd-install.php CHANGED
@@ -241,7 +241,7 @@ if ( ! class_exists( 'WC_GZD_Install' ) ) :
241
  }
242
  }
243
 
244
- $needs_db_update = ! is_null( $current_db_version ) && version_compare( $current_db_version, max( array_keys( self::$db_updates ) ), '<' );
245
 
246
  /**
247
  * Decides whether Germanized needs a database update.
@@ -737,6 +737,8 @@ if ( ! class_exists( 'WC_GZD_Install' ) ) :
737
 
738
  foreach ( $options as $value ) {
739
  if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
 
 
740
  $autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
741
  add_option( $value['id'], $value['default'], '', ( $autoload ? 'yes' : 'no' ) );
742
  }
241
  }
242
  }
243
 
244
+ $needs_db_update = ! is_null( $current_db_version ) && ! empty( $current_db_version ) && version_compare( $current_db_version, max( array_keys( self::$db_updates ) ), '<' );
245
 
246
  /**
247
  * Decides whether Germanized needs a database update.
737
 
738
  foreach ( $options as $value ) {
739
  if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
740
+ wp_cache_delete( $value['id'], 'options' );
741
+
742
  $autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
743
  add_option( $value['id'], $value['default'], '', ( $autoload ? 'yes' : 'no' ) );
744
  }
includes/class-wc-gzd-legal-checkbox-manager.php CHANGED
@@ -443,7 +443,7 @@ class WC_GZD_Legal_Checkbox_Manager {
443
  $this->options = get_option( 'woocommerce_gzd_legal_checkboxes_settings', array() );
444
  }
445
 
446
- return $this->options;
447
  }
448
 
449
  public function update_options( $options ) {
443
  $this->options = get_option( 'woocommerce_gzd_legal_checkboxes_settings', array() );
444
  }
445
 
446
+ return (array) $this->options;
447
  }
448
 
449
  public function update_options( $options ) {
includes/compatibility/class-wc-gzd-compatibility-wpml.php CHANGED
@@ -110,8 +110,7 @@ class WC_GZD_Compatibility_WPML extends WC_GZD_Compatibility {
110
  * @param $lang
111
  */
112
  public function filter_email_lang( $p_lang ) {
113
-
114
- if ( ! $this->email_lang ) {
115
  $p_lang = $this->email_lang;
116
  }
117
 
@@ -508,7 +507,8 @@ class WC_GZD_Compatibility_WPML extends WC_GZD_Compatibility {
508
  'data_security_page_id',
509
  'imprint_page_id',
510
  'payment_methods_page_id',
511
- 'shipping_costs_page_id'
 
512
  );
513
 
514
  foreach ( $woo_pages as $page ) {
110
  * @param $lang
111
  */
112
  public function filter_email_lang( $p_lang ) {
113
+ if ( $this->email_lang ) {
 
114
  $p_lang = $this->email_lang;
115
  }
116
 
507
  'data_security_page_id',
508
  'imprint_page_id',
509
  'payment_methods_page_id',
510
+ 'shipping_costs_page_id',
511
+ 'terms_page_id',
512
  );
513
 
514
  foreach ( $woo_pages as $page ) {
packages/woocommerce-germanized-shipments/assets/css/admin.css CHANGED
@@ -303,7 +303,7 @@ table.wc-gzd-shipping-providers {
303
  padding: 0;
304
  display: block !important; }
305
 
306
- #woocommerce-gzd-order-shipments .hndle, #woocommerce-gzd-order-shipments .handlediv {
307
  display: none; }
308
 
309
  #woocommerce-gzd-order-shipments .hide-default {
303
  padding: 0;
304
  display: block !important; }
305
 
306
+ #woocommerce-gzd-order-shipments .hndle, #woocommerce-gzd-order-shipments .handlediv, #woocommerce-gzd-order-shipments .postbox-header {
307
  display: none; }
308
 
309
  #woocommerce-gzd-order-shipments .hide-default {
packages/woocommerce-germanized-shipments/assets/css/admin.min.css CHANGED
@@ -1 +1 @@
1
- .germanized-create-label .notice-wrapper .notice{margin:0;margin-bottom:1em}.germanized-create-label .notice-wrapper .notice p{margin:.5em 0!important;padding:2px!important;font-size:13px;line-height:1.5}.germanized-create-label p.form-field{display:inline-block;width:100%;margin-bottom:5px!important;margin-top:5px!important}.germanized-create-label p.form-field:first-child,.germanized-create-label p.form-field:last-child{margin-bottom:5px!important;margin-top:5px!important}.germanized-create-label .columns{margin-left:-.5rem!important;margin-right:-.5rem!important}.germanized-create-label .column{padding-left:.5rem!important;padding-right:.5rem!important}.germanized-create-label .hide-default,.germanized-create-label .show-if{display:none}.germanized-create-label .show-if label{color:#777}.germanized-create-label p.form-field label{width:100%;display:block;margin-bottom:5px}.germanized-create-label p.form-field input[type=email],.germanized-create-label p.form-field input[type=text],.germanized-create-label p.form-field select{width:100%;max-width:100%}.germanized-create-label p.form-field.form-field-checkbox{display:flex;flex-wrap:wrap;flex-direction:row;justify-content:flex-start;margin-top:10px!important;margin-bottom:10px!important;align-items:center}.germanized-create-label p.form-field.form-field-checkbox label{width:auto;margin-left:.5em;order:2;margin-bottom:0}.germanized-create-label p.form-field.form-field-checkbox input[type=checkbox]{order:1}.germanized-create-label p.form-field.form-field-checkbox .woocommerce-help-tip{order:3;margin-left:3px}.germanized-create-label p.form-field.form-field-checkbox .description{width:100%;margin-top:5px;color:#777;order:4;font-style:normal}table.wc-gzd-shipping-providers{margin-top:1.5em}table.wc-gzd-shipping-providers td,table.wc-gzd-shipping-providers th{display:table-cell!important;padding:1em!important;vertical-align:top;line-height:1.75em;font-size:14px}table.wc-gzd-shipping-providers th{font-weight:600}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated{width:1%;text-align:center}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated .status-disabled,table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated .status-enabled,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated .status-disabled,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated .status-enabled{display:inline-block;margin-top:3px}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-actions{width:15%;text-align:right}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions .button{margin-right:5px}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions .button:last-child{margin-right:0}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-title,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-title{width:30ch}table.wc-gzd-shipping-providers tr:nth-child(odd) td{background:#f9f9f9}.order-return-status,.order-shipping-status,.shipment-status{background:#eee;padding:.2em .5em;font-size:.9em;border-radius:3px;display:inline-flex;white-space:nowrap}.order-return-status.status-draft,.order-return-status.status-open,.order-return-status.status-partially-returned,.order-return-status.status-partially-shipped,.order-return-status.status-processing,.order-return-status.status-requested,.order-shipping-status.status-draft,.order-shipping-status.status-open,.order-shipping-status.status-partially-returned,.order-shipping-status.status-partially-shipped,.order-shipping-status.status-processing,.order-shipping-status.status-requested,.shipment-status.status-draft,.shipment-status.status-open,.shipment-status.status-partially-returned,.shipment-status.status-partially-shipped,.shipment-status.status-processing,.shipment-status.status-requested{background:#f8dda7;color:#94660c}.order-return-status.status-not-shipped,.order-shipping-status.status-not-shipped,.shipment-status.status-not-shipped{background:#eba3a3;color:#761919}.order-return-status.status-delivered,.order-return-status.status-returned,.order-return-status.status-shipped,.order-shipping-status.status-delivered,.order-shipping-status.status-returned,.order-shipping-status.status-shipped,.shipment-status.status-delivered,.shipment-status.status-returned,.shipment-status.status-shipped{background:#c6e1c6;color:#5b841b}.order-return-status.shipment-type-return-status.status-shipped,.order-shipping-status.shipment-type-return-status.status-shipped,.shipment-status.shipment-type-return-status.status-shipped{background:#f8dda7;color:#94660c}.woocommerce_page_wc-gzd-return-shipments .tablenav .actions,.woocommerce_page_wc-gzd-shipments .tablenav .actions{overflow:visible}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container{float:left;width:240px!important;font-size:14px;vertical-align:middle;margin:1px 6px 4px 1px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single{height:32px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single .select2-selection__rendered,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single .select2-selection__rendered{line-height:29px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single .select2-selection__arrow,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single .select2-selection__arrow{height:30px}.woocommerce_page_wc-gzd-return-shipments .tablenav input,.woocommerce_page_wc-gzd-return-shipments .tablenav select,.woocommerce_page_wc-gzd-shipments .tablenav input,.woocommerce_page_wc-gzd-shipments .tablenav select{line-height:1;height:32px}.woocommerce_page_wc-gzd-return-shipments .tablenav input,.woocommerce_page_wc-gzd-shipments .tablenav input{height:31px}.woocommerce_page_wc-gzd-return-shipments .tablenav #shipment-query-submit,.woocommerce_page_wc-gzd-shipments .tablenav #shipment-query-submit{margin:1px 8px 0 0}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper{display:none;clear:both;margin:1em 0;float:left;width:50%}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper h4,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper h4{margin-top:0}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress{width:100%;height:42px;margin:0 auto;display:block;-webkit-appearance:none;border:none;background:#f5f5f5;border:2px solid #eee;border-radius:4px;padding:0;box-shadow:0 1px 0 0 rgba(255,255,255,.2)}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-bar,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-bar{background:transparent none;border:0;border-radius:4px;padding:0;box-shadow:none}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-value,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-value{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-moz-progress-bar,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-moz-progress-bar{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-ms-fill,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-ms-fill{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter.bulk-action-processing .bulk-action-wrapper,.woocommerce_page_wc-gzd-shipments #posts-filter.bulk-action-processing .bulk-action-wrapper{display:block}.woocommerce_page_wc-gzd-return-shipments .wp-list-table,.woocommerce_page_wc-gzd-shipments .wp-list-table{margin-top:1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td,.woocommerce_page_wc-gzd-return-shipments .wp-list-table th,.woocommerce_page_wc-gzd-shipments .wp-list-table td,.woocommerce_page_wc-gzd-shipments .wp-list-table th{padding:.5em 1em;width:10ch;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table tbody th,.woocommerce_page_wc-gzd-return-shipments .wp-list-table td,.woocommerce_page_wc-gzd-shipments .wp-list-table tbody th,.woocommerce_page_wc-gzd-shipments .wp-list-table td{line-height:26px}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th{padding:.5em 1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th.sortable a,.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th.sorted a,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th.sortable a,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th.sorted a{padding:0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th:last-child,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th:last-child{padding-right:2em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .check-column,.woocommerce_page_wc-gzd-shipments .wp-list-table .check-column{width:16px;white-space:nowrap;padding:1em 1em 1em 1em!important;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .check-column input,.woocommerce_page_wc-gzd-shipments .wp-list-table .check-column input{vertical-align:text-top;margin:1px 0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title{font-weight:700}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title .shipment-title-meta,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title .shipment-title-meta{margin-top:0;font-weight:400;color:#999;font-style:italic}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title .shipment-title-meta .shipment-tracking-id,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title .shipment-title-meta .shipment-tracking-id{color:#999;display:block}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-title,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-title{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions{width:10ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-order,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-order{width:10ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-address a,.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-sender a,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-address a,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-sender a{color:#32373c}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .shipment-status,.woocommerce_page_wc-gzd-shipments .wp-list-table .shipment-status{font-size:1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions{text-align:right}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button{text-indent:9999px;margin:2px 0 2px 4px;position:relative;display:inline-block;padding:0;height:2em;width:2em;overflow:hidden;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button::after{font-family:Dashicons;margin:0;margin-top:2px;speak:none;font-weight:400;font-variant:normal;text-transform:none;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.processing::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.processing::after{font-family:WooCommerce;content:"\e00f"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.shipped::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.shipped::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.delivered::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.delivered::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.confirm::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.confirm::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.generate::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.generate::after{content:"\f502"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.download::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.download::after{content:"\f103"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-address,.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-sender,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-address,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-sender{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-items,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-items{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview{font-size:.9em;border-spacing:0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview thead th,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview thead th{color:#adadad;padding-top:0;font-size:1.1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr td{border-bottom:1px solid #ccc!important}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr:last-child td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr:last-child td{border-bottom:none!important}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th{padding:.3em 0;vertical-align:top;line-height:20px}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-name{width:70%}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-quantity{text-align:right;padding-right:.5em}#woocommerce-gzd-order-shipments .inside{margin:0;padding:0;display:block!important}#woocommerce-gzd-order-shipments .handlediv,#woocommerce-gzd-order-shipments .hndle{display:none}#woocommerce-gzd-order-shipments .hide-default{display:none}.germanized-shipments *{box-sizing:border-box}.germanized-shipments #panel-order-shipments{padding:23px 0 0}.germanized-shipments #panel-order-shipments .panel-inner{padding:0 24px}.germanized-shipments #panel-order-shipments .panel-title-inner{padding-left:0;margin-top:1em;padding-right:0}.germanized-shipments #panel-order-shipments .panel-title{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .panel-title h2{margin:0;font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif;font-size:21px;font-weight:400;line-height:1.2;text-shadow:1px 1px 1px #fff;padding:0}.germanized-shipments #panel-order-shipments .panel-footer{background:#f8f8f8;padding-top:1em;padding-bottom:1em;border-top:1px solid #dfdfdf;display:none}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions{display:flex;flex-wrap:nowrap;justify-content:space-between}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions .shipment-actions-left{display:flex;flex-wrap:wrap;justify-content:flex-start}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions .shipment-actions-left .button{margin-right:1em}.germanized-shipments #panel-order-shipments .panel-footer #order-shipments-save{display:none}.germanized-shipments #panel-order-shipments #order-return-shipment-add,.germanized-shipments #panel-order-shipments #order-shipment-add{display:none}.germanized-shipments #panel-order-shipments.needs-shipments .panel-footer{display:block}.germanized-shipments #panel-order-shipments.needs-shipments #order-shipment-add{display:block}.germanized-shipments #panel-order-shipments.needs-returns .panel-footer{display:block}.germanized-shipments #panel-order-shipments.needs-returns #order-return-shipment-add{display:block}.germanized-shipments #panel-order-shipments #order-shipments-list{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .delete{color:#a00}.germanized-shipments #panel-order-shipments .delete:hover{color:#dc3232;border:none}.germanized-shipments #panel-order-shipments .order-shipment a .woocommerce-help-tip{margin-right:3px}.germanized-shipments #panel-order-shipments .order-shipment .handlediv{display:inline-block;float:none;width:auto;height:auto}.germanized-shipments #panel-order-shipments .order-shipment .handlediv .toggle-indicator::before{content:"\f140"}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label h4{margin-top:0}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label .shipment-label-actions .shipment-label-actions-wrapper{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:1em;align-items:center}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label .shipment-label-actions .shipment-label-actions-wrapper a{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .show-if{display:none}.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-content-wrapper{display:block}.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-header>.right>.handlediv .toggle-indicator::before{content:"\f142"}.germanized-shipments #panel-order-shipments .order-shipment .item-count{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer{margin-top:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner{display:flex;flex-wrap:nowrap;justify-content:flex-end;padding:0 .5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner a.shipment-footer-action{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner a.shipment-footer-action:last-child{margin-right:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header{color:#999;background:#f8f8f8;margin:1.5em 0;padding:.5em 1em;cursor:pointer}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header .shipment-status{margin-left:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header h3{margin:0}.germanized-shipments #panel-order-shipments .order-shipment:first-child .shipment-header{margin-top:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header:hover,.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-header{background:#f3f3f3}.germanized-shipments #panel-order-shipments .order-shipment .shipment-content-wrapper{display:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-content{padding:1em;margin-top:-2.5em;padding-bottom:0}.germanized-shipments #panel-order-shipments .order-shipment .add-shipment-return{display:none}.germanized-shipments #panel-order-shipments .order-shipment.is-returnable .add-shipment-return{display:block}.germanized-shipments #panel-order-shipments .order-shipment p.form-row{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=email],.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=number],.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=text]{height:30px}.germanized-shipments #panel-order-shipments .order-shipment p.form-row select{line-height:30px;height:30px;padding-top:0;padding-bottom:0}.germanized-shipments #panel-order-shipments .order-shipment p.form-row label{color:#999;font-weight:600}.germanized-shipments #panel-order-shipments .order-shipment p.form-row label .woocommerce-help-tip{float:none}.germanized-shipments #panel-order-shipments .order-shipment .columns .column.column-spaced{margin:5px 0}.germanized-shipments #panel-order-shipments .order-shipment .columns .column h4{margin-bottom:.7em;color:#999}.germanized-shipments #panel-order-shipments .order-shipment .columns .column h4 a{color:#999;text-decoration:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-action{text-align:right}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-quantity input{width:50px;text-align:center}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-name p.form-row{margin-bottom:0;margin-top:.5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-heading{padding:.5em;color:#999;background:#f8f8f8;font-weight:600}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item{padding:.5em;border-bottom:1px solid #dfdfdf}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item:last-child{border-bottom:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item:nth-child(2n){background:#f8f8f8}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item .columns{align-items:center}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions{display:flex;padding:.7em .5em;flex-wrap:nowrap;justify-content:flex-end;border-top:1px solid #dfdfdf}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions .add-items{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions .woocommerce-help-tip{margin-left:0}.germanized-shipments #panel-order-shipments .order-shipment .add-items{display:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns{margin-top:.5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-header{background:0 0;border-bottom:1px solid #dfdfdf;padding-left:0;padding-right:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-header h3{font-size:1.1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-content{padding:1em 0}.germanized-shipments #panel-order-shipments .order-shipment.needs-items .add-items{display:block}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap{clear:left;margin:0;display:flex;flex-wrap:nowrap}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap input{margin-right:1em}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap input:last-child{margin-right:0}.germanized-shipments .title-spread{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}.germanized-shipments .title-spread .left,.germanized-shipments .title-spread .right{display:inline-flex;align-items:center}.germanized-shipments .show-lg,.germanized-shipments .show-md,.germanized-shipments .show-sm,.germanized-shipments .show-xl,.germanized-shipments .show-xs{display:none!important}.germanized-shipments .columns{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.germanized-shipments .columns.col-gapless{margin-left:0;margin-right:0}.germanized-shipments .columns.col-gapless>.column{padding-left:0;padding-right:0}.germanized-shipments .columns.col-oneline{flex-wrap:nowrap;overflow-x:auto}.germanized-shipments .column{flex:1;max-width:100%;padding-left:1rem;padding-right:1rem}.germanized-shipments .column.col-1,.germanized-shipments .column.col-10,.germanized-shipments .column.col-11,.germanized-shipments .column.col-12,.germanized-shipments .column.col-2,.germanized-shipments .column.col-3,.germanized-shipments .column.col-4,.germanized-shipments .column.col-5,.germanized-shipments .column.col-6,.germanized-shipments .column.col-7,.germanized-shipments .column.col-8,.germanized-shipments .column.col-9,.germanized-shipments .column.col-auto{flex:none}.germanized-shipments .col-12{width:100%}.germanized-shipments .col-11{width:91.66666667%}.germanized-shipments .col-10{width:83.33333333%}.germanized-shipments .col-9{width:75%}.germanized-shipments .col-8{width:66.66666667%}.germanized-shipments .col-7{width:58.33333333%}.germanized-shipments .col-6{width:50%}.germanized-shipments .col-5{width:41.66666667%}.germanized-shipments .col-4{width:33.33333333%}.germanized-shipments .col-3{width:25%}.germanized-shipments .col-2{width:16.66666667%}.germanized-shipments .col-1{width:8.33333333%}.germanized-shipments .col-auto{flex:0 0 auto;max-width:none;width:auto}.germanized-shipments .col-mx-auto{margin-left:auto;margin-right:auto}.germanized-shipments .col-ml-auto{margin-left:auto}.germanized-shipments .col-mr-auto{margin-right:auto}@media (max-width:1280px){.germanized-shipments .col-xl-1,.germanized-shipments .col-xl-10,.germanized-shipments .col-xl-11,.germanized-shipments .col-xl-12,.germanized-shipments .col-xl-2,.germanized-shipments .col-xl-3,.germanized-shipments .col-xl-4,.germanized-shipments .col-xl-5,.germanized-shipments .col-xl-6,.germanized-shipments .col-xl-7,.germanized-shipments .col-xl-8,.germanized-shipments .col-xl-9,.germanized-shipments .col-xl-auto{flex:none}.germanized-shipments .col-xl-12{width:100%}.germanized-shipments .col-xl-11{width:91.66666667%}.germanized-shipments .col-xl-10{width:83.33333333%}.germanized-shipments .col-xl-9{width:75%}.germanized-shipments .col-xl-8{width:66.66666667%}.germanized-shipments .col-xl-7{width:58.33333333%}.germanized-shipments .col-xl-6{width:50%}.germanized-shipments .col-xl-5{width:41.66666667%}.germanized-shipments .col-xl-4{width:33.33333333%}.germanized-shipments .col-xl-3{width:25%}.germanized-shipments .col-xl-2{width:16.66666667%}.germanized-shipments .col-xl-1{width:8.33333333%}.germanized-shipments .col-xl-auto{width:auto}.germanized-shipments .hide-xl{display:none!important}.germanized-shipments .show-xl{display:block!important}}@media (max-width:960px){.germanized-shipments .col-lg-1,.germanized-shipments .col-lg-10,.germanized-shipments .col-lg-11,.germanized-shipments .col-lg-12,.germanized-shipments .col-lg-2,.germanized-shipments .col-lg-3,.germanized-shipments .col-lg-4,.germanized-shipments .col-lg-5,.germanized-shipments .col-lg-6,.germanized-shipments .col-lg-7,.germanized-shipments .col-lg-8,.germanized-shipments .col-lg-9,.germanized-shipments .col-lg-auto{flex:none}.germanized-shipments .col-lg-12{width:100%}.germanized-shipments .col-lg-11{width:91.66666667%}.germanized-shipments .col-lg-10{width:83.33333333%}.germanized-shipments .col-lg-9{width:75%}.germanized-shipments .col-lg-8{width:66.66666667%}.germanized-shipments .col-lg-7{width:58.33333333%}.germanized-shipments .col-lg-6{width:50%}.germanized-shipments .col-lg-5{width:41.66666667%}.germanized-shipments .col-lg-4{width:33.33333333%}.germanized-shipments .col-lg-3{width:25%}.germanized-shipments .col-lg-2{width:16.66666667%}.germanized-shipments .col-lg-1{width:8.33333333%}.germanized-shipments .col-lg-auto{width:auto}.germanized-shipments .hide-lg{display:none!important}.germanized-shipments .show-lg{display:block!important}}@media (max-width:840px){.germanized-shipments .col-md-1,.germanized-shipments .col-md-10,.germanized-shipments .col-md-11,.germanized-shipments .col-md-12,.germanized-shipments .col-md-2,.germanized-shipments .col-md-3,.germanized-shipments .col-md-4,.germanized-shipments .col-md-5,.germanized-shipments .col-md-6,.germanized-shipments .col-md-7,.germanized-shipments .col-md-8,.germanized-shipments .col-md-9,.germanized-shipments .col-md-auto{flex:none}.germanized-shipments .col-md-12{width:100%}.germanized-shipments .col-md-11{width:91.66666667%}.germanized-shipments .col-md-10{width:83.33333333%}.germanized-shipments .col-md-9{width:75%}.germanized-shipments .col-md-8{width:66.66666667%}.germanized-shipments .col-md-7{width:58.33333333%}.germanized-shipments .col-md-6{width:50%}.germanized-shipments .col-md-5{width:41.66666667%}.germanized-shipments .col-md-4{width:33.33333333%}.germanized-shipments .col-md-3{width:25%}.germanized-shipments .col-md-2{width:16.66666667%}.germanized-shipments .col-md-1{width:8.33333333%}.germanized-shipments .col-md-auto{width:auto}.germanized-shipments .hide-md{display:none!important}.germanized-shipments .show-md{display:block!important}}@media (max-width:600px){.germanized-shipments .col-sm-1,.germanized-shipments .col-sm-10,.germanized-shipments .col-sm-11,.germanized-shipments .col-sm-12,.germanized-shipments .col-sm-2,.germanized-shipments .col-sm-3,.germanized-shipments .col-sm-4,.germanized-shipments .col-sm-5,.germanized-shipments .col-sm-6,.germanized-shipments .col-sm-7,.germanized-shipments .col-sm-8,.germanized-shipments .col-sm-9,.germanized-shipments .col-sm-auto{flex:none}.germanized-shipments .col-sm-12{width:100%}.germanized-shipments .col-sm-11{width:91.66666667%}.germanized-shipments .col-sm-10{width:83.33333333%}.germanized-shipments .col-sm-9{width:75%}.germanized-shipments .col-sm-8{width:66.66666667%}.germanized-shipments .col-sm-7{width:58.33333333%}.germanized-shipments .col-sm-6{width:50%}.germanized-shipments .col-sm-5{width:41.66666667%}.germanized-shipments .col-sm-4{width:33.33333333%}.germanized-shipments .col-sm-3{width:25%}.germanized-shipments .col-sm-2{width:16.66666667%}.germanized-shipments .col-sm-1{width:8.33333333%}.germanized-shipments .col-sm-auto{width:auto}.germanized-shipments .hide-sm{display:none!important}.germanized-shipments .show-sm{display:block!important}}@media (max-width:480px){.germanized-shipments .col-xs-1,.germanized-shipments .col-xs-10,.germanized-shipments .col-xs-11,.germanized-shipments .col-xs-12,.germanized-shipments .col-xs-2,.germanized-shipments .col-xs-3,.germanized-shipments .col-xs-4,.germanized-shipments .col-xs-5,.germanized-shipments .col-xs-6,.germanized-shipments .col-xs-7,.germanized-shipments .col-xs-8,.germanized-shipments .col-xs-9,.germanized-shipments .col-xs-auto{flex:none}.germanized-shipments .col-xs-12{width:100%}.germanized-shipments .col-xs-11{width:91.66666667%}.germanized-shipments .col-xs-10{width:83.33333333%}.germanized-shipments .col-xs-9{width:75%}.germanized-shipments .col-xs-8{width:66.66666667%}.germanized-shipments .col-xs-7{width:58.33333333%}.germanized-shipments .col-xs-6{width:50%}.germanized-shipments .col-xs-5{width:41.66666667%}.germanized-shipments .col-xs-4{width:33.33333333%}.germanized-shipments .col-xs-3{width:25%}.germanized-shipments .col-xs-2{width:16.66666667%}.germanized-shipments .col-xs-1{width:8.33333333%}.germanized-shipments .col-xs-auto{width:auto}.germanized-shipments .hide-xs{display:none!important}.germanized-shipments .show-xs{display:block!important}}
1
+ .germanized-create-label .notice-wrapper .notice{margin:0;margin-bottom:1em}.germanized-create-label .notice-wrapper .notice p{margin:.5em 0!important;padding:2px!important;font-size:13px;line-height:1.5}.germanized-create-label p.form-field{display:inline-block;width:100%;margin-bottom:5px!important;margin-top:5px!important}.germanized-create-label p.form-field:first-child,.germanized-create-label p.form-field:last-child{margin-bottom:5px!important;margin-top:5px!important}.germanized-create-label .columns{margin-left:-.5rem!important;margin-right:-.5rem!important}.germanized-create-label .column{padding-left:.5rem!important;padding-right:.5rem!important}.germanized-create-label .hide-default,.germanized-create-label .show-if{display:none}.germanized-create-label .show-if label{color:#777}.germanized-create-label p.form-field label{width:100%;display:block;margin-bottom:5px}.germanized-create-label p.form-field input[type=email],.germanized-create-label p.form-field input[type=text],.germanized-create-label p.form-field select{width:100%;max-width:100%}.germanized-create-label p.form-field.form-field-checkbox{display:flex;flex-wrap:wrap;flex-direction:row;justify-content:flex-start;margin-top:10px!important;margin-bottom:10px!important;align-items:center}.germanized-create-label p.form-field.form-field-checkbox label{width:auto;margin-left:.5em;order:2;margin-bottom:0}.germanized-create-label p.form-field.form-field-checkbox input[type=checkbox]{order:1}.germanized-create-label p.form-field.form-field-checkbox .woocommerce-help-tip{order:3;margin-left:3px}.germanized-create-label p.form-field.form-field-checkbox .description{width:100%;margin-top:5px;color:#777;order:4;font-style:normal}table.wc-gzd-shipping-providers{margin-top:1.5em}table.wc-gzd-shipping-providers td,table.wc-gzd-shipping-providers th{display:table-cell!important;padding:1em!important;vertical-align:top;line-height:1.75em;font-size:14px}table.wc-gzd-shipping-providers th{font-weight:600}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated{width:1%;text-align:center}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated .status-disabled,table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-activated .status-enabled,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated .status-disabled,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-activated .status-enabled{display:inline-block;margin-top:3px}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-actions{width:15%;text-align:right}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions{display:flex;justify-content:flex-end;flex-wrap:wrap}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions .button{margin-right:5px}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-actions .button:last-child{margin-right:0}table.wc-gzd-shipping-providers td.wc-gzd-shipping-provider-title,table.wc-gzd-shipping-providers th.wc-gzd-shipping-provider-title{width:30ch}table.wc-gzd-shipping-providers tr:nth-child(odd) td{background:#f9f9f9}.order-return-status,.order-shipping-status,.shipment-status{background:#eee;padding:.2em .5em;font-size:.9em;border-radius:3px;display:inline-flex;white-space:nowrap}.order-return-status.status-draft,.order-return-status.status-open,.order-return-status.status-partially-returned,.order-return-status.status-partially-shipped,.order-return-status.status-processing,.order-return-status.status-requested,.order-shipping-status.status-draft,.order-shipping-status.status-open,.order-shipping-status.status-partially-returned,.order-shipping-status.status-partially-shipped,.order-shipping-status.status-processing,.order-shipping-status.status-requested,.shipment-status.status-draft,.shipment-status.status-open,.shipment-status.status-partially-returned,.shipment-status.status-partially-shipped,.shipment-status.status-processing,.shipment-status.status-requested{background:#f8dda7;color:#94660c}.order-return-status.status-not-shipped,.order-shipping-status.status-not-shipped,.shipment-status.status-not-shipped{background:#eba3a3;color:#761919}.order-return-status.status-delivered,.order-return-status.status-returned,.order-return-status.status-shipped,.order-shipping-status.status-delivered,.order-shipping-status.status-returned,.order-shipping-status.status-shipped,.shipment-status.status-delivered,.shipment-status.status-returned,.shipment-status.status-shipped{background:#c6e1c6;color:#5b841b}.order-return-status.shipment-type-return-status.status-shipped,.order-shipping-status.shipment-type-return-status.status-shipped,.shipment-status.shipment-type-return-status.status-shipped{background:#f8dda7;color:#94660c}.woocommerce_page_wc-gzd-return-shipments .tablenav .actions,.woocommerce_page_wc-gzd-shipments .tablenav .actions{overflow:visible}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container{float:left;width:240px!important;font-size:14px;vertical-align:middle;margin:1px 6px 4px 1px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single{height:32px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single .select2-selection__rendered,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single .select2-selection__rendered{line-height:29px}.woocommerce_page_wc-gzd-return-shipments .tablenav .select2-container .select2-selection--single .select2-selection__arrow,.woocommerce_page_wc-gzd-shipments .tablenav .select2-container .select2-selection--single .select2-selection__arrow{height:30px}.woocommerce_page_wc-gzd-return-shipments .tablenav input,.woocommerce_page_wc-gzd-return-shipments .tablenav select,.woocommerce_page_wc-gzd-shipments .tablenav input,.woocommerce_page_wc-gzd-shipments .tablenav select{line-height:1;height:32px}.woocommerce_page_wc-gzd-return-shipments .tablenav input,.woocommerce_page_wc-gzd-shipments .tablenav input{height:31px}.woocommerce_page_wc-gzd-return-shipments .tablenav #shipment-query-submit,.woocommerce_page_wc-gzd-shipments .tablenav #shipment-query-submit{margin:1px 8px 0 0}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper{display:none;clear:both;margin:1em 0;float:left;width:50%}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper h4,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper h4{margin-top:0}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress{width:100%;height:42px;margin:0 auto;display:block;-webkit-appearance:none;border:none;background:#f5f5f5;border:2px solid #eee;border-radius:4px;padding:0;box-shadow:0 1px 0 0 rgba(255,255,255,.2)}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-bar,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-bar{background:transparent none;border:0;border-radius:4px;padding:0;box-shadow:none}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-value,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-webkit-progress-value{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-moz-progress-bar,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-moz-progress-bar{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter .bulk-action-wrapper progress::-ms-fill,.woocommerce_page_wc-gzd-shipments #posts-filter .bulk-action-wrapper progress::-ms-fill{border-radius:3px;box-shadow:inset 0 1px 1px 0 rgba(255,255,255,.4);background:#a46497;background:linear-gradient(to bottom,#a46497,#66405f),#a46497;transition:width 1s ease}.woocommerce_page_wc-gzd-return-shipments #posts-filter.bulk-action-processing .bulk-action-wrapper,.woocommerce_page_wc-gzd-shipments #posts-filter.bulk-action-processing .bulk-action-wrapper{display:block}.woocommerce_page_wc-gzd-return-shipments .wp-list-table,.woocommerce_page_wc-gzd-shipments .wp-list-table{margin-top:1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td,.woocommerce_page_wc-gzd-return-shipments .wp-list-table th,.woocommerce_page_wc-gzd-shipments .wp-list-table td,.woocommerce_page_wc-gzd-shipments .wp-list-table th{padding:.5em 1em;width:10ch;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table tbody th,.woocommerce_page_wc-gzd-return-shipments .wp-list-table td,.woocommerce_page_wc-gzd-shipments .wp-list-table tbody th,.woocommerce_page_wc-gzd-shipments .wp-list-table td{line-height:26px}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th{padding:.5em 1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th.sortable a,.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th.sorted a,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th.sortable a,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th.sorted a{padding:0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table thead th:last-child,.woocommerce_page_wc-gzd-shipments .wp-list-table thead th:last-child{padding-right:2em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .check-column,.woocommerce_page_wc-gzd-shipments .wp-list-table .check-column{width:16px;white-space:nowrap;padding:1em 1em 1em 1em!important;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .check-column input,.woocommerce_page_wc-gzd-shipments .wp-list-table .check-column input{vertical-align:text-top;margin:1px 0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title{font-weight:700}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title .shipment-title-meta,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title .shipment-title-meta{margin-top:0;font-weight:400;color:#999;font-style:italic}.woocommerce_page_wc-gzd-return-shipments .wp-list-table td.column-title .shipment-title-meta .shipment-tracking-id,.woocommerce_page_wc-gzd-shipments .wp-list-table td.column-title .shipment-title-meta .shipment-tracking-id{color:#999;display:block}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-title,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-title{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions{width:10ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-order,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-order{width:10ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-address a,.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-sender a,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-address a,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-sender a{color:#32373c}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .shipment-status,.woocommerce_page_wc-gzd-shipments .wp-list-table .shipment-status{font-size:1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions{text-align:right}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button{text-indent:9999px;margin:2px 0 2px 4px;position:relative;display:inline-block;padding:0;height:2em;width:2em;overflow:hidden;vertical-align:middle}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button::after{font-family:Dashicons;margin:0;margin-top:2px;speak:none;font-weight:400;font-variant:normal;text-transform:none;text-indent:0;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;line-height:1.85}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.processing::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.processing::after{font-family:WooCommerce;content:"\e00f"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.shipped::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.shipped::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.delivered::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.delivered::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.confirm::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.confirm::after{content:"\f147"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.generate::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.generate::after{content:"\f502"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-actions a.button.download::after,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-actions a.button.download::after{content:"\f103"}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-address,.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-sender,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-address,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-sender{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table .column-items,.woocommerce_page_wc-gzd-shipments .wp-list-table .column-items{width:20ch}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview{font-size:.9em;border-spacing:0}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview thead th,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview thead th{color:#adadad;padding-top:0;font-size:1.1em}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr td{border-bottom:1px solid #ccc!important}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr:last-child td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview tr:last-child td{border-bottom:none!important}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th{padding:.3em 0;vertical-align:top;line-height:20px}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-name,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-name{width:70%}.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-return-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview td.wc-gzd-shipment-item-column-quantity,.woocommerce_page_wc-gzd-shipments .wp-list-table #the-list .column-items table.wc-gzd-shipments-preview th.wc-gzd-shipment-item-column-quantity{text-align:right;padding-right:.5em}#woocommerce-gzd-order-shipments .inside{margin:0;padding:0;display:block!important}#woocommerce-gzd-order-shipments .handlediv,#woocommerce-gzd-order-shipments .hndle,#woocommerce-gzd-order-shipments .postbox-header{display:none}#woocommerce-gzd-order-shipments .hide-default{display:none}.germanized-shipments *{box-sizing:border-box}.germanized-shipments #panel-order-shipments{padding:23px 0 0}.germanized-shipments #panel-order-shipments .panel-inner{padding:0 24px}.germanized-shipments #panel-order-shipments .panel-title-inner{padding-left:0;margin-top:1em;padding-right:0}.germanized-shipments #panel-order-shipments .panel-title{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .panel-title h2{margin:0;font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif;font-size:21px;font-weight:400;line-height:1.2;text-shadow:1px 1px 1px #fff;padding:0}.germanized-shipments #panel-order-shipments .panel-footer{background:#f8f8f8;padding-top:1em;padding-bottom:1em;border-top:1px solid #dfdfdf;display:none}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions{display:flex;flex-wrap:nowrap;justify-content:space-between}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions .shipment-actions-left{display:flex;flex-wrap:wrap;justify-content:flex-start}.germanized-shipments #panel-order-shipments .panel-footer .order-shipments-actions .shipment-actions-left .button{margin-right:1em}.germanized-shipments #panel-order-shipments .panel-footer #order-shipments-save{display:none}.germanized-shipments #panel-order-shipments #order-return-shipment-add,.germanized-shipments #panel-order-shipments #order-shipment-add{display:none}.germanized-shipments #panel-order-shipments.needs-shipments .panel-footer{display:block}.germanized-shipments #panel-order-shipments.needs-shipments #order-shipment-add{display:block}.germanized-shipments #panel-order-shipments.needs-returns .panel-footer{display:block}.germanized-shipments #panel-order-shipments.needs-returns #order-return-shipment-add{display:block}.germanized-shipments #panel-order-shipments #order-shipments-list{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .delete{color:#a00}.germanized-shipments #panel-order-shipments .delete:hover{color:#dc3232;border:none}.germanized-shipments #panel-order-shipments .order-shipment a .woocommerce-help-tip{margin-right:3px}.germanized-shipments #panel-order-shipments .order-shipment .handlediv{display:inline-block;float:none;width:auto;height:auto}.germanized-shipments #panel-order-shipments .order-shipment .handlediv .toggle-indicator::before{content:"\f140"}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label h4{margin-top:0}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label .shipment-label-actions .shipment-label-actions-wrapper{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:1em;align-items:center}.germanized-shipments #panel-order-shipments .order-shipment .wc-gzd-shipment-label .shipment-label-actions .shipment-label-actions-wrapper a{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .show-if{display:none}.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-content-wrapper{display:block}.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-header>.right>.handlediv .toggle-indicator::before{content:"\f142"}.germanized-shipments #panel-order-shipments .order-shipment .item-count{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer{margin-top:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner{display:flex;flex-wrap:nowrap;justify-content:flex-end;padding:0 .5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner a.shipment-footer-action{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-footer .shipment-footer-inner a.shipment-footer-action:last-child{margin-right:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header{color:#999;background:#f8f8f8;margin:1.5em 0;padding:.5em 1em;cursor:pointer}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header .shipment-status{margin-left:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header h3{margin:0}.germanized-shipments #panel-order-shipments .order-shipment:first-child .shipment-header{margin-top:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-header:hover,.germanized-shipments #panel-order-shipments .order-shipment.active>.shipment-header{background:#f3f3f3}.germanized-shipments #panel-order-shipments .order-shipment .shipment-content-wrapper{display:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-content{padding:1em;margin-top:-2.5em;padding-bottom:0}.germanized-shipments #panel-order-shipments .order-shipment .add-shipment-return{display:none}.germanized-shipments #panel-order-shipments .order-shipment.is-returnable .add-shipment-return{display:block}.germanized-shipments #panel-order-shipments .order-shipment p.form-row{margin-bottom:1.5em}.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=email],.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=number],.germanized-shipments #panel-order-shipments .order-shipment p.form-row input[type=text]{height:30px}.germanized-shipments #panel-order-shipments .order-shipment p.form-row select{line-height:30px;height:30px;padding-top:0;padding-bottom:0}.germanized-shipments #panel-order-shipments .order-shipment p.form-row label{color:#999;font-weight:600}.germanized-shipments #panel-order-shipments .order-shipment p.form-row label .woocommerce-help-tip{float:none}.germanized-shipments #panel-order-shipments .order-shipment .columns .column.column-spaced{margin:5px 0}.germanized-shipments #panel-order-shipments .order-shipment .columns .column h4{margin-bottom:.7em;color:#999}.germanized-shipments #panel-order-shipments .order-shipment .columns .column h4 a{color:#999;text-decoration:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-action{text-align:right}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-quantity input{width:50px;text-align:center}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-name p.form-row{margin-bottom:0;margin-top:.5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item-heading{padding:.5em;color:#999;background:#f8f8f8;font-weight:600}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item{padding:.5em;border-bottom:1px solid #dfdfdf}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item:last-child{border-bottom:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item:nth-child(2n){background:#f8f8f8}.germanized-shipments #panel-order-shipments .order-shipment .shipment-items .shipment-item-list-wrapper .shipment-item .columns{align-items:center}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions{display:flex;padding:.7em .5em;flex-wrap:nowrap;justify-content:flex-end;border-top:1px solid #dfdfdf}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions .add-items{margin-right:1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-item-actions .woocommerce-help-tip{margin-left:0}.germanized-shipments #panel-order-shipments .order-shipment .add-items{display:none}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns{margin-top:.5em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-header{background:0 0;border-bottom:1px solid #dfdfdf;padding-left:0;padding-right:0}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-header h3{font-size:1.1em}.germanized-shipments #panel-order-shipments .order-shipment .shipment-returns .shipment-return .shipment-content{padding:1em 0}.germanized-shipments #panel-order-shipments .order-shipment.needs-items .add-items{display:block}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap{clear:left;margin:0;display:flex;flex-wrap:nowrap}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap input{margin-right:1em}.germanized-shipments #panel-order-shipments .form-row .input-inner-wrap input:last-child{margin-right:0}.germanized-shipments .title-spread{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}.germanized-shipments .title-spread .left,.germanized-shipments .title-spread .right{display:inline-flex;align-items:center}.germanized-shipments .show-lg,.germanized-shipments .show-md,.germanized-shipments .show-sm,.germanized-shipments .show-xl,.germanized-shipments .show-xs{display:none!important}.germanized-shipments .columns{display:flex;flex-wrap:wrap;margin-left:-1rem;margin-right:-1rem}.germanized-shipments .columns.col-gapless{margin-left:0;margin-right:0}.germanized-shipments .columns.col-gapless>.column{padding-left:0;padding-right:0}.germanized-shipments .columns.col-oneline{flex-wrap:nowrap;overflow-x:auto}.germanized-shipments .column{flex:1;max-width:100%;padding-left:1rem;padding-right:1rem}.germanized-shipments .column.col-1,.germanized-shipments .column.col-10,.germanized-shipments .column.col-11,.germanized-shipments .column.col-12,.germanized-shipments .column.col-2,.germanized-shipments .column.col-3,.germanized-shipments .column.col-4,.germanized-shipments .column.col-5,.germanized-shipments .column.col-6,.germanized-shipments .column.col-7,.germanized-shipments .column.col-8,.germanized-shipments .column.col-9,.germanized-shipments .column.col-auto{flex:none}.germanized-shipments .col-12{width:100%}.germanized-shipments .col-11{width:91.66666667%}.germanized-shipments .col-10{width:83.33333333%}.germanized-shipments .col-9{width:75%}.germanized-shipments .col-8{width:66.66666667%}.germanized-shipments .col-7{width:58.33333333%}.germanized-shipments .col-6{width:50%}.germanized-shipments .col-5{width:41.66666667%}.germanized-shipments .col-4{width:33.33333333%}.germanized-shipments .col-3{width:25%}.germanized-shipments .col-2{width:16.66666667%}.germanized-shipments .col-1{width:8.33333333%}.germanized-shipments .col-auto{flex:0 0 auto;max-width:none;width:auto}.germanized-shipments .col-mx-auto{margin-left:auto;margin-right:auto}.germanized-shipments .col-ml-auto{margin-left:auto}.germanized-shipments .col-mr-auto{margin-right:auto}@media (max-width:1280px){.germanized-shipments .col-xl-1,.germanized-shipments .col-xl-10,.germanized-shipments .col-xl-11,.germanized-shipments .col-xl-12,.germanized-shipments .col-xl-2,.germanized-shipments .col-xl-3,.germanized-shipments .col-xl-4,.germanized-shipments .col-xl-5,.germanized-shipments .col-xl-6,.germanized-shipments .col-xl-7,.germanized-shipments .col-xl-8,.germanized-shipments .col-xl-9,.germanized-shipments .col-xl-auto{flex:none}.germanized-shipments .col-xl-12{width:100%}.germanized-shipments .col-xl-11{width:91.66666667%}.germanized-shipments .col-xl-10{width:83.33333333%}.germanized-shipments .col-xl-9{width:75%}.germanized-shipments .col-xl-8{width:66.66666667%}.germanized-shipments .col-xl-7{width:58.33333333%}.germanized-shipments .col-xl-6{width:50%}.germanized-shipments .col-xl-5{width:41.66666667%}.germanized-shipments .col-xl-4{width:33.33333333%}.germanized-shipments .col-xl-3{width:25%}.germanized-shipments .col-xl-2{width:16.66666667%}.germanized-shipments .col-xl-1{width:8.33333333%}.germanized-shipments .col-xl-auto{width:auto}.germanized-shipments .hide-xl{display:none!important}.germanized-shipments .show-xl{display:block!important}}@media (max-width:960px){.germanized-shipments .col-lg-1,.germanized-shipments .col-lg-10,.germanized-shipments .col-lg-11,.germanized-shipments .col-lg-12,.germanized-shipments .col-lg-2,.germanized-shipments .col-lg-3,.germanized-shipments .col-lg-4,.germanized-shipments .col-lg-5,.germanized-shipments .col-lg-6,.germanized-shipments .col-lg-7,.germanized-shipments .col-lg-8,.germanized-shipments .col-lg-9,.germanized-shipments .col-lg-auto{flex:none}.germanized-shipments .col-lg-12{width:100%}.germanized-shipments .col-lg-11{width:91.66666667%}.germanized-shipments .col-lg-10{width:83.33333333%}.germanized-shipments .col-lg-9{width:75%}.germanized-shipments .col-lg-8{width:66.66666667%}.germanized-shipments .col-lg-7{width:58.33333333%}.germanized-shipments .col-lg-6{width:50%}.germanized-shipments .col-lg-5{width:41.66666667%}.germanized-shipments .col-lg-4{width:33.33333333%}.germanized-shipments .col-lg-3{width:25%}.germanized-shipments .col-lg-2{width:16.66666667%}.germanized-shipments .col-lg-1{width:8.33333333%}.germanized-shipments .col-lg-auto{width:auto}.germanized-shipments .hide-lg{display:none!important}.germanized-shipments .show-lg{display:block!important}}@media (max-width:840px){.germanized-shipments .col-md-1,.germanized-shipments .col-md-10,.germanized-shipments .col-md-11,.germanized-shipments .col-md-12,.germanized-shipments .col-md-2,.germanized-shipments .col-md-3,.germanized-shipments .col-md-4,.germanized-shipments .col-md-5,.germanized-shipments .col-md-6,.germanized-shipments .col-md-7,.germanized-shipments .col-md-8,.germanized-shipments .col-md-9,.germanized-shipments .col-md-auto{flex:none}.germanized-shipments .col-md-12{width:100%}.germanized-shipments .col-md-11{width:91.66666667%}.germanized-shipments .col-md-10{width:83.33333333%}.germanized-shipments .col-md-9{width:75%}.germanized-shipments .col-md-8{width:66.66666667%}.germanized-shipments .col-md-7{width:58.33333333%}.germanized-shipments .col-md-6{width:50%}.germanized-shipments .col-md-5{width:41.66666667%}.germanized-shipments .col-md-4{width:33.33333333%}.germanized-shipments .col-md-3{width:25%}.germanized-shipments .col-md-2{width:16.66666667%}.germanized-shipments .col-md-1{width:8.33333333%}.germanized-shipments .col-md-auto{width:auto}.germanized-shipments .hide-md{display:none!important}.germanized-shipments .show-md{display:block!important}}@media (max-width:600px){.germanized-shipments .col-sm-1,.germanized-shipments .col-sm-10,.germanized-shipments .col-sm-11,.germanized-shipments .col-sm-12,.germanized-shipments .col-sm-2,.germanized-shipments .col-sm-3,.germanized-shipments .col-sm-4,.germanized-shipments .col-sm-5,.germanized-shipments .col-sm-6,.germanized-shipments .col-sm-7,.germanized-shipments .col-sm-8,.germanized-shipments .col-sm-9,.germanized-shipments .col-sm-auto{flex:none}.germanized-shipments .col-sm-12{width:100%}.germanized-shipments .col-sm-11{width:91.66666667%}.germanized-shipments .col-sm-10{width:83.33333333%}.germanized-shipments .col-sm-9{width:75%}.germanized-shipments .col-sm-8{width:66.66666667%}.germanized-shipments .col-sm-7{width:58.33333333%}.germanized-shipments .col-sm-6{width:50%}.germanized-shipments .col-sm-5{width:41.66666667%}.germanized-shipments .col-sm-4{width:33.33333333%}.germanized-shipments .col-sm-3{width:25%}.germanized-shipments .col-sm-2{width:16.66666667%}.germanized-shipments .col-sm-1{width:8.33333333%}.germanized-shipments .col-sm-auto{width:auto}.germanized-shipments .hide-sm{display:none!important}.germanized-shipments .show-sm{display:block!important}}@media (max-width:480px){.germanized-shipments .col-xs-1,.germanized-shipments .col-xs-10,.germanized-shipments .col-xs-11,.germanized-shipments .col-xs-12,.germanized-shipments .col-xs-2,.germanized-shipments .col-xs-3,.germanized-shipments .col-xs-4,.germanized-shipments .col-xs-5,.germanized-shipments .col-xs-6,.germanized-shipments .col-xs-7,.germanized-shipments .col-xs-8,.germanized-shipments .col-xs-9,.germanized-shipments .col-xs-auto{flex:none}.germanized-shipments .col-xs-12{width:100%}.germanized-shipments .col-xs-11{width:91.66666667%}.germanized-shipments .col-xs-10{width:83.33333333%}.germanized-shipments .col-xs-9{width:75%}.germanized-shipments .col-xs-8{width:66.66666667%}.germanized-shipments .col-xs-7{width:58.33333333%}.germanized-shipments .col-xs-6{width:50%}.germanized-shipments .col-xs-5{width:41.66666667%}.germanized-shipments .col-xs-4{width:33.33333333%}.germanized-shipments .col-xs-3{width:25%}.germanized-shipments .col-xs-2{width:16.66666667%}.germanized-shipments .col-xs-1{width:8.33333333%}.germanized-shipments .col-xs-auto{width:auto}.germanized-shipments .hide-xs{display:none!important}.germanized-shipments .show-xs{display:block!important}}
packages/woocommerce-germanized-shipments/assets/css/admin.scss CHANGED
@@ -481,7 +481,7 @@ table.wc-gzd-shipping-providers {
481
  display: block !important;
482
  }
483
 
484
- .hndle, .handlediv {
485
  display: none;
486
  }
487
 
481
  display: block !important;
482
  }
483
 
484
+ .hndle, .handlediv, .postbox-header {
485
  display: none;
486
  }
487
 
packages/woocommerce-germanized-shipments/src/Admin/BulkActionHandler.php CHANGED
@@ -127,7 +127,7 @@ abstract class BulkActionHandler {
127
  }
128
 
129
  public function get_current_ids() {
130
- return array_slice( $this->get_ids(), ( ( $this->get_step() * $this->get_limit() ) - 1 ), $this->get_limit() );
131
  }
132
 
133
  /**
127
  }
128
 
129
  public function get_current_ids() {
130
+ return array_slice( $this->get_ids(), ( $this->get_step() - 1 ) * $this->get_limit(), $this->get_limit() );
131
  }
132
 
133
  /**
packages/woocommerce-germanized-shipments/src/Package.php CHANGED
@@ -17,7 +17,7 @@ class Package {
17
  *
18
  * @var string
19
  */
20
- const VERSION = '1.2.10';
21
 
22
  public static $upload_dir_suffix = '';
23
 
17
  *
18
  * @var string
19
  */
20
+ const VERSION = '1.3.0';
21
 
22
  public static $upload_dir_suffix = '';
23
 
packages/woocommerce-germanized-shipments/src/Shipment.php CHANGED
@@ -640,6 +640,14 @@ abstract class Shipment extends WC_Data {
640
  return $this->get_prop( 'shipping_provider', $context );
641
  }
642
 
 
 
 
 
 
 
 
 
643
  public function get_shipping_provider_instance() {
644
  $provider = $this->get_shipping_provider();
645
 
@@ -966,6 +974,10 @@ abstract class Shipment extends WC_Data {
966
  );
967
  }
968
 
 
 
 
 
969
  /**
970
  * Returns whether the shipment is editable or not.
971
  *
640
  return $this->get_prop( 'shipping_provider', $context );
641
  }
642
 
643
+ public function get_shipping_provider_title() {
644
+ if ( $provider = $this->get_shipping_provider_instance() ) {
645
+ return $provider->get_title();
646
+ }
647
+
648
+ return '';
649
+ }
650
+
651
  public function get_shipping_provider_instance() {
652
  $provider = $this->get_shipping_provider();
653
 
974
  );
975
  }
976
 
977
+ public function get_formatted_dimensions() {
978
+ return wc_gzd_format_shipment_dimensions( $this->get_dimensions(), $this->get_dimension_unit() );
979
+ }
980
+
981
  /**
982
  * Returns whether the shipment is editable or not.
983
  *
packages/woocommerce-germanized-shipments/src/ShipmentFactory.php CHANGED
@@ -30,7 +30,15 @@ class ShipmentFactory {
30
  $shipment_id = self::get_shipment_id( $shipment_id );
31
 
32
  if ( $shipment_id ) {
33
- $shipment_type = WC_Data_Store::load( 'shipment' )->get_shipment_type( $shipment_id );
 
 
 
 
 
 
 
 
34
  $shipment_type_data = wc_gzd_get_shipment_type_data( $shipment_type );
35
  } else {
36
  $shipment_type_data = wc_gzd_get_shipment_type_data( $shipment_type );
30
  $shipment_id = self::get_shipment_id( $shipment_id );
31
 
32
  if ( $shipment_id ) {
33
+ $shipment_type = WC_Data_Store::load( 'shipment' )->get_shipment_type( $shipment_id );
34
+
35
+ /**
36
+ * Shipment type cannot be found, seems to not exist.
37
+ */
38
+ if ( empty( $shipment_type ) ) {
39
+ return false;
40
+ }
41
+
42
  $shipment_type_data = wc_gzd_get_shipment_type_data( $shipment_type );
43
  } else {
44
  $shipment_type_data = wc_gzd_get_shipment_type_data( $shipment_type );
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.2.10
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.3.0
9
  * Requires PHP: 5.6
10
  * License: GPLv3
11
  *
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
  === Germanized for WooCommerce ===
2
  Contributors: vendidero, vdwoocommercesupport
3
  Tags: woocommerce, woocommerce german, woocommerce DE, woocommerce germany, woocommerce deutsch, woo, woocommerce deutschland, woocommerce germanized, woocommerce addon, woocommerce plugin, woocommerce german addon, woocommerce germany addon, woocommerce dhl, dhl, shipments
4
- Requires at least: 4.9
5
  Tested up to: 5.5
6
- WC requires at least: 3.4
7
- WC tested up to: 4.4
8
- Stable tag: 3.1.12
9
  Requires PHP: 5.6
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
@@ -59,8 +59,8 @@ While developing Germanized we have specifically considered clean integration wi
59
  Most of the changes are made by using Hooks & Filters so that our plugin is compatible to almost every Theme.
60
 
61
  = Pro: WooCommerce PDF invoices & packing slips =
62
- As a Pro User of Germanized you may automatically or manually create PDF Invoices and Packing Slips for your orders. Doing so you may customize the PDF layout to meet your Corporate Design.
63
- You may upload your head of a letter which will be used as background for your PDF's. With only a few clicks you may export (CSV, zip) invoices for your tax consultant or accountant.
64
  Learn more about [PDF Invoices for WooCommerce](https://vendidero.de/woocommerce-germanized/features#accounting "WooCommerce PDF Invoices")
65
 
66
  Furthermore you may attach legally relevant pages (e.g. Terms & Conditions) as PDF documents to specific WooCommerce emails instead of using plain text.
@@ -102,7 +102,7 @@ By default, Germanized works with every WooCommerce theme. Some themes may need
102
  = Minimal Requirments =
103
 
104
  * WordPress 4.9 or newer
105
- * WooCommerce 3.4 (newest version recommended)
106
  * PHP Version 5.6 or newer
107
 
108
  = Automatic Installation =
@@ -189,6 +189,13 @@ Bug reports may be filed via our [GitHub repository](https://github.com/vendider
189
  5. Manage shipments for orders
190
 
191
  == Changelog ==
 
 
 
 
 
 
 
192
  = 3.1.12 =
193
  * Feature: WC 4.4 support
194
  * Feature: WP 5.5 support
1
  === Germanized for WooCommerce ===
2
  Contributors: vendidero, vdwoocommercesupport
3
  Tags: woocommerce, woocommerce german, woocommerce DE, woocommerce germany, woocommerce deutsch, woo, woocommerce deutschland, woocommerce germanized, woocommerce addon, woocommerce plugin, woocommerce german addon, woocommerce germany addon, woocommerce dhl, dhl, shipments
4
+ Requires at least: 5.4
5
  Tested up to: 5.5
6
+ WC requires at least: 3.9
7
+ WC tested up to: 4.5
8
+ Stable tag: 3.2.0
9
  Requires PHP: 5.6
10
  License: GPLv3
11
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
59
  Most of the changes are made by using Hooks & Filters so that our plugin is compatible to almost every Theme.
60
 
61
  = Pro: WooCommerce PDF invoices & packing slips =
62
+ As a Pro User of Germanized you may automatically or manually create PDF Invoices and Packing Slips for your orders. Adjust your document layout by using the built-in visual document editor.
63
+ Either export your documents (CSV, zip) for your tax consultant manually or use our integrations to transmit your documents to your lexoffice or sevDesk account.
64
  Learn more about [PDF Invoices for WooCommerce](https://vendidero.de/woocommerce-germanized/features#accounting "WooCommerce PDF Invoices")
65
 
66
  Furthermore you may attach legally relevant pages (e.g. Terms & Conditions) as PDF documents to specific WooCommerce emails instead of using plain text.
102
  = Minimal Requirments =
103
 
104
  * WordPress 4.9 or newer
105
+ * WooCommerce 3.9 (newest version recommended)
106
  * PHP Version 5.6 or newer
107
 
108
  = Automatic Installation =
189
  5. Manage shipments for orders
190
 
191
  == Changelog ==
192
+ = 3.2.0 =
193
+ * Feature: WC 4.5 support
194
+ * Improvement: WPML compatibility
195
+ * Improvement: Tax-exclusive price calculation for vouchers
196
+ * Improvement: Added woocommerce_checkout_after_terms_and_condtions hook to T&C template
197
+ * Improvement: DOI check signup disable on woocommerce_checkout_init
198
+
199
  = 3.1.12 =
200
  * Feature: WC 4.4 support
201
  * Feature: WP 5.5 support
templates/checkout/terms.php CHANGED
@@ -12,7 +12,7 @@
12
  *
13
  * @see https://github.com/vendidero/woocommerce-germanized/wiki/Overriding-Germanized-Templates
14
  * @package Germanized/Templates
15
- * @version 1.7.1
16
  */
17
  if ( ! defined( 'ABSPATH' ) ) {
18
  exit;
@@ -66,4 +66,6 @@ if ( apply_filters( 'woocommerce_germanized_checkout_show_terms', true ) ) : ?>
66
  </label>
67
  </p>
68
 
 
 
69
  <?php endif; ?>
12
  *
13
  * @see https://github.com/vendidero/woocommerce-germanized/wiki/Overriding-Germanized-Templates
14
  * @package Germanized/Templates
15
+ * @version 1.8.0
16
  */
17
  if ( ! defined( 'ABSPATH' ) ) {
18
  exit;
66
  </label>
67
  </p>
68
 
69
+ <?php do_action( 'woocommerce_checkout_after_terms_and_conditions' ); ?>
70
+
71
  <?php endif; ?>
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit1d52f3afd6e88a38ae89a8c2c1a8b8d0::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit2d418eee0196ff349eee537d7be916b1::getLoader();
vendor/autoload_packages.php CHANGED
@@ -120,10 +120,10 @@ if ( ! function_exists( __NAMESPACE__ . '\autoloader' ) ) {
120
  /**
121
  * Prepare all the classes for autoloading.
122
  */
123
- function enqueue_packages_b17f6f1514330c0da4b35b55a350ffbc() {
124
  $class_map = require_once dirname( __FILE__ ) . '/composer/autoload_classmap_package.php';
125
  foreach ( $class_map as $class_name => $class_info ) {
126
  enqueue_package_class( $class_name, $class_info['version'], $class_info['path'] );
127
  }
128
  }
129
- enqueue_packages_b17f6f1514330c0da4b35b55a350ffbc();
120
  /**
121
  * Prepare all the classes for autoloading.
122
  */
123
+ function enqueue_packages_647a70bcde8fd3cc90ed463f8bfc3c3b() {
124
  $class_map = require_once dirname( __FILE__ ) . '/composer/autoload_classmap_package.php';
125
  foreach ( $class_map as $class_name => $class_info ) {
126
  enqueue_package_class( $class_name, $class_info['version'], $class_info['path'] );
127
  }
128
  }
129
+ enqueue_packages_647a70bcde8fd3cc90ed463f8bfc3c3b();
vendor/composer/autoload_classmap_package.php CHANGED
@@ -7,191 +7,191 @@ $baseDir = dirname($vendorDir);
7
 
8
  return array(
9
  'setasign\\Fpdi\\Tcpdf\\Fpdi' => array(
10
- 'version' => '2.3.3.0',
11
  'path' => $vendorDir . '/setasign/fpdi/src/Tcpdf/Fpdi.php'
12
  ),
13
  'setasign\\Fpdi\\Tfpdf\\Fpdi' => array(
14
- 'version' => '2.3.3.0',
15
  'path' => $vendorDir . '/setasign/fpdi/src/Tfpdf/Fpdi.php'
16
  ),
17
  'setasign\\Fpdi\\Tfpdf\\FpdfTpl' => array(
18
- 'version' => '2.3.3.0',
19
  'path' => $vendorDir . '/setasign/fpdi/src/Tfpdf/FpdfTpl.php'
20
  ),
21
  'setasign\\Fpdi\\Fpdi' => array(
22
- 'version' => '2.3.3.0',
23
  'path' => $vendorDir . '/setasign/fpdi/src/Fpdi.php'
24
  ),
25
  'setasign\\Fpdi\\FpdfTplTrait' => array(
26
- 'version' => '2.3.3.0',
27
  'path' => $vendorDir . '/setasign/fpdi/src/FpdfTplTrait.php'
28
  ),
29
  'setasign\\Fpdi\\FpdiTrait' => array(
30
- 'version' => '2.3.3.0',
31
  'path' => $vendorDir . '/setasign/fpdi/src/FpdiTrait.php'
32
  ),
33
  'setasign\\Fpdi\\TcpdfFpdi' => array(
34
- 'version' => '2.3.3.0',
35
  'path' => $vendorDir . '/setasign/fpdi/src/TcpdfFpdi.php'
36
  ),
37
  'setasign\\Fpdi\\PdfParser\\StreamReader' => array(
38
- 'version' => '2.3.3.0',
39
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/StreamReader.php'
40
  ),
41
  'setasign\\Fpdi\\PdfParser\\PdfParserException' => array(
42
- 'version' => '2.3.3.0',
43
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/PdfParserException.php'
44
  ),
45
  'setasign\\Fpdi\\PdfParser\\CrossReference\\ReaderInterface' => array(
46
- 'version' => '2.3.3.0',
47
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php'
48
  ),
49
  'setasign\\Fpdi\\PdfParser\\CrossReference\\CrossReferenceException' => array(
50
- 'version' => '2.3.3.0',
51
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php'
52
  ),
53
  'setasign\\Fpdi\\PdfParser\\CrossReference\\LineReader' => array(
54
- 'version' => '2.3.3.0',
55
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php'
56
  ),
57
  'setasign\\Fpdi\\PdfParser\\CrossReference\\AbstractReader' => array(
58
- 'version' => '2.3.3.0',
59
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php'
60
  ),
61
  'setasign\\Fpdi\\PdfParser\\CrossReference\\CrossReference' => array(
62
- 'version' => '2.3.3.0',
63
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php'
64
  ),
65
  'setasign\\Fpdi\\PdfParser\\CrossReference\\FixedReader' => array(
66
- 'version' => '2.3.3.0',
67
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/FixedReader.php'
68
  ),
69
  'setasign\\Fpdi\\PdfParser\\PdfParser' => array(
70
- 'version' => '2.3.3.0',
71
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/PdfParser.php'
72
  ),
73
  'setasign\\Fpdi\\PdfParser\\Type\\PdfStream' => array(
74
- 'version' => '2.3.3.0',
75
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfStream.php'
76
  ),
77
  'setasign\\Fpdi\\PdfParser\\Type\\PdfIndirectObjectReference' => array(
78
- 'version' => '2.3.3.0',
79
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php'
80
  ),
81
  'setasign\\Fpdi\\PdfParser\\Type\\PdfHexString' => array(
82
- 'version' => '2.3.3.0',
83
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfHexString.php'
84
  ),
85
  'setasign\\Fpdi\\PdfParser\\Type\\PdfBoolean' => array(
86
- 'version' => '2.3.3.0',
87
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php'
88
  ),
89
  'setasign\\Fpdi\\PdfParser\\Type\\PdfType' => array(
90
- 'version' => '2.3.3.0',
91
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfType.php'
92
  ),
93
  'setasign\\Fpdi\\PdfParser\\Type\\PdfNumeric' => array(
94
- 'version' => '2.3.3.0',
95
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfNumeric.php'
96
  ),
97
  'setasign\\Fpdi\\PdfParser\\Type\\PdfArray' => array(
98
- 'version' => '2.3.3.0',
99
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfArray.php'
100
  ),
101
  'setasign\\Fpdi\\PdfParser\\Type\\PdfName' => array(
102
- 'version' => '2.3.3.0',
103
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfName.php'
104
  ),
105
  'setasign\\Fpdi\\PdfParser\\Type\\PdfTypeException' => array(
106
- 'version' => '2.3.3.0',
107
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php'
108
  ),
109
  'setasign\\Fpdi\\PdfParser\\Type\\PdfString' => array(
110
- 'version' => '2.3.3.0',
111
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfString.php'
112
  ),
113
  'setasign\\Fpdi\\PdfParser\\Type\\PdfNull' => array(
114
- 'version' => '2.3.3.0',
115
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfNull.php'
116
  ),
117
  'setasign\\Fpdi\\PdfParser\\Type\\PdfToken' => array(
118
- 'version' => '2.3.3.0',
119
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfToken.php'
120
  ),
121
  'setasign\\Fpdi\\PdfParser\\Type\\PdfDictionary' => array(
122
- 'version' => '2.3.3.0',
123
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php'
124
  ),
125
  'setasign\\Fpdi\\PdfParser\\Type\\PdfIndirectObject' => array(
126
- 'version' => '2.3.3.0',
127
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php'
128
  ),
129
  'setasign\\Fpdi\\PdfParser\\Tokenizer' => array(
130
- 'version' => '2.3.3.0',
131
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Tokenizer.php'
132
  ),
133
  'setasign\\Fpdi\\PdfParser\\Filter\\FilterInterface' => array(
134
- 'version' => '2.3.3.0',
135
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FilterInterface.php'
136
  ),
137
  'setasign\\Fpdi\\PdfParser\\Filter\\Ascii85Exception' => array(
138
- 'version' => '2.3.3.0',
139
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php'
140
  ),
141
  'setasign\\Fpdi\\PdfParser\\Filter\\FlateException' => array(
142
- 'version' => '2.3.3.0',
143
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FlateException.php'
144
  ),
145
  'setasign\\Fpdi\\PdfParser\\Filter\\Flate' => array(
146
- 'version' => '2.3.3.0',
147
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Flate.php'
148
  ),
149
  'setasign\\Fpdi\\PdfParser\\Filter\\FilterException' => array(
150
- 'version' => '2.3.3.0',
151
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FilterException.php'
152
  ),
153
  'setasign\\Fpdi\\PdfParser\\Filter\\Ascii85' => array(
154
- 'version' => '2.3.3.0',
155
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Ascii85.php'
156
  ),
157
  'setasign\\Fpdi\\PdfParser\\Filter\\LzwException' => array(
158
- 'version' => '2.3.3.0',
159
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/LzwException.php'
160
  ),
161
  'setasign\\Fpdi\\PdfParser\\Filter\\AsciiHex' => array(
162
- 'version' => '2.3.3.0',
163
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/AsciiHex.php'
164
  ),
165
  'setasign\\Fpdi\\PdfParser\\Filter\\Lzw' => array(
166
- 'version' => '2.3.3.0',
167
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Lzw.php'
168
  ),
169
  'setasign\\Fpdi\\FpdiException' => array(
170
- 'version' => '2.3.3.0',
171
  'path' => $vendorDir . '/setasign/fpdi/src/FpdiException.php'
172
  ),
173
  'setasign\\Fpdi\\PdfReader\\PdfReader' => array(
174
- 'version' => '2.3.3.0',
175
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PdfReader.php'
176
  ),
177
  'setasign\\Fpdi\\PdfReader\\PageBoundaries' => array(
178
- 'version' => '2.3.3.0',
179
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PageBoundaries.php'
180
  ),
181
  'setasign\\Fpdi\\PdfReader\\DataStructure\\Rectangle' => array(
182
- 'version' => '2.3.3.0',
183
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/DataStructure/Rectangle.php'
184
  ),
185
  'setasign\\Fpdi\\PdfReader\\PdfReaderException' => array(
186
- 'version' => '2.3.3.0',
187
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PdfReaderException.php'
188
  ),
189
  'setasign\\Fpdi\\PdfReader\\Page' => array(
190
- 'version' => '2.3.3.0',
191
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/Page.php'
192
  ),
193
  'setasign\\Fpdi\\FpdfTpl' => array(
194
- 'version' => '2.3.3.0',
195
  'path' => $vendorDir . '/setasign/fpdi/src/FpdfTpl.php'
196
  ),
197
  'Vendidero\\TrustedShops\\Package' => array(
@@ -199,155 +199,155 @@ return array(
199
  'path' => $baseDir . '/packages/woocommerce-trusted-shops/src/Package.php'
200
  ),
201
  'Vendidero\\Germanized\\Shipments\\Shipment' => array(
202
- 'version' => '1.2.10.0',
203
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Shipment.php'
204
  ),
205
  'Vendidero\\Germanized\\Shipments\\Install' => array(
206
- 'version' => '1.2.10.0',
207
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Install.php'
208
  ),
209
  'Vendidero\\Germanized\\Shipments\\SimpleShipment' => array(
210
- 'version' => '1.2.10.0',
211
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/SimpleShipment.php'
212
  ),
213
  'Vendidero\\Germanized\\Shipments\\ShippingProviderMethod' => array(
214
- 'version' => '1.2.10.0',
215
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviderMethod.php'
216
  ),
217
  'Vendidero\\Germanized\\Shipments\\Package' => array(
218
- 'version' => '1.2.10.0',
219
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Package.php'
220
  ),
221
  'Vendidero\\Germanized\\Shipments\\Order' => array(
222
- 'version' => '1.2.10.0',
223
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Order.php'
224
  ),
225
  'Vendidero\\Germanized\\Shipments\\DataStores\\Shipment' => array(
226
- 'version' => '1.2.10.0',
227
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/Shipment.php'
228
  ),
229
  'Vendidero\\Germanized\\Shipments\\DataStores\\ShippingProvider' => array(
230
- 'version' => '1.2.10.0',
231
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/ShippingProvider.php'
232
  ),
233
  'Vendidero\\Germanized\\Shipments\\DataStores\\ShipmentItem' => array(
234
- 'version' => '1.2.10.0',
235
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php'
236
  ),
237
  'Vendidero\\Germanized\\Shipments\\Ajax' => array(
238
- 'version' => '1.2.10.0',
239
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Ajax.php'
240
  ),
241
  'Vendidero\\Germanized\\Shipments\\ReturnShipment' => array(
242
- 'version' => '1.2.10.0',
243
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ReturnShipment.php'
244
  ),
245
  'Vendidero\\Germanized\\Shipments\\ShippingProvider' => array(
246
- 'version' => '1.2.10.0',
247
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProvider.php'
248
  ),
249
  'Vendidero\\Germanized\\Shipments\\AddressSplitter' => array(
250
- 'version' => '1.2.10.0',
251
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/AddressSplitter.php'
252
  ),
253
  'Vendidero\\Germanized\\Shipments\\Admin\\BulkLabel' => array(
254
- 'version' => '1.2.10.0',
255
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/BulkLabel.php'
256
  ),
257
  'Vendidero\\Germanized\\Shipments\\Admin\\Settings' => array(
258
- 'version' => '1.2.10.0',
259
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Settings.php'
260
  ),
261
  'Vendidero\\Germanized\\Shipments\\Admin\\MetaBox' => array(
262
- 'version' => '1.2.10.0',
263
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/MetaBox.php'
264
  ),
265
  'Vendidero\\Germanized\\Shipments\\Admin\\DownloadHandler' => array(
266
- 'version' => '1.2.10.0',
267
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/DownloadHandler.php'
268
  ),
269
  'Vendidero\\Germanized\\Shipments\\Admin\\ReturnTable' => array(
270
- 'version' => '1.2.10.0',
271
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/ReturnTable.php'
272
  ),
273
  'Vendidero\\Germanized\\Shipments\\Admin\\BulkActionHandler' => array(
274
- 'version' => '1.2.10.0',
275
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/BulkActionHandler.php'
276
  ),
277
  'Vendidero\\Germanized\\Shipments\\Admin\\Admin' => array(
278
- 'version' => '1.2.10.0',
279
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Admin.php'
280
  ),
281
  'Vendidero\\Germanized\\Shipments\\Admin\\Table' => array(
282
- 'version' => '1.2.10.0',
283
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Table.php'
284
  ),
285
  'Vendidero\\Germanized\\Shipments\\ShipmentQuery' => array(
286
- 'version' => '1.2.10.0',
287
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentQuery.php'
288
  ),
289
  'Vendidero\\Germanized\\Shipments\\WPMLHelper' => array(
290
- 'version' => '1.2.10.0',
291
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/WPMLHelper.php'
292
  ),
293
  'Vendidero\\Germanized\\Shipments\\ShipmentReturnItem' => array(
294
- 'version' => '1.2.10.0',
295
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentReturnItem.php'
296
  ),
297
  'Vendidero\\Germanized\\Shipments\\FormHandler' => array(
298
- 'version' => '1.2.10.0',
299
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/FormHandler.php'
300
  ),
301
  'Vendidero\\Germanized\\Shipments\\PDFMerger' => array(
302
- 'version' => '1.2.10.0',
303
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/PDFMerger.php'
304
  ),
305
  'Vendidero\\Germanized\\Shipments\\ShipmentFactory' => array(
306
- 'version' => '1.2.10.0',
307
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentFactory.php'
308
  ),
309
  'Vendidero\\Germanized\\Shipments\\ShippingProviderMethodPlaceholder' => array(
310
- 'version' => '1.2.10.0',
311
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviderMethodPlaceholder.php'
312
  ),
313
  'Vendidero\\Germanized\\Shipments\\Automation' => array(
314
- 'version' => '1.2.10.0',
315
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Automation.php'
316
  ),
317
  'Vendidero\\Germanized\\Shipments\\ShippingProviders' => array(
318
- 'version' => '1.2.10.0',
319
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviders.php'
320
  ),
321
  'Vendidero\\Germanized\\Shipments\\Api' => array(
322
- 'version' => '1.2.10.0',
323
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Api.php'
324
  ),
325
  'Vendidero\\Germanized\\Shipments\\ShipmentItem' => array(
326
- 'version' => '1.2.10.0',
327
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentItem.php'
328
  ),
329
  'Vendidero\\Germanized\\Shipments\\Validation' => array(
330
- 'version' => '1.2.10.0',
331
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Validation.php'
332
  ),
333
  'Vendidero\\Germanized\\Shipments\\Emails' => array(
334
- 'version' => '1.2.10.0',
335
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Emails.php'
336
  ),
337
  'Vendidero\\Germanized\\Shipments\\PDFSplitter' => array(
338
- 'version' => '1.2.10.0',
339
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/PDFSplitter.php'
340
  ),
341
  'Vendidero\\Germanized\\Shipments\\ReturnReason' => array(
342
- 'version' => '1.2.10.0',
343
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ReturnReason.php'
344
  ),
345
  'Vendidero\\Germanized\\Shipments\\Interfaces\\ShipmentReturnLabel' => array(
346
- 'version' => '1.2.10.0',
347
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Interfaces/ShipmenReturnLabel.php'
348
  ),
349
  'Vendidero\\Germanized\\Shipments\\Interfaces\\ShipmentLabel' => array(
350
- 'version' => '1.2.10.0',
351
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Interfaces/ShipmentLabel.php'
352
  ),
353
  'Vendidero\\Germanized\\DHL\\ShippingProviderDHL' => array(
7
 
8
  return array(
9
  'setasign\\Fpdi\\Tcpdf\\Fpdi' => array(
10
+ 'version' => '2.3.4.0',
11
  'path' => $vendorDir . '/setasign/fpdi/src/Tcpdf/Fpdi.php'
12
  ),
13
  'setasign\\Fpdi\\Tfpdf\\Fpdi' => array(
14
+ 'version' => '2.3.4.0',
15
  'path' => $vendorDir . '/setasign/fpdi/src/Tfpdf/Fpdi.php'
16
  ),
17
  'setasign\\Fpdi\\Tfpdf\\FpdfTpl' => array(
18
+ 'version' => '2.3.4.0',
19
  'path' => $vendorDir . '/setasign/fpdi/src/Tfpdf/FpdfTpl.php'
20
  ),
21
  'setasign\\Fpdi\\Fpdi' => array(
22
+ 'version' => '2.3.4.0',
23
  'path' => $vendorDir . '/setasign/fpdi/src/Fpdi.php'
24
  ),
25
  'setasign\\Fpdi\\FpdfTplTrait' => array(
26
+ 'version' => '2.3.4.0',
27
  'path' => $vendorDir . '/setasign/fpdi/src/FpdfTplTrait.php'
28
  ),
29
  'setasign\\Fpdi\\FpdiTrait' => array(
30
+ 'version' => '2.3.4.0',
31
  'path' => $vendorDir . '/setasign/fpdi/src/FpdiTrait.php'
32
  ),
33
  'setasign\\Fpdi\\TcpdfFpdi' => array(
34
+ 'version' => '2.3.4.0',
35
  'path' => $vendorDir . '/setasign/fpdi/src/TcpdfFpdi.php'
36
  ),
37
  'setasign\\Fpdi\\PdfParser\\StreamReader' => array(
38
+ 'version' => '2.3.4.0',
39
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/StreamReader.php'
40
  ),
41
  'setasign\\Fpdi\\PdfParser\\PdfParserException' => array(
42
+ 'version' => '2.3.4.0',
43
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/PdfParserException.php'
44
  ),
45
  'setasign\\Fpdi\\PdfParser\\CrossReference\\ReaderInterface' => array(
46
+ 'version' => '2.3.4.0',
47
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php'
48
  ),
49
  'setasign\\Fpdi\\PdfParser\\CrossReference\\CrossReferenceException' => array(
50
+ 'version' => '2.3.4.0',
51
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php'
52
  ),
53
  'setasign\\Fpdi\\PdfParser\\CrossReference\\LineReader' => array(
54
+ 'version' => '2.3.4.0',
55
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php'
56
  ),
57
  'setasign\\Fpdi\\PdfParser\\CrossReference\\AbstractReader' => array(
58
+ 'version' => '2.3.4.0',
59
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php'
60
  ),
61
  'setasign\\Fpdi\\PdfParser\\CrossReference\\CrossReference' => array(
62
+ 'version' => '2.3.4.0',
63
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php'
64
  ),
65
  'setasign\\Fpdi\\PdfParser\\CrossReference\\FixedReader' => array(
66
+ 'version' => '2.3.4.0',
67
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/CrossReference/FixedReader.php'
68
  ),
69
  'setasign\\Fpdi\\PdfParser\\PdfParser' => array(
70
+ 'version' => '2.3.4.0',
71
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/PdfParser.php'
72
  ),
73
  'setasign\\Fpdi\\PdfParser\\Type\\PdfStream' => array(
74
+ 'version' => '2.3.4.0',
75
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfStream.php'
76
  ),
77
  'setasign\\Fpdi\\PdfParser\\Type\\PdfIndirectObjectReference' => array(
78
+ 'version' => '2.3.4.0',
79
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php'
80
  ),
81
  'setasign\\Fpdi\\PdfParser\\Type\\PdfHexString' => array(
82
+ 'version' => '2.3.4.0',
83
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfHexString.php'
84
  ),
85
  'setasign\\Fpdi\\PdfParser\\Type\\PdfBoolean' => array(
86
+ 'version' => '2.3.4.0',
87
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php'
88
  ),
89
  'setasign\\Fpdi\\PdfParser\\Type\\PdfType' => array(
90
+ 'version' => '2.3.4.0',
91
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfType.php'
92
  ),
93
  'setasign\\Fpdi\\PdfParser\\Type\\PdfNumeric' => array(
94
+ 'version' => '2.3.4.0',
95
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfNumeric.php'
96
  ),
97
  'setasign\\Fpdi\\PdfParser\\Type\\PdfArray' => array(
98
+ 'version' => '2.3.4.0',
99
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfArray.php'
100
  ),
101
  'setasign\\Fpdi\\PdfParser\\Type\\PdfName' => array(
102
+ 'version' => '2.3.4.0',
103
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfName.php'
104
  ),
105
  'setasign\\Fpdi\\PdfParser\\Type\\PdfTypeException' => array(
106
+ 'version' => '2.3.4.0',
107
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php'
108
  ),
109
  'setasign\\Fpdi\\PdfParser\\Type\\PdfString' => array(
110
+ 'version' => '2.3.4.0',
111
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfString.php'
112
  ),
113
  'setasign\\Fpdi\\PdfParser\\Type\\PdfNull' => array(
114
+ 'version' => '2.3.4.0',
115
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfNull.php'
116
  ),
117
  'setasign\\Fpdi\\PdfParser\\Type\\PdfToken' => array(
118
+ 'version' => '2.3.4.0',
119
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfToken.php'
120
  ),
121
  'setasign\\Fpdi\\PdfParser\\Type\\PdfDictionary' => array(
122
+ 'version' => '2.3.4.0',
123
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php'
124
  ),
125
  'setasign\\Fpdi\\PdfParser\\Type\\PdfIndirectObject' => array(
126
+ 'version' => '2.3.4.0',
127
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php'
128
  ),
129
  'setasign\\Fpdi\\PdfParser\\Tokenizer' => array(
130
+ 'version' => '2.3.4.0',
131
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Tokenizer.php'
132
  ),
133
  'setasign\\Fpdi\\PdfParser\\Filter\\FilterInterface' => array(
134
+ 'version' => '2.3.4.0',
135
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FilterInterface.php'
136
  ),
137
  'setasign\\Fpdi\\PdfParser\\Filter\\Ascii85Exception' => array(
138
+ 'version' => '2.3.4.0',
139
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php'
140
  ),
141
  'setasign\\Fpdi\\PdfParser\\Filter\\FlateException' => array(
142
+ 'version' => '2.3.4.0',
143
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FlateException.php'
144
  ),
145
  'setasign\\Fpdi\\PdfParser\\Filter\\Flate' => array(
146
+ 'version' => '2.3.4.0',
147
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Flate.php'
148
  ),
149
  'setasign\\Fpdi\\PdfParser\\Filter\\FilterException' => array(
150
+ 'version' => '2.3.4.0',
151
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/FilterException.php'
152
  ),
153
  'setasign\\Fpdi\\PdfParser\\Filter\\Ascii85' => array(
154
+ 'version' => '2.3.4.0',
155
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Ascii85.php'
156
  ),
157
  'setasign\\Fpdi\\PdfParser\\Filter\\LzwException' => array(
158
+ 'version' => '2.3.4.0',
159
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/LzwException.php'
160
  ),
161
  'setasign\\Fpdi\\PdfParser\\Filter\\AsciiHex' => array(
162
+ 'version' => '2.3.4.0',
163
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/AsciiHex.php'
164
  ),
165
  'setasign\\Fpdi\\PdfParser\\Filter\\Lzw' => array(
166
+ 'version' => '2.3.4.0',
167
  'path' => $vendorDir . '/setasign/fpdi/src/PdfParser/Filter/Lzw.php'
168
  ),
169
  'setasign\\Fpdi\\FpdiException' => array(
170
+ 'version' => '2.3.4.0',
171
  'path' => $vendorDir . '/setasign/fpdi/src/FpdiException.php'
172
  ),
173
  'setasign\\Fpdi\\PdfReader\\PdfReader' => array(
174
+ 'version' => '2.3.4.0',
175
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PdfReader.php'
176
  ),
177
  'setasign\\Fpdi\\PdfReader\\PageBoundaries' => array(
178
+ 'version' => '2.3.4.0',
179
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PageBoundaries.php'
180
  ),
181
  'setasign\\Fpdi\\PdfReader\\DataStructure\\Rectangle' => array(
182
+ 'version' => '2.3.4.0',
183
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/DataStructure/Rectangle.php'
184
  ),
185
  'setasign\\Fpdi\\PdfReader\\PdfReaderException' => array(
186
+ 'version' => '2.3.4.0',
187
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/PdfReaderException.php'
188
  ),
189
  'setasign\\Fpdi\\PdfReader\\Page' => array(
190
+ 'version' => '2.3.4.0',
191
  'path' => $vendorDir . '/setasign/fpdi/src/PdfReader/Page.php'
192
  ),
193
  'setasign\\Fpdi\\FpdfTpl' => array(
194
+ 'version' => '2.3.4.0',
195
  'path' => $vendorDir . '/setasign/fpdi/src/FpdfTpl.php'
196
  ),
197
  'Vendidero\\TrustedShops\\Package' => array(
199
  'path' => $baseDir . '/packages/woocommerce-trusted-shops/src/Package.php'
200
  ),
201
  'Vendidero\\Germanized\\Shipments\\Shipment' => array(
202
+ 'version' => '1.3.0.0',
203
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Shipment.php'
204
  ),
205
  'Vendidero\\Germanized\\Shipments\\Install' => array(
206
+ 'version' => '1.3.0.0',
207
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Install.php'
208
  ),
209
  'Vendidero\\Germanized\\Shipments\\SimpleShipment' => array(
210
+ 'version' => '1.3.0.0',
211
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/SimpleShipment.php'
212
  ),
213
  'Vendidero\\Germanized\\Shipments\\ShippingProviderMethod' => array(
214
+ 'version' => '1.3.0.0',
215
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviderMethod.php'
216
  ),
217
  'Vendidero\\Germanized\\Shipments\\Package' => array(
218
+ 'version' => '1.3.0.0',
219
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Package.php'
220
  ),
221
  'Vendidero\\Germanized\\Shipments\\Order' => array(
222
+ 'version' => '1.3.0.0',
223
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Order.php'
224
  ),
225
  'Vendidero\\Germanized\\Shipments\\DataStores\\Shipment' => array(
226
+ 'version' => '1.3.0.0',
227
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/Shipment.php'
228
  ),
229
  'Vendidero\\Germanized\\Shipments\\DataStores\\ShippingProvider' => array(
230
+ 'version' => '1.3.0.0',
231
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/ShippingProvider.php'
232
  ),
233
  'Vendidero\\Germanized\\Shipments\\DataStores\\ShipmentItem' => array(
234
+ 'version' => '1.3.0.0',
235
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/DataStores/ShipmentItem.php'
236
  ),
237
  'Vendidero\\Germanized\\Shipments\\Ajax' => array(
238
+ 'version' => '1.3.0.0',
239
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Ajax.php'
240
  ),
241
  'Vendidero\\Germanized\\Shipments\\ReturnShipment' => array(
242
+ 'version' => '1.3.0.0',
243
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ReturnShipment.php'
244
  ),
245
  'Vendidero\\Germanized\\Shipments\\ShippingProvider' => array(
246
+ 'version' => '1.3.0.0',
247
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProvider.php'
248
  ),
249
  'Vendidero\\Germanized\\Shipments\\AddressSplitter' => array(
250
+ 'version' => '1.3.0.0',
251
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/AddressSplitter.php'
252
  ),
253
  'Vendidero\\Germanized\\Shipments\\Admin\\BulkLabel' => array(
254
+ 'version' => '1.3.0.0',
255
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/BulkLabel.php'
256
  ),
257
  'Vendidero\\Germanized\\Shipments\\Admin\\Settings' => array(
258
+ 'version' => '1.3.0.0',
259
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Settings.php'
260
  ),
261
  'Vendidero\\Germanized\\Shipments\\Admin\\MetaBox' => array(
262
+ 'version' => '1.3.0.0',
263
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/MetaBox.php'
264
  ),
265
  'Vendidero\\Germanized\\Shipments\\Admin\\DownloadHandler' => array(
266
+ 'version' => '1.3.0.0',
267
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/DownloadHandler.php'
268
  ),
269
  'Vendidero\\Germanized\\Shipments\\Admin\\ReturnTable' => array(
270
+ 'version' => '1.3.0.0',
271
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/ReturnTable.php'
272
  ),
273
  'Vendidero\\Germanized\\Shipments\\Admin\\BulkActionHandler' => array(
274
+ 'version' => '1.3.0.0',
275
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/BulkActionHandler.php'
276
  ),
277
  'Vendidero\\Germanized\\Shipments\\Admin\\Admin' => array(
278
+ 'version' => '1.3.0.0',
279
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Admin.php'
280
  ),
281
  'Vendidero\\Germanized\\Shipments\\Admin\\Table' => array(
282
+ 'version' => '1.3.0.0',
283
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Admin/Table.php'
284
  ),
285
  'Vendidero\\Germanized\\Shipments\\ShipmentQuery' => array(
286
+ 'version' => '1.3.0.0',
287
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentQuery.php'
288
  ),
289
  'Vendidero\\Germanized\\Shipments\\WPMLHelper' => array(
290
+ 'version' => '1.3.0.0',
291
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/WPMLHelper.php'
292
  ),
293
  'Vendidero\\Germanized\\Shipments\\ShipmentReturnItem' => array(
294
+ 'version' => '1.3.0.0',
295
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentReturnItem.php'
296
  ),
297
  'Vendidero\\Germanized\\Shipments\\FormHandler' => array(
298
+ 'version' => '1.3.0.0',
299
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/FormHandler.php'
300
  ),
301
  'Vendidero\\Germanized\\Shipments\\PDFMerger' => array(
302
+ 'version' => '1.3.0.0',
303
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/PDFMerger.php'
304
  ),
305
  'Vendidero\\Germanized\\Shipments\\ShipmentFactory' => array(
306
+ 'version' => '1.3.0.0',
307
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentFactory.php'
308
  ),
309
  'Vendidero\\Germanized\\Shipments\\ShippingProviderMethodPlaceholder' => array(
310
+ 'version' => '1.3.0.0',
311
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviderMethodPlaceholder.php'
312
  ),
313
  'Vendidero\\Germanized\\Shipments\\Automation' => array(
314
+ 'version' => '1.3.0.0',
315
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Automation.php'
316
  ),
317
  'Vendidero\\Germanized\\Shipments\\ShippingProviders' => array(
318
+ 'version' => '1.3.0.0',
319
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShippingProviders.php'
320
  ),
321
  'Vendidero\\Germanized\\Shipments\\Api' => array(
322
+ 'version' => '1.3.0.0',
323
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Api.php'
324
  ),
325
  'Vendidero\\Germanized\\Shipments\\ShipmentItem' => array(
326
+ 'version' => '1.3.0.0',
327
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ShipmentItem.php'
328
  ),
329
  'Vendidero\\Germanized\\Shipments\\Validation' => array(
330
+ 'version' => '1.3.0.0',
331
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Validation.php'
332
  ),
333
  'Vendidero\\Germanized\\Shipments\\Emails' => array(
334
+ 'version' => '1.3.0.0',
335
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Emails.php'
336
  ),
337
  'Vendidero\\Germanized\\Shipments\\PDFSplitter' => array(
338
+ 'version' => '1.3.0.0',
339
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/PDFSplitter.php'
340
  ),
341
  'Vendidero\\Germanized\\Shipments\\ReturnReason' => array(
342
+ 'version' => '1.3.0.0',
343
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/ReturnReason.php'
344
  ),
345
  'Vendidero\\Germanized\\Shipments\\Interfaces\\ShipmentReturnLabel' => array(
346
+ 'version' => '1.3.0.0',
347
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Interfaces/ShipmenReturnLabel.php'
348
  ),
349
  'Vendidero\\Germanized\\Shipments\\Interfaces\\ShipmentLabel' => array(
350
+ 'version' => '1.3.0.0',
351
  'path' => $baseDir . '/packages/woocommerce-germanized-shipments/src/Interfaces/ShipmentLabel.php'
352
  ),
353
  'Vendidero\\Germanized\\DHL\\ShippingProviderDHL' => array(
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit1d52f3afd6e88a38ae89a8c2c1a8b8d0
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit1d52f3afd6e88a38ae89a8c2c1a8b8d0
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit1d52f3afd6e88a38ae89a8c2c1a8b8d0', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit1d52f3afd6e88a38ae89a8c2c1a8b8d0', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit2d418eee0196ff349eee537d7be916b1
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit2d418eee0196ff349eee537d7be916b1', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit2d418eee0196ff349eee537d7be916b1', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit2d418eee0196ff349eee537d7be916b1::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  's' =>
@@ -66,9 +66,9 @@ class ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0
66
  public static function getInitializer(ClassLoader $loader)
67
  {
68
  return \Closure::bind(function () use ($loader) {
69
- $loader->prefixLengthsPsr4 = ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0::$prefixLengthsPsr4;
70
- $loader->prefixDirsPsr4 = ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0::$prefixDirsPsr4;
71
- $loader->classMap = ComposerStaticInit1d52f3afd6e88a38ae89a8c2c1a8b8d0::$classMap;
72
 
73
  }, null, ClassLoader::class);
74
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit2d418eee0196ff349eee537d7be916b1
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  's' =>
66
  public static function getInitializer(ClassLoader $loader)
67
  {
68
  return \Closure::bind(function () use ($loader) {
69
+ $loader->prefixLengthsPsr4 = ComposerStaticInit2d418eee0196ff349eee537d7be916b1::$prefixLengthsPsr4;
70
+ $loader->prefixDirsPsr4 = ComposerStaticInit2d418eee0196ff349eee537d7be916b1::$prefixDirsPsr4;
71
+ $loader->classMap = ComposerStaticInit2d418eee0196ff349eee537d7be916b1::$classMap;
72
 
73
  }, null, ClassLoader::class);
74
  }
vendor/composer/installed.json CHANGED
@@ -204,17 +204,17 @@
204
  },
205
  {
206
  "name": "setasign/fpdi",
207
- "version": "v2.3.3",
208
- "version_normalized": "2.3.3.0",
209
  "source": {
210
  "type": "git",
211
  "url": "https://github.com/Setasign/FPDI.git",
212
- "reference": "50c388860a73191e010810ed57dbed795578e867"
213
  },
214
  "dist": {
215
  "type": "zip",
216
- "url": "https://api.github.com/repos/Setasign/FPDI/zipball/50c388860a73191e010810ed57dbed795578e867",
217
- "reference": "50c388860a73191e010810ed57dbed795578e867",
218
  "shasum": ""
219
  },
220
  "require": {
@@ -228,12 +228,13 @@
228
  "phpunit/phpunit": "~5.7",
229
  "setasign/fpdf": "~1.8",
230
  "setasign/tfpdf": "1.31",
 
231
  "tecnickcom/tcpdf": "~6.2"
232
  },
233
  "suggest": {
234
  "setasign/fpdf": "FPDI will extend this class but as it is also possible to use TCPDF or tFPDF as an alternative. There's no fixed dependency configured."
235
  },
236
- "time": "2020-04-28T12:40:35+00:00",
237
  "type": "library",
238
  "installation-source": "dist",
239
  "autoload": {
@@ -359,17 +360,17 @@
359
  },
360
  {
361
  "name": "vendidero/woocommerce-germanized-shipments",
362
- "version": "v1.2.10",
363
- "version_normalized": "1.2.10.0",
364
  "source": {
365
  "type": "git",
366
  "url": "https://github.com/vendidero/woocommerce-germanized-shipments.git",
367
- "reference": "151ba0264d935203d59617008a3572e50a39b33c"
368
  },
369
  "dist": {
370
  "type": "zip",
371
- "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-shipments/zipball/151ba0264d935203d59617008a3572e50a39b33c",
372
- "reference": "151ba0264d935203d59617008a3572e50a39b33c",
373
  "shasum": ""
374
  },
375
  "require": {
@@ -380,7 +381,7 @@
380
  "phpunit/phpunit": "6.5.14",
381
  "woocommerce/woocommerce-sniffs": "0.0.6"
382
  },
383
- "time": "2020-08-05T12:18:02+00:00",
384
  "type": "wordpress-plugin",
385
  "installation-source": "dist",
386
  "autoload": {
@@ -402,7 +403,7 @@
402
  "description": "The Germanized Shipments implementation.",
403
  "homepage": "https://github.com/vendidero/woocommerce-germanized-shipments",
404
  "support": {
405
- "source": "https://github.com/vendidero/woocommerce-germanized-shipments/tree/v1.2.10",
406
  "issues": "https://github.com/vendidero/woocommerce-germanized-shipments/issues"
407
  }
408
  },
204
  },
205
  {
206
  "name": "setasign/fpdi",
207
+ "version": "v2.3.4",
208
+ "version_normalized": "2.3.4.0",
209
  "source": {
210
  "type": "git",
211
  "url": "https://github.com/Setasign/FPDI.git",
212
+ "reference": "2b5fb811c04f937ef257ef3f798cebeded33c136"
213
  },
214
  "dist": {
215
  "type": "zip",
216
+ "url": "https://api.github.com/repos/Setasign/FPDI/zipball/2b5fb811c04f937ef257ef3f798cebeded33c136",
217
+ "reference": "2b5fb811c04f937ef257ef3f798cebeded33c136",
218
  "shasum": ""
219
  },
220
  "require": {
228
  "phpunit/phpunit": "~5.7",
229
  "setasign/fpdf": "~1.8",
230
  "setasign/tfpdf": "1.31",
231
+ "squizlabs/php_codesniffer": "^3.5",
232
  "tecnickcom/tcpdf": "~6.2"
233
  },
234
  "suggest": {
235
  "setasign/fpdf": "FPDI will extend this class but as it is also possible to use TCPDF or tFPDF as an alternative. There's no fixed dependency configured."
236
  },
237
+ "time": "2020-08-27T06:55:47+00:00",
238
  "type": "library",
239
  "installation-source": "dist",
240
  "autoload": {
360
  },
361
  {
362
  "name": "vendidero/woocommerce-germanized-shipments",
363
+ "version": "v1.3.0",
364
+ "version_normalized": "1.3.0.0",
365
  "source": {
366
  "type": "git",
367
  "url": "https://github.com/vendidero/woocommerce-germanized-shipments.git",
368
+ "reference": "370e96d4fae67d7bf68dcdf010ee691974164dcc"
369
  },
370
  "dist": {
371
  "type": "zip",
372
+ "url": "https://api.github.com/repos/vendidero/woocommerce-germanized-shipments/zipball/370e96d4fae67d7bf68dcdf010ee691974164dcc",
373
+ "reference": "370e96d4fae67d7bf68dcdf010ee691974164dcc",
374
  "shasum": ""
375
  },
376
  "require": {
381
  "phpunit/phpunit": "6.5.14",
382
  "woocommerce/woocommerce-sniffs": "0.0.6"
383
  },
384
+ "time": "2020-09-08T11:09:31+00:00",
385
  "type": "wordpress-plugin",
386
  "installation-source": "dist",
387
  "autoload": {
403
  "description": "The Germanized Shipments implementation.",
404
  "homepage": "https://github.com/vendidero/woocommerce-germanized-shipments",
405
  "support": {
406
+ "source": "https://github.com/vendidero/woocommerce-germanized-shipments/tree/v1.3.0",
407
  "issues": "https://github.com/vendidero/woocommerce-germanized-shipments/issues"
408
  }
409
  },
vendor/setasign/fpdi/phpstan.neon ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ parameters:
2
+ level: 5
3
+ paths:
4
+ - src
5
+ #- tests
6
+
7
+ ignoreErrors:
8
+ -
9
+ message: "#^Return typehint of method setasign\\\\Fpdi\\\\Fpdi\\:\\:getPdfParserInstance\\(\\) has invalid type setasign\\\\FpdiPdfParser\\\\PdfParser\\\\PdfParser\\.$#"
10
+ count: 1
11
+ path: src/Fpdi.php
12
+ -
13
+ message: "#^Return typehint of method setasign\\\\Fpdi\\\\Tcpdf\\\\Fpdi\\:\\:getPdfParserInstance\\(\\) has invalid type setasign\\\\FpdiPdfParser\\\\PdfParser\\\\PdfParser\\.$#"
14
+ count: 1
15
+ path: src/Tcpdf/Fpdi.php
16
+ -
17
+ message: "#^Return typehint of method setasign\\\\Fpdi\\\\Tfpdf\\\\Fpdi\\:\\:getPdfParserInstance\\(\\) has invalid type setasign\\\\FpdiPdfParser\\\\PdfParser\\\\PdfParser\\.$#"
18
+ count: 1
19
+ path: src/Tfpdf/Fpdi.php
vendor/setasign/fpdi/src/FpdfTpl.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ namespace setasign\Fpdi;
13
  * Class FpdfTpl
14
  *
15
  * This class adds a templating feature to FPDF.
16
- *
17
- * @package setasign\Fpdi
18
  */
19
  class FpdfTpl extends \FPDF
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
  * Class FpdfTpl
15
  *
16
  * This class adds a templating feature to FPDF.
 
 
17
  */
18
  class FpdfTpl extends \FPDF
19
  {
vendor/setasign/fpdi/src/FpdfTplTrait.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ namespace setasign\Fpdi;
13
  * Trait FpdfTplTrait
14
  *
15
  * This class adds a templating feature to tFPDF.
16
- *
17
- * @package setasign\Fpdi
18
  */
19
  trait FpdfTplTrait
20
  {
@@ -61,7 +60,8 @@ trait FpdfTplTrait
61
 
62
  $size = $this->_getpagesize($size);
63
 
64
- if ($orientation != $this->CurOrientation
 
65
  || $size[0] != $this->CurPageSize[0]
66
  || $size[1] != $this->CurPageSize[1]
67
  ) {
@@ -109,7 +109,7 @@ trait FpdfTplTrait
109
  unset($x['tpl']);
110
  \extract($x, EXTR_IF_EXISTS);
111
  /** @noinspection NotOptimalIfConditionsInspection */
112
- /** @noinspection CallableParameterUseCaseInTypeContextInspection */
113
  if (\is_array($x)) {
114
  $x = 0;
115
  }
@@ -266,7 +266,7 @@ trait FpdfTplTrait
266
  */
267
  public function endTemplate()
268
  {
269
- if (null === $this->currentTemplateId) {
270
  return false;
271
  }
272
 
@@ -418,7 +418,11 @@ trait FpdfTplTrait
418
  $this->templates[$key]['objectNumber'] = $this->n;
419
 
420
  $this->_put('<</Type /XObject /Subtype /Form /FormType 1');
421
- $this->_put(\sprintf('/BBox[0 0 %.2F %.2F]', $template['width'] * $this->k, $template['height'] * $this->k));
 
 
 
 
422
  $this->_put('/Resources 2 0 R'); // default resources dictionary of FPDF
423
 
424
  if ($this->compress) {
@@ -463,4 +467,4 @@ trait FpdfTplTrait
463
  parent::_out($s);
464
  }
465
  }
466
- }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
  * Trait FpdfTplTrait
15
  *
16
  * This class adds a templating feature to tFPDF.
 
 
17
  */
18
  trait FpdfTplTrait
19
  {
60
 
61
  $size = $this->_getpagesize($size);
62
 
63
+ if (
64
+ $orientation != $this->CurOrientation
65
  || $size[0] != $this->CurPageSize[0]
66
  || $size[1] != $this->CurPageSize[1]
67
  ) {
109
  unset($x['tpl']);
110
  \extract($x, EXTR_IF_EXISTS);
111
  /** @noinspection NotOptimalIfConditionsInspection */
112
+ /** @noinspection PhpConditionAlreadyCheckedInspection */
113
  if (\is_array($x)) {
114
  $x = 0;
115
  }
266
  */
267
  public function endTemplate()
268
  {
269
+ if ($this->currentTemplateId === null) {
270
  return false;
271
  }
272
 
418
  $this->templates[$key]['objectNumber'] = $this->n;
419
 
420
  $this->_put('<</Type /XObject /Subtype /Form /FormType 1');
421
+ $this->_put(\sprintf(
422
+ '/BBox[0 0 %.2F %.2F]',
423
+ $template['width'] * $this->k,
424
+ $template['height'] * $this->k
425
+ ));
426
  $this->_put('/Resources 2 0 R'); // default resources dictionary of FPDF
427
 
428
  if ($this->compress) {
467
  parent::_out($s);
468
  }
469
  }
470
+ }
vendor/setasign/fpdi/src/Fpdi.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -18,8 +19,6 @@ use setasign\Fpdi\PdfParser\Type\PdfNull;
18
  * Class Fpdi
19
  *
20
  * This class let you import pages of existing PDF documents into a reusable structure for FPDF.
21
- *
22
- * @package setasign\Fpdi
23
  */
24
  class Fpdi extends FpdfTpl
25
  {
@@ -30,7 +29,7 @@ class Fpdi extends FpdfTpl
30
  *
31
  * @string
32
  */
33
- const VERSION = '2.3.1';
34
 
35
  protected function _enddoc()
36
  {
@@ -113,7 +112,6 @@ class Fpdi extends FpdfTpl
113
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
114
  try {
115
  $object = $parser->getIndirectObject($objectNumber);
116
-
117
  } catch (CrossReferenceException $e) {
118
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
119
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
19
  * Class Fpdi
20
  *
21
  * This class let you import pages of existing PDF documents into a reusable structure for FPDF.
 
 
22
  */
23
  class Fpdi extends FpdfTpl
24
  {
29
  *
30
  * @string
31
  */
32
+ const VERSION = '2.3.4';
33
 
34
  protected function _enddoc()
35
  {
112
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
113
  try {
114
  $object = $parser->getIndirectObject($objectNumber);
 
115
  } catch (CrossReferenceException $e) {
116
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
117
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
vendor/setasign/fpdi/src/FpdiException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi;
11
 
12
  /**
13
  * Base exception class for the FPDI package.
14
- *
15
- * @package setasign\Fpdi
16
  */
17
  class FpdiException extends \Exception
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Base exception class for the FPDI package.
 
 
15
  */
16
  class FpdiException extends \Exception
17
  {
vendor/setasign/fpdi/src/FpdiTrait.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -41,8 +42,6 @@ use /* This namespace/class is used by the commercial FPDI PDF-Parser add-on. */
41
  *
42
  * This trait offers the core functionalities of FPDI. By passing them to a trait we can reuse it with e.g. TCPDF in a
43
  * very easy way.
44
- *
45
- * @package setasign\Fpdi
46
  */
47
  trait FpdiTrait
48
  {
@@ -63,7 +62,7 @@ trait FpdiTrait
63
  /**
64
  * The current reader id.
65
  *
66
- * @var string
67
  */
68
  protected $currentReaderId;
69
 
@@ -104,7 +103,7 @@ trait FpdiTrait
104
  unset($this->readers[$id]);
105
  }
106
 
107
- $this->createdReaders= [];
108
  }
109
 
110
  /**
@@ -299,7 +298,7 @@ trait FpdiTrait
299
 
300
  if ($rotation !== 0) {
301
  $rotation *= -1;
302
- $angle = $rotation * M_PI/180;
303
  $a = \cos($angle);
304
  $b = \sin($angle);
305
  $c = -$b;
@@ -336,7 +335,8 @@ trait FpdiTrait
336
  $contents = PdfType::resolve($contentsObject, $reader->getParser());
337
 
338
  // just copy the stream reference if it is only a single stream
339
- if (($contentsIsStream = ($contents instanceof PdfStream))
 
340
  || ($contents instanceof PdfArray && \count($contents->value) === 1)
341
  ) {
342
  if ($contentsIsStream) {
@@ -494,26 +494,20 @@ trait FpdiTrait
494
  } else {
495
  $this->_put(\rtrim(\rtrim(\sprintf('%.5F', $value->value), '0'), '.') . ' ', false);
496
  }
497
-
498
  } elseif ($value instanceof PdfName) {
499
  $this->_put('/' . $value->value . ' ', false);
500
-
501
  } elseif ($value instanceof PdfString) {
502
  $this->_put('(' . $value->value . ')', false);
503
-
504
  } elseif ($value instanceof PdfHexString) {
505
  $this->_put('<' . $value->value . '>');
506
-
507
  } elseif ($value instanceof PdfBoolean) {
508
  $this->_put($value->value ? 'true ' : 'false ', false);
509
-
510
  } elseif ($value instanceof PdfArray) {
511
  $this->_put('[', false);
512
  foreach ($value->value as $entry) {
513
  $this->writePdfType($entry);
514
  }
515
  $this->_put(']');
516
-
517
  } elseif ($value instanceof PdfDictionary) {
518
  $this->_put('<<', false);
519
  foreach ($value->value as $name => $entry) {
@@ -521,13 +515,10 @@ trait FpdiTrait
521
  $this->writePdfType($entry);
522
  }
523
  $this->_put('>>');
524
-
525
  } elseif ($value instanceof PdfToken) {
526
  $this->_put($value->value);
527
-
528
  } elseif ($value instanceof PdfNull) {
529
  $this->_put('null ');
530
-
531
  } elseif ($value instanceof PdfStream) {
532
  /**
533
  * @var $value PdfStream
@@ -536,7 +527,6 @@ trait FpdiTrait
536
  $this->_put('stream');
537
  $this->_put($value->getStream());
538
  $this->_put('endstream');
539
-
540
  } elseif ($value instanceof PdfIndirectObjectReference) {
541
  if (!isset($this->objectMap[$this->currentReaderId])) {
542
  $this->objectMap[$this->currentReaderId] = [];
@@ -548,10 +538,9 @@ trait FpdiTrait
548
  }
549
 
550
  $this->_put($this->objectMap[$this->currentReaderId][$value->value] . ' 0 R ', false);
551
-
552
  } elseif ($value instanceof PdfIndirectObject) {
553
  /**
554
- * @var $value PdfIndirectObject
555
  */
556
  $n = $this->objectMap[$this->currentReaderId][$value->objectNumber];
557
  $this->_newobj($n);
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
42
  *
43
  * This trait offers the core functionalities of FPDI. By passing them to a trait we can reuse it with e.g. TCPDF in a
44
  * very easy way.
 
 
45
  */
46
  trait FpdiTrait
47
  {
62
  /**
63
  * The current reader id.
64
  *
65
+ * @var string|null
66
  */
67
  protected $currentReaderId;
68
 
103
  unset($this->readers[$id]);
104
  }
105
 
106
+ $this->createdReaders = [];
107
  }
108
 
109
  /**
298
 
299
  if ($rotation !== 0) {
300
  $rotation *= -1;
301
+ $angle = $rotation * M_PI / 180;
302
  $a = \cos($angle);
303
  $b = \sin($angle);
304
  $c = -$b;
335
  $contents = PdfType::resolve($contentsObject, $reader->getParser());
336
 
337
  // just copy the stream reference if it is only a single stream
338
+ if (
339
+ ($contentsIsStream = ($contents instanceof PdfStream))
340
  || ($contents instanceof PdfArray && \count($contents->value) === 1)
341
  ) {
342
  if ($contentsIsStream) {
494
  } else {
495
  $this->_put(\rtrim(\rtrim(\sprintf('%.5F', $value->value), '0'), '.') . ' ', false);
496
  }
 
497
  } elseif ($value instanceof PdfName) {
498
  $this->_put('/' . $value->value . ' ', false);
 
499
  } elseif ($value instanceof PdfString) {
500
  $this->_put('(' . $value->value . ')', false);
 
501
  } elseif ($value instanceof PdfHexString) {
502
  $this->_put('<' . $value->value . '>');
 
503
  } elseif ($value instanceof PdfBoolean) {
504
  $this->_put($value->value ? 'true ' : 'false ', false);
 
505
  } elseif ($value instanceof PdfArray) {
506
  $this->_put('[', false);
507
  foreach ($value->value as $entry) {
508
  $this->writePdfType($entry);
509
  }
510
  $this->_put(']');
 
511
  } elseif ($value instanceof PdfDictionary) {
512
  $this->_put('<<', false);
513
  foreach ($value->value as $name => $entry) {
515
  $this->writePdfType($entry);
516
  }
517
  $this->_put('>>');
 
518
  } elseif ($value instanceof PdfToken) {
519
  $this->_put($value->value);
 
520
  } elseif ($value instanceof PdfNull) {
521
  $this->_put('null ');
 
522
  } elseif ($value instanceof PdfStream) {
523
  /**
524
  * @var $value PdfStream
527
  $this->_put('stream');
528
  $this->_put($value->getStream());
529
  $this->_put('endstream');
 
530
  } elseif ($value instanceof PdfIndirectObjectReference) {
531
  if (!isset($this->objectMap[$this->currentReaderId])) {
532
  $this->objectMap[$this->currentReaderId] = [];
538
  }
539
 
540
  $this->_put($this->objectMap[$this->currentReaderId][$value->value] . ' 0 R ', false);
 
541
  } elseif ($value instanceof PdfIndirectObject) {
542
  /**
543
+ * @var PdfIndirectObject $value
544
  */
545
  $n = $this->objectMap[$this->currentReaderId][$value->objectNumber];
546
  $this->_newobj($n);
vendor/setasign/fpdi/src/PdfParser/CrossReference/AbstractReader.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -16,8 +17,6 @@ use setasign\Fpdi\PdfParser\Type\PdfTypeException;
16
 
17
  /**
18
  * Abstract class for cross-reference reader classes.
19
- *
20
- * @package setasign\Fpdi\PdfParser\CrossReference
21
  */
22
  abstract class AbstractReader
23
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
17
 
18
  /**
19
  * Abstract class for cross-reference reader classes.
 
 
20
  */
21
  abstract class AbstractReader
22
  {
vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReference.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -21,8 +22,6 @@ use setasign\Fpdi\PdfParser\Type\PdfTypeException;
21
  * Class CrossReference
22
  *
23
  * This class processes the standard cross reference of a PDF document.
24
- *
25
- * @package setasign\Fpdi\PdfParser\CrossReference
26
  */
27
  class CrossReference
28
  {
@@ -31,7 +30,7 @@ class CrossReference
31
  *
32
  * @var int
33
  */
34
- static public $trailerSearchLength = 5500;
35
 
36
  /**
37
  * @var int
@@ -237,7 +236,6 @@ class CrossReference
237
  if ($initValue instanceof PdfIndirectObject) {
238
  try {
239
  $stream = PdfStream::ensure($initValue->value);
240
-
241
  } catch (PdfTypeException $e) {
242
  throw new CrossReferenceException(
243
  'Invalid object type at xref reference offset.',
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
22
  * Class CrossReference
23
  *
24
  * This class processes the standard cross reference of a PDF document.
 
 
25
  */
26
  class CrossReference
27
  {
30
  *
31
  * @var int
32
  */
33
+ public static $trailerSearchLength = 5500;
34
 
35
  /**
36
  * @var int
236
  if ($initValue instanceof PdfIndirectObject) {
237
  try {
238
  $stream = PdfStream::ensure($initValue->value);
 
239
  } catch (PdfTypeException $e) {
240
  throw new CrossReferenceException(
241
  'Invalid object type at xref reference offset.',
vendor/setasign/fpdi/src/PdfParser/CrossReference/CrossReferenceException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\PdfParserException;
13
 
14
  /**
15
  * Exception used by the CrossReference and Reader classes.
16
- *
17
- * @package setasign\Fpdi\PdfParser\CrossReference
18
  */
19
  class CrossReferenceException extends PdfParserException
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Exception used by the CrossReference and Reader classes.
 
 
17
  */
18
  class CrossReferenceException extends PdfParserException
19
  {
vendor/setasign/fpdi/src/PdfParser/CrossReference/FixedReader.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -17,8 +18,6 @@ use setasign\Fpdi\PdfParser\StreamReader;
17
  *
18
  * This reader allows a very less overhead parsing of single entries of the cross-reference, because the main entries
19
  * are only read when needed and not in a single run.
20
- *
21
- * @package setasign\Fpdi\PdfParser\CrossReference
22
  */
23
  class FixedReader extends AbstractReader implements ReaderInterface
24
  {
@@ -63,6 +62,10 @@ class FixedReader extends AbstractReader implements ReaderInterface
63
  public function getOffsetFor($objectNumber)
64
  {
65
  foreach ($this->subSections as $offset => list($startObject, $objectCount)) {
 
 
 
 
66
  if ($objectNumber >= $startObject && $objectNumber < ($startObject + $objectCount)) {
67
  $position = $offset + 20 * ($objectNumber - $startObject);
68
  $this->reader->ensure($position, 20);
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
18
  *
19
  * This reader allows a very less overhead parsing of single entries of the cross-reference, because the main entries
20
  * are only read when needed and not in a single run.
 
 
21
  */
22
  class FixedReader extends AbstractReader implements ReaderInterface
23
  {
62
  public function getOffsetFor($objectNumber)
63
  {
64
  foreach ($this->subSections as $offset => list($startObject, $objectCount)) {
65
+ /**
66
+ * @var int $startObject
67
+ * @var int $objectCount
68
+ */
69
  if ($objectNumber >= $startObject && $objectNumber < ($startObject + $objectCount)) {
70
  $position = $offset + 20 * ($objectNumber - $startObject);
71
  $this->reader->ensure($position, 20);
vendor/setasign/fpdi/src/PdfParser/CrossReference/LineReader.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -17,8 +18,6 @@ use setasign\Fpdi\PdfParser\StreamReader;
17
  *
18
  * This reader class read all cross-reference entries in a single run.
19
  * It supports reading cross-references with e.g. invalid data (e.g. entries with a length < or > 20 bytes).
20
- *
21
- * @package setasign\Fpdi\PdfParser\CrossReference
22
  */
23
  class LineReader extends AbstractReader implements ReaderInterface
24
  {
@@ -72,18 +71,16 @@ class LineReader extends AbstractReader implements ReaderInterface
72
  */
73
  protected function extract(StreamReader $reader)
74
  {
75
- $cycles = -1;
76
  $bytesPerCycle = 100;
77
-
78
  $reader->reset(null, $bytesPerCycle);
79
 
80
- while (
81
- ($trailerPos = \strpos($reader->getBuffer(false), 'trailer', \max($bytesPerCycle * $cycles++, 0))) === false
82
- ) {
83
- if ($reader->increaseLength($bytesPerCycle) === false) {
84
- break;
85
- }
86
- }
87
 
88
  if ($trailerPos === false) {
89
  throw new CrossReferenceException(
@@ -127,44 +124,41 @@ class LineReader extends AbstractReader implements ReaderInterface
127
  }
128
 
129
  unset($differentLineEndings, $m);
130
- $linesCount = \count($lines);
131
- $start = null;
132
- $entryCount = 0;
 
133
 
 
134
  $offsets = [];
135
 
136
- /** @noinspection ForeachInvariantsInspection */
137
- for ($i = 0; $i < $linesCount; $i++) {
138
- $line = \trim($lines[$i]);
139
- if ($line) {
140
- $pieces = \explode(' ', $line);
141
-
142
- $c = \count($pieces);
143
- switch ($c) {
144
- case 2:
145
- $start = (int) $pieces[0];
146
- $entryCount += (int) $pieces[1];
147
- break;
148
-
149
- /** @noinspection PhpMissingBreakStatementInspection */
150
- case 3:
151
- switch ($pieces[2]) {
152
- case 'n':
153
- $offsets[$start] = [(int) $pieces[0], (int) $pieces[1]];
154
- $start++;
155
- break 2;
156
- case 'f':
157
- $start++;
158
- break 2;
159
- }
160
- // fall through if pieces doesn't match
161
-
162
- default:
163
- throw new CrossReferenceException(
164
- \sprintf('Unexpected data in xref table (%s)', \implode(' ', $pieces)),
165
- CrossReferenceException::INVALID_DATA
166
- );
167
- }
168
  }
169
  }
170
 
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
18
  *
19
  * This reader class read all cross-reference entries in a single run.
20
  * It supports reading cross-references with e.g. invalid data (e.g. entries with a length < or > 20 bytes).
 
 
21
  */
22
  class LineReader extends AbstractReader implements ReaderInterface
23
  {
71
  */
72
  protected function extract(StreamReader $reader)
73
  {
 
74
  $bytesPerCycle = 100;
 
75
  $reader->reset(null, $bytesPerCycle);
76
 
77
+ $cycles = 0;
78
+ do {
79
+ // 6 = length of "trailer" - 1
80
+ $pos = \max(($bytesPerCycle * $cycles) - 6, 0);
81
+ $trailerPos = \strpos($reader->getBuffer(false), 'trailer', $pos);
82
+ $cycles++;
83
+ } while ($trailerPos === false && $reader->increaseLength($bytesPerCycle) !== false);
84
 
85
  if ($trailerPos === false) {
86
  throw new CrossReferenceException(
124
  }
125
 
126
  unset($differentLineEndings, $m);
127
+ if (!\is_array($lines)) {
128
+ $this->offsets = [];
129
+ return;
130
+ }
131
 
132
+ $start = 0;
133
  $offsets = [];
134
 
135
+ // trim all lines and remove empty lines
136
+ $lines = \array_filter(\array_map('\trim', $lines));
137
+ foreach ($lines as $line) {
138
+ $pieces = \explode(' ', $line);
139
+
140
+ switch (\count($pieces)) {
141
+ case 2:
142
+ $start = (int) $pieces[0];
143
+ break;
144
+
145
+ case 3:
146
+ switch ($pieces[2]) {
147
+ case 'n':
148
+ $offsets[$start] = [(int) $pieces[0], (int) $pieces[1]];
149
+ $start++;
150
+ break 2;
151
+ case 'f':
152
+ $start++;
153
+ break 2;
154
+ }
155
+ // fall through if pieces doesn't match
156
+
157
+ default:
158
+ throw new CrossReferenceException(
159
+ \sprintf('Unexpected data in xref table (%s)', \implode(' ', $pieces)),
160
+ CrossReferenceException::INVALID_DATA
161
+ );
 
 
 
 
 
162
  }
163
  }
164
 
vendor/setasign/fpdi/src/PdfParser/CrossReference/ReaderInterface.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\Type\PdfDictionary;
13
 
14
  /**
15
  * ReaderInterface for cross-reference readers.
16
- *
17
- * @package setasign\Fpdi\PdfParser\CrossReference
18
  */
19
  interface ReaderInterface
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * ReaderInterface for cross-reference readers.
 
 
17
  */
18
  interface ReaderInterface
19
  {
vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Class for handling ASCII base-85 encoded data
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class Ascii85 implements FilterInterface
18
  {
@@ -87,12 +86,10 @@ class Ascii85 implements FilterInterface
87
  if ($state === 2) {
88
  $r = $chn[0] * 85 * 85 * 85 * 85 + ($chn[1] + 1) * 85 * 85 * 85;
89
  $out .= \chr($r >> 24);
90
-
91
  } elseif ($state === 3) {
92
  $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + ($chn[2] + 1) * 85 * 85;
93
  $out .= \chr($r >> 24);
94
  $out .= \chr($r >> 16);
95
-
96
  } elseif ($state === 4) {
97
  $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + $chn[2] * 85 * 85 + ($chn[3] + 1) * 85;
98
  $out .= \chr($r >> 24);
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class for handling ASCII base-85 encoded data
 
 
15
  */
16
  class Ascii85 implements FilterInterface
17
  {
86
  if ($state === 2) {
87
  $r = $chn[0] * 85 * 85 * 85 * 85 + ($chn[1] + 1) * 85 * 85 * 85;
88
  $out .= \chr($r >> 24);
 
89
  } elseif ($state === 3) {
90
  $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + ($chn[2] + 1) * 85 * 85;
91
  $out .= \chr($r >> 24);
92
  $out .= \chr($r >> 16);
 
93
  } elseif ($state === 4) {
94
  $r = $chn[0] * 85 * 85 * 85 * 85 + $chn[1] * 85 * 85 * 85 + $chn[2] * 85 * 85 + ($chn[3] + 1) * 85;
95
  $out .= \chr($r >> 24);
vendor/setasign/fpdi/src/PdfParser/Filter/Ascii85Exception.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Exception for Ascii85 filter class
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class Ascii85Exception extends FilterException
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Exception for Ascii85 filter class
 
 
15
  */
16
  class Ascii85Exception extends FilterException
17
  {
vendor/setasign/fpdi/src/PdfParser/Filter/AsciiHex.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Class for handling ASCII hexadecimal encoded data
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class AsciiHex implements FilterInterface
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class for handling ASCII hexadecimal encoded data
 
 
15
  */
16
  class AsciiHex implements FilterInterface
17
  {
vendor/setasign/fpdi/src/PdfParser/Filter/FilterException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\PdfParserException;
13
 
14
  /**
15
  * Exception for filters
16
- *
17
- * @package setasign\Fpdi\PdfParser\Filter
18
  */
19
  class FilterException extends PdfParserException
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Exception for filters
 
 
17
  */
18
  class FilterException extends PdfParserException
19
  {
vendor/setasign/fpdi/src/PdfParser/Filter/FilterInterface.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Interface for filters
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  interface FilterInterface
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Interface for filters
 
 
15
  */
16
  interface FilterInterface
17
  {
vendor/setasign/fpdi/src/PdfParser/Filter/Flate.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Class for handling zlib/deflate encoded data
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class Flate implements FilterInterface
18
  {
@@ -32,7 +31,7 @@ class Flate implements FilterInterface
32
  /**
33
  * Decodes a flate compressed string.
34
  *
35
- * @param string $data The input string
36
  * @return string
37
  * @throws FlateException
38
  */
@@ -40,14 +39,14 @@ class Flate implements FilterInterface
40
  {
41
  if ($this->extensionLoaded()) {
42
  $oData = $data;
43
- $data = @((\strlen($data) > 0) ? \gzuncompress($data) : '');
44
  if ($data === false) {
45
  // let's try if the checksum is CRC32
46
  $fh = fopen('php://temp', 'w+b');
47
  fwrite($fh, "\x1f\x8b\x08\x00\x00\x00\x00\x00" . $oData);
48
  stream_filter_append($fh, 'zlib.inflate', STREAM_FILTER_READ, ['window' => 30]);
49
  fseek($fh, 0);
50
- $data = stream_get_contents($fh);
51
  fclose($fh);
52
 
53
  if ($data) {
@@ -58,7 +57,7 @@ class Flate implements FilterInterface
58
  $tries = 0;
59
 
60
  $oDataLen = strlen($oData);
61
- while ($tries < 6 && ($data === false || (strlen($data) < (strlen($oDataLen) - $tries - 1)))) {
62
  $data = @(gzinflate(substr($oData, $tries)));
63
  $tries++;
64
  }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class for handling zlib/deflate encoded data
 
 
15
  */
16
  class Flate implements FilterInterface
17
  {
31
  /**
32
  * Decodes a flate compressed string.
33
  *
34
+ * @param string|false $data The input string
35
  * @return string
36
  * @throws FlateException
37
  */
39
  {
40
  if ($this->extensionLoaded()) {
41
  $oData = $data;
42
+ $data = (($data !== '') ? @\gzuncompress($data) : '');
43
  if ($data === false) {
44
  // let's try if the checksum is CRC32
45
  $fh = fopen('php://temp', 'w+b');
46
  fwrite($fh, "\x1f\x8b\x08\x00\x00\x00\x00\x00" . $oData);
47
  stream_filter_append($fh, 'zlib.inflate', STREAM_FILTER_READ, ['window' => 30]);
48
  fseek($fh, 0);
49
+ $data = @stream_get_contents($fh);
50
  fclose($fh);
51
 
52
  if ($data) {
57
  $tries = 0;
58
 
59
  $oDataLen = strlen($oData);
60
+ while ($tries < 6 && ($data === false || (strlen($data) < ($oDataLen - $tries - 1)))) {
61
  $data = @(gzinflate(substr($oData, $tries)));
62
  $tries++;
63
  }
vendor/setasign/fpdi/src/PdfParser/Filter/FlateException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Exception for flate filter class
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class FlateException extends FilterException
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Exception for flate filter class
 
 
15
  */
16
  class FlateException extends FilterException
17
  {
vendor/setasign/fpdi/src/PdfParser/Filter/Lzw.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Class for handling LZW encoded data
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class Lzw implements FilterInterface
18
  {
@@ -103,7 +102,6 @@ class Lzw implements FilterInterface
103
 
104
  $uncompData .= $this->sTable[$code];
105
  $oldCode = $code;
106
-
107
  } else {
108
  if ($code < $this->tIdx) {
109
  $string = $this->sTable[$code];
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class for handling LZW encoded data
 
 
15
  */
16
  class Lzw implements FilterInterface
17
  {
102
 
103
  $uncompData .= $this->sTable[$code];
104
  $oldCode = $code;
 
105
  } else {
106
  if ($code < $this->tIdx) {
107
  $string = $this->sTable[$code];
vendor/setasign/fpdi/src/PdfParser/Filter/LzwException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Filter;
11
 
12
  /**
13
  * Exception for LZW filter class
14
- *
15
- * @package setasign\Fpdi\PdfParser\Filter
16
  */
17
  class LzwException extends FilterException
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Exception for LZW filter class
 
 
15
  */
16
  class LzwException extends FilterException
17
  {
vendor/setasign/fpdi/src/PdfParser/PdfParser.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -20,14 +21,13 @@ use setasign\Fpdi\PdfParser\Type\PdfIndirectObjectReference;
20
  use setasign\Fpdi\PdfParser\Type\PdfName;
21
  use setasign\Fpdi\PdfParser\Type\PdfNull;
22
  use setasign\Fpdi\PdfParser\Type\PdfNumeric;
 
23
  use setasign\Fpdi\PdfParser\Type\PdfString;
24
  use setasign\Fpdi\PdfParser\Type\PdfToken;
25
  use setasign\Fpdi\PdfParser\Type\PdfType;
26
 
27
  /**
28
  * A PDF parser class
29
- *
30
- * @package setasign\Fpdi\PdfParser
31
  */
32
  class PdfParser
33
  {
@@ -56,7 +56,7 @@ class PdfParser
56
  protected $fileHeaderOffset;
57
 
58
  /**
59
- * @var CrossReference
60
  */
61
  protected $xref;
62
 
@@ -121,7 +121,6 @@ class PdfParser
121
  }
122
 
123
  $this->streamReader->reset(0);
124
- $offset = false;
125
  $maxIterations = 1000;
126
  while (true) {
127
  $buffer = $this->streamReader->getBuffer(false);
@@ -181,7 +180,10 @@ class PdfParser
181
 
182
  $catalog = $this->getCatalog();
183
  if (isset($catalog->value['Version'])) {
184
- $versionParts = \explode('.', PdfName::unescape(PdfType::resolve($catalog->value['Version'], $this)->value));
 
 
 
185
  if (count($versionParts) === 2) {
186
  list($major, $minor) = $versionParts;
187
  }
@@ -200,8 +202,7 @@ class PdfParser
200
  */
201
  public function getCatalog()
202
  {
203
- $xref = $this->getCrossReference();
204
- $trailer = $xref->getTrailer();
205
 
206
  $catalog = PdfType::resolve(PdfDictionary::get($trailer, 'Root'), $this);
207
 
@@ -224,8 +225,7 @@ class PdfParser
224
  return $this->objects[$objectNumber];
225
  }
226
 
227
- $xref = $this->getCrossReference();
228
- $object = $xref->getIndirectObject($objectNumber);
229
 
230
  if ($cache) {
231
  $this->objects[$objectNumber] = $object;
@@ -239,7 +239,7 @@ class PdfParser
239
  *
240
  * @param null|bool|string $token
241
  * @param null|string $expectedType
242
- * @return bool|PdfArray|PdfBoolean|PdfHexString|PdfName|PdfNull|PdfNumeric|PdfString|PdfToken|PdfIndirectObjectReference
243
  * @throws Type\PdfTypeException
244
  */
245
  public function readValue($token = null, $expectedType = null)
@@ -281,37 +281,38 @@ class PdfParser
281
  default:
282
  if (\is_numeric($token)) {
283
  if (($token2 = $this->tokenizer->getNextToken()) !== false) {
284
- if (\is_numeric($token2)) {
285
- if (($token3 = $this->tokenizer->getNextToken()) !== false) {
286
- switch ($token3) {
287
- case 'obj':
288
- if ($expectedType !== null && $expectedType !== PdfIndirectObject::class) {
289
- throw new Type\PdfTypeException(
290
- 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE
291
- );
292
- }
293
-
294
- return PdfIndirectObject::parse(
295
- $token,
296
- $token2,
297
- $this,
298
- $this->tokenizer,
299
- $this->streamReader
300
  );
301
- case 'R':
302
- if ($expectedType !== null &&
303
- $expectedType !== PdfIndirectObjectReference::class
304
- ) {
305
- throw new Type\PdfTypeException(
306
- 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE
307
- );
308
- }
309
-
310
- return PdfIndirectObjectReference::create($token, $token2);
311
- }
312
-
313
- $this->tokenizer->pushStack($token3);
 
 
 
 
 
 
 
 
314
  }
 
 
315
  }
316
 
317
  $this->tokenizer->pushStack($token2);
@@ -319,10 +320,11 @@ class PdfParser
319
 
320
  if ($expectedType !== null && $expectedType !== PdfNumeric::class) {
321
  throw new Type\PdfTypeException(
322
- 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE
 
323
  );
324
  }
325
- return PdfNumeric::create($token);
326
  }
327
 
328
  if ($token === 'true' || $token === 'false') {
@@ -337,7 +339,8 @@ class PdfParser
337
 
338
  if ($expectedType !== null && $expectedType !== PdfToken::class) {
339
  throw new Type\PdfTypeException(
340
- 'Got unexpected token type.', Type\PdfTypeException::INVALID_DATA_TYPE
 
341
  );
342
  }
343
 
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
21
  use setasign\Fpdi\PdfParser\Type\PdfName;
22
  use setasign\Fpdi\PdfParser\Type\PdfNull;
23
  use setasign\Fpdi\PdfParser\Type\PdfNumeric;
24
+ use setasign\Fpdi\PdfParser\Type\PdfStream;
25
  use setasign\Fpdi\PdfParser\Type\PdfString;
26
  use setasign\Fpdi\PdfParser\Type\PdfToken;
27
  use setasign\Fpdi\PdfParser\Type\PdfType;
28
 
29
  /**
30
  * A PDF parser class
 
 
31
  */
32
  class PdfParser
33
  {
56
  protected $fileHeaderOffset;
57
 
58
  /**
59
+ * @var CrossReference|null
60
  */
61
  protected $xref;
62
 
121
  }
122
 
123
  $this->streamReader->reset(0);
 
124
  $maxIterations = 1000;
125
  while (true) {
126
  $buffer = $this->streamReader->getBuffer(false);
180
 
181
  $catalog = $this->getCatalog();
182
  if (isset($catalog->value['Version'])) {
183
+ $versionParts = \explode(
184
+ '.',
185
+ PdfName::unescape(PdfType::resolve($catalog->value['Version'], $this)->value)
186
+ );
187
  if (count($versionParts) === 2) {
188
  list($major, $minor) = $versionParts;
189
  }
202
  */
203
  public function getCatalog()
204
  {
205
+ $trailer = $this->getCrossReference()->getTrailer();
 
206
 
207
  $catalog = PdfType::resolve(PdfDictionary::get($trailer, 'Root'), $this);
208
 
225
  return $this->objects[$objectNumber];
226
  }
227
 
228
+ $object = $this->getCrossReference()->getIndirectObject($objectNumber);
 
229
 
230
  if ($cache) {
231
  $this->objects[$objectNumber] = $object;
239
  *
240
  * @param null|bool|string $token
241
  * @param null|string $expectedType
242
+ * @return false|PdfArray|PdfBoolean|PdfDictionary|PdfHexString|PdfIndirectObject|PdfIndirectObjectReference|PdfName|PdfNull|PdfNumeric|PdfStream|PdfString|PdfToken
243
  * @throws Type\PdfTypeException
244
  */
245
  public function readValue($token = null, $expectedType = null)
281
  default:
282
  if (\is_numeric($token)) {
283
  if (($token2 = $this->tokenizer->getNextToken()) !== false) {
284
+ if (\is_numeric($token2) && ($token3 = $this->tokenizer->getNextToken()) !== false) {
285
+ switch ($token3) {
286
+ case 'obj':
287
+ if ($expectedType !== null && $expectedType !== PdfIndirectObject::class) {
288
+ throw new Type\PdfTypeException(
289
+ 'Got unexpected token type.',
290
+ Type\PdfTypeException::INVALID_DATA_TYPE
 
 
 
 
 
 
 
 
 
291
  );
292
+ }
293
+
294
+ return PdfIndirectObject::parse(
295
+ (int) $token,
296
+ (int) $token2,
297
+ $this,
298
+ $this->tokenizer,
299
+ $this->streamReader
300
+ );
301
+ case 'R':
302
+ if (
303
+ $expectedType !== null &&
304
+ $expectedType !== PdfIndirectObjectReference::class
305
+ ) {
306
+ throw new Type\PdfTypeException(
307
+ 'Got unexpected token type.',
308
+ Type\PdfTypeException::INVALID_DATA_TYPE
309
+ );
310
+ }
311
+
312
+ return PdfIndirectObjectReference::create((int) $token, (int) $token2);
313
  }
314
+
315
+ $this->tokenizer->pushStack($token3);
316
  }
317
 
318
  $this->tokenizer->pushStack($token2);
320
 
321
  if ($expectedType !== null && $expectedType !== PdfNumeric::class) {
322
  throw new Type\PdfTypeException(
323
+ 'Got unexpected token type.',
324
+ Type\PdfTypeException::INVALID_DATA_TYPE
325
  );
326
  }
327
+ return PdfNumeric::create($token + 0);
328
  }
329
 
330
  if ($token === 'true' || $token === 'false') {
339
 
340
  if ($expectedType !== null && $expectedType !== PdfToken::class) {
341
  throw new Type\PdfTypeException(
342
+ 'Got unexpected token type.',
343
+ Type\PdfTypeException::INVALID_DATA_TYPE
344
  );
345
  }
346
 
vendor/setasign/fpdi/src/PdfParser/PdfParserException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\FpdiException;
13
 
14
  /**
15
  * Exception for the pdf parser class
16
- *
17
- * @package setasign\Fpdi\PdfParser
18
  */
19
  class PdfParserException extends FpdiException
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Exception for the pdf parser class
 
 
17
  */
18
  class PdfParserException extends FpdiException
19
  {
vendor/setasign/fpdi/src/PdfParser/StreamReader.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser;
11
 
12
  /**
13
  * A stream reader class
14
- *
15
- * @package setasign\Fpdi\PdfParser
16
  */
17
  class StreamReader
18
  {
@@ -192,8 +191,9 @@ class StreamReader
192
  public function getByte($position = null)
193
  {
194
  $position = (int) ($position !== null ? $position : $this->offset);
195
- if ($position >= $this->bufferLength &&
196
- (!$this->increaseLength() || $position >= $this->bufferLength)
 
197
  ) {
198
  return false;
199
  }
@@ -226,8 +226,9 @@ class StreamReader
226
  $offset = $this->offset;
227
  }
228
 
229
- if ($offset >= $this->bufferLength &&
230
- ((!$this->increaseLength()) || $offset >= $this->bufferLength)
 
231
  ) {
232
  return false;
233
  }
@@ -245,7 +246,7 @@ class StreamReader
245
  *
246
  * @param int $length
247
  * @param int|null $position
248
- * @return string
249
  */
250
  public function readBytes($length, $position = null)
251
  {
@@ -262,8 +263,9 @@ class StreamReader
262
  $offset = $this->offset;
263
  }
264
 
265
- if (($offset + $length) > $this->bufferLength &&
266
- ((!$this->increaseLength($length)) || ($offset + $length) > $this->bufferLength)
 
267
  ) {
268
  return false;
269
  }
@@ -433,7 +435,8 @@ class StreamReader
433
  */
434
  public function ensure($pos, $length)
435
  {
436
- if ($pos >= $this->position
 
437
  && $pos < ($this->position + $this->bufferLength)
438
  && ($this->position + $this->bufferLength) >= ($pos + $length)
439
  ) {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * A stream reader class
 
 
15
  */
16
  class StreamReader
17
  {
191
  public function getByte($position = null)
192
  {
193
  $position = (int) ($position !== null ? $position : $this->offset);
194
+ if (
195
+ $position >= $this->bufferLength
196
+ && (!$this->increaseLength() || $position >= $this->bufferLength)
197
  ) {
198
  return false;
199
  }
226
  $offset = $this->offset;
227
  }
228
 
229
+ if (
230
+ $offset >= $this->bufferLength
231
+ && ((!$this->increaseLength()) || $offset >= $this->bufferLength)
232
  ) {
233
  return false;
234
  }
246
  *
247
  * @param int $length
248
  * @param int|null $position
249
+ * @return string|false
250
  */
251
  public function readBytes($length, $position = null)
252
  {
263
  $offset = $this->offset;
264
  }
265
 
266
+ if (
267
+ ($offset + $length) > $this->bufferLength
268
+ && ((!$this->increaseLength($length)) || ($offset + $length) > $this->bufferLength)
269
  ) {
270
  return false;
271
  }
435
  */
436
  public function ensure($pos, $length)
437
  {
438
+ if (
439
+ $pos >= $this->position
440
  && $pos < ($this->position + $this->bufferLength)
441
  && ($this->position + $this->bufferLength) >= ($pos + $length)
442
  ) {
vendor/setasign/fpdi/src/PdfParser/Tokenizer.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser;
11
 
12
  /**
13
  * A tokenizer class.
14
- *
15
- * @package setasign\Fpdi\PdfParser
16
  */
17
  class Tokenizer
18
  {
@@ -82,13 +81,7 @@ class Tokenizer
82
  return false;
83
  }
84
 
85
- if ($byte === "\x20" ||
86
- $byte === "\x0A" ||
87
- $byte === "\x0D" ||
88
- $byte === "\x0C" ||
89
- $byte === "\x09" ||
90
- $byte === "\x00"
91
- ) {
92
  if ($this->leapWhiteSpaces() === false) {
93
  return false;
94
  }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * A tokenizer class.
 
 
15
  */
16
  class Tokenizer
17
  {
81
  return false;
82
  }
83
 
84
+ if (\in_array($byte, ["\x20", "\x0A", "\x0D", "\x0C", "\x09", "\x00"], true)) {
 
 
 
 
 
 
85
  if ($this->leapWhiteSpaces() === false) {
86
  return false;
87
  }
vendor/setasign/fpdi/src/PdfParser/Type/PdfArray.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -15,7 +16,6 @@ use setasign\Fpdi\PdfParser\Tokenizer;
15
  /**
16
  * Class representing a PDF array object
17
  *
18
- * @package setasign\Fpdi\PdfParser\Type
19
  * @property array $value The value of the PDF type.
20
  */
21
  class PdfArray extends PdfType
@@ -41,7 +41,7 @@ class PdfArray extends PdfType
41
  $result[] = $value;
42
  }
43
 
44
- $v = new self;
45
  $v->value = $result;
46
 
47
  return $v;
@@ -55,7 +55,7 @@ class PdfArray extends PdfType
55
  */
56
  public static function create(array $values = [])
57
  {
58
- $v = new self;
59
  $v->value = $values;
60
 
61
  return $v;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
16
  /**
17
  * Class representing a PDF array object
18
  *
 
19
  * @property array $value The value of the PDF type.
20
  */
21
  class PdfArray extends PdfType
41
  $result[] = $value;
42
  }
43
 
44
+ $v = new self();
45
  $v->value = $result;
46
 
47
  return $v;
55
  */
56
  public static function create(array $values = [])
57
  {
58
+ $v = new self();
59
  $v->value = $values;
60
 
61
  return $v;
vendor/setasign/fpdi/src/PdfParser/Type/PdfBoolean.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Type;
11
 
12
  /**
13
  * Class representing a boolean PDF object
14
- *
15
- * @package setasign\Fpdi\PdfParser\Type
16
  */
17
  class PdfBoolean extends PdfType
18
  {
@@ -24,8 +23,8 @@ class PdfBoolean extends PdfType
24
  */
25
  public static function create($value)
26
  {
27
- $v = new self;
28
- $v->value = (boolean) $value;
29
  return $v;
30
  }
31
 
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class representing a boolean PDF object
 
 
15
  */
16
  class PdfBoolean extends PdfType
17
  {
23
  */
24
  public static function create($value)
25
  {
26
+ $v = new self();
27
+ $v->value = (bool) $value;
28
  return $v;
29
  }
30
 
vendor/setasign/fpdi/src/PdfParser/Type/PdfDictionary.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -15,8 +16,6 @@ use setasign\Fpdi\PdfParser\Tokenizer;
15
 
16
  /**
17
  * Class representing a PDF dictionary object
18
- *
19
- * @package setasign\Fpdi\PdfParser\Type
20
  */
21
  class PdfDictionary extends PdfType
22
  {
@@ -79,7 +78,7 @@ class PdfDictionary extends PdfType
79
  $entries[$key->value] = $value;
80
  }
81
 
82
- $v = new self;
83
  $v->value = $entries;
84
 
85
  return $v;
@@ -93,7 +92,7 @@ class PdfDictionary extends PdfType
93
  */
94
  public static function create(array $entries = [])
95
  {
96
- $v = new self;
97
  $v->value = $entries;
98
 
99
  return $v;
@@ -104,7 +103,7 @@ class PdfDictionary extends PdfType
104
  *
105
  * @param mixed $dictionary
106
  * @param string $key
107
- * @param PdfType|mixed|null $default
108
  * @return PdfNull|PdfType
109
  * @throws PdfTypeException
110
  */
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
16
 
17
  /**
18
  * Class representing a PDF dictionary object
 
 
19
  */
20
  class PdfDictionary extends PdfType
21
  {
78
  $entries[$key->value] = $value;
79
  }
80
 
81
+ $v = new self();
82
  $v->value = $entries;
83
 
84
  return $v;
92
  */
93
  public static function create(array $entries = [])
94
  {
95
+ $v = new self();
96
  $v->value = $entries;
97
 
98
  return $v;
103
  *
104
  * @param mixed $dictionary
105
  * @param string $key
106
+ * @param PdfType|null $default
107
  * @return PdfNull|PdfType
108
  * @throws PdfTypeException
109
  */
vendor/setasign/fpdi/src/PdfParser/Type/PdfHexString.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\StreamReader;
13
 
14
  /**
15
  * Class representing a hexadecimal encoded PDF string object
16
- *
17
- * @package setasign\Fpdi\PdfParser\Type
18
  */
19
  class PdfHexString extends PdfType
20
  {
@@ -28,10 +27,6 @@ class PdfHexString extends PdfType
28
  {
29
  $bufferOffset = $streamReader->getOffset();
30
 
31
- /**
32
- * @var string $buffer
33
- * @var int $pos
34
- */
35
  while (true) {
36
  $buffer = $streamReader->getBuffer(false);
37
  $pos = \strpos($buffer, '>', $bufferOffset);
@@ -48,7 +43,7 @@ class PdfHexString extends PdfType
48
  $result = \substr($buffer, $bufferOffset, $pos - $bufferOffset);
49
  $streamReader->setOffset($pos + 1);
50
 
51
- $v = new self;
52
  $v->value = $result;
53
 
54
  return $v;
@@ -62,7 +57,7 @@ class PdfHexString extends PdfType
62
  */
63
  public static function create($string)
64
  {
65
- $v = new self;
66
  $v->value = $string;
67
 
68
  return $v;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Class representing a hexadecimal encoded PDF string object
 
 
17
  */
18
  class PdfHexString extends PdfType
19
  {
27
  {
28
  $bufferOffset = $streamReader->getOffset();
29
 
 
 
 
 
30
  while (true) {
31
  $buffer = $streamReader->getBuffer(false);
32
  $pos = \strpos($buffer, '>', $bufferOffset);
43
  $result = \substr($buffer, $bufferOffset, $pos - $bufferOffset);
44
  $streamReader->setOffset($pos + 1);
45
 
46
+ $v = new self();
47
  $v->value = $result;
48
 
49
  return $v;
57
  */
58
  public static function create($string)
59
  {
60
+ $v = new self();
61
  $v->value = $string;
62
 
63
  return $v;
vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObject.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -15,8 +16,6 @@ use setasign\Fpdi\PdfParser\Tokenizer;
15
 
16
  /**
17
  * Class representing an indirect object
18
- *
19
- * @package setasign\Fpdi\PdfParser\Type
20
  */
21
  class PdfIndirectObject extends PdfType
22
  {
@@ -50,7 +49,7 @@ class PdfIndirectObject extends PdfType
50
  $tokenizer->pushStack($nextToken);
51
  }
52
 
53
- $v = new self;
54
  $v->objectNumber = (int) $objectNumberToken;
55
  $v->generationNumber = (int) $objectGenerationNumberToken;
56
  $v->value = $value;
@@ -68,7 +67,7 @@ class PdfIndirectObject extends PdfType
68
  */
69
  public static function create($objectNumber, $generationNumber, PdfType $value)
70
  {
71
- $v = new self;
72
  $v->objectNumber = (int) $objectNumber;
73
  $v->generationNumber = (int) $generationNumber;
74
  $v->value = $value;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
16
 
17
  /**
18
  * Class representing an indirect object
 
 
19
  */
20
  class PdfIndirectObject extends PdfType
21
  {
49
  $tokenizer->pushStack($nextToken);
50
  }
51
 
52
+ $v = new self();
53
  $v->objectNumber = (int) $objectNumberToken;
54
  $v->generationNumber = (int) $objectGenerationNumberToken;
55
  $v->value = $value;
67
  */
68
  public static function create($objectNumber, $generationNumber, PdfType $value)
69
  {
70
+ $v = new self();
71
  $v->objectNumber = (int) $objectNumber;
72
  $v->generationNumber = (int) $generationNumber;
73
  $v->value = $value;
vendor/setasign/fpdi/src/PdfParser/Type/PdfIndirectObjectReference.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Type;
11
 
12
  /**
13
  * Class representing an indirect object reference
14
- *
15
- * @package setasign\Fpdi\PdfParser\Type
16
  */
17
  class PdfIndirectObjectReference extends PdfType
18
  {
@@ -25,7 +24,7 @@ class PdfIndirectObjectReference extends PdfType
25
  */
26
  public static function create($objectNumber, $generationNumber)
27
  {
28
- $v = new self;
29
  $v->value = (int) $objectNumber;
30
  $v->generationNumber = (int) $generationNumber;
31
 
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class representing an indirect object reference
 
 
15
  */
16
  class PdfIndirectObjectReference extends PdfType
17
  {
24
  */
25
  public static function create($objectNumber, $generationNumber)
26
  {
27
+ $v = new self();
28
  $v->value = (int) $objectNumber;
29
  $v->generationNumber = (int) $generationNumber;
30
 
vendor/setasign/fpdi/src/PdfParser/Type/PdfName.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -14,8 +15,6 @@ use setasign\Fpdi\PdfParser\Tokenizer;
14
 
15
  /**
16
  * Class representing a PDF name object
17
- *
18
- * @package setasign\Fpdi\PdfParser\Type
19
  */
20
  class PdfName extends PdfType
21
  {
@@ -28,7 +27,7 @@ class PdfName extends PdfType
28
  */
29
  public static function parse(Tokenizer $tokenizer, StreamReader $streamReader)
30
  {
31
- $v = new self;
32
  if (\strspn($streamReader->getByte(), "\x00\x09\x0A\x0C\x0D\x20()<>[]{}/%") === 0) {
33
  $v->value = (string) $tokenizer->getNextToken();
34
  return $v;
@@ -44,12 +43,13 @@ class PdfName extends PdfType
44
  * @param string $value
45
  * @return string
46
  */
47
- static public function unescape($value)
48
  {
49
- if (strpos($value, '#') === false)
50
  return $value;
 
51
 
52
- return preg_replace_callback('/#([a-fA-F\d]{2})/', function($matches) {
53
  return chr(hexdec($matches[1]));
54
  }, $value);
55
  }
@@ -62,7 +62,7 @@ class PdfName extends PdfType
62
  */
63
  public static function create($string)
64
  {
65
- $v = new self;
66
  $v->value = $string;
67
 
68
  return $v;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
15
 
16
  /**
17
  * Class representing a PDF name object
 
 
18
  */
19
  class PdfName extends PdfType
20
  {
27
  */
28
  public static function parse(Tokenizer $tokenizer, StreamReader $streamReader)
29
  {
30
+ $v = new self();
31
  if (\strspn($streamReader->getByte(), "\x00\x09\x0A\x0C\x0D\x20()<>[]{}/%") === 0) {
32
  $v->value = (string) $tokenizer->getNextToken();
33
  return $v;
43
  * @param string $value
44
  * @return string
45
  */
46
+ public static function unescape($value)
47
  {
48
+ if (strpos($value, '#') === false) {
49
  return $value;
50
+ }
51
 
52
+ return preg_replace_callback('/#([a-fA-F\d]{2})/', function ($matches) {
53
  return chr(hexdec($matches[1]));
54
  }, $value);
55
  }
62
  */
63
  public static function create($string)
64
  {
65
+ $v = new self();
66
  $v->value = $string;
67
 
68
  return $v;
vendor/setasign/fpdi/src/PdfParser/Type/PdfNull.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Type;
11
 
12
  /**
13
  * Class representing a PDF null object
14
- *
15
- * @package setasign\Fpdi\PdfParser\Type
16
  */
17
  class PdfNull extends PdfType
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class representing a PDF null object
 
 
15
  */
16
  class PdfNull extends PdfType
17
  {
vendor/setasign/fpdi/src/PdfParser/Type/PdfNumeric.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Type;
11
 
12
  /**
13
  * Class representing a numeric PDF object
14
- *
15
- * @package setasign\Fpdi\PdfParser\Type
16
  */
17
  class PdfNumeric extends PdfType
18
  {
@@ -24,7 +23,7 @@ class PdfNumeric extends PdfType
24
  */
25
  public static function create($value)
26
  {
27
- $v = new self;
28
  $v->value = $value + 0;
29
 
30
  return $v;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class representing a numeric PDF object
 
 
15
  */
16
  class PdfNumeric extends PdfType
17
  {
23
  */
24
  public static function create($value)
25
  {
26
+ $v = new self();
27
  $v->value = $value + 0;
28
 
29
  return $v;
vendor/setasign/fpdi/src/PdfParser/Type/PdfStream.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -22,8 +23,6 @@ use setasign\FpdiPdfParser\PdfParser\Filter\Predictor;
22
 
23
  /**
24
  * Class representing a PDF stream object
25
- *
26
- * @package setasign\Fpdi\PdfParser\Type
27
  */
28
  class PdfStream extends PdfType
29
  {
@@ -38,7 +37,7 @@ class PdfStream extends PdfType
38
  */
39
  public static function parse(PdfDictionary $dictionary, StreamReader $reader, PdfParser $parser = null)
40
  {
41
- $v = new self;
42
  $v->value = $dictionary;
43
  $v->reader = $reader;
44
  $v->parser = $parser;
@@ -54,7 +53,7 @@ class PdfStream extends PdfType
54
  }
55
  }
56
 
57
- if (false === $firstByte) {
58
  throw new PdfTypeException(
59
  'Unable to parse stream data. No newline after the stream keyword found.',
60
  PdfTypeException::NO_NEWLINE_AFTER_STREAM_KEYWORD
@@ -86,7 +85,7 @@ class PdfStream extends PdfType
86
  */
87
  public static function create(PdfDictionary $dictionary, $stream)
88
  {
89
- $v = new self;
90
  $v->value = $dictionary;
91
  $v->stream = (string) $stream;
92
 
@@ -115,7 +114,7 @@ class PdfStream extends PdfType
115
  /**
116
  * The stream reader instance.
117
  *
118
- * @var StreamReader
119
  */
120
  protected $reader;
121
 
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
23
 
24
  /**
25
  * Class representing a PDF stream object
 
 
26
  */
27
  class PdfStream extends PdfType
28
  {
37
  */
38
  public static function parse(PdfDictionary $dictionary, StreamReader $reader, PdfParser $parser = null)
39
  {
40
+ $v = new self();
41
  $v->value = $dictionary;
42
  $v->reader = $reader;
43
  $v->parser = $parser;
53
  }
54
  }
55
 
56
+ if ($firstByte === false) {
57
  throw new PdfTypeException(
58
  'Unable to parse stream data. No newline after the stream keyword found.',
59
  PdfTypeException::NO_NEWLINE_AFTER_STREAM_KEYWORD
85
  */
86
  public static function create(PdfDictionary $dictionary, $stream)
87
  {
88
+ $v = new self();
89
  $v->value = $dictionary;
90
  $v->stream = (string) $stream;
91
 
114
  /**
115
  * The stream reader instance.
116
  *
117
+ * @var StreamReader|null
118
  */
119
  protected $reader;
120
 
vendor/setasign/fpdi/src/PdfParser/Type/PdfString.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\StreamReader;
13
 
14
  /**
15
  * Class representing a PDF string object
16
- *
17
- * @package setasign\Fpdi\PdfParser\Type
18
  */
19
  class PdfString extends PdfType
20
  {
@@ -47,7 +46,7 @@ class PdfString extends PdfType
47
  $result = \substr($buffer, $startPos, $openBrackets + $pos - $startPos - 1);
48
  $streamReader->setOffset($pos);
49
 
50
- $v = new self;
51
  $v->value = $result;
52
 
53
  return $v;
@@ -61,7 +60,7 @@ class PdfString extends PdfType
61
  */
62
  public static function create($value)
63
  {
64
- $v = new self;
65
  $v->value = $value;
66
 
67
  return $v;
@@ -138,22 +137,23 @@ class PdfString extends PdfType
138
  $actualChar = \ord($s[$count]);
139
  // ascii 48 = number 0
140
  // ascii 57 = number 9
141
- if ($actualChar >= 48 &&
142
- $actualChar <= 57) {
143
  $oct = '' . $s[$count];
144
 
145
  /** @noinspection NotOptimalIfConditionsInspection */
146
- if ($count + 1 < $n &&
147
- \ord($s[$count + 1]) >= 48 &&
148
- \ord($s[$count + 1]) <= 57
 
149
  ) {
150
  $count++;
151
  $oct .= $s[$count];
152
 
153
  /** @noinspection NotOptimalIfConditionsInspection */
154
- if ($count + 1 < $n &&
155
- \ord($s[$count + 1]) >= 48 &&
156
- \ord($s[$count + 1]) <= 57
 
157
  ) {
158
  $oct .= $s[++$count];
159
  }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Class representing a PDF string object
 
 
17
  */
18
  class PdfString extends PdfType
19
  {
46
  $result = \substr($buffer, $startPos, $openBrackets + $pos - $startPos - 1);
47
  $streamReader->setOffset($pos);
48
 
49
+ $v = new self();
50
  $v->value = $result;
51
 
52
  return $v;
60
  */
61
  public static function create($value)
62
  {
63
+ $v = new self();
64
  $v->value = $value;
65
 
66
  return $v;
137
  $actualChar = \ord($s[$count]);
138
  // ascii 48 = number 0
139
  // ascii 57 = number 9
140
+ if ($actualChar >= 48 && $actualChar <= 57) {
 
141
  $oct = '' . $s[$count];
142
 
143
  /** @noinspection NotOptimalIfConditionsInspection */
144
+ if (
145
+ $count + 1 < $n
146
+ && \ord($s[$count + 1]) >= 48
147
+ && \ord($s[$count + 1]) <= 57
148
  ) {
149
  $count++;
150
  $oct .= $s[$count];
151
 
152
  /** @noinspection NotOptimalIfConditionsInspection */
153
+ if (
154
+ $count + 1 < $n
155
+ && \ord($s[$count + 1]) >= 48
156
+ && \ord($s[$count + 1]) <= 57
157
  ) {
158
  $oct .= $s[++$count];
159
  }
vendor/setasign/fpdi/src/PdfParser/Type/PdfToken.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfParser\Type;
11
 
12
  /**
13
  * Class representing PDF token object
14
- *
15
- * @package setasign\Fpdi\PdfParser\Type
16
  */
17
  class PdfToken extends PdfType
18
  {
@@ -24,7 +23,7 @@ class PdfToken extends PdfType
24
  */
25
  public static function create($token)
26
  {
27
- $v = new self;
28
  $v->value = $token;
29
 
30
  return $v;
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * Class representing PDF token object
 
 
15
  */
16
  class PdfToken extends PdfType
17
  {
23
  */
24
  public static function create($token)
25
  {
26
+ $v = new self();
27
  $v->value = $token;
28
 
29
  return $v;
vendor/setasign/fpdi/src/PdfParser/Type/PdfType.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -15,8 +16,6 @@ use setasign\Fpdi\PdfParser\PdfParserException;
15
 
16
  /**
17
  * A class defining a PDF data type
18
- *
19
- * @package setasign\Fpdi\PdfParser\Type
20
  */
21
  class PdfType
22
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
16
 
17
  /**
18
  * A class defining a PDF data type
 
 
19
  */
20
  class PdfType
21
  {
vendor/setasign/fpdi/src/PdfParser/Type/PdfTypeException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\PdfParser\PdfParserException;
13
 
14
  /**
15
  * Exception class for pdf type classes
16
- *
17
- * @package setasign\Fpdi\PdfParser\Type
18
  */
19
  class PdfTypeException extends PdfParserException
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Exception class for pdf type classes
 
 
17
  */
18
  class PdfTypeException extends PdfParserException
19
  {
vendor/setasign/fpdi/src/PdfReader/DataStructure/Rectangle.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -19,8 +20,6 @@ use setasign\Fpdi\PdfParser\Type\PdfTypeException;
19
 
20
  /**
21
  * Class representing a rectangle
22
- *
23
- * @package setasign\Fpdi\PdfReader\DataStructure
24
  */
25
  class Rectangle
26
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
20
 
21
  /**
22
  * Class representing a rectangle
 
 
23
  */
24
  class Rectangle
25
  {
vendor/setasign/fpdi/src/PdfReader/Page.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -25,8 +26,6 @@ use setasign\Fpdi\PdfParser\CrossReference\CrossReferenceException;
25
 
26
  /**
27
  * Class representing a page of a PDF document
28
- *
29
- * @package setasign\Fpdi\PdfReader
30
  */
31
  class Page
32
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
26
 
27
  /**
28
  * Class representing a page of a PDF document
 
 
29
  */
30
  class Page
31
  {
vendor/setasign/fpdi/src/PdfReader/PageBoundaries.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -11,8 +12,6 @@ namespace setasign\Fpdi\PdfReader;
11
 
12
  /**
13
  * An abstract class for page boundary constants and some helper methods
14
- *
15
- * @package setasign\Fpdi\PdfReader
16
  */
17
  abstract class PageBoundaries
18
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
12
 
13
  /**
14
  * An abstract class for page boundary constants and some helper methods
 
 
15
  */
16
  abstract class PageBoundaries
17
  {
vendor/setasign/fpdi/src/PdfReader/PdfReader.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -22,8 +23,6 @@ use setasign\Fpdi\PdfParser\Type\PdfTypeException;
22
 
23
  /**
24
  * A PDF reader class
25
- *
26
- * @package setasign\Fpdi\PdfReader
27
  */
28
  class PdfReader
29
  {
@@ -178,6 +177,7 @@ class PdfReader
178
  // let's reset the pages array and read all page objects
179
  $this->pages = [];
180
  $this->readPages(true);
 
181
  $page = $this->pages[$pageNumber - 1];
182
  }
183
  } else {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
23
 
24
  /**
25
  * A PDF reader class
 
 
26
  */
27
  class PdfReader
28
  {
177
  // let's reset the pages array and read all page objects
178
  $this->pages = [];
179
  $this->readPages(true);
180
+ // @phpstan-ignore-next-line
181
  $page = $this->pages[$pageNumber - 1];
182
  }
183
  } else {
vendor/setasign/fpdi/src/PdfReader/PdfReaderException.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -13,8 +14,6 @@ use setasign\Fpdi\FpdiException;
13
 
14
  /**
15
  * Exception for the pdf reader class
16
- *
17
- * @package setasign\Fpdi\PdfReader
18
  */
19
  class PdfReaderException extends FpdiException
20
  {
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
14
 
15
  /**
16
  * Exception for the pdf reader class
 
 
17
  */
18
  class PdfReaderException extends FpdiException
19
  {
vendor/setasign/fpdi/src/Tcpdf/Fpdi.php CHANGED
@@ -1,5 +1,13 @@
1
  <?php
2
 
 
 
 
 
 
 
 
 
3
  namespace setasign\Fpdi\Tcpdf;
4
 
5
  use setasign\Fpdi\FpdiTrait;
@@ -20,7 +28,7 @@ use setasign\Fpdi\PdfParser\Type\PdfTypeException;
20
  *
21
  * This class let you import pages of existing PDF documents into a reusable structure for TCPDF.
22
  *
23
- * @package setasign\Fpdi
24
  */
25
  class Fpdi extends \TCPDF
26
  {
@@ -34,7 +42,7 @@ class Fpdi extends \TCPDF
34
  *
35
  * @string
36
  */
37
- const VERSION = '2.3.1';
38
 
39
  /**
40
  * A counter for template ids.
@@ -46,7 +54,7 @@ class Fpdi extends \TCPDF
46
  /**
47
  * The currently used object number.
48
  *
49
- * @var int
50
  */
51
  protected $currentObjectNumber;
52
 
@@ -166,7 +174,6 @@ class Fpdi extends \TCPDF
166
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
167
  try {
168
  $object = $parser->getIndirectObject($objectNumber);
169
-
170
  } catch (CrossReferenceException $e) {
171
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
172
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
@@ -240,27 +247,24 @@ class Fpdi extends \TCPDF
240
  $string = PdfString::unescape($value->value);
241
  $string = $this->_encrypt_data($this->currentObjectNumber, $string);
242
  $value->value = \TCPDF_STATIC::_escape($string);
243
-
244
  } elseif ($value instanceof PdfHexString) {
245
  $filter = new AsciiHex();
246
  $string = $filter->decode($value->value);
247
  $string = $this->_encrypt_data($this->currentObjectNumber, $string);
248
  $value->value = $filter->encode($string, true);
249
-
250
  } elseif ($value instanceof PdfStream) {
251
  $stream = $value->getStream();
252
  $stream = $this->_encrypt_data($this->currentObjectNumber, $stream);
253
  $dictionary = $value->value;
254
  $dictionary->value['Length'] = PdfNumeric::create(\strlen($stream));
255
  $value = PdfStream::create($dictionary, $stream);
256
-
257
  } elseif ($value instanceof PdfIndirectObject) {
258
  /**
259
- * @var $value PdfIndirectObject
260
  */
261
  $this->currentObjectNumber = $this->objectMap[$this->currentReaderId][$value->objectNumber];
262
  }
263
 
264
  $this->fpdiWritePdfType($value);
265
  }
266
- }
1
  <?php
2
 
3
+ /**
4
+ * This file is part of FPDI
5
+ *
6
+ * @package setasign\Fpdi
7
+ * @copyright Copyright (c) 2020 Setasign GmbH & Co. KG (https://www.setasign.com)
8
+ * @license http://opensource.org/licenses/mit-license The MIT License
9
+ */
10
+
11
  namespace setasign\Fpdi\Tcpdf;
12
 
13
  use setasign\Fpdi\FpdiTrait;
28
  *
29
  * This class let you import pages of existing PDF documents into a reusable structure for TCPDF.
30
  *
31
+ * @method _encrypt_data(int $n, string $s) string
32
  */
33
  class Fpdi extends \TCPDF
34
  {
42
  *
43
  * @string
44
  */
45
+ const VERSION = '2.3.4';
46
 
47
  /**
48
  * A counter for template ids.
54
  /**
55
  * The currently used object number.
56
  *
57
+ * @var int|null
58
  */
59
  protected $currentObjectNumber;
60
 
174
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
175
  try {
176
  $object = $parser->getIndirectObject($objectNumber);
 
177
  } catch (CrossReferenceException $e) {
178
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
179
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
247
  $string = PdfString::unescape($value->value);
248
  $string = $this->_encrypt_data($this->currentObjectNumber, $string);
249
  $value->value = \TCPDF_STATIC::_escape($string);
 
250
  } elseif ($value instanceof PdfHexString) {
251
  $filter = new AsciiHex();
252
  $string = $filter->decode($value->value);
253
  $string = $this->_encrypt_data($this->currentObjectNumber, $string);
254
  $value->value = $filter->encode($string, true);
 
255
  } elseif ($value instanceof PdfStream) {
256
  $stream = $value->getStream();
257
  $stream = $this->_encrypt_data($this->currentObjectNumber, $stream);
258
  $dictionary = $value->value;
259
  $dictionary->value['Length'] = PdfNumeric::create(\strlen($stream));
260
  $value = PdfStream::create($dictionary, $stream);
 
261
  } elseif ($value instanceof PdfIndirectObject) {
262
  /**
263
+ * @var PdfIndirectObject $value
264
  */
265
  $this->currentObjectNumber = $this->objectMap[$this->currentReaderId][$value->objectNumber];
266
  }
267
 
268
  $this->fpdiWritePdfType($value);
269
  }
270
+ }
vendor/setasign/fpdi/src/TcpdfFpdi.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -14,7 +15,6 @@ namespace setasign\Fpdi;
14
  *
15
  * This class let you import pages of existing PDF documents into a reusable structure for TCPDF.
16
  *
17
- * @package setasign\Fpdi
18
  * @deprecated Class was moved to \setasign\Fpdi\Tcpdf\Fpdi
19
  */
20
  class TcpdfFpdi extends \setasign\Fpdi\Tcpdf\Fpdi
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
15
  *
16
  * This class let you import pages of existing PDF documents into a reusable structure for TCPDF.
17
  *
 
18
  * @deprecated Class was moved to \setasign\Fpdi\Tcpdf\Fpdi
19
  */
20
  class TcpdfFpdi extends \setasign\Fpdi\Tcpdf\Fpdi
vendor/setasign/fpdi/src/Tfpdf/FpdfTpl.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -15,10 +16,8 @@ use setasign\Fpdi\FpdfTplTrait;
15
  * Class FpdfTpl
16
  *
17
  * We need to change some access levels and implement the setPageFormat() method to bring back compatibility to tFPDF.
18
- *
19
- * @package setasign\Fpdi\Tfpdf
20
  */
21
  class FpdfTpl extends \tFPDF
22
  {
23
  use FpdfTplTrait;
24
- }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
16
  * Class FpdfTpl
17
  *
18
  * We need to change some access levels and implement the setPageFormat() method to bring back compatibility to tFPDF.
 
 
19
  */
20
  class FpdfTpl extends \tFPDF
21
  {
22
  use FpdfTplTrait;
23
+ }
vendor/setasign/fpdi/src/Tfpdf/Fpdi.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -19,8 +20,6 @@ use setasign\Fpdi\PdfParser\Type\PdfNull;
19
  * Class Fpdi
20
  *
21
  * This class let you import pages of existing PDF documents into a reusable structure for tFPDF.
22
- *
23
- * @package setasign\Fpdi
24
  */
25
  class Fpdi extends FpdfTpl
26
  {
@@ -31,7 +30,7 @@ class Fpdi extends FpdfTpl
31
  *
32
  * @string
33
  */
34
- const VERSION = '2.3.1';
35
 
36
  public function _enddoc()
37
  {
@@ -114,7 +113,6 @@ class Fpdi extends FpdfTpl
114
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
115
  try {
116
  $object = $parser->getIndirectObject($objectNumber);
117
-
118
  } catch (CrossReferenceException $e) {
119
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
120
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
@@ -153,4 +151,4 @@ class Fpdi extends FpdfTpl
153
  $this->buffer .= $s;
154
  }
155
  }
156
- }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
20
  * Class Fpdi
21
  *
22
  * This class let you import pages of existing PDF documents into a reusable structure for tFPDF.
 
 
23
  */
24
  class Fpdi extends FpdfTpl
25
  {
30
  *
31
  * @string
32
  */
33
+ const VERSION = '2.3.4';
34
 
35
  public function _enddoc()
36
  {
113
  while (($objectNumber = \array_pop($this->objectsToCopy[$readerId])) !== null) {
114
  try {
115
  $object = $parser->getIndirectObject($objectNumber);
 
116
  } catch (CrossReferenceException $e) {
117
  if ($e->getCode() === CrossReferenceException::OBJECT_NOT_FOUND) {
118
  $object = PdfIndirectObject::create($objectNumber, 0, new PdfNull());
151
  $this->buffer .= $s;
152
  }
153
  }
154
+ }
vendor/setasign/fpdi/src/autoload.php CHANGED
@@ -1,4 +1,5 @@
1
  <?php
 
2
  /**
3
  * This file is part of FPDI
4
  *
@@ -7,12 +8,13 @@
7
  * @license http://opensource.org/licenses/mit-license The MIT License
8
  */
9
 
 
10
  spl_autoload_register(function ($class) {
11
  if (strpos($class, 'setasign\Fpdi\\') === 0) {
12
  $filename = str_replace('\\', DIRECTORY_SEPARATOR, substr($class, 14)) . '.php';
13
  $fullpath = __DIR__ . DIRECTORY_SEPARATOR . $filename;
14
 
15
- if (file_exists($fullpath)) {
16
  /** @noinspection PhpIncludeInspection */
17
  require_once $fullpath;
18
  }
1
  <?php
2
+
3
  /**
4
  * This file is part of FPDI
5
  *
8
  * @license http://opensource.org/licenses/mit-license The MIT License
9
  */
10
 
11
+ // @phpstan-ignore-next-line
12
  spl_autoload_register(function ($class) {
13
  if (strpos($class, 'setasign\Fpdi\\') === 0) {
14
  $filename = str_replace('\\', DIRECTORY_SEPARATOR, substr($class, 14)) . '.php';
15
  $fullpath = __DIR__ . DIRECTORY_SEPARATOR . $filename;
16
 
17
+ if (is_file($fullpath)) {
18
  /** @noinspection PhpIncludeInspection */
19
  require_once $fullpath;
20
  }
woocommerce-germanized.php CHANGED
@@ -3,13 +3,13 @@
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.1.12
7
  * Author: vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 4.9
10
  * Tested up to: 5.5
11
- * WC requires at least: 3.4
12
- * WC tested up to: 4.4
13
  *
14
  * Text Domain: woocommerce-germanized
15
  * Domain Path: /i18n/languages/
@@ -69,7 +69,7 @@ if ( ! class_exists( 'WooCommerce_Germanized' ) ) :
69
  *
70
  * @var string
71
  */
72
- public $version = '3.1.12';
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.2.0
7
  * Author: vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 4.9
10
  * Tested up to: 5.5
11
+ * WC requires at least: 3.9
12
+ * WC tested up to: 4.5
13
  *
14
  * Text Domain: woocommerce-germanized
15
  * Domain Path: /i18n/languages/
69
  *
70
  * @var string
71
  */
72
+ public $version = '3.2.0';
73
 
74
  /**
75
  * @var WooCommerce_Germanized $instance of the plugin
wpml-config.xml CHANGED
@@ -61,32 +61,39 @@
61
  <key name="woocommerce_customer_revocation_settings">
62
  <key name="subject" />
63
  <key name="heading" />
 
64
  </key>
65
  <key name="woocommerce_customer_trusted_shops_settings">
66
  <key name="subject" />
67
  <key name="heading" />
 
68
  </key>
69
  <key name="woocommerce_customer_sepa_direct_debit_mandate_settings">
70
  <key name="subject" />
71
  <key name="heading" />
 
72
  </key>
73
  <key name="woocommerce_customer_paid_for_order_settings">
74
  <key name="subject" />
75
  <key name="heading" />
 
76
  </key>
77
  <key name="woocommerce_customer_new_account_activation_settings">
78
  <key name="subject" />
79
  <key name="heading" />
 
80
  </key>
81
  <key name="woocommerce_customer_shipment_settings">
82
  <key name="subject_full" />
83
  <key name="heading_full" />
84
  <key name="subject_partial" />
85
  <key name="heading_partial" />
 
86
  </key>
87
  <key name="woocommerce_customer_sepa_direct_debit_mandate_settings">
88
  <key name="subject" />
89
  <key name="heading" />
 
90
  </key>
91
  </admin-texts>
92
  </wpml-config>
61
  <key name="woocommerce_customer_revocation_settings">
62
  <key name="subject" />
63
  <key name="heading" />
64
+ <key name="additional_content" />
65
  </key>
66
  <key name="woocommerce_customer_trusted_shops_settings">
67
  <key name="subject" />
68
  <key name="heading" />
69
+ <key name="additional_content" />
70
  </key>
71
  <key name="woocommerce_customer_sepa_direct_debit_mandate_settings">
72
  <key name="subject" />
73
  <key name="heading" />
74
+ <key name="additional_content" />
75
  </key>
76
  <key name="woocommerce_customer_paid_for_order_settings">
77
  <key name="subject" />
78
  <key name="heading" />
79
+ <key name="additional_content" />
80
  </key>
81
  <key name="woocommerce_customer_new_account_activation_settings">
82
  <key name="subject" />
83
  <key name="heading" />
84
+ <key name="additional_content" />
85
  </key>
86
  <key name="woocommerce_customer_shipment_settings">
87
  <key name="subject_full" />
88
  <key name="heading_full" />
89
  <key name="subject_partial" />
90
  <key name="heading_partial" />
91
+ <key name="additional_content" />
92
  </key>
93
  <key name="woocommerce_customer_sepa_direct_debit_mandate_settings">
94
  <key name="subject" />
95
  <key name="heading" />
96
+ <key name="additional_content" />
97
  </key>
98
  </admin-texts>
99
  </wpml-config>