WooCommerce Germanized - Version 1.9.2

Version Description

  • Feature: Added Mulit-Currency-Support for Unit Prices (WPML)
  • Feature: Basic support for Subscriptions (Direct Debit Gateway)
  • Feature: WooCommerce 3.2 compatibility
  • Improvement: Pre-notification in order confirmation email (Direct Debit Gateway)
  • Improvement: Filter to adjust default SEPA Gateway order status
  • Improvement: Better SEPA data display in order management
  • Fix: Sanitizing for legal text removed line breaks
  • Fix: Send email instructions for invoice gateway
Download this release

Release Info

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

Code changes from version 1.9.1 to 1.9.2

Files changed (37) hide show
  1. assets/css/woocommerce-gzd-admin.css +35 -2
  2. assets/css/woocommerce-gzd-admin.min.css +1 -1
  3. assets/js/add-to-cart-variation.js +4 -0
  4. assets/js/add-to-cart-variation.min.js +1 -1
  5. i18n/languages/woocommerce-germanized-de_DE.mo +0 -0
  6. i18n/languages/woocommerce-germanized-de_DE.po +210 -132
  7. i18n/languages/woocommerce-germanized-de_DE_formal.mo +0 -0
  8. i18n/languages/woocommerce-germanized-de_DE_formal.po +213 -132
  9. i18n/languages/woocommerce-germanized.mo +0 -0
  10. i18n/languages/woocommerce-germanized.po +3 -3
  11. includes/abstracts/abstract-wc-gzd-product.php +32 -0
  12. includes/admin/class-wc-gzd-admin.php +25 -1
  13. includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php +1 -1
  14. includes/api/class-wc-gzd-rest-products-controller.php +1 -1
  15. includes/class-wc-gzd-ajax.php +1 -1
  16. includes/class-wc-gzd-checkout.php +8 -4
  17. includes/class-wc-gzd-install.php +2 -1
  18. includes/compatibility/class-wc-gzd-compatibility-woocommerce-dynamic-pricing.php +59 -0
  19. includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php +97 -0
  20. includes/compatibility/class-wc-gzd-compatibility-wpml.php +13 -0
  21. includes/gateways/direct-debit/assets/js/direct-debit.js +3 -2
  22. includes/gateways/direct-debit/assets/js/direct-debit.min.js +1 -1
  23. includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php +416 -268
  24. includes/gateways/direct-debit/views/html-export.php +4 -0
  25. includes/gateways/invoice/class-wc-gzd-gateway-invoice.php +17 -5
  26. includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php +15 -39
  27. includes/updates/woocommerce-gzd-update-1.9.2.php +15 -0
  28. includes/wc-gzd-cart-functions.php +2 -1
  29. includes/wc-gzd-core-functions.php +1 -1
  30. includes/wc-gzd-legacy-functions.php +8 -0
  31. includes/wc-gzd-template-functions.php +1 -1
  32. readme.txt +13 -3
  33. templates/checkout/review-order-product-table.php +2 -0
  34. templates/emails/email-sepa-data.php +9 -1
  35. templates/trusted-shops/product-sticker.php +1 -1
  36. templates/trusted-shops/product-widget.php +2 -2
  37. woocommerce-germanized.php +6 -5
assets/css/woocommerce-gzd-admin.css CHANGED
@@ -143,12 +143,45 @@ table.wc-gzd-tax-example tr th:first-child, table.wc-gzd-tax-example tr td:first
143
  cursor: move;
144
  }
145
 
146
- #order_data .order_data_column ._direct_debit_holder_field, #order_data .order_data_column ._direct_debit_iban_field, #order_data .order_data_column ._direct_debit_bic_field, #order_data .order_data_column ._direct_debit_reference_field {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
147
  clear: left;
148
  width: 100% !important;
149
  }
150
 
151
- #order_data .order_data_column ._direct_debit_holder_field input, #order_data .order_data_column ._direct_debit_iban_field input, #order_data .order_data_column ._direct_debit_bic_field input, #order_data .order_data_column ._direct_debit_reference_field input {
152
  width: 100%;
153
  }
154
 
143
  cursor: move;
144
  }
145
 
146
+ #gzd-admin-sepa {
147
+ padding-top: 1em;
148
+ display: block;
149
+ clear: both;
150
+ width: 100%;
151
+ }
152
+
153
+ #order_data .order_data_column a.download_sepa_xml {
154
+ width: 14px;
155
+ height: 0;
156
+ padding: 14px 0 0;
157
+ margin: 0 0 0 6px;
158
+ overflow: hidden;
159
+ position: relative;
160
+ color: #999;
161
+ border: 0;
162
+ float: right;
163
+ }
164
+
165
+ #order_data .order_data_column a.download_sepa_xml::after {
166
+ font-family: Dashicons;
167
+ content: '\f546';
168
+ position: absolute;
169
+ top: 0;
170
+ left: 0;
171
+ text-align: center;
172
+ vertical-align: top;
173
+ line-height: 14px;
174
+ font-size: 14px;
175
+ font-weight: 400;
176
+ -webkit-font-smoothing: antialiased;
177
+ }
178
+
179
+ #order_data .order_data_column ._direct_debit_holder_field, #order_data .order_data_column ._direct_debit_iban_field, #order_data .order_data_column ._direct_debit_bic_field, #order_data .order_data_column ._direct_debit_mandate_id_field {
180
  clear: left;
181
  width: 100% !important;
182
  }
183
 
184
+ #order_data .order_data_column ._direct_debit_holder_field input, #order_data .order_data_column ._direct_debit_iban_field input, #order_data .order_data_column ._direct_debit_bic_field input, #order_data .order_data_column ._direct_debit_mandate_id_field input {
185
  width: 100%;
186
  }
187
 
assets/css/woocommerce-gzd-admin.min.css CHANGED
@@ -1 +1 @@
1
- .wc-gzd-button,.wc-gzd-button:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15)!important}.wc-gzd-admin-settings-agbs,.wc-gzd-admin-settings-sidebar img,.wc-gzd-admin-settings-widerruf{width:100%}.wc-gzd-button{background-color:#7b9f35!important}.wc-gzd-button:hover{background-color:#73982a!important}.wc-gzd-pro:hover,.wc-gzd-pro:visited{color:#FFF}.wc-gzd-button,.wc-gzd-button:hover{border:1px solid #557020!important;text-shadow:none!important}.wc-gzd-admin-settings tr.single_select_page .description{display:block}.wc-gzd-admin-settings td.forminp-select .description{position:relative;top:3px;margin-left:10px}#order_data ._shipping_parcelshop_post_number_field{clear:left;width:100%!important}table.form-table .forminp-radio fieldset p{margin-bottom:1em}p._unit_price_auto_field label{display:block!important;margin-bottom:5px}.woocommerce-gzd-message ul{margin-left:20px}.woocommerce-gzd-message ul li{list-style:disc}.wc-gzd-admin-settings,.wc-gzd-admin-settings-sidebar{display:inline-block;box-sizing:border-box;vertical-align:top}table.data_table tr td p.form-field{margin:0!important;padding:0!important}.variable_cart_mini_desc .wp-editor-tools{margin-top:-3em}.variable_cart_mini_desc_pre .wp-editor-tools{margin-top:-2em}.wc-gzd-admin-settings{width:70%;border-right:1px solid #CCC;padding-right:2%}.wc-gzd-admin-settings-sidebar{padding-left:2%;margin-left:-4px;width:30%}.wc-gzd-admin-settings-sidebar .browser{border:1px solid #CCC;border-radius:3px}.wc-gzd-admin-settings-sidebar .small{font-size:.9em;display:block;margin-top:.5em}._billing_address_1_field,._billing_title_field,._shipping_address_1_field,._shipping_title_field{width:100%!important}.wc-gzd-button-wrapper .button{margin-right:1em}.wc-gzd-premium-section-tab,.wc-gzd-pro{font-size:9px;background:#0074a2;border-radius:3px;line-height:9px;color:#FFF;text-align:center;text-transform:uppercase;padding:1px 3px;position:relative;top:-1px}.wc-gzd-premium-section-tab{background:#e4e4e4;border:1px solid #CCC;color:#555;padding:0 3px}.wc-gzd-pro{background:#222;font-style:normal;opacity:1!important;text-decoration:none}.tourbus-leg-inner .wc-gzd-pro{top:-3px}.forminp-image img,.wc-gzd-premium img{width:100%;height:auto;opacity:.7}.woocommerce table.form-table th.forminp-image{padding-right:0}._unit_price_auto_field .wc-gzd-premium-desc,._unit_price_auto_field input,._unit_price_auto_field label{opacity:.6}table.wc-gzd-tax-example tr td,table.wc-gzd-tax-example tr th{padding:5px;font-size:.9em}table.wc-gzd-tax-example tr td:first-child,table.wc-gzd-tax-example tr th:first-child{padding-left:0}.wc-gzd-admin-settings tbody.ui-sortable tr:hover{cursor:move}#order_data .order_data_column ._direct_debit_bic_field,#order_data .order_data_column ._direct_debit_holder_field,#order_data .order_data_column ._direct_debit_iban_field,#order_data .order_data_column ._direct_debit_reference_field{clear:left;width:100%!important}#order_data .order_data_column ._direct_debit_bic_field input,#order_data .order_data_column ._direct_debit_holder_field input,#order_data .order_data_column ._direct_debit_iban_field input,#order_data .order_data_column ._direct_debit_reference_field input{width:100%}.wc-gzd-text-red{color:red}.wc-gzd-status-text{font-weight:600}.wc-gzd-text-green{color:green}.order_actions .xml{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.order_actions .xml:after{content:"\e00d";font-family:WooCommerce;text-indent:0;position:absolute;width:100%;height:100%;speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;line-height:1.85;margin:0;text-align:center;font-weight:400}
1
+ .wc-gzd-button,.wc-gzd-button:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 0 rgba(0,0,0,.15)!important}.wc-gzd-admin-settings-agbs,.wc-gzd-admin-settings-sidebar img,.wc-gzd-admin-settings-widerruf{width:100%}.wc-gzd-button{background-color:#7b9f35!important}.wc-gzd-button:hover{background-color:#73982a!important}.wc-gzd-pro:hover,.wc-gzd-pro:visited{color:#FFF}#gzd-admin-sepa{padding-top:1em;display:block;clear:both;width:100%}#order_data .order_data_column a.download_sepa_xml{width:14px;height:0;padding:14px 0 0;margin:0 0 0 6px;overflow:hidden;position:relative;color:#999;border:0;float:right}#order_data .order_data_column a.download_sepa_xml::after{font-family:Dashicons;content:'\f546';position:absolute;top:0;left:0;text-align:center;vertical-align:top;line-height:14px;font-size:14px;font-weight:400;-webkit-font-smoothing:antialiased}#order_data .order_data_column ._direct_debit_bic_field,#order_data .order_data_column ._direct_debit_holder_field,#order_data .order_data_column ._direct_debit_iban_field,#order_data .order_data_column ._direct_debit_mandate_id_field{clear:left;width:100%!important}#order_data .order_data_column ._direct_debit_bic_field input,#order_data .order_data_column ._direct_debit_holder_field input,#order_data .order_data_column ._direct_debit_iban_field input,#order_data .order_data_column ._direct_debit_mandate_id_field input{width:100%}.wc-gzd-button,.wc-gzd-button:hover{border:1px solid #557020!important;text-shadow:none!important}.wc-gzd-admin-settings tr.single_select_page .description{display:block}.wc-gzd-admin-settings td.forminp-select .description{position:relative;top:3px;margin-left:10px}#order_data ._shipping_parcelshop_post_number_field{clear:left;width:100%!important}table.form-table .forminp-radio fieldset p{margin-bottom:1em}p._unit_price_auto_field label{display:block!important;margin-bottom:5px}.woocommerce-gzd-message ul{margin-left:20px}.woocommerce-gzd-message ul li{list-style:disc}.wc-gzd-admin-settings,.wc-gzd-admin-settings-sidebar{display:inline-block;box-sizing:border-box;vertical-align:top}table.data_table tr td p.form-field{margin:0!important;padding:0!important}.variable_cart_mini_desc .wp-editor-tools{margin-top:-3em}.variable_cart_mini_desc_pre .wp-editor-tools{margin-top:-2em}.wc-gzd-admin-settings{width:70%;border-right:1px solid #CCC;padding-right:2%}.wc-gzd-admin-settings-sidebar{padding-left:2%;margin-left:-4px;width:30%}.wc-gzd-admin-settings-sidebar .browser{border:1px solid #CCC;border-radius:3px}.wc-gzd-admin-settings-sidebar .small{font-size:.9em;display:block;margin-top:.5em}._billing_address_1_field,._billing_title_field,._shipping_address_1_field,._shipping_title_field{width:100%!important}.wc-gzd-button-wrapper .button{margin-right:1em}.wc-gzd-premium-section-tab,.wc-gzd-pro{font-size:9px;background:#0074a2;border-radius:3px;line-height:9px;color:#FFF;text-align:center;text-transform:uppercase;padding:1px 3px;position:relative;top:-1px}.wc-gzd-premium-section-tab{background:#e4e4e4;border:1px solid #CCC;color:#555;padding:0 3px}.wc-gzd-pro{background:#222;font-style:normal;opacity:1!important;text-decoration:none}.tourbus-leg-inner .wc-gzd-pro{top:-3px}.forminp-image img,.wc-gzd-premium img{width:100%;height:auto;opacity:.7}.woocommerce table.form-table th.forminp-image{padding-right:0}._unit_price_auto_field .wc-gzd-premium-desc,._unit_price_auto_field input,._unit_price_auto_field label{opacity:.6}table.wc-gzd-tax-example tr td,table.wc-gzd-tax-example tr th{padding:5px;font-size:.9em}table.wc-gzd-tax-example tr td:first-child,table.wc-gzd-tax-example tr th:first-child{padding-left:0}.wc-gzd-admin-settings tbody.ui-sortable tr:hover{cursor:move}#order_data .order_data_column ._direct_debit_bic_field,#order_data .order_data_column ._direct_debit_holder_field,#order_data .order_data_column ._direct_debit_iban_field,#order_data .order_data_column ._direct_debit_reference_field{clear:left;width:100%!important}#order_data .order_data_column ._direct_debit_bic_field input,#order_data .order_data_column ._direct_debit_holder_field input,#order_data .order_data_column ._direct_debit_iban_field input,#order_data .order_data_column ._direct_debit_reference_field input{width:100%}.wc-gzd-text-red{color:red}.wc-gzd-status-text{font-weight:600}.wc-gzd-text-green{color:green}.order_actions .xml{display:block;text-indent:-9999px;position:relative;padding:0!important;height:2em!important;width:2em}.order_actions .xml:after{content:"\e00d";font-family:WooCommerce;text-indent:0;position:absolute;width:100%;height:100%;speak:none;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;top:0;left:0;line-height:1.85;margin:0;text-align:center;font-weight:400}
assets/js/add-to-cart-variation.js CHANGED
@@ -37,6 +37,9 @@
37
 
38
  .on( 'found_variation', function( event, variation ) {
39
 
 
 
 
40
  if ( ! $wrapper.find( '.price:first' ).hasClass( 'variation_modified' ) ) {
41
  $wrapper.append( '<div class="org_price org_product_info">' + $wrapper.find( '.price:not(.price-unit):first' ).html() + '</div>' );
42
  if ( $wrapper.find( '.delivery-time-info:first' ).length > 0 ) {
@@ -56,6 +59,7 @@
56
  }
57
  $( '.org_product_info' ).hide();
58
  }
 
59
  if ( variation.price_html !== '' ) {
60
  $( '.single_variation .price' ).hide();
61
  $wrapper.find( '.price:not(.price-unit):first' ).html( variation.price_html ).addClass( 'variation_modified' );
37
 
38
  .on( 'found_variation', function( event, variation ) {
39
 
40
+ if ( ! variation.variation_is_visible )
41
+ return;
42
+
43
  if ( ! $wrapper.find( '.price:first' ).hasClass( 'variation_modified' ) ) {
44
  $wrapper.append( '<div class="org_price org_product_info">' + $wrapper.find( '.price:not(.price-unit):first' ).html() + '</div>' );
45
  if ( $wrapper.find( '.delivery-time-info:first' ).length > 0 ) {
59
  }
60
  $( '.org_product_info' ).hide();
61
  }
62
+
63
  if ( variation.price_html !== '' ) {
64
  $( '.single_variation .price' ).hide();
65
  $wrapper.find( '.price:not(.price-unit):first' ).html( variation.price_html ).addClass( 'variation_modified' );
assets/js/add-to-cart-variation.min.js CHANGED
@@ -1,4 +1,4 @@
1
  /*!
2
  * Variations Plugin
3
  */
4
- !function(a){a.fn.wc_gzd_variation_form=function(){var b=this,c=b.parents(wc_gzd_add_to_cart_variation_params.wrapper);a.fn.wc_gzd_variation_form.reset_variation=function(){c.find(".org_price").length>0&&c.find(".price.variation_modified:not(.price-unit)").html(c.find(".org_price").html()).removeClass("variation_modified").show(),c.find(".org_delivery_time").length>0&&c.find(".delivery-time-info:first").html(c.find(".org_delivery_time").html()).removeClass("variation_modified").show(),c.find(".org_unit_price").length>0&&c.find(".price-unit:first").html(c.find(".org_unit_price").html()).removeClass("variation_modified").show(),c.find(".org_tax_info").length>0&&c.find(".tax-info:first").html(c.find(".org_tax_info").html()).removeClass("variation_modified").show(),c.find(".org_shipping_costs_info").length>0&&c.find(".shipping-costs-info:first").html(c.find(".org_shipping_costs_info").html()).removeClass("variation_modified").show(),c.find(".org_product_units").length>0&&c.find(".product-units:first").html(c.find(".org_product_units").html()).removeClass("variation_modified").show(),a(".org_product_info").remove(),a(".variation_modified").remove()},b.on("found_variation",function(b,d){c.find(".price:first").hasClass("variation_modified")||(c.append('<div class="org_price org_product_info">'+c.find(".price:not(.price-unit):first").html()+"</div>"),c.find(".delivery-time-info:first").length>0&&c.append('<div class="org_delivery_time org_product_info">'+c.find(".delivery-time-info:first").html()+"</div>"),c.find(".tax-info:first").length>0&&c.append('<div class="org_tax_info org_product_info">'+c.find(".tax-info:first").html()+"</div>"),c.find(".shipping-costs-info:first").length>0&&c.append('<div class="org_shipping_costs_info org_product_info">'+c.find(".shipping-costs-info:first").html()+"</div>"),c.find(".price-unit:first").length>0&&c.append('<div class="org_unit_price org_product_info">'+c.find(".price-unit:first").html()+"</div>"),c.find(".product-units:first").length>0&&c.append('<div class="org_product_units org_product_info">'+c.find(".product-units:first").html()+"</div>"),a(".org_product_info").hide()),""!==d.price_html&&(a(".single_variation .price").hide(),c.find(".price:not(.price-unit):first").html(d.price_html).addClass("variation_modified"),c.find(".price:not(.price-unit):first").find(".price").contents().unwrap()),c.find(".delivery-time-info:first").hide(),c.find(".price-unit:first").hide(),c.find(".tax-info:first").hide(),c.find(".shipping-costs-info:first").hide(),c.find(".product-units:first").hide(),""!==d.delivery_time&&c.find("p.delivery-time-info:first").html(d.delivery_time).addClass("variation_modified").show(),""!==d.tax_info&&c.find(".tax-info:first").html(d.tax_info).addClass("variation_modified").show(),""!==d.shipping_costs_info&&c.find(".shipping-costs-info:first").html(d.shipping_costs_info).addClass("variation_modified").show(),""!==d.unit_price&&(c.find(".price-unit:first").length?c.find(".price-unit:first").html(d.unit_price).addClass("variation-modified").show():(c.find(".price-unit:first").remove(),c.find("p.price:first").after('<p class="price price-unit smaller variation_modified">'+d.unit_price+"</p>").show())),""!==d.product_units&&(c.find(".product-units:first").length?c.find(".product-units:first").html(d.product_units).addClass("variation-modified").show():(c.find(".product-units:first").remove(),c.find(".product_meta:first").prepend('<span class="product-units-wrapper product-units variation_modified">'+d.product_units+"</span>").show()))}).on("update_variation_values",function(){setTimeout(function(){(!a(".single_variation_wrap").is(":visible")||a(".single_add_to_cart_button").is("[disabled]"))&&a.fn.wc_gzd_variation_form.reset_variation()},250)}).on("click",".reset_variations",function(){a.fn.wc_gzd_variation_form.reset_variation()}).on("reset_data",function(){a.fn.wc_gzd_variation_form.reset_variation()})},a(function(){return"undefined"==typeof wc_add_to_cart_variation_params?!1:(a(".variations_form").wc_gzd_variation_form(),a(".variations_form .variations select").change(),void a(".variations_form .variations input:radio:checked").change())})}(jQuery,window,document);
1
  /*!
2
  * Variations Plugin
3
  */
4
+ !function(a){a.fn.wc_gzd_variation_form=function(){var b=this,c=b.parents(wc_gzd_add_to_cart_variation_params.wrapper);a.fn.wc_gzd_variation_form.reset_variation=function(){c.find(".org_price").length>0&&c.find(".price.variation_modified:not(.price-unit)").html(c.find(".org_price").html()).removeClass("variation_modified").show(),c.find(".org_delivery_time").length>0&&c.find(".delivery-time-info:first").html(c.find(".org_delivery_time").html()).removeClass("variation_modified").show(),c.find(".org_unit_price").length>0&&c.find(".price-unit:first").html(c.find(".org_unit_price").html()).removeClass("variation_modified").show(),c.find(".org_tax_info").length>0&&c.find(".tax-info:first").html(c.find(".org_tax_info").html()).removeClass("variation_modified").show(),c.find(".org_shipping_costs_info").length>0&&c.find(".shipping-costs-info:first").html(c.find(".org_shipping_costs_info").html()).removeClass("variation_modified").show(),c.find(".org_product_units").length>0&&c.find(".product-units:first").html(c.find(".org_product_units").html()).removeClass("variation_modified").show(),a(".org_product_info").remove(),a(".variation_modified").remove()},b.on("found_variation",function(b,d){d.variation_is_visible&&(c.find(".price:first").hasClass("variation_modified")||(c.append('<div class="org_price org_product_info">'+c.find(".price:not(.price-unit):first").html()+"</div>"),c.find(".delivery-time-info:first").length>0&&c.append('<div class="org_delivery_time org_product_info">'+c.find(".delivery-time-info:first").html()+"</div>"),c.find(".tax-info:first").length>0&&c.append('<div class="org_tax_info org_product_info">'+c.find(".tax-info:first").html()+"</div>"),c.find(".shipping-costs-info:first").length>0&&c.append('<div class="org_shipping_costs_info org_product_info">'+c.find(".shipping-costs-info:first").html()+"</div>"),c.find(".price-unit:first").length>0&&c.append('<div class="org_unit_price org_product_info">'+c.find(".price-unit:first").html()+"</div>"),c.find(".product-units:first").length>0&&c.append('<div class="org_product_units org_product_info">'+c.find(".product-units:first").html()+"</div>"),a(".org_product_info").hide()),""!==d.price_html&&(a(".single_variation .price").hide(),c.find(".price:not(.price-unit):first").html(d.price_html).addClass("variation_modified"),c.find(".price:not(.price-unit):first").find(".price").contents().unwrap()),c.find(".delivery-time-info:first").hide(),c.find(".price-unit:first").hide(),c.find(".tax-info:first").hide(),c.find(".shipping-costs-info:first").hide(),c.find(".product-units:first").hide(),""!==d.delivery_time&&c.find("p.delivery-time-info:first").html(d.delivery_time).addClass("variation_modified").show(),""!==d.tax_info&&c.find(".tax-info:first").html(d.tax_info).addClass("variation_modified").show(),""!==d.shipping_costs_info&&c.find(".shipping-costs-info:first").html(d.shipping_costs_info).addClass("variation_modified").show(),""!==d.unit_price&&(c.find(".price-unit:first").length?c.find(".price-unit:first").html(d.unit_price).addClass("variation-modified").show():(c.find(".price-unit:first").remove(),c.find("p.price:first").after('<p class="price price-unit smaller variation_modified">'+d.unit_price+"</p>").show())),""!==d.product_units&&(c.find(".product-units:first").length?c.find(".product-units:first").html(d.product_units).addClass("variation-modified").show():(c.find(".product-units:first").remove(),c.find(".product_meta:first").prepend('<span class="product-units-wrapper product-units variation_modified">'+d.product_units+"</span>").show())))}).on("update_variation_values",function(){setTimeout(function(){(!a(".single_variation_wrap").is(":visible")||a(".single_add_to_cart_button").is("[disabled]"))&&a.fn.wc_gzd_variation_form.reset_variation()},250)}).on("click",".reset_variations",function(){a.fn.wc_gzd_variation_form.reset_variation()}).on("reset_data",function(){a.fn.wc_gzd_variation_form.reset_variation()})},a(function(){return"undefined"==typeof wc_add_to_cart_variation_params?!1:(a(".variations_form").wc_gzd_variation_form(),a(".variations_form .variations select").change(),void a(".variations_form .variations input:radio:checked").change())})}(jQuery,window,document);
i18n/languages/woocommerce-germanized-de_DE.mo CHANGED
Binary file
i18n/languages/woocommerce-germanized-de_DE.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized v1.5.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2017-08-04 10:45+0200\n"
6
- "PO-Revision-Date: 2017-08-04 10:45+0200\n"
7
- "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\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.0.3\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
17
  "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
@@ -92,29 +92,29 @@ msgid "l"
92
  msgstr "l"
93
 
94
  # @ woocommerce-germanized
95
- #: includes/abstracts/abstract-wc-gzd-product.php:230
96
- #: includes/abstracts/abstract-wc-gzd-product.php:239
97
- #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
98
  #: includes/wc-gzd-core-functions.php:129
99
- #: includes/wc-gzd-template-functions.php:608 woocommerce-germanized.php:822
100
  msgid "incl. VAT"
101
  msgstr "inkl. MwSt."
102
 
103
  # @ woocommerce-germanized
104
- #: includes/abstracts/abstract-wc-gzd-product.php:230
105
  msgid "excl. VAT"
106
  msgstr "exkl. MwSt."
107
 
108
  # @ woocommerce-germanized
109
- #: includes/abstracts/abstract-wc-gzd-product.php:232
110
- #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
111
- #: includes/wc-gzd-core-functions.php:129 woocommerce-germanized.php:822
112
  #, php-format
113
  msgid "incl. %s%% VAT"
114
  msgstr "inkl. %s%% MwSt."
115
 
116
  # @ woocommerce-germanized
117
- #: includes/abstracts/abstract-wc-gzd-product.php:232
118
  #, php-format
119
  msgid "excl. %s%% VAT"
120
  msgstr "exkl. %s%% MwSt."
@@ -148,7 +148,7 @@ msgstr "Ja, Kunde wurde per Double Opt-In bestätigt."
148
  #: includes/export/class-wc-gzd-product-export.php:32
149
  #: includes/import/class-wc-gzd-product-import.php:23
150
  #: includes/import/class-wc-gzd-product-import.php:32
151
- #: woocommerce-germanized.php:92 woocommerce-germanized.php:101
152
  msgid "Cheatin&#8217; huh?"
153
  msgstr "So geht das leider nicht.."
154
 
@@ -209,44 +209,53 @@ msgstr "Willkommen bei WooCommerce Germanized"
209
  msgid "Go to WooCommerce Germanized Settings"
210
  msgstr "zu den WooCommerce Germanized Einstellungen"
211
 
 
 
 
 
 
 
 
 
 
212
  # @ woocommerce-germanized
213
- #: includes/admin/class-wc-gzd-admin.php:67
214
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:25
215
  msgid "Germanized"
216
  msgstr "Germanized"
217
 
218
- #: includes/admin/class-wc-gzd-admin.php:77
219
  msgid "Parcel Delivery Data Transfer:"
220
  msgstr "Paketdienstleister Datenweitergabe:"
221
 
222
- #: includes/admin/class-wc-gzd-admin.php:78
223
  msgid "allowed"
224
  msgstr "akzeptiert"
225
 
226
- #: includes/admin/class-wc-gzd-admin.php:78
227
  msgid "not allowed"
228
  msgstr "nicht akzeptiert"
229
 
230
  # @ woocommerce-germanized
231
- #: includes/admin/class-wc-gzd-admin.php:151
232
  msgid "Optional Email Content"
233
  msgstr "Optionaler E-Mail Inhalt"
234
 
235
  # @ woocommerce-germanized
236
- #: includes/admin/class-wc-gzd-admin.php:160
237
  msgid "Add content which will be replacing default page content within emails."
238
  msgstr ""
239
  "Fülle dieses Feld aus um einen abweichenden E-Mail Anhangstext für diese "
240
  "Seite zu bestimmen."
241
 
242
  # @ woocommerce-germanized
243
- #: includes/admin/class-wc-gzd-admin.php:170
244
  #: includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:152
245
  msgid "Optional Mini Description"
246
  msgstr "Warenkorb Kurzbeschreibung"
247
 
248
  # @ woocommerce-germanized
249
- #: includes/admin/class-wc-gzd-admin.php:187
250
  msgid ""
251
  "This content will be shown as short product description within checkout and "
252
  "emails."
@@ -1102,7 +1111,7 @@ msgstr "Kunden"
1102
 
1103
  # @ woocommerce-germanized
1104
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:514
1105
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:559
1106
  msgid "Checkbox"
1107
  msgstr "Checkbox"
1108
 
@@ -2030,7 +2039,7 @@ msgstr ""
2030
 
2031
  # @ woocommerce-germanized
2032
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1156
2033
- #: includes/wc-gzd-cart-functions.php:380
2034
  msgid ""
2035
  "To retrieve direct access to digital content you have to agree to the loss "
2036
  "of your right of withdrawal."
@@ -2107,7 +2116,7 @@ msgstr ""
2107
 
2108
  # @ woocommerce-germanized
2109
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1185
2110
- #: includes/wc-gzd-cart-functions.php:405
2111
  msgid ""
2112
  "For services: I demand and acknowledge the immediate performance of the "
2113
  "service before the expiration of the withdrawal period. I acknowledge that "
@@ -2125,7 +2134,7 @@ msgstr "Fehlermeldung"
2125
 
2126
  # @ woocommerce-germanized
2127
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1195
2128
- #: includes/wc-gzd-cart-functions.php:416
2129
  msgid ""
2130
  "To allow the immediate performance of the services you have to agree to the "
2131
  "loss of your right of withdrawal."
@@ -2223,7 +2232,7 @@ msgstr ""
2223
  "den Titel der Versandmethoden einzubetten."
2224
 
2225
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1233
2226
- #: includes/wc-gzd-cart-functions.php:465
2227
  msgid ""
2228
  "Yes, I would like to be reminded via E-mail about parcel delivery "
2229
  "({shipping_method_title}). Your E-mail Address will only be transferred to "
@@ -2892,7 +2901,7 @@ msgstr ""
2892
 
2893
  # @ woocommerce-germanized
2894
  #: includes/admin/views/html-settings-pro.php:25
2895
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:60
2896
  msgid "Upgrade now"
2897
  msgstr "jetzt upgraden"
2898
 
@@ -2925,8 +2934,8 @@ msgstr "PostNummer"
2925
  # @ woocommerce-germanized
2926
  #: includes/api/class-wc-gzd-rest-customers-controller.php:163
2927
  #: includes/api/class-wc-gzd-rest-orders-controller.php:194
2928
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:26
2929
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:478
2930
  #: includes/gateways/direct-debit/views/html-export.php:27
2931
  msgid "Direct Debit"
2932
  msgstr "Lastschrift"
@@ -2934,31 +2943,31 @@ msgstr "Lastschrift"
2934
  # @ woocommerce-germanized
2935
  #: includes/api/class-wc-gzd-rest-customers-controller.php:168
2936
  #: includes/api/class-wc-gzd-rest-orders-controller.php:199
2937
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:280
2938
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:304
2939
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:504
2940
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:632
2941
  msgid "Account Holder"
2942
  msgstr "Kontoinhaber"
2943
 
2944
  # @ woocommerce-germanized
2945
  #: includes/api/class-wc-gzd-rest-customers-controller.php:173
2946
  #: includes/api/class-wc-gzd-rest-orders-controller.php:204
2947
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:281
2948
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:311
2949
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:512
2950
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:636
2951
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:728
2952
  msgid "IBAN"
2953
  msgstr "IBAN"
2954
 
2955
  # @ woocommerce-germanized
2956
  #: includes/api/class-wc-gzd-rest-customers-controller.php:178
2957
  #: includes/api/class-wc-gzd-rest-orders-controller.php:209
2958
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:282
2959
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:318
2960
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:640
2961
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:729
2962
  msgid "BIC/SWIFT"
2963
  msgstr "BIC/SWIFT"
2964
 
@@ -2976,8 +2985,8 @@ msgstr "Paketdienstleister Datenweitergabe"
2976
 
2977
  # @ woocommerce-germanized
2978
  #: includes/api/class-wc-gzd-rest-orders-controller.php:214
2979
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:286
2980
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:325
2981
  msgid "Mandate Reference ID"
2982
  msgstr "Mandat-Referenznummer"
2983
 
@@ -3185,7 +3194,7 @@ msgstr ""
3185
  #: includes/class-wc-gzd-checkout.php:289
3186
  #: includes/class-wc-gzd-checkout.php:297
3187
  #: includes/class-wc-gzd-checkout.php:322
3188
- #: includes/class-wc-gzd-checkout.php:464
3189
  #: includes/class-wc-gzd-customer-helper.php:114
3190
  #: includes/class-wc-gzd-customer-helper.php:122
3191
  #: includes/class-wc-gzd-revocation.php:41
@@ -3196,8 +3205,8 @@ msgstr "Herr"
3196
  #: includes/class-wc-gzd-checkout.php:289
3197
  #: includes/class-wc-gzd-checkout.php:297
3198
  #: includes/class-wc-gzd-checkout.php:323
3199
- #: includes/class-wc-gzd-checkout.php:464
3200
- #: includes/class-wc-gzd-checkout.php:469
3201
  #: includes/class-wc-gzd-customer-helper.php:114
3202
  #: includes/class-wc-gzd-customer-helper.php:122
3203
  #: includes/class-wc-gzd-revocation.php:42
@@ -3786,6 +3795,12 @@ msgid ""
3786
  "Sale price labels used to mark old prices (e.g. Recommended Retail Price)"
3787
  msgstr "Preishinweise zur Markierung von Streichpreisen"
3788
 
 
 
 
 
 
 
3789
  # @ woocommerce-germanized
3790
  #: includes/emails/class-wc-gzd-email-customer-ekomi.php:24
3791
  msgctxt "ekomi"
@@ -3999,7 +4014,7 @@ msgid "Sale price regular label"
3999
  msgstr "Angebotspreis Hinweis"
4000
 
4001
  # @ woocommerce-germanized
4002
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:27
4003
  #, php-format
4004
  msgid ""
4005
  "Allows you to offer direct debit as a payment method to your customers. Adds "
@@ -4007,12 +4022,12 @@ msgid ""
4007
  msgstr ""
4008
  "Fügt das manuelle Lastschriftverfahren (SEPA) als Zahlungsmethode hinzu. %s"
4009
 
4010
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:27
4011
  msgid "SEPA XML Bulk Export"
4012
  msgstr "SEPA XML Export"
4013
 
4014
  # @ woocommerce-germanized
4015
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:50
4016
  msgid ""
4017
  "[company_info]\n"
4018
  "debtee identification number: [company_identification_number]\n"
@@ -4020,9 +4035,9 @@ msgid ""
4020
  "\n"
4021
  "<h3>SEPA Direct Debit Mandate</h3>\n"
4022
  "\n"
4023
- "I hereby authorize the payee to automatically draft from my savings account "
4024
- "listed below for the specified amount. I further authorize my bank to accept "
4025
- "the direct debit from this account.\n"
4026
  "\n"
4027
  "Notice: I may request a full refund within eight weeks starting with the "
4028
  "initial debiting date. Responsibilities agreed with my credit institute "
@@ -4052,10 +4067,10 @@ msgstr ""
4052
  "\n"
4053
  "<h3>SEPA-Lastschriftmandat</h3>\n"
4054
  "\n"
4055
- "Hiermit ermächtige ich den Zahlungsempfänger, einmalig eine Zahlung von "
4056
- "meinem Konto mittel Lastschrift einzuziehen. Zugleich weise ich mein "
4057
- "Kreditinstitut an, die von dem Zahlungsempfänger auf mein Konto gezogene "
4058
- "Lastschrift einzulösen.\n"
4059
  "\n"
4060
  "Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem "
4061
  "Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten "
@@ -4080,119 +4095,143 @@ msgstr ""
4080
  "Bitte beachte: Die Frist für die Vorabinformation der SEPA-Lastschrift wird "
4081
  "auf einen Tag verkürzt. "
4082
 
4083
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:135
 
 
 
 
 
 
 
 
 
4084
  msgid "SEPA XML Export"
4085
  msgstr "SEPA XML Export"
4086
 
4087
  # @ woocommerce-germanized
4088
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:240
4089
  #, php-format
4090
  msgid "Order %s"
4091
  msgstr "Bestellung %s"
4092
 
4093
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:261
4094
  msgid "Will be notified separately"
4095
  msgstr "Wird separat mitgeteilt"
4096
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4097
  # @ woocommerce-germanized
4098
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:469
4099
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
4100
  msgid "Enable/Disable"
4101
  msgstr "Aktivieren/Deaktivieren"
4102
 
4103
  # @ woocommerce-germanized
4104
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:471
4105
  msgid "Enable Direct Debit Payment"
4106
  msgstr "Bezahlung per Lastschrift aktivieren"
4107
 
4108
  # @ woocommerce-germanized
4109
  # @ woocommerce
4110
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:475
4111
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:85
4112
  msgctxt "gateway"
4113
  msgid "Title"
4114
  msgstr "Bezeichnung"
4115
 
4116
  # @ woocommerce-germanized
4117
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:477
4118
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:87
4119
  msgid "This controls the title which the user sees during checkout."
4120
  msgstr ""
4121
  "Beschreibungstext, den Benutzer bei der Auswahl dieser Zahlungsart sehen."
4122
 
4123
  # @ woocommerce-germanized
4124
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:482
4125
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:92
4126
  msgid "Description"
4127
  msgstr "Beschreibung"
4128
 
4129
  # @ woocommerce-germanized
4130
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:484
4131
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:94
4132
  msgid "Payment method description that the customer will see on your checkout."
4133
  msgstr "Beschreibung der Zahlungsart, die Kunden auf deiner Website sehen."
4134
 
4135
  # @ woocommerce-germanized
4136
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:485
4137
  msgid "The order amount will be debited directly from your bank account."
4138
  msgstr ""
4139
  "Der Gesamtbestellbetrag wird per SEPA-Lastschrift direkt von deinem Konto "
4140
  "abgebucht."
4141
 
4142
  # @ woocommerce-germanized
4143
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:489
4144
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:99
4145
  msgid "Instructions"
4146
  msgstr "Anweisungen"
4147
 
4148
  # @ woocommerce-germanized
4149
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:491
4150
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:101
4151
  msgid "Instructions that will be added to the thank you page and emails."
4152
  msgstr "Anweisung, die zur „Danke“-Seite und zu E-Mails hinzugefügt werden."
4153
 
4154
  # @ woocommerce-germanized
4155
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:496
4156
  msgid "Debtee"
4157
  msgstr "Gläubiger Informationen"
4158
 
4159
  # @ woocommerce-germanized
4160
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:498
4161
  msgid "Insert your company information."
4162
  msgstr "Füge hier die Informationen zu deinem Unternehmen ein."
4163
 
4164
  # @ woocommerce-germanized
4165
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:500
4166
  msgid "Company Inc, John Doe Street, New York"
4167
  msgstr "Musterfirma GmbH, Musterstraße 12, 12203 Musterstadt"
4168
 
4169
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:506
4170
  msgid "Insert the bank account holder name."
4171
  msgstr "Füge hier den Namen des Kontoinhabers ein."
4172
 
4173
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:508
4174
  msgid "Company Inc"
4175
  msgstr "Muster GmbH"
4176
 
4177
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:514
4178
  msgid "Insert the bank account IBAN."
4179
  msgstr "Füge hier den IBAN deines Kontos ein."
4180
 
4181
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:519
4182
  msgid "BIC"
4183
  msgstr "BIC"
4184
 
4185
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:521
4186
  msgid "Insert the bank account BIC."
4187
  msgstr "Füge hier den BIC deines Kontos ein."
4188
 
4189
  # @ woocommerce-germanized
4190
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:526
4191
  msgid "Debtee identification number"
4192
  msgstr "Identifikationsnummer"
4193
 
4194
  # @ woocommerce-germanized
4195
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:528
4196
  #, php-format
4197
  msgid ""
4198
  "Insert your debtee indentification number. More information can be found <a "
@@ -4202,16 +4241,16 @@ msgstr ""
4202
  "Weitere Informationen zu dieser Nummer erhältst du <a href=\"%s\">hier</a>."
4203
 
4204
  # @ woocommerce-germanized
4205
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:532
4206
  msgid "Generate Mandate ID"
4207
  msgstr "Mandat-Referenz generieren"
4208
 
4209
  # @ woocommerce-germanized
4210
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:534
4211
  msgid "Automatically generate Mandate ID."
4212
  msgstr "Mandat-Referenznummer automatisch generieren."
4213
 
4214
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:535
4215
  msgid ""
4216
  "Automatically generate Mandate ID after order completion (based on Order ID)."
4217
  msgstr ""
@@ -4219,11 +4258,11 @@ msgstr ""
4219
  "basierend auf der Bestellnummer."
4220
 
4221
  # @ woocommerce-germanized
4222
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:539
4223
  msgid "XML Pain Format"
4224
  msgstr "XML Pain Format"
4225
 
4226
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:541
4227
  msgid ""
4228
  "You may adjust the XML Export Pain Schema to your banks needs. Some banks "
4229
  "may require pain.001.003.03."
@@ -4232,11 +4271,11 @@ msgstr ""
4232
  "Banken benötigen z.B. pain.001.003.03."
4233
 
4234
  # @ woocommerce-germanized
4235
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:545
4236
  msgid "Mandate ID Format"
4237
  msgstr "Mandat-Referenz Format"
4238
 
4239
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:547
4240
  msgid ""
4241
  "You may extend the Mandate ID format by adding a prefix and/or suffix. Use "
4242
  "{id} as placeholder to insert the automatically generated ID."
@@ -4245,12 +4284,12 @@ msgstr ""
4245
  "{id} als Platzhalter um die automatisch generierte Referenznummer einzufügen."
4246
 
4247
  # @ woocommerce-germanized
4248
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:551
4249
  msgid "Mandate Text"
4250
  msgstr "Lastschriftmandat"
4251
 
4252
  # @ woocommerce-germanized
4253
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:553
4254
  msgid ""
4255
  "This text will be populated with live order/checkout data. Will be used as "
4256
  "preview direct debit mandate and as email template text."
@@ -4261,23 +4300,23 @@ msgstr ""
4261
  "Verfügung gestellt."
4262
 
4263
  # @ woocommerce-germanized
4264
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:560
4265
  msgid "Enable \"agree to SEPA mandate\" checkbox"
4266
  msgstr "Aktiviere die Checkbox zur Bestätigung des Lastschriftmandates."
4267
 
4268
  # @ woocommerce-germanized
4269
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:562
4270
  msgid "Enable a checkbox linking to a SEPA direct debit mandate preview."
4271
  msgstr ""
4272
  "Aktiviere eine Checkbox, die zu einer Vorschau des Lastschrift-Mandats führt."
4273
 
4274
  # @ woocommerce-germanized
4275
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:566
4276
  msgid "Checkbox label"
4277
  msgstr "Checkbox Text"
4278
 
4279
  # @ woocommerce-germanized
4280
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:568
4281
  msgid ""
4282
  "Customize the checkbox label. Use {link}link name{/link} to insert the "
4283
  "preview link."
@@ -4286,20 +4325,52 @@ msgstr ""
4286
  "auf die Vorschau zu verlinken."
4287
 
4288
  # @ woocommerce-germanized
4289
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:569
4290
  msgid "I hereby agree to the {link}direct debit mandate{/link}."
4291
  msgstr "Hiermit erteile ich das {link}SEPA Lastschriftmandat{/link}."
4292
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4293
  # @ woocommerce-germanized
4294
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:573
4295
  msgid "Mask IBAN"
4296
  msgstr "IBAN maskieren"
4297
 
4298
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:574
4299
  msgid "Mask the IBAN within emails."
4300
  msgstr "IBAN in E-Mails maskieren."
4301
 
4302
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:576
4303
  msgid ""
4304
  "This will lead to masked IBANs within emails (replaced by *). All but last 4 "
4305
  "digits will be masked."
@@ -4307,15 +4378,15 @@ msgstr ""
4307
  "Der IBAN wird in E-Mails (abgesehen von den letzten 4 Stellen) mit * "
4308
  "maskiert."
4309
 
4310
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:585
4311
  msgid "Remember"
4312
  msgstr "Bankdaten merken\t"
4313
 
4314
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:586
4315
  msgid "Remember account data for returning customers."
4316
  msgstr "Bankverbindung für registrierte Kunden speichern."
4317
 
4318
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:588
4319
  msgid "Save account data as user meta if user has/creates a customer account."
4320
  msgstr ""
4321
  "Speichert die Bankverbindung für registrierte Kunden in der user_meta "
@@ -4323,37 +4394,37 @@ msgstr ""
4323
  "eigenständig aus."
4324
 
4325
  # @ woocommerce-germanized
4326
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:671
4327
  msgid "Please insert your SEPA account data."
4328
  msgstr "Bitte füge deine SEPA Kontoinformationen ein."
4329
 
4330
  # @ woocommerce-germanized
4331
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:681
4332
  msgid "Your IBAN seems to be invalid."
4333
  msgstr "Dein IBAN scheint nicht gültig zu sein."
4334
 
4335
  # @ woocommerce-germanized
4336
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:683
4337
  msgid "Your IBAN's country code doesn’t match with your billing country."
4338
  msgstr "Der Ländercode des IBANs stimmt nicht mit dem Rechnungsland überein."
4339
 
4340
  # @ woocommerce-germanized
4341
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:687
4342
  msgid "Your BIC seems to be invalid."
4343
  msgstr "Dein BIC/SWIFT scheint nicht gültig zu sein."
4344
 
4345
  # @ woocommerce-germanized
4346
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:699
4347
  msgid "Please accept the direct debit mandate."
4348
  msgstr "Bitte erteile das SEPA Lastschriftmandat."
4349
 
4350
  # @ woocommerce-germanized
4351
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:730
4352
  msgid "is invalid"
4353
  msgstr "ist ungültig"
4354
 
4355
  # @ woocommerce-germanized
4356
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:768
4357
  msgid "Awaiting Direct Debit Payment"
4358
  msgstr "Zahlung per Lastschrift ausstehend"
4359
 
@@ -4398,9 +4469,13 @@ msgstr "Startdatum"
4398
  msgid "End Date"
4399
  msgstr "Enddatum"
4400
 
 
 
 
 
4401
  # @ woocommerce-germanized
4402
  #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:26
4403
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:88
4404
  msgid "Pay by Invoice"
4405
  msgstr "Rechnung"
4406
 
@@ -4412,18 +4487,18 @@ msgstr ""
4412
 
4413
  # @ woocommerce-germanized
4414
  # @ woocommerce
4415
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
4416
- #: woocommerce-germanized.php:576
4417
  msgid "Settings"
4418
  msgstr "Einstellungen"
4419
 
4420
  # @ woocommerce-germanized
4421
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:57
4422
  msgid "Automatically generate PDF invoices for this gateway?"
4423
  msgstr "PDF Rechnungen für diese Zahlungsart automatisch erstellen?"
4424
 
4425
  # @ woocommerce-germanized
4426
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:58
4427
  msgid ""
4428
  "By upgrading to the professional version you'll be able to automatically "
4429
  "generate PDF invoices to this payment gateway. Furthermore you'll benefit "
@@ -4437,17 +4512,17 @@ msgstr ""
4437
  "Premium-Support via Ticket-System!"
4438
 
4439
  # @ woocommerce-germanized
4440
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:61
4441
  msgid "Learn more about PDF invoicing"
4442
  msgstr "Mehr über PDF-Rechnungen erfahren"
4443
 
4444
  # @ woocommerce-germanized
4445
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:81
4446
  msgid "Enable Pay by Invoice"
4447
  msgstr "Bezahlung auf Rechnung aktivieren"
4448
 
4449
  # @ woocommerce-germanized
4450
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:95
4451
  msgid ""
4452
  "You'll receive an invoice after your order. Please transfer the order amount "
4453
  "to our bank account within 14 days."
@@ -4456,12 +4531,12 @@ msgstr ""
4456
  "Gesamtbetrag innerhalb von 14 Tagen auf das dort angegebene Konto."
4457
 
4458
  # @ woocommerce-germanized
4459
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:106
4460
  msgid "Order Status"
4461
  msgstr "Bestellstatus"
4462
 
4463
  # @ woocommerce-germanized
4464
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:108
4465
  msgid ""
4466
  "Choose which order status should be applied after a customer has chosen to "
4467
  "pay by invoice."
@@ -4470,29 +4545,29 @@ msgstr ""
4470
  "angewendet werden soll."
4471
 
4472
  # @ woocommerce-germanized
4473
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:114
4474
  msgid "Registered customers"
4475
  msgstr "Registrierte Kunden"
4476
 
4477
  # @ woocommerce-germanized
4478
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:115
4479
  msgid "Do only offer pay by invoice to registered/logged in customers."
4480
  msgstr "Biete diese Zahlungsart nur registrierten/eingeloggten Kunden an."
4481
 
4482
  # @ woocommerce-germanized
4483
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:117
4484
  msgid "This will enable Pay by Invoice to logged in customers only"
4485
  msgstr ""
4486
  "Diese Option erlaubt es dir, die Zahlungsart lediglich eingeloggten Kunden "
4487
  "zur Verfügung zu stellen"
4488
 
4489
  # @ woocommerce-germanized
4490
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:122
4491
  msgid "Customer limitation"
4492
  msgstr "Kunden Eingrenzung"
4493
 
4494
  # @ woocommerce-germanized
4495
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:123
4496
  msgid ""
4497
  "Do only offer pay by invoice to customers who have at least completed one "
4498
  "order."
@@ -4980,7 +5055,7 @@ msgstr ""
4980
  "\"%s\" target=\"_blank\">Review Collector</a>."
4981
 
4982
  # @ woocommerce-germanized
4983
- #: includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php:103
4984
  msgctxt "trusted-shops"
4985
  msgid "Trusted Shops Customer Reviews"
4986
  msgstr "Trusted Shops Kundenbewertungen"
@@ -5069,7 +5144,7 @@ msgid "Trusted Shops Rich Snippets"
5069
  msgstr "Trusted Shops Rich Snippets"
5070
 
5071
  # @ woocommerce-germanized
5072
- #: includes/wc-gzd-cart-functions.php:369
5073
  msgid ""
5074
  "I want immediate access to the digital content and I acknowledge that "
5075
  "thereby I lose my right to cancel once the service has begun."
@@ -5337,10 +5412,13 @@ msgid "%s custom reviews"
5337
  msgstr "%s Kundenbewertungen"
5338
 
5339
  # @ woocommerce-germanized
5340
- #: woocommerce-germanized.php:731
5341
  msgid "Order Confirmation"
5342
  msgstr "Bestellbestätigung"
5343
 
 
 
 
5344
  #~ msgid ""
5345
  #~ "Value added tax is not collected, as small businesses according to "
5346
  #~ "&#167;19 (1) UStG."
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized v1.5.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2017-10-06 13:24+0200\n"
6
+ "PO-Revision-Date: 2017-10-06 13:24+0200\n"
7
+ "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\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.0.4\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
17
  "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
92
  msgstr "l"
93
 
94
  # @ woocommerce-germanized
95
+ #: includes/abstracts/abstract-wc-gzd-product.php:260
96
+ #: includes/abstracts/abstract-wc-gzd-product.php:269
97
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:169
98
  #: includes/wc-gzd-core-functions.php:129
99
+ #: includes/wc-gzd-template-functions.php:608 woocommerce-germanized.php:823
100
  msgid "incl. VAT"
101
  msgstr "inkl. MwSt."
102
 
103
  # @ woocommerce-germanized
104
+ #: includes/abstracts/abstract-wc-gzd-product.php:260
105
  msgid "excl. VAT"
106
  msgstr "exkl. MwSt."
107
 
108
  # @ woocommerce-germanized
109
+ #: includes/abstracts/abstract-wc-gzd-product.php:262
110
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:169
111
+ #: includes/wc-gzd-core-functions.php:129 woocommerce-germanized.php:823
112
  #, php-format
113
  msgid "incl. %s%% VAT"
114
  msgstr "inkl. %s%% MwSt."
115
 
116
  # @ woocommerce-germanized
117
+ #: includes/abstracts/abstract-wc-gzd-product.php:262
118
  #, php-format
119
  msgid "excl. %s%% VAT"
120
  msgstr "exkl. %s%% MwSt."
148
  #: includes/export/class-wc-gzd-product-export.php:32
149
  #: includes/import/class-wc-gzd-product-import.php:23
150
  #: includes/import/class-wc-gzd-product-import.php:32
151
+ #: woocommerce-germanized.php:94 woocommerce-germanized.php:103
152
  msgid "Cheatin&#8217; huh?"
153
  msgstr "So geht das leider nicht.."
154
 
209
  msgid "Go to WooCommerce Germanized Settings"
210
  msgstr "zu den WooCommerce Germanized Einstellungen"
211
 
212
+ #: includes/admin/class-wc-gzd-admin.php:76
213
+ msgid "Order confirmation manually sent to customer."
214
+ msgstr "Bestellbestätigung manuell an den Kunden versendet."
215
+
216
+ # @ woocommerce-germanized
217
+ #: includes/admin/class-wc-gzd-admin.php:82
218
+ msgid "Resend order confirmation"
219
+ msgstr "Bestellbestätigung erneut versenden"
220
+
221
  # @ woocommerce-germanized
222
+ #: includes/admin/class-wc-gzd-admin.php:91
223
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:25
224
  msgid "Germanized"
225
  msgstr "Germanized"
226
 
227
+ #: includes/admin/class-wc-gzd-admin.php:101
228
  msgid "Parcel Delivery Data Transfer:"
229
  msgstr "Paketdienstleister Datenweitergabe:"
230
 
231
+ #: includes/admin/class-wc-gzd-admin.php:102
232
  msgid "allowed"
233
  msgstr "akzeptiert"
234
 
235
+ #: includes/admin/class-wc-gzd-admin.php:102
236
  msgid "not allowed"
237
  msgstr "nicht akzeptiert"
238
 
239
  # @ woocommerce-germanized
240
+ #: includes/admin/class-wc-gzd-admin.php:175
241
  msgid "Optional Email Content"
242
  msgstr "Optionaler E-Mail Inhalt"
243
 
244
  # @ woocommerce-germanized
245
+ #: includes/admin/class-wc-gzd-admin.php:184
246
  msgid "Add content which will be replacing default page content within emails."
247
  msgstr ""
248
  "Fülle dieses Feld aus um einen abweichenden E-Mail Anhangstext für diese "
249
  "Seite zu bestimmen."
250
 
251
  # @ woocommerce-germanized
252
+ #: includes/admin/class-wc-gzd-admin.php:194
253
  #: includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:152
254
  msgid "Optional Mini Description"
255
  msgstr "Warenkorb Kurzbeschreibung"
256
 
257
  # @ woocommerce-germanized
258
+ #: includes/admin/class-wc-gzd-admin.php:211
259
  msgid ""
260
  "This content will be shown as short product description within checkout and "
261
  "emails."
1111
 
1112
  # @ woocommerce-germanized
1113
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:514
1114
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:697
1115
  msgid "Checkbox"
1116
  msgstr "Checkbox"
1117
 
2039
 
2040
  # @ woocommerce-germanized
2041
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1156
2042
+ #: includes/wc-gzd-cart-functions.php:381
2043
  msgid ""
2044
  "To retrieve direct access to digital content you have to agree to the loss "
2045
  "of your right of withdrawal."
2116
 
2117
  # @ woocommerce-germanized
2118
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1185
2119
+ #: includes/wc-gzd-cart-functions.php:406
2120
  msgid ""
2121
  "For services: I demand and acknowledge the immediate performance of the "
2122
  "service before the expiration of the withdrawal period. I acknowledge that "
2134
 
2135
  # @ woocommerce-germanized
2136
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1195
2137
+ #: includes/wc-gzd-cart-functions.php:417
2138
  msgid ""
2139
  "To allow the immediate performance of the services you have to agree to the "
2140
  "loss of your right of withdrawal."
2232
  "den Titel der Versandmethoden einzubetten."
2233
 
2234
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1233
2235
+ #: includes/wc-gzd-cart-functions.php:466
2236
  msgid ""
2237
  "Yes, I would like to be reminded via E-mail about parcel delivery "
2238
  "({shipping_method_title}). Your E-mail Address will only be transferred to "
2901
 
2902
  # @ woocommerce-germanized
2903
  #: includes/admin/views/html-settings-pro.php:25
2904
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:74
2905
  msgid "Upgrade now"
2906
  msgstr "jetzt upgraden"
2907
 
2934
  # @ woocommerce-germanized
2935
  #: includes/api/class-wc-gzd-rest-customers-controller.php:163
2936
  #: includes/api/class-wc-gzd-rest-orders-controller.php:194
2937
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:28
2938
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:616
2939
  #: includes/gateways/direct-debit/views/html-export.php:27
2940
  msgid "Direct Debit"
2941
  msgstr "Lastschrift"
2943
  # @ woocommerce-germanized
2944
  #: includes/api/class-wc-gzd-rest-customers-controller.php:168
2945
  #: includes/api/class-wc-gzd-rest-orders-controller.php:199
2946
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:154
2947
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:419
2948
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:642
2949
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:783
2950
  msgid "Account Holder"
2951
  msgstr "Kontoinhaber"
2952
 
2953
  # @ woocommerce-germanized
2954
  #: includes/api/class-wc-gzd-rest-customers-controller.php:173
2955
  #: includes/api/class-wc-gzd-rest-orders-controller.php:204
2956
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:161
2957
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:420
2958
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:650
2959
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:787
2960
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:879
2961
  msgid "IBAN"
2962
  msgstr "IBAN"
2963
 
2964
  # @ woocommerce-germanized
2965
  #: includes/api/class-wc-gzd-rest-customers-controller.php:178
2966
  #: includes/api/class-wc-gzd-rest-orders-controller.php:209
2967
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:167
2968
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:421
2969
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:791
2970
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:880
2971
  msgid "BIC/SWIFT"
2972
  msgstr "BIC/SWIFT"
2973
 
2985
 
2986
  # @ woocommerce-germanized
2987
  #: includes/api/class-wc-gzd-rest-orders-controller.php:214
2988
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:173
2989
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:425
2990
  msgid "Mandate Reference ID"
2991
  msgstr "Mandat-Referenznummer"
2992
 
3194
  #: includes/class-wc-gzd-checkout.php:289
3195
  #: includes/class-wc-gzd-checkout.php:297
3196
  #: includes/class-wc-gzd-checkout.php:322
3197
+ #: includes/class-wc-gzd-checkout.php:468
3198
  #: includes/class-wc-gzd-customer-helper.php:114
3199
  #: includes/class-wc-gzd-customer-helper.php:122
3200
  #: includes/class-wc-gzd-revocation.php:41
3205
  #: includes/class-wc-gzd-checkout.php:289
3206
  #: includes/class-wc-gzd-checkout.php:297
3207
  #: includes/class-wc-gzd-checkout.php:323
3208
+ #: includes/class-wc-gzd-checkout.php:468
3209
+ #: includes/class-wc-gzd-checkout.php:473
3210
  #: includes/class-wc-gzd-customer-helper.php:114
3211
  #: includes/class-wc-gzd-customer-helper.php:122
3212
  #: includes/class-wc-gzd-revocation.php:42
3795
  "Sale price labels used to mark old prices (e.g. Recommended Retail Price)"
3796
  msgstr "Preishinweise zur Markierung von Streichpreisen"
3797
 
3798
+ # @ woocommerce-germanized
3799
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:109
3800
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:116
3801
+ msgid "recurring payments"
3802
+ msgstr "wiederkehrende Zahlungen"
3803
+
3804
  # @ woocommerce-germanized
3805
  #: includes/emails/class-wc-gzd-email-customer-ekomi.php:24
3806
  msgctxt "ekomi"
4014
  msgstr "Angebotspreis Hinweis"
4015
 
4016
  # @ woocommerce-germanized
4017
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:29
4018
  #, php-format
4019
  msgid ""
4020
  "Allows you to offer direct debit as a payment method to your customers. Adds "
4022
  msgstr ""
4023
  "Fügt das manuelle Lastschriftverfahren (SEPA) als Zahlungsmethode hinzu. %s"
4024
 
4025
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:29
4026
  msgid "SEPA XML Bulk Export"
4027
  msgstr "SEPA XML Export"
4028
 
4029
  # @ woocommerce-germanized
4030
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:54
4031
  msgid ""
4032
  "[company_info]\n"
4033
  "debtee identification number: [company_identification_number]\n"
4035
  "\n"
4036
  "<h3>SEPA Direct Debit Mandate</h3>\n"
4037
  "\n"
4038
+ "I hereby authorize the payee to [mandate_type_text] draft from my savings "
4039
+ "account listed below for the specified amount. I further authorize my bank "
4040
+ "to accept the direct debit from this account.\n"
4041
  "\n"
4042
  "Notice: I may request a full refund within eight weeks starting with the "
4043
  "initial debiting date. Responsibilities agreed with my credit institute "
4067
  "\n"
4068
  "<h3>SEPA-Lastschriftmandat</h3>\n"
4069
  "\n"
4070
+ "Hiermit ermächtige ich den Zahlungsempfänger, [mandate_type_text] von meinem "
4071
+ "Konto mittel Lastschrift einzuziehen. Zugleich weise ich mein Kreditinstitut "
4072
+ "an, die von dem Zahlungsempfänger auf mein Konto gezogene Lastschrift "
4073
+ "einzulösen.\n"
4074
  "\n"
4075
  "Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem "
4076
  "Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten "
4095
  "Bitte beachte: Die Frist für die Vorabinformation der SEPA-Lastschrift wird "
4096
  "auf einen Tag verkürzt. "
4097
 
4098
+ # @ woocommerce-germanized
4099
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:189
4100
+ msgid "SEPA"
4101
+ msgstr "SEPA"
4102
+
4103
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:190
4104
+ msgid "SEPA XML"
4105
+ msgstr "SEPA XML"
4106
+
4107
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:246
4108
  msgid "SEPA XML Export"
4109
  msgstr "SEPA XML Export"
4110
 
4111
  # @ woocommerce-germanized
4112
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:361
4113
  #, php-format
4114
  msgid "Order %s"
4115
  msgstr "Bestellung %s"
4116
 
4117
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:381
4118
  msgid "Will be notified separately"
4119
  msgstr "Wird separat mitgeteilt"
4120
 
4121
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:430
4122
+ #, php-format
4123
+ msgid ""
4124
+ "We will debit %s from your account by direct debit on or shortly after %s."
4125
+ msgstr ""
4126
+ "Die Forderung von %s ziehen wir mit der SEPA-Lastschrift zum Fälligkeitstag "
4127
+ "%s ein."
4128
+
4129
+ # @ woocommerce-germanized
4130
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:534
4131
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:557
4132
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:577
4133
+ msgid "a single payment"
4134
+ msgstr "eine einmalige Zahlung"
4135
+
4136
  # @ woocommerce-germanized
4137
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:607
4138
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:93
4139
  msgid "Enable/Disable"
4140
  msgstr "Aktivieren/Deaktivieren"
4141
 
4142
  # @ woocommerce-germanized
4143
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:609
4144
  msgid "Enable Direct Debit Payment"
4145
  msgstr "Bezahlung per Lastschrift aktivieren"
4146
 
4147
  # @ woocommerce-germanized
4148
  # @ woocommerce
4149
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:613
4150
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:99
4151
  msgctxt "gateway"
4152
  msgid "Title"
4153
  msgstr "Bezeichnung"
4154
 
4155
  # @ woocommerce-germanized
4156
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:615
4157
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:101
4158
  msgid "This controls the title which the user sees during checkout."
4159
  msgstr ""
4160
  "Beschreibungstext, den Benutzer bei der Auswahl dieser Zahlungsart sehen."
4161
 
4162
  # @ woocommerce-germanized
4163
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:620
4164
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:106
4165
  msgid "Description"
4166
  msgstr "Beschreibung"
4167
 
4168
  # @ woocommerce-germanized
4169
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:622
4170
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:108
4171
  msgid "Payment method description that the customer will see on your checkout."
4172
  msgstr "Beschreibung der Zahlungsart, die Kunden auf deiner Website sehen."
4173
 
4174
  # @ woocommerce-germanized
4175
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:623
4176
  msgid "The order amount will be debited directly from your bank account."
4177
  msgstr ""
4178
  "Der Gesamtbestellbetrag wird per SEPA-Lastschrift direkt von deinem Konto "
4179
  "abgebucht."
4180
 
4181
  # @ woocommerce-germanized
4182
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:627
4183
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:113
4184
  msgid "Instructions"
4185
  msgstr "Anweisungen"
4186
 
4187
  # @ woocommerce-germanized
4188
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:629
4189
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:115
4190
  msgid "Instructions that will be added to the thank you page and emails."
4191
  msgstr "Anweisung, die zur „Danke“-Seite und zu E-Mails hinzugefügt werden."
4192
 
4193
  # @ woocommerce-germanized
4194
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:634
4195
  msgid "Debtee"
4196
  msgstr "Gläubiger Informationen"
4197
 
4198
  # @ woocommerce-germanized
4199
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:636
4200
  msgid "Insert your company information."
4201
  msgstr "Füge hier die Informationen zu deinem Unternehmen ein."
4202
 
4203
  # @ woocommerce-germanized
4204
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:638
4205
  msgid "Company Inc, John Doe Street, New York"
4206
  msgstr "Musterfirma GmbH, Musterstraße 12, 12203 Musterstadt"
4207
 
4208
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:644
4209
  msgid "Insert the bank account holder name."
4210
  msgstr "Füge hier den Namen des Kontoinhabers ein."
4211
 
4212
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:646
4213
  msgid "Company Inc"
4214
  msgstr "Muster GmbH"
4215
 
4216
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:652
4217
  msgid "Insert the bank account IBAN."
4218
  msgstr "Füge hier den IBAN deines Kontos ein."
4219
 
4220
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:657
4221
  msgid "BIC"
4222
  msgstr "BIC"
4223
 
4224
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:659
4225
  msgid "Insert the bank account BIC."
4226
  msgstr "Füge hier den BIC deines Kontos ein."
4227
 
4228
  # @ woocommerce-germanized
4229
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:664
4230
  msgid "Debtee identification number"
4231
  msgstr "Identifikationsnummer"
4232
 
4233
  # @ woocommerce-germanized
4234
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:666
4235
  #, php-format
4236
  msgid ""
4237
  "Insert your debtee indentification number. More information can be found <a "
4241
  "Weitere Informationen zu dieser Nummer erhältst du <a href=\"%s\">hier</a>."
4242
 
4243
  # @ woocommerce-germanized
4244
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:670
4245
  msgid "Generate Mandate ID"
4246
  msgstr "Mandat-Referenz generieren"
4247
 
4248
  # @ woocommerce-germanized
4249
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:672
4250
  msgid "Automatically generate Mandate ID."
4251
  msgstr "Mandat-Referenznummer automatisch generieren."
4252
 
4253
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:673
4254
  msgid ""
4255
  "Automatically generate Mandate ID after order completion (based on Order ID)."
4256
  msgstr ""
4258
  "basierend auf der Bestellnummer."
4259
 
4260
  # @ woocommerce-germanized
4261
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:677
4262
  msgid "XML Pain Format"
4263
  msgstr "XML Pain Format"
4264
 
4265
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:679
4266
  msgid ""
4267
  "You may adjust the XML Export Pain Schema to your banks needs. Some banks "
4268
  "may require pain.001.003.03."
4271
  "Banken benötigen z.B. pain.001.003.03."
4272
 
4273
  # @ woocommerce-germanized
4274
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:683
4275
  msgid "Mandate ID Format"
4276
  msgstr "Mandat-Referenz Format"
4277
 
4278
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:685
4279
  msgid ""
4280
  "You may extend the Mandate ID format by adding a prefix and/or suffix. Use "
4281
  "{id} as placeholder to insert the automatically generated ID."
4284
  "{id} als Platzhalter um die automatisch generierte Referenznummer einzufügen."
4285
 
4286
  # @ woocommerce-germanized
4287
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:689
4288
  msgid "Mandate Text"
4289
  msgstr "Lastschriftmandat"
4290
 
4291
  # @ woocommerce-germanized
4292
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:691
4293
  msgid ""
4294
  "This text will be populated with live order/checkout data. Will be used as "
4295
  "preview direct debit mandate and as email template text."
4300
  "Verfügung gestellt."
4301
 
4302
  # @ woocommerce-germanized
4303
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:698
4304
  msgid "Enable \"agree to SEPA mandate\" checkbox"
4305
  msgstr "Aktiviere die Checkbox zur Bestätigung des Lastschriftmandates."
4306
 
4307
  # @ woocommerce-germanized
4308
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:700
4309
  msgid "Enable a checkbox linking to a SEPA direct debit mandate preview."
4310
  msgstr ""
4311
  "Aktiviere eine Checkbox, die zu einer Vorschau des Lastschrift-Mandats führt."
4312
 
4313
  # @ woocommerce-germanized
4314
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:704
4315
  msgid "Checkbox label"
4316
  msgstr "Checkbox Text"
4317
 
4318
  # @ woocommerce-germanized
4319
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:706
4320
  msgid ""
4321
  "Customize the checkbox label. Use {link}link name{/link} to insert the "
4322
  "preview link."
4325
  "auf die Vorschau zu verlinken."
4326
 
4327
  # @ woocommerce-germanized
4328
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:707
4329
  msgid "I hereby agree to the {link}direct debit mandate{/link}."
4330
  msgstr "Hiermit erteile ich das {link}SEPA Lastschriftmandat{/link}."
4331
 
4332
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:711
4333
+ msgid "Enable pre-notification"
4334
+ msgstr "Vorankündigung aktivieren"
4335
+
4336
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:712
4337
+ msgid "Insert pre-notification text within the order confirmation email."
4338
+ msgstr ""
4339
+ "Fügt einen Standard-Text zur Vorankündigung des SEPA-Einzugs in die "
4340
+ "Bestellbestätigung ein."
4341
+
4342
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:714
4343
+ msgid ""
4344
+ "This option inserts a standard text containing a pre-notification for the "
4345
+ "customer."
4346
+ msgstr ""
4347
+ "Diese Option fügt einen Standard-Text zur Vorankündigung des SEPA-Einzugs in "
4348
+ "die Bestellbestätigung ein. In der Ankündigung wird u.a. ein konkreter "
4349
+ "Fälligkeitstermin genannt."
4350
+
4351
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:718
4352
+ msgid "Debit days"
4353
+ msgstr "Fälligkeitstage"
4354
+
4355
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:720
4356
+ msgid ""
4357
+ "This option is used to calculate the debit date and is added to the order "
4358
+ "date."
4359
+ msgstr ""
4360
+ "Diese Option wird verwendet um den Fälligkeitstag des SEPA-Einzugs zu "
4361
+ "berechnen. Der Fälligkeitstag ergibt sich aus dem Bestelldatum zzgl. der "
4362
+ "hier eingestellten Anzahl Tage."
4363
+
4364
  # @ woocommerce-germanized
4365
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:724
4366
  msgid "Mask IBAN"
4367
  msgstr "IBAN maskieren"
4368
 
4369
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:725
4370
  msgid "Mask the IBAN within emails."
4371
  msgstr "IBAN in E-Mails maskieren."
4372
 
4373
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:727
4374
  msgid ""
4375
  "This will lead to masked IBANs within emails (replaced by *). All but last 4 "
4376
  "digits will be masked."
4378
  "Der IBAN wird in E-Mails (abgesehen von den letzten 4 Stellen) mit * "
4379
  "maskiert."
4380
 
4381
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:736
4382
  msgid "Remember"
4383
  msgstr "Bankdaten merken\t"
4384
 
4385
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:737
4386
  msgid "Remember account data for returning customers."
4387
  msgstr "Bankverbindung für registrierte Kunden speichern."
4388
 
4389
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:739
4390
  msgid "Save account data as user meta if user has/creates a customer account."
4391
  msgstr ""
4392
  "Speichert die Bankverbindung für registrierte Kunden in der user_meta "
4394
  "eigenständig aus."
4395
 
4396
  # @ woocommerce-germanized
4397
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:822
4398
  msgid "Please insert your SEPA account data."
4399
  msgstr "Bitte füge deine SEPA Kontoinformationen ein."
4400
 
4401
  # @ woocommerce-germanized
4402
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:832
4403
  msgid "Your IBAN seems to be invalid."
4404
  msgstr "Dein IBAN scheint nicht gültig zu sein."
4405
 
4406
  # @ woocommerce-germanized
4407
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:834
4408
  msgid "Your IBAN's country code doesn’t match with your billing country."
4409
  msgstr "Der Ländercode des IBANs stimmt nicht mit dem Rechnungsland überein."
4410
 
4411
  # @ woocommerce-germanized
4412
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:838
4413
  msgid "Your BIC seems to be invalid."
4414
  msgstr "Dein BIC/SWIFT scheint nicht gültig zu sein."
4415
 
4416
  # @ woocommerce-germanized
4417
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:850
4418
  msgid "Please accept the direct debit mandate."
4419
  msgstr "Bitte erteile das SEPA Lastschriftmandat."
4420
 
4421
  # @ woocommerce-germanized
4422
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:881
4423
  msgid "is invalid"
4424
  msgstr "ist ungültig"
4425
 
4426
  # @ woocommerce-germanized
4427
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:917
4428
  msgid "Awaiting Direct Debit Payment"
4429
  msgstr "Zahlung per Lastschrift ausstehend"
4430
 
4469
  msgid "End Date"
4470
  msgstr "Enddatum"
4471
 
4472
+ #: includes/gateways/direct-debit/views/html-export.php:41
4473
+ msgid "Unpaid only"
4474
+ msgstr "Nur unbezahlte"
4475
+
4476
  # @ woocommerce-germanized
4477
  #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:26
4478
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:102
4479
  msgid "Pay by Invoice"
4480
  msgstr "Rechnung"
4481
 
4487
 
4488
  # @ woocommerce-germanized
4489
  # @ woocommerce
4490
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:64
4491
+ #: woocommerce-germanized.php:577
4492
  msgid "Settings"
4493
  msgstr "Einstellungen"
4494
 
4495
  # @ woocommerce-germanized
4496
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:71
4497
  msgid "Automatically generate PDF invoices for this gateway?"
4498
  msgstr "PDF Rechnungen für diese Zahlungsart automatisch erstellen?"
4499
 
4500
  # @ woocommerce-germanized
4501
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:72
4502
  msgid ""
4503
  "By upgrading to the professional version you'll be able to automatically "
4504
  "generate PDF invoices to this payment gateway. Furthermore you'll benefit "
4512
  "Premium-Support via Ticket-System!"
4513
 
4514
  # @ woocommerce-germanized
4515
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:75
4516
  msgid "Learn more about PDF invoicing"
4517
  msgstr "Mehr über PDF-Rechnungen erfahren"
4518
 
4519
  # @ woocommerce-germanized
4520
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:95
4521
  msgid "Enable Pay by Invoice"
4522
  msgstr "Bezahlung auf Rechnung aktivieren"
4523
 
4524
  # @ woocommerce-germanized
4525
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:109
4526
  msgid ""
4527
  "You'll receive an invoice after your order. Please transfer the order amount "
4528
  "to our bank account within 14 days."
4531
  "Gesamtbetrag innerhalb von 14 Tagen auf das dort angegebene Konto."
4532
 
4533
  # @ woocommerce-germanized
4534
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:120
4535
  msgid "Order Status"
4536
  msgstr "Bestellstatus"
4537
 
4538
  # @ woocommerce-germanized
4539
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:122
4540
  msgid ""
4541
  "Choose which order status should be applied after a customer has chosen to "
4542
  "pay by invoice."
4545
  "angewendet werden soll."
4546
 
4547
  # @ woocommerce-germanized
4548
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:128
4549
  msgid "Registered customers"
4550
  msgstr "Registrierte Kunden"
4551
 
4552
  # @ woocommerce-germanized
4553
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:129
4554
  msgid "Do only offer pay by invoice to registered/logged in customers."
4555
  msgstr "Biete diese Zahlungsart nur registrierten/eingeloggten Kunden an."
4556
 
4557
  # @ woocommerce-germanized
4558
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:131
4559
  msgid "This will enable Pay by Invoice to logged in customers only"
4560
  msgstr ""
4561
  "Diese Option erlaubt es dir, die Zahlungsart lediglich eingeloggten Kunden "
4562
  "zur Verfügung zu stellen"
4563
 
4564
  # @ woocommerce-germanized
4565
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:136
4566
  msgid "Customer limitation"
4567
  msgstr "Kunden Eingrenzung"
4568
 
4569
  # @ woocommerce-germanized
4570
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:137
4571
  msgid ""
4572
  "Do only offer pay by invoice to customers who have at least completed one "
4573
  "order."
5055
  "\"%s\" target=\"_blank\">Review Collector</a>."
5056
 
5057
  # @ woocommerce-germanized
5058
+ #: includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php:88
5059
  msgctxt "trusted-shops"
5060
  msgid "Trusted Shops Customer Reviews"
5061
  msgstr "Trusted Shops Kundenbewertungen"
5144
  msgstr "Trusted Shops Rich Snippets"
5145
 
5146
  # @ woocommerce-germanized
5147
+ #: includes/wc-gzd-cart-functions.php:370
5148
  msgid ""
5149
  "I want immediate access to the digital content and I acknowledge that "
5150
  "thereby I lose my right to cancel once the service has begun."
5412
  msgstr "%s Kundenbewertungen"
5413
 
5414
  # @ woocommerce-germanized
5415
+ #: woocommerce-germanized.php:732
5416
  msgid "Order Confirmation"
5417
  msgstr "Bestellbestätigung"
5418
 
5419
+ #~ msgid "Number of days until account is debited."
5420
+ #~ msgstr "Anzahl der Tage ab Bestelldatum bis zum Fälligkeitstag."
5421
+
5422
  #~ msgid ""
5423
  #~ "Value added tax is not collected, as small businesses according to "
5424
  #~ "&#167;19 (1) UStG."
i18n/languages/woocommerce-germanized-de_DE_formal.mo CHANGED
Binary file
i18n/languages/woocommerce-germanized-de_DE_formal.po CHANGED
@@ -2,16 +2,16 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized v1.5.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2017-08-04 10:46+0200\n"
6
- "PO-Revision-Date: 2017-08-04 10:46+0200\n"
7
- "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\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.0.3\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
17
  "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
@@ -92,29 +92,29 @@ msgid "l"
92
  msgstr "l"
93
 
94
  # @ woocommerce-germanized
95
- #: includes/abstracts/abstract-wc-gzd-product.php:230
96
- #: includes/abstracts/abstract-wc-gzd-product.php:239
97
- #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
98
  #: includes/wc-gzd-core-functions.php:129
99
- #: includes/wc-gzd-template-functions.php:608 woocommerce-germanized.php:822
100
  msgid "incl. VAT"
101
  msgstr "inkl. MwSt."
102
 
103
  # @ woocommerce-germanized
104
- #: includes/abstracts/abstract-wc-gzd-product.php:230
105
  msgid "excl. VAT"
106
  msgstr "exkl. MwSt."
107
 
108
  # @ woocommerce-germanized
109
- #: includes/abstracts/abstract-wc-gzd-product.php:232
110
- #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
111
- #: includes/wc-gzd-core-functions.php:129 woocommerce-germanized.php:822
112
  #, php-format
113
  msgid "incl. %s%% VAT"
114
  msgstr "inkl. %s%% MwSt."
115
 
116
  # @ woocommerce-germanized
117
- #: includes/abstracts/abstract-wc-gzd-product.php:232
118
  #, php-format
119
  msgid "excl. %s%% VAT"
120
  msgstr "exkl. %s%% MwSt."
@@ -148,7 +148,7 @@ msgstr "Ja, Kunde wurde per Double Opt-In bestätigt."
148
  #: includes/export/class-wc-gzd-product-export.php:32
149
  #: includes/import/class-wc-gzd-product-import.php:23
150
  #: includes/import/class-wc-gzd-product-import.php:32
151
- #: woocommerce-germanized.php:92 woocommerce-germanized.php:101
152
  msgid "Cheatin&#8217; huh?"
153
  msgstr "So geht das leider nicht.."
154
 
@@ -209,44 +209,53 @@ msgstr "Willkommen bei WooCommerce Germanized"
209
  msgid "Go to WooCommerce Germanized Settings"
210
  msgstr "zu den WooCommerce Germanized Einstellungen"
211
 
 
 
 
 
 
 
 
 
 
212
  # @ woocommerce-germanized
213
- #: includes/admin/class-wc-gzd-admin.php:67
214
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:25
215
  msgid "Germanized"
216
  msgstr "Germanized"
217
 
218
- #: includes/admin/class-wc-gzd-admin.php:77
219
  msgid "Parcel Delivery Data Transfer:"
220
  msgstr "Paketdienstleister Datenweitergabe:"
221
 
222
- #: includes/admin/class-wc-gzd-admin.php:78
223
  msgid "allowed"
224
  msgstr "akzeptiert"
225
 
226
- #: includes/admin/class-wc-gzd-admin.php:78
227
  msgid "not allowed"
228
  msgstr "akzeptiert"
229
 
230
  # @ woocommerce-germanized
231
- #: includes/admin/class-wc-gzd-admin.php:151
232
  msgid "Optional Email Content"
233
  msgstr "Optionaler E-Mail Inhalt"
234
 
235
  # @ woocommerce-germanized
236
- #: includes/admin/class-wc-gzd-admin.php:160
237
  msgid "Add content which will be replacing default page content within emails."
238
  msgstr ""
239
  "Fülle dieses Feld aus um einen abweichenden E-Mail Anhangstext für diese "
240
  "Seite zu bestimmen."
241
 
242
  # @ woocommerce-germanized
243
- #: includes/admin/class-wc-gzd-admin.php:170
244
  #: includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:152
245
  msgid "Optional Mini Description"
246
  msgstr "Warenkorb Kurzbeschreibung"
247
 
248
  # @ woocommerce-germanized
249
- #: includes/admin/class-wc-gzd-admin.php:187
250
  msgid ""
251
  "This content will be shown as short product description within checkout and "
252
  "emails."
@@ -1102,7 +1111,7 @@ msgstr "Kunden"
1102
 
1103
  # @ woocommerce-germanized
1104
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:514
1105
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:559
1106
  msgid "Checkbox"
1107
  msgstr "Checkbox"
1108
 
@@ -2030,7 +2039,7 @@ msgstr ""
2030
 
2031
  # @ woocommerce-germanized
2032
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1156
2033
- #: includes/wc-gzd-cart-functions.php:380
2034
  msgid ""
2035
  "To retrieve direct access to digital content you have to agree to the loss "
2036
  "of your right of withdrawal."
@@ -2107,7 +2116,7 @@ msgstr ""
2107
 
2108
  # @ woocommerce-germanized
2109
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1185
2110
- #: includes/wc-gzd-cart-functions.php:405
2111
  msgid ""
2112
  "For services: I demand and acknowledge the immediate performance of the "
2113
  "service before the expiration of the withdrawal period. I acknowledge that "
@@ -2125,7 +2134,7 @@ msgstr "Fehlermeldung"
2125
 
2126
  # @ woocommerce-germanized
2127
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1195
2128
- #: includes/wc-gzd-cart-functions.php:416
2129
  msgid ""
2130
  "To allow the immediate performance of the services you have to agree to the "
2131
  "loss of your right of withdrawal."
@@ -2224,7 +2233,7 @@ msgstr ""
2224
  "den Titel der Versandmethoden einzubetten."
2225
 
2226
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1233
2227
- #: includes/wc-gzd-cart-functions.php:465
2228
  msgid ""
2229
  "Yes, I would like to be reminded via E-mail about parcel delivery "
2230
  "({shipping_method_title}). Your E-mail Address will only be transferred to "
@@ -2893,7 +2902,7 @@ msgstr ""
2893
 
2894
  # @ woocommerce-germanized
2895
  #: includes/admin/views/html-settings-pro.php:25
2896
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:60
2897
  msgid "Upgrade now"
2898
  msgstr "jetzt upgraden"
2899
 
@@ -2926,8 +2935,8 @@ msgstr "PostNummer"
2926
  # @ woocommerce-germanized
2927
  #: includes/api/class-wc-gzd-rest-customers-controller.php:163
2928
  #: includes/api/class-wc-gzd-rest-orders-controller.php:194
2929
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:26
2930
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:478
2931
  #: includes/gateways/direct-debit/views/html-export.php:27
2932
  msgid "Direct Debit"
2933
  msgstr "Lastschrift"
@@ -2935,31 +2944,31 @@ msgstr "Lastschrift"
2935
  # @ woocommerce-germanized
2936
  #: includes/api/class-wc-gzd-rest-customers-controller.php:168
2937
  #: includes/api/class-wc-gzd-rest-orders-controller.php:199
2938
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:280
2939
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:304
2940
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:504
2941
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:632
2942
  msgid "Account Holder"
2943
  msgstr "Kontoinhaber"
2944
 
2945
  # @ woocommerce-germanized
2946
  #: includes/api/class-wc-gzd-rest-customers-controller.php:173
2947
  #: includes/api/class-wc-gzd-rest-orders-controller.php:204
2948
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:281
2949
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:311
2950
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:512
2951
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:636
2952
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:728
2953
  msgid "IBAN"
2954
  msgstr "IBAN"
2955
 
2956
  # @ woocommerce-germanized
2957
  #: includes/api/class-wc-gzd-rest-customers-controller.php:178
2958
  #: includes/api/class-wc-gzd-rest-orders-controller.php:209
2959
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:282
2960
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:318
2961
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:640
2962
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:729
2963
  msgid "BIC/SWIFT"
2964
  msgstr "BIC/SWIFT"
2965
 
@@ -2977,8 +2986,8 @@ msgstr "Paketdienstleister Datenweitergabe"
2977
 
2978
  # @ woocommerce-germanized
2979
  #: includes/api/class-wc-gzd-rest-orders-controller.php:214
2980
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:286
2981
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:325
2982
  msgid "Mandate Reference ID"
2983
  msgstr "Mandat-Referenznummer"
2984
 
@@ -3186,7 +3195,7 @@ msgstr ""
3186
  #: includes/class-wc-gzd-checkout.php:289
3187
  #: includes/class-wc-gzd-checkout.php:297
3188
  #: includes/class-wc-gzd-checkout.php:322
3189
- #: includes/class-wc-gzd-checkout.php:464
3190
  #: includes/class-wc-gzd-customer-helper.php:114
3191
  #: includes/class-wc-gzd-customer-helper.php:122
3192
  #: includes/class-wc-gzd-revocation.php:41
@@ -3197,8 +3206,8 @@ msgstr "Herr"
3197
  #: includes/class-wc-gzd-checkout.php:289
3198
  #: includes/class-wc-gzd-checkout.php:297
3199
  #: includes/class-wc-gzd-checkout.php:323
3200
- #: includes/class-wc-gzd-checkout.php:464
3201
- #: includes/class-wc-gzd-checkout.php:469
3202
  #: includes/class-wc-gzd-customer-helper.php:114
3203
  #: includes/class-wc-gzd-customer-helper.php:122
3204
  #: includes/class-wc-gzd-revocation.php:42
@@ -3788,6 +3797,12 @@ msgid ""
3788
  "Sale price labels used to mark old prices (e.g. Recommended Retail Price)"
3789
  msgstr "Preishinweise zur Markierung von Streichpreisen"
3790
 
 
 
 
 
 
 
3791
  # @ woocommerce-germanized
3792
  #: includes/emails/class-wc-gzd-email-customer-ekomi.php:24
3793
  msgctxt "ekomi"
@@ -4001,7 +4016,7 @@ msgid "Sale price regular label"
4001
  msgstr "Angebotspreis Hinweis"
4002
 
4003
  # @ woocommerce-germanized
4004
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:27
4005
  #, php-format
4006
  msgid ""
4007
  "Allows you to offer direct debit as a payment method to your customers. Adds "
@@ -4009,12 +4024,12 @@ msgid ""
4009
  msgstr ""
4010
  "Fügt das manuelle Lastschriftverfahren (SEPA) als Zahlungsmethode hinzu. %s"
4011
 
4012
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:27
4013
  msgid "SEPA XML Bulk Export"
4014
  msgstr "SEPA XML Export"
4015
 
4016
  # @ woocommerce-germanized
4017
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:50
4018
  msgid ""
4019
  "[company_info]\n"
4020
  "debtee identification number: [company_identification_number]\n"
@@ -4022,9 +4037,9 @@ msgid ""
4022
  "\n"
4023
  "<h3>SEPA Direct Debit Mandate</h3>\n"
4024
  "\n"
4025
- "I hereby authorize the payee to automatically draft from my savings account "
4026
- "listed below for the specified amount. I further authorize my bank to accept "
4027
- "the direct debit from this account.\n"
4028
  "\n"
4029
  "Notice: I may request a full refund within eight weeks starting with the "
4030
  "initial debiting date. Responsibilities agreed with my credit institute "
@@ -4054,10 +4069,10 @@ msgstr ""
4054
  "\n"
4055
  "<h3>SEPA-Lastschriftmandat</h3>\n"
4056
  "\n"
4057
- "Hiermit ermächtige ich den Zahlungsempfänger, einmalig eine Zahlung von "
4058
- "meinem Konto mittel Lastschrift einzuziehen. Zugleich weise ich mein "
4059
- "Kreditinstitut an, die von dem Zahlungsempfänger auf mein Konto gezogene "
4060
- "Lastschrift einzulösen.\n"
4061
  "\n"
4062
  "Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem "
4063
  "Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten "
@@ -4082,119 +4097,143 @@ msgstr ""
4082
  "Bitte beachten Sie: Die Frist für die Vorabinformation der SEPA-Lastschrift "
4083
  "wird auf einen Tag verkürzt. "
4084
 
4085
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:135
 
 
 
 
 
 
 
 
 
4086
  msgid "SEPA XML Export"
4087
  msgstr "SEPA XML Export"
4088
 
4089
  # @ woocommerce-germanized
4090
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:240
4091
  #, php-format
4092
  msgid "Order %s"
4093
  msgstr "Bestellung %s"
4094
 
4095
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:261
4096
  msgid "Will be notified separately"
4097
  msgstr "Wird separat mitgeteilt"
4098
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4099
  # @ woocommerce-germanized
4100
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:469
4101
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:79
4102
  msgid "Enable/Disable"
4103
  msgstr "Aktivieren/Deaktivieren"
4104
 
4105
  # @ woocommerce-germanized
4106
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:471
4107
  msgid "Enable Direct Debit Payment"
4108
  msgstr "Bezahlung per Lastschrift aktivieren"
4109
 
4110
  # @ woocommerce-germanized
4111
  # @ woocommerce
4112
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:475
4113
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:85
4114
  msgctxt "gateway"
4115
  msgid "Title"
4116
  msgstr "Bezeichnung"
4117
 
4118
  # @ woocommerce-germanized
4119
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:477
4120
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:87
4121
  msgid "This controls the title which the user sees during checkout."
4122
  msgstr ""
4123
  "Beschreibungstext, den Benutzer bei der Auswahl dieser Zahlungsart sehen."
4124
 
4125
  # @ woocommerce-germanized
4126
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:482
4127
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:92
4128
  msgid "Description"
4129
  msgstr "Beschreibung"
4130
 
4131
  # @ woocommerce-germanized
4132
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:484
4133
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:94
4134
  msgid "Payment method description that the customer will see on your checkout."
4135
  msgstr "Beschreibung der Zahlungsart, die Kunden auf deiner Website sehen."
4136
 
4137
  # @ woocommerce-germanized
4138
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:485
4139
  msgid "The order amount will be debited directly from your bank account."
4140
  msgstr ""
4141
  "Der Gesamtbestellbetrag wird per SEPA-Lastschrift direkt von Ihrem Konto "
4142
  "abgebucht."
4143
 
4144
  # @ woocommerce-germanized
4145
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:489
4146
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:99
4147
  msgid "Instructions"
4148
  msgstr "Anweisungen"
4149
 
4150
  # @ woocommerce-germanized
4151
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:491
4152
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:101
4153
  msgid "Instructions that will be added to the thank you page and emails."
4154
  msgstr "Anweisung, die zur „Danke“-Seite und zu E-Mails hinzugefügt werden."
4155
 
4156
  # @ woocommerce-germanized
4157
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:496
4158
  msgid "Debtee"
4159
  msgstr "Gläubiger Informationen"
4160
 
4161
  # @ woocommerce-germanized
4162
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:498
4163
  msgid "Insert your company information."
4164
  msgstr "Füge hier die Informationen zu deinem Unternehmen ein."
4165
 
4166
  # @ woocommerce-germanized
4167
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:500
4168
  msgid "Company Inc, John Doe Street, New York"
4169
  msgstr "Musterfirma GmbH, Musterstraße 12, 12203 Musterstadt"
4170
 
4171
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:506
4172
  msgid "Insert the bank account holder name."
4173
  msgstr "Füge hier den Namen des Kontoinhabers ein."
4174
 
4175
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:508
4176
  msgid "Company Inc"
4177
  msgstr "Muster GmbH"
4178
 
4179
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:514
4180
  msgid "Insert the bank account IBAN."
4181
  msgstr "Füge hier den IBAN deines Kontos ein."
4182
 
4183
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:519
4184
  msgid "BIC"
4185
  msgstr "BIC"
4186
 
4187
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:521
4188
  msgid "Insert the bank account BIC."
4189
  msgstr "Füge hier den BIC deines Kontos ein."
4190
 
4191
  # @ woocommerce-germanized
4192
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:526
4193
  msgid "Debtee identification number"
4194
  msgstr "Identifikationsnummer"
4195
 
4196
  # @ woocommerce-germanized
4197
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:528
4198
  #, php-format
4199
  msgid ""
4200
  "Insert your debtee indentification number. More information can be found <a "
@@ -4204,16 +4243,16 @@ msgstr ""
4204
  "Weitere Informationen zu dieser Nummer erhältst du <a href=\"%s\">hier</a>."
4205
 
4206
  # @ woocommerce-germanized
4207
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:532
4208
  msgid "Generate Mandate ID"
4209
  msgstr "Mandat-Referenz generieren"
4210
 
4211
  # @ woocommerce-germanized
4212
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:534
4213
  msgid "Automatically generate Mandate ID."
4214
  msgstr "Mandat-Referenznummer automatisch generieren."
4215
 
4216
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:535
4217
  msgid ""
4218
  "Automatically generate Mandate ID after order completion (based on Order ID)."
4219
  msgstr ""
@@ -4221,11 +4260,11 @@ msgstr ""
4221
  "basierend auf der Bestellnummer."
4222
 
4223
  # @ woocommerce-germanized
4224
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:539
4225
  msgid "XML Pain Format"
4226
  msgstr "XML Pain Format"
4227
 
4228
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:541
4229
  msgid ""
4230
  "You may adjust the XML Export Pain Schema to your banks needs. Some banks "
4231
  "may require pain.001.003.03."
@@ -4234,11 +4273,11 @@ msgstr ""
4234
  "Banken benötigen z.B. pain.001.003.03."
4235
 
4236
  # @ woocommerce-germanized
4237
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:545
4238
  msgid "Mandate ID Format"
4239
  msgstr "Mandat-Referenz Format"
4240
 
4241
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:547
4242
  msgid ""
4243
  "You may extend the Mandate ID format by adding a prefix and/or suffix. Use "
4244
  "{id} as placeholder to insert the automatically generated ID."
@@ -4247,12 +4286,12 @@ msgstr ""
4247
  "{id} als Platzhalter um die automatisch generierte Referenznummer einzufügen."
4248
 
4249
  # @ woocommerce-germanized
4250
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:551
4251
  msgid "Mandate Text"
4252
  msgstr "Lastschriftmandat"
4253
 
4254
  # @ woocommerce-germanized
4255
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:553
4256
  msgid ""
4257
  "This text will be populated with live order/checkout data. Will be used as "
4258
  "preview direct debit mandate and as email template text."
@@ -4263,23 +4302,23 @@ msgstr ""
4263
  "Verfügung gestellt."
4264
 
4265
  # @ woocommerce-germanized
4266
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:560
4267
  msgid "Enable \"agree to SEPA mandate\" checkbox"
4268
  msgstr "Aktiviere die Checkbox zur Bestätigung des Lastschriftmandates."
4269
 
4270
  # @ woocommerce-germanized
4271
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:562
4272
  msgid "Enable a checkbox linking to a SEPA direct debit mandate preview."
4273
  msgstr ""
4274
  "Aktiviere eine Checkbox, die zu einer Vorschau des Lastschrift-Mandats führt."
4275
 
4276
  # @ woocommerce-germanized
4277
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:566
4278
  msgid "Checkbox label"
4279
  msgstr "Checkbox Text"
4280
 
4281
  # @ woocommerce-germanized
4282
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:568
4283
  msgid ""
4284
  "Customize the checkbox label. Use {link}link name{/link} to insert the "
4285
  "preview link."
@@ -4288,20 +4327,52 @@ msgstr ""
4288
  "auf die Vorschau zu verlinken."
4289
 
4290
  # @ woocommerce-germanized
4291
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:569
4292
  msgid "I hereby agree to the {link}direct debit mandate{/link}."
4293
  msgstr "Hiermit erteile ich das {link}SEPA Lastschriftmandat{/link}."
4294
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4295
  # @ woocommerce-germanized
4296
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:573
4297
  msgid "Mask IBAN"
4298
  msgstr "IBAN maskieren"
4299
 
4300
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:574
4301
  msgid "Mask the IBAN within emails."
4302
  msgstr "IBAN in E-Mails maskieren."
4303
 
4304
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:576
4305
  msgid ""
4306
  "This will lead to masked IBANs within emails (replaced by *). All but last 4 "
4307
  "digits will be masked."
@@ -4309,15 +4380,15 @@ msgstr ""
4309
  "Der IBAN wird in E-Mails (abgesehen von den letzten 4 Stellen) mit * "
4310
  "maskiert."
4311
 
4312
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:585
4313
  msgid "Remember"
4314
  msgstr "Bankdaten merken\t"
4315
 
4316
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:586
4317
  msgid "Remember account data for returning customers."
4318
  msgstr "Bankverbindung für registrierte Kunden speichern."
4319
 
4320
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:588
4321
  msgid "Save account data as user meta if user has/creates a customer account."
4322
  msgstr ""
4323
  "Speichert die Bankverbindung für registrierte Kunden in der user_meta "
@@ -4325,37 +4396,37 @@ msgstr ""
4325
  "eigenständig aus."
4326
 
4327
  # @ woocommerce-germanized
4328
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:671
4329
  msgid "Please insert your SEPA account data."
4330
  msgstr "Bitte fügen Sie Ihre SEPA Kontoinformationen ein."
4331
 
4332
  # @ woocommerce-germanized
4333
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:681
4334
  msgid "Your IBAN seems to be invalid."
4335
  msgstr "Ihr IBAN scheint nicht gültig zu sein."
4336
 
4337
  # @ woocommerce-germanized
4338
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:683
4339
  msgid "Your IBAN's country code doesn’t match with your billing country."
4340
  msgstr "Der Ländercode des IBANs stimmt nicht mit dem Rechnungsland überein."
4341
 
4342
  # @ woocommerce-germanized
4343
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:687
4344
  msgid "Your BIC seems to be invalid."
4345
  msgstr "Ihr BIC/SWIFT scheint nicht gültig zu sein."
4346
 
4347
  # @ woocommerce-germanized
4348
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:699
4349
  msgid "Please accept the direct debit mandate."
4350
  msgstr "Bitte erteilen Sie das SEPA Lastschriftmandat."
4351
 
4352
  # @ woocommerce-germanized
4353
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:730
4354
  msgid "is invalid"
4355
  msgstr "ist ungültig"
4356
 
4357
  # @ woocommerce-germanized
4358
- #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:768
4359
  msgid "Awaiting Direct Debit Payment"
4360
  msgstr "Zahlung per Lastschrift ausstehend"
4361
 
@@ -4400,9 +4471,13 @@ msgstr "Startdatum"
4400
  msgid "End Date"
4401
  msgstr "Enddatum"
4402
 
 
 
 
 
4403
  # @ woocommerce-germanized
4404
  #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:26
4405
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:88
4406
  msgid "Pay by Invoice"
4407
  msgstr "Rechnung"
4408
 
@@ -4414,18 +4489,18 @@ msgstr ""
4414
 
4415
  # @ woocommerce-germanized
4416
  # @ woocommerce
4417
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
4418
- #: woocommerce-germanized.php:576
4419
  msgid "Settings"
4420
  msgstr "Einstellungen"
4421
 
4422
  # @ woocommerce-germanized
4423
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:57
4424
  msgid "Automatically generate PDF invoices for this gateway?"
4425
  msgstr "PDF Rechnungen für diese Zahlungsart automatisch erstellen?"
4426
 
4427
  # @ woocommerce-germanized
4428
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:58
4429
  msgid ""
4430
  "By upgrading to the professional version you'll be able to automatically "
4431
  "generate PDF invoices to this payment gateway. Furthermore you'll benefit "
@@ -4439,17 +4514,17 @@ msgstr ""
4439
  "Premium-Support via Ticket-System!"
4440
 
4441
  # @ woocommerce-germanized
4442
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:61
4443
  msgid "Learn more about PDF invoicing"
4444
  msgstr "Mehr über PDF-Rechnungen erfahren"
4445
 
4446
  # @ woocommerce-germanized
4447
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:81
4448
  msgid "Enable Pay by Invoice"
4449
  msgstr "Bezahlung auf Rechnung aktivieren"
4450
 
4451
  # @ woocommerce-germanized
4452
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:95
4453
  msgid ""
4454
  "You'll receive an invoice after your order. Please transfer the order amount "
4455
  "to our bank account within 14 days."
@@ -4458,12 +4533,12 @@ msgstr ""
4458
  "den Gesamtbetrag innerhalb von 14 Tagen auf das dort angegebene Konto."
4459
 
4460
  # @ woocommerce-germanized
4461
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:106
4462
  msgid "Order Status"
4463
  msgstr "Bestellstatus"
4464
 
4465
  # @ woocommerce-germanized
4466
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:108
4467
  msgid ""
4468
  "Choose which order status should be applied after a customer has chosen to "
4469
  "pay by invoice."
@@ -4472,29 +4547,29 @@ msgstr ""
4472
  "angewendet werden soll."
4473
 
4474
  # @ woocommerce-germanized
4475
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:114
4476
  msgid "Registered customers"
4477
  msgstr "Registrierte Kunden"
4478
 
4479
  # @ woocommerce-germanized
4480
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:115
4481
  msgid "Do only offer pay by invoice to registered/logged in customers."
4482
  msgstr "Biete diese Zahlungsart nur registrierten/eingeloggten Kunden an."
4483
 
4484
  # @ woocommerce-germanized
4485
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:117
4486
  msgid "This will enable Pay by Invoice to logged in customers only"
4487
  msgstr ""
4488
  "Diese Option erlaubt es dir, die Zahlungsart lediglich eingeloggten Kunden "
4489
  "zur Verfügung zu stellen"
4490
 
4491
  # @ woocommerce-germanized
4492
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:122
4493
  msgid "Customer limitation"
4494
  msgstr "Kunden Eingrenzung"
4495
 
4496
  # @ woocommerce-germanized
4497
- #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:123
4498
  msgid ""
4499
  "Do only offer pay by invoice to customers who have at least completed one "
4500
  "order."
@@ -4983,7 +5058,7 @@ msgstr ""
4983
  "\"%s\" target=\"_blank\">Review Collector</a>."
4984
 
4985
  # @ woocommerce-germanized
4986
- #: includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php:103
4987
  msgctxt "trusted-shops"
4988
  msgid "Trusted Shops Customer Reviews"
4989
  msgstr "Trusted Shops Kundenbewertungen"
@@ -5072,7 +5147,7 @@ msgid "Trusted Shops Rich Snippets"
5072
  msgstr "Trusted Shops Rich Snippets"
5073
 
5074
  # @ woocommerce-germanized
5075
- #: includes/wc-gzd-cart-functions.php:369
5076
  msgid ""
5077
  "I want immediate access to the digital content and I acknowledge that "
5078
  "thereby I lose my right to cancel once the service has begun."
@@ -5340,10 +5415,16 @@ msgid "%s custom reviews"
5340
  msgstr "%s Kundenbewertungen"
5341
 
5342
  # @ woocommerce-germanized
5343
- #: woocommerce-germanized.php:731
5344
  msgid "Order Confirmation"
5345
  msgstr "Bestellbestätigung"
5346
 
 
 
 
 
 
 
5347
  # @ woocommerce-germanized
5348
  #~ msgid ""
5349
  #~ "Because of the small business owner state according to &#167; 19 UStG the "
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized v1.5.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2017-10-06 13:26+0200\n"
6
+ "PO-Revision-Date: 2017-10-06 13:26+0200\n"
7
+ "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
8
  "Language-Team: \n"
9
  "Language: de_DE\n"
10
  "MIME-Version: 1.0\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.0.4\n"
15
  "X-Poedit-SourceCharset: UTF-8\n"
16
  "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
17
  "_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;"
92
  msgstr "l"
93
 
94
  # @ woocommerce-germanized
95
+ #: includes/abstracts/abstract-wc-gzd-product.php:260
96
+ #: includes/abstracts/abstract-wc-gzd-product.php:269
97
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:169
98
  #: includes/wc-gzd-core-functions.php:129
99
+ #: includes/wc-gzd-template-functions.php:608 woocommerce-germanized.php:823
100
  msgid "incl. VAT"
101
  msgstr "inkl. MwSt."
102
 
103
  # @ woocommerce-germanized
104
+ #: includes/abstracts/abstract-wc-gzd-product.php:260
105
  msgid "excl. VAT"
106
  msgstr "exkl. MwSt."
107
 
108
  # @ woocommerce-germanized
109
+ #: includes/abstracts/abstract-wc-gzd-product.php:262
110
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:169
111
+ #: includes/wc-gzd-core-functions.php:129 woocommerce-germanized.php:823
112
  #, php-format
113
  msgid "incl. %s%% VAT"
114
  msgstr "inkl. %s%% MwSt."
115
 
116
  # @ woocommerce-germanized
117
+ #: includes/abstracts/abstract-wc-gzd-product.php:262
118
  #, php-format
119
  msgid "excl. %s%% VAT"
120
  msgstr "exkl. %s%% MwSt."
148
  #: includes/export/class-wc-gzd-product-export.php:32
149
  #: includes/import/class-wc-gzd-product-import.php:23
150
  #: includes/import/class-wc-gzd-product-import.php:32
151
+ #: woocommerce-germanized.php:94 woocommerce-germanized.php:103
152
  msgid "Cheatin&#8217; huh?"
153
  msgstr "So geht das leider nicht.."
154
 
209
  msgid "Go to WooCommerce Germanized Settings"
210
  msgstr "zu den WooCommerce Germanized Einstellungen"
211
 
212
+ #: includes/admin/class-wc-gzd-admin.php:76
213
+ msgid "Order confirmation manually sent to customer."
214
+ msgstr "Bestellbestätigung manuell an den Kunden versendet."
215
+
216
+ # @ woocommerce-germanized
217
+ #: includes/admin/class-wc-gzd-admin.php:82
218
+ msgid "Resend order confirmation"
219
+ msgstr "Bestellbestätigung erneut versenden"
220
+
221
  # @ woocommerce-germanized
222
+ #: includes/admin/class-wc-gzd-admin.php:91
223
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:25
224
  msgid "Germanized"
225
  msgstr "Germanized"
226
 
227
+ #: includes/admin/class-wc-gzd-admin.php:101
228
  msgid "Parcel Delivery Data Transfer:"
229
  msgstr "Paketdienstleister Datenweitergabe:"
230
 
231
+ #: includes/admin/class-wc-gzd-admin.php:102
232
  msgid "allowed"
233
  msgstr "akzeptiert"
234
 
235
+ #: includes/admin/class-wc-gzd-admin.php:102
236
  msgid "not allowed"
237
  msgstr "akzeptiert"
238
 
239
  # @ woocommerce-germanized
240
+ #: includes/admin/class-wc-gzd-admin.php:175
241
  msgid "Optional Email Content"
242
  msgstr "Optionaler E-Mail Inhalt"
243
 
244
  # @ woocommerce-germanized
245
+ #: includes/admin/class-wc-gzd-admin.php:184
246
  msgid "Add content which will be replacing default page content within emails."
247
  msgstr ""
248
  "Fülle dieses Feld aus um einen abweichenden E-Mail Anhangstext für diese "
249
  "Seite zu bestimmen."
250
 
251
  # @ woocommerce-germanized
252
+ #: includes/admin/class-wc-gzd-admin.php:194
253
  #: includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php:152
254
  msgid "Optional Mini Description"
255
  msgstr "Warenkorb Kurzbeschreibung"
256
 
257
  # @ woocommerce-germanized
258
+ #: includes/admin/class-wc-gzd-admin.php:211
259
  msgid ""
260
  "This content will be shown as short product description within checkout and "
261
  "emails."
1111
 
1112
  # @ woocommerce-germanized
1113
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:514
1114
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:697
1115
  msgid "Checkbox"
1116
  msgstr "Checkbox"
1117
 
2039
 
2040
  # @ woocommerce-germanized
2041
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1156
2042
+ #: includes/wc-gzd-cart-functions.php:381
2043
  msgid ""
2044
  "To retrieve direct access to digital content you have to agree to the loss "
2045
  "of your right of withdrawal."
2116
 
2117
  # @ woocommerce-germanized
2118
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1185
2119
+ #: includes/wc-gzd-cart-functions.php:406
2120
  msgid ""
2121
  "For services: I demand and acknowledge the immediate performance of the "
2122
  "service before the expiration of the withdrawal period. I acknowledge that "
2134
 
2135
  # @ woocommerce-germanized
2136
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1195
2137
+ #: includes/wc-gzd-cart-functions.php:417
2138
  msgid ""
2139
  "To allow the immediate performance of the services you have to agree to the "
2140
  "loss of your right of withdrawal."
2233
  "den Titel der Versandmethoden einzubetten."
2234
 
2235
  #: includes/admin/settings/class-wc-gzd-settings-germanized.php:1233
2236
+ #: includes/wc-gzd-cart-functions.php:466
2237
  msgid ""
2238
  "Yes, I would like to be reminded via E-mail about parcel delivery "
2239
  "({shipping_method_title}). Your E-mail Address will only be transferred to "
2902
 
2903
  # @ woocommerce-germanized
2904
  #: includes/admin/views/html-settings-pro.php:25
2905
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:74
2906
  msgid "Upgrade now"
2907
  msgstr "jetzt upgraden"
2908
 
2935
  # @ woocommerce-germanized
2936
  #: includes/api/class-wc-gzd-rest-customers-controller.php:163
2937
  #: includes/api/class-wc-gzd-rest-orders-controller.php:194
2938
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:28
2939
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:616
2940
  #: includes/gateways/direct-debit/views/html-export.php:27
2941
  msgid "Direct Debit"
2942
  msgstr "Lastschrift"
2944
  # @ woocommerce-germanized
2945
  #: includes/api/class-wc-gzd-rest-customers-controller.php:168
2946
  #: includes/api/class-wc-gzd-rest-orders-controller.php:199
2947
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:154
2948
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:419
2949
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:642
2950
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:783
2951
  msgid "Account Holder"
2952
  msgstr "Kontoinhaber"
2953
 
2954
  # @ woocommerce-germanized
2955
  #: includes/api/class-wc-gzd-rest-customers-controller.php:173
2956
  #: includes/api/class-wc-gzd-rest-orders-controller.php:204
2957
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:161
2958
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:420
2959
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:650
2960
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:787
2961
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:879
2962
  msgid "IBAN"
2963
  msgstr "IBAN"
2964
 
2965
  # @ woocommerce-germanized
2966
  #: includes/api/class-wc-gzd-rest-customers-controller.php:178
2967
  #: includes/api/class-wc-gzd-rest-orders-controller.php:209
2968
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:167
2969
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:421
2970
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:791
2971
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:880
2972
  msgid "BIC/SWIFT"
2973
  msgstr "BIC/SWIFT"
2974
 
2986
 
2987
  # @ woocommerce-germanized
2988
  #: includes/api/class-wc-gzd-rest-orders-controller.php:214
2989
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:173
2990
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:425
2991
  msgid "Mandate Reference ID"
2992
  msgstr "Mandat-Referenznummer"
2993
 
3195
  #: includes/class-wc-gzd-checkout.php:289
3196
  #: includes/class-wc-gzd-checkout.php:297
3197
  #: includes/class-wc-gzd-checkout.php:322
3198
+ #: includes/class-wc-gzd-checkout.php:468
3199
  #: includes/class-wc-gzd-customer-helper.php:114
3200
  #: includes/class-wc-gzd-customer-helper.php:122
3201
  #: includes/class-wc-gzd-revocation.php:41
3206
  #: includes/class-wc-gzd-checkout.php:289
3207
  #: includes/class-wc-gzd-checkout.php:297
3208
  #: includes/class-wc-gzd-checkout.php:323
3209
+ #: includes/class-wc-gzd-checkout.php:468
3210
+ #: includes/class-wc-gzd-checkout.php:473
3211
  #: includes/class-wc-gzd-customer-helper.php:114
3212
  #: includes/class-wc-gzd-customer-helper.php:122
3213
  #: includes/class-wc-gzd-revocation.php:42
3797
  "Sale price labels used to mark old prices (e.g. Recommended Retail Price)"
3798
  msgstr "Preishinweise zur Markierung von Streichpreisen"
3799
 
3800
+ # @ woocommerce-germanized
3801
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:109
3802
+ #: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:116
3803
+ msgid "recurring payments"
3804
+ msgstr "wiederkehrende Zahlungen"
3805
+
3806
  # @ woocommerce-germanized
3807
  #: includes/emails/class-wc-gzd-email-customer-ekomi.php:24
3808
  msgctxt "ekomi"
4016
  msgstr "Angebotspreis Hinweis"
4017
 
4018
  # @ woocommerce-germanized
4019
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:29
4020
  #, php-format
4021
  msgid ""
4022
  "Allows you to offer direct debit as a payment method to your customers. Adds "
4024
  msgstr ""
4025
  "Fügt das manuelle Lastschriftverfahren (SEPA) als Zahlungsmethode hinzu. %s"
4026
 
4027
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:29
4028
  msgid "SEPA XML Bulk Export"
4029
  msgstr "SEPA XML Export"
4030
 
4031
  # @ woocommerce-germanized
4032
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:54
4033
  msgid ""
4034
  "[company_info]\n"
4035
  "debtee identification number: [company_identification_number]\n"
4037
  "\n"
4038
  "<h3>SEPA Direct Debit Mandate</h3>\n"
4039
  "\n"
4040
+ "I hereby authorize the payee to [mandate_type_text] draft from my savings "
4041
+ "account listed below for the specified amount. I further authorize my bank "
4042
+ "to accept the direct debit from this account.\n"
4043
  "\n"
4044
  "Notice: I may request a full refund within eight weeks starting with the "
4045
  "initial debiting date. Responsibilities agreed with my credit institute "
4069
  "\n"
4070
  "<h3>SEPA-Lastschriftmandat</h3>\n"
4071
  "\n"
4072
+ "Hiermit ermächtige ich den Zahlungsempfänger, [mandate_type_text] von meinem "
4073
+ "Konto mittel Lastschrift einzuziehen. Zugleich weise ich mein Kreditinstitut "
4074
+ "an, die von dem Zahlungsempfänger auf mein Konto gezogene Lastschrift "
4075
+ "einzulösen.\n"
4076
  "\n"
4077
  "Hinweis: Ich kann innerhalb von acht Wochen, beginnend mit dem "
4078
  "Belastungsdatum, die Erstattung des belasteten Betrages verlangen. Es gelten "
4097
  "Bitte beachten Sie: Die Frist für die Vorabinformation der SEPA-Lastschrift "
4098
  "wird auf einen Tag verkürzt. "
4099
 
4100
+ # @ woocommerce-germanized
4101
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:189
4102
+ msgid "SEPA"
4103
+ msgstr "SEPA"
4104
+
4105
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:190
4106
+ msgid "SEPA XML"
4107
+ msgstr "SEPA XML"
4108
+
4109
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:246
4110
  msgid "SEPA XML Export"
4111
  msgstr "SEPA XML Export"
4112
 
4113
  # @ woocommerce-germanized
4114
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:361
4115
  #, php-format
4116
  msgid "Order %s"
4117
  msgstr "Bestellung %s"
4118
 
4119
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:381
4120
  msgid "Will be notified separately"
4121
  msgstr "Wird separat mitgeteilt"
4122
 
4123
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:430
4124
+ #, php-format
4125
+ msgid ""
4126
+ "We will debit %s from your account by direct debit on or shortly after %s."
4127
+ msgstr ""
4128
+ "Die Forderung von %s ziehen wir mit der SEPA-Lastschrift zum Fälligkeitstag "
4129
+ "%s ein."
4130
+
4131
+ # @ woocommerce-germanized
4132
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:534
4133
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:557
4134
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:577
4135
+ msgid "a single payment"
4136
+ msgstr "eine einmalige Zahlung"
4137
+
4138
  # @ woocommerce-germanized
4139
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:607
4140
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:93
4141
  msgid "Enable/Disable"
4142
  msgstr "Aktivieren/Deaktivieren"
4143
 
4144
  # @ woocommerce-germanized
4145
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:609
4146
  msgid "Enable Direct Debit Payment"
4147
  msgstr "Bezahlung per Lastschrift aktivieren"
4148
 
4149
  # @ woocommerce-germanized
4150
  # @ woocommerce
4151
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:613
4152
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:99
4153
  msgctxt "gateway"
4154
  msgid "Title"
4155
  msgstr "Bezeichnung"
4156
 
4157
  # @ woocommerce-germanized
4158
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:615
4159
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:101
4160
  msgid "This controls the title which the user sees during checkout."
4161
  msgstr ""
4162
  "Beschreibungstext, den Benutzer bei der Auswahl dieser Zahlungsart sehen."
4163
 
4164
  # @ woocommerce-germanized
4165
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:620
4166
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:106
4167
  msgid "Description"
4168
  msgstr "Beschreibung"
4169
 
4170
  # @ woocommerce-germanized
4171
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:622
4172
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:108
4173
  msgid "Payment method description that the customer will see on your checkout."
4174
  msgstr "Beschreibung der Zahlungsart, die Kunden auf deiner Website sehen."
4175
 
4176
  # @ woocommerce-germanized
4177
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:623
4178
  msgid "The order amount will be debited directly from your bank account."
4179
  msgstr ""
4180
  "Der Gesamtbestellbetrag wird per SEPA-Lastschrift direkt von Ihrem Konto "
4181
  "abgebucht."
4182
 
4183
  # @ woocommerce-germanized
4184
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:627
4185
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:113
4186
  msgid "Instructions"
4187
  msgstr "Anweisungen"
4188
 
4189
  # @ woocommerce-germanized
4190
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:629
4191
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:115
4192
  msgid "Instructions that will be added to the thank you page and emails."
4193
  msgstr "Anweisung, die zur „Danke“-Seite und zu E-Mails hinzugefügt werden."
4194
 
4195
  # @ woocommerce-germanized
4196
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:634
4197
  msgid "Debtee"
4198
  msgstr "Gläubiger Informationen"
4199
 
4200
  # @ woocommerce-germanized
4201
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:636
4202
  msgid "Insert your company information."
4203
  msgstr "Füge hier die Informationen zu deinem Unternehmen ein."
4204
 
4205
  # @ woocommerce-germanized
4206
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:638
4207
  msgid "Company Inc, John Doe Street, New York"
4208
  msgstr "Musterfirma GmbH, Musterstraße 12, 12203 Musterstadt"
4209
 
4210
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:644
4211
  msgid "Insert the bank account holder name."
4212
  msgstr "Füge hier den Namen des Kontoinhabers ein."
4213
 
4214
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:646
4215
  msgid "Company Inc"
4216
  msgstr "Muster GmbH"
4217
 
4218
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:652
4219
  msgid "Insert the bank account IBAN."
4220
  msgstr "Füge hier den IBAN deines Kontos ein."
4221
 
4222
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:657
4223
  msgid "BIC"
4224
  msgstr "BIC"
4225
 
4226
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:659
4227
  msgid "Insert the bank account BIC."
4228
  msgstr "Füge hier den BIC deines Kontos ein."
4229
 
4230
  # @ woocommerce-germanized
4231
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:664
4232
  msgid "Debtee identification number"
4233
  msgstr "Identifikationsnummer"
4234
 
4235
  # @ woocommerce-germanized
4236
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:666
4237
  #, php-format
4238
  msgid ""
4239
  "Insert your debtee indentification number. More information can be found <a "
4243
  "Weitere Informationen zu dieser Nummer erhältst du <a href=\"%s\">hier</a>."
4244
 
4245
  # @ woocommerce-germanized
4246
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:670
4247
  msgid "Generate Mandate ID"
4248
  msgstr "Mandat-Referenz generieren"
4249
 
4250
  # @ woocommerce-germanized
4251
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:672
4252
  msgid "Automatically generate Mandate ID."
4253
  msgstr "Mandat-Referenznummer automatisch generieren."
4254
 
4255
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:673
4256
  msgid ""
4257
  "Automatically generate Mandate ID after order completion (based on Order ID)."
4258
  msgstr ""
4260
  "basierend auf der Bestellnummer."
4261
 
4262
  # @ woocommerce-germanized
4263
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:677
4264
  msgid "XML Pain Format"
4265
  msgstr "XML Pain Format"
4266
 
4267
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:679
4268
  msgid ""
4269
  "You may adjust the XML Export Pain Schema to your banks needs. Some banks "
4270
  "may require pain.001.003.03."
4273
  "Banken benötigen z.B. pain.001.003.03."
4274
 
4275
  # @ woocommerce-germanized
4276
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:683
4277
  msgid "Mandate ID Format"
4278
  msgstr "Mandat-Referenz Format"
4279
 
4280
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:685
4281
  msgid ""
4282
  "You may extend the Mandate ID format by adding a prefix and/or suffix. Use "
4283
  "{id} as placeholder to insert the automatically generated ID."
4286
  "{id} als Platzhalter um die automatisch generierte Referenznummer einzufügen."
4287
 
4288
  # @ woocommerce-germanized
4289
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:689
4290
  msgid "Mandate Text"
4291
  msgstr "Lastschriftmandat"
4292
 
4293
  # @ woocommerce-germanized
4294
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:691
4295
  msgid ""
4296
  "This text will be populated with live order/checkout data. Will be used as "
4297
  "preview direct debit mandate and as email template text."
4302
  "Verfügung gestellt."
4303
 
4304
  # @ woocommerce-germanized
4305
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:698
4306
  msgid "Enable \"agree to SEPA mandate\" checkbox"
4307
  msgstr "Aktiviere die Checkbox zur Bestätigung des Lastschriftmandates."
4308
 
4309
  # @ woocommerce-germanized
4310
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:700
4311
  msgid "Enable a checkbox linking to a SEPA direct debit mandate preview."
4312
  msgstr ""
4313
  "Aktiviere eine Checkbox, die zu einer Vorschau des Lastschrift-Mandats führt."
4314
 
4315
  # @ woocommerce-germanized
4316
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:704
4317
  msgid "Checkbox label"
4318
  msgstr "Checkbox Text"
4319
 
4320
  # @ woocommerce-germanized
4321
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:706
4322
  msgid ""
4323
  "Customize the checkbox label. Use {link}link name{/link} to insert the "
4324
  "preview link."
4327
  "auf die Vorschau zu verlinken."
4328
 
4329
  # @ woocommerce-germanized
4330
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:707
4331
  msgid "I hereby agree to the {link}direct debit mandate{/link}."
4332
  msgstr "Hiermit erteile ich das {link}SEPA Lastschriftmandat{/link}."
4333
 
4334
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:711
4335
+ msgid "Enable pre-notification"
4336
+ msgstr "Vorankündigung aktivieren"
4337
+
4338
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:712
4339
+ msgid "Insert pre-notification text within the order confirmation email."
4340
+ msgstr ""
4341
+ "Fügt einen Standard-Text zur Vorankündigung des SEPA-Einzugs in die "
4342
+ "Bestellbestätigung ein."
4343
+
4344
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:714
4345
+ msgid ""
4346
+ "This option inserts a standard text containing a pre-notification for the "
4347
+ "customer."
4348
+ msgstr ""
4349
+ "Diese Option fügt einen Standard-Text zur Vorankündigung des SEPA-Einzugs in "
4350
+ "die Bestellbestätigung ein. In der Ankündigung wird u.a. ein konkreter "
4351
+ "Fälligkeitstermin genannt."
4352
+
4353
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:718
4354
+ msgid "Debit days"
4355
+ msgstr "Fälligkeitstage"
4356
+
4357
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:720
4358
+ msgid ""
4359
+ "This option is used to calculate the debit date and is added to the order "
4360
+ "date."
4361
+ msgstr ""
4362
+ "Diese Option wird verwendet um den Fälligkeitstag des SEPA-Einzugs zu "
4363
+ "berechnen. Der Fälligkeitstag ergibt sich aus dem Bestelldatum zzgl. der "
4364
+ "hier eingestellten Anzahl Tage."
4365
+
4366
  # @ woocommerce-germanized
4367
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:724
4368
  msgid "Mask IBAN"
4369
  msgstr "IBAN maskieren"
4370
 
4371
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:725
4372
  msgid "Mask the IBAN within emails."
4373
  msgstr "IBAN in E-Mails maskieren."
4374
 
4375
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:727
4376
  msgid ""
4377
  "This will lead to masked IBANs within emails (replaced by *). All but last 4 "
4378
  "digits will be masked."
4380
  "Der IBAN wird in E-Mails (abgesehen von den letzten 4 Stellen) mit * "
4381
  "maskiert."
4382
 
4383
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:736
4384
  msgid "Remember"
4385
  msgstr "Bankdaten merken\t"
4386
 
4387
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:737
4388
  msgid "Remember account data for returning customers."
4389
  msgstr "Bankverbindung für registrierte Kunden speichern."
4390
 
4391
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:739
4392
  msgid "Save account data as user meta if user has/creates a customer account."
4393
  msgstr ""
4394
  "Speichert die Bankverbindung für registrierte Kunden in der user_meta "
4396
  "eigenständig aus."
4397
 
4398
  # @ woocommerce-germanized
4399
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:822
4400
  msgid "Please insert your SEPA account data."
4401
  msgstr "Bitte fügen Sie Ihre SEPA Kontoinformationen ein."
4402
 
4403
  # @ woocommerce-germanized
4404
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:832
4405
  msgid "Your IBAN seems to be invalid."
4406
  msgstr "Ihr IBAN scheint nicht gültig zu sein."
4407
 
4408
  # @ woocommerce-germanized
4409
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:834
4410
  msgid "Your IBAN's country code doesn’t match with your billing country."
4411
  msgstr "Der Ländercode des IBANs stimmt nicht mit dem Rechnungsland überein."
4412
 
4413
  # @ woocommerce-germanized
4414
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:838
4415
  msgid "Your BIC seems to be invalid."
4416
  msgstr "Ihr BIC/SWIFT scheint nicht gültig zu sein."
4417
 
4418
  # @ woocommerce-germanized
4419
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:850
4420
  msgid "Please accept the direct debit mandate."
4421
  msgstr "Bitte erteilen Sie das SEPA Lastschriftmandat."
4422
 
4423
  # @ woocommerce-germanized
4424
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:881
4425
  msgid "is invalid"
4426
  msgstr "ist ungültig"
4427
 
4428
  # @ woocommerce-germanized
4429
+ #: includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php:917
4430
  msgid "Awaiting Direct Debit Payment"
4431
  msgstr "Zahlung per Lastschrift ausstehend"
4432
 
4471
  msgid "End Date"
4472
  msgstr "Enddatum"
4473
 
4474
+ #: includes/gateways/direct-debit/views/html-export.php:41
4475
+ msgid "Unpaid only"
4476
+ msgstr "Nur unbezahlte"
4477
+
4478
  # @ woocommerce-germanized
4479
  #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:26
4480
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:102
4481
  msgid "Pay by Invoice"
4482
  msgstr "Rechnung"
4483
 
4489
 
4490
  # @ woocommerce-germanized
4491
  # @ woocommerce
4492
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:64
4493
+ #: woocommerce-germanized.php:577
4494
  msgid "Settings"
4495
  msgstr "Einstellungen"
4496
 
4497
  # @ woocommerce-germanized
4498
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:71
4499
  msgid "Automatically generate PDF invoices for this gateway?"
4500
  msgstr "PDF Rechnungen für diese Zahlungsart automatisch erstellen?"
4501
 
4502
  # @ woocommerce-germanized
4503
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:72
4504
  msgid ""
4505
  "By upgrading to the professional version you'll be able to automatically "
4506
  "generate PDF invoices to this payment gateway. Furthermore you'll benefit "
4514
  "Premium-Support via Ticket-System!"
4515
 
4516
  # @ woocommerce-germanized
4517
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:75
4518
  msgid "Learn more about PDF invoicing"
4519
  msgstr "Mehr über PDF-Rechnungen erfahren"
4520
 
4521
  # @ woocommerce-germanized
4522
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:95
4523
  msgid "Enable Pay by Invoice"
4524
  msgstr "Bezahlung auf Rechnung aktivieren"
4525
 
4526
  # @ woocommerce-germanized
4527
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:109
4528
  msgid ""
4529
  "You'll receive an invoice after your order. Please transfer the order amount "
4530
  "to our bank account within 14 days."
4533
  "den Gesamtbetrag innerhalb von 14 Tagen auf das dort angegebene Konto."
4534
 
4535
  # @ woocommerce-germanized
4536
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:120
4537
  msgid "Order Status"
4538
  msgstr "Bestellstatus"
4539
 
4540
  # @ woocommerce-germanized
4541
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:122
4542
  msgid ""
4543
  "Choose which order status should be applied after a customer has chosen to "
4544
  "pay by invoice."
4547
  "angewendet werden soll."
4548
 
4549
  # @ woocommerce-germanized
4550
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:128
4551
  msgid "Registered customers"
4552
  msgstr "Registrierte Kunden"
4553
 
4554
  # @ woocommerce-germanized
4555
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:129
4556
  msgid "Do only offer pay by invoice to registered/logged in customers."
4557
  msgstr "Biete diese Zahlungsart nur registrierten/eingeloggten Kunden an."
4558
 
4559
  # @ woocommerce-germanized
4560
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:131
4561
  msgid "This will enable Pay by Invoice to logged in customers only"
4562
  msgstr ""
4563
  "Diese Option erlaubt es dir, die Zahlungsart lediglich eingeloggten Kunden "
4564
  "zur Verfügung zu stellen"
4565
 
4566
  # @ woocommerce-germanized
4567
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:136
4568
  msgid "Customer limitation"
4569
  msgstr "Kunden Eingrenzung"
4570
 
4571
  # @ woocommerce-germanized
4572
+ #: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:137
4573
  msgid ""
4574
  "Do only offer pay by invoice to customers who have at least completed one "
4575
  "order."
5058
  "\"%s\" target=\"_blank\">Review Collector</a>."
5059
 
5060
  # @ woocommerce-germanized
5061
+ #: includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php:88
5062
  msgctxt "trusted-shops"
5063
  msgid "Trusted Shops Customer Reviews"
5064
  msgstr "Trusted Shops Kundenbewertungen"
5147
  msgstr "Trusted Shops Rich Snippets"
5148
 
5149
  # @ woocommerce-germanized
5150
+ #: includes/wc-gzd-cart-functions.php:370
5151
  msgid ""
5152
  "I want immediate access to the digital content and I acknowledge that "
5153
  "thereby I lose my right to cancel once the service has begun."
5415
  msgstr "%s Kundenbewertungen"
5416
 
5417
  # @ woocommerce-germanized
5418
+ #: woocommerce-germanized.php:732
5419
  msgid "Order Confirmation"
5420
  msgstr "Bestellbestätigung"
5421
 
5422
+ #~ msgid "Your existing Mandate from the"
5423
+ #~ msgstr "Ihr vorhandenes Mandat vom"
5424
+
5425
+ #~ msgid "will be used if your bank account details did not change."
5426
+ #~ msgstr "wird verwendet, wenn sich Ihre Bankverbindung nicht geändert hat."
5427
+
5428
  # @ woocommerce-germanized
5429
  #~ msgid ""
5430
  #~ "Because of the small business owner state according to &#167; 19 UStG the "
i18n/languages/woocommerce-germanized.mo CHANGED
Binary file
i18n/languages/woocommerce-germanized.po CHANGED
@@ -2,14 +2,14 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "POT-Creation-Date: 2015-05-26 08:37+0100\n"
5
- "PO-Revision-Date: 2015-05-26 08:38+0100\n"
6
- "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "Language: en_US\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
- "X-Generator: Poedit 1.6.4\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
  "X-Poedit-KeywordsList: __;_e;_x\n"
2
  msgstr ""
3
  "Project-Id-Version: WooCommerce Germanized\n"
4
  "POT-Creation-Date: 2015-05-26 08:37+0100\n"
5
+ "PO-Revision-Date: 2017-10-04 11:49+0200\n"
6
+ "Last-Translator: holzhannes <holzhannes@posteo.de>\n"
7
  "Language-Team: \n"
8
  "Language: en_US\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 2.0.2\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
  "X-Poedit-KeywordsList: __;_e;_x\n"
includes/abstracts/abstract-wc-gzd-product.php CHANGED
@@ -122,6 +122,36 @@ class WC_GZD_Product {
122
  return false;
123
  }
124
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
125
  /**
126
  * Get a product's cart description
127
  *
@@ -407,6 +437,8 @@ class WC_GZD_Product {
407
 
408
  if ( $this->has_unit() ) {
409
 
 
 
410
  $display_price = $this->get_unit_price();
411
  $display_regular_price = $this->get_unit_price( 1, $this->get_unit_regular_price() );
412
  $display_sale_price = $this->get_unit_price( 1, $this->get_unit_sale_price() );
122
  return false;
123
  }
124
 
125
+ public function recalculate_unit_price( $args = array() ) {
126
+
127
+ $args = wp_parse_args( $args, array(
128
+ 'regular_price' => $this->get_regular_price(),
129
+ 'sale_price' => $this->get_sale_price(),
130
+ 'price' => $this->get_price(),
131
+ ) );
132
+
133
+ $base = $this->unit_base;
134
+ $product_base = $base;
135
+
136
+ if ( empty( $this->unit_product ) ) {
137
+ // Set base multiplicator to 1
138
+ $base = 1;
139
+ } else {
140
+ $product_base = $this->unit_product;
141
+ }
142
+
143
+ $this->unit_price_regular = wc_format_decimal( ( $args[ 'regular_price' ] / $product_base ) * $base, wc_get_price_decimals() );
144
+ $this->unit_price_sale = '';
145
+
146
+ if ( ! empty( $args[ 'sale_price' ] ) ) {
147
+ $this->unit_price_sale = wc_format_decimal( ( $args[ 'sale_price' ] / $product_base ) * $base, wc_get_price_decimals() );
148
+ }
149
+
150
+ $this->unit_price = wc_format_decimal( ( $args[ 'price' ] / $product_base ) * $base, wc_get_price_decimals() );
151
+
152
+ do_action( 'woocommerce_gzd_recalculated_unit_price', $this );
153
+ }
154
+
155
  /**
156
  * Get a product's cart description
157
  *
437
 
438
  if ( $this->has_unit() ) {
439
 
440
+ do_action( 'woocommerce_gzd_before_get_unit_price_html', $this );
441
+
442
  $display_price = $this->get_unit_price();
443
  $display_regular_price = $this->get_unit_price( 1, $this->get_unit_regular_price() );
444
  $display_sale_price = $this->get_unit_price( 1, $this->get_unit_sale_price() );
includes/admin/class-wc-gzd-admin.php CHANGED
@@ -57,6 +57,30 @@ class WC_GZD_Admin {
57
  add_filter( 'woocommerce_addons_section_data', array( $this, 'set_addon' ), 10, 2 );
58
  add_action( 'woocommerce_admin_order_data_after_shipping_address', array( $this, 'set_order_parcel_delivery_opted_in' ), 10, 1 );
59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  }
61
 
62
  public function status_tab() {
@@ -177,7 +201,7 @@ class WC_GZD_Admin {
177
  return;
178
 
179
  if ( isset( $_POST[ '_legal_text' ] ) && ! empty( $_POST[ '_legal_text' ] ) )
180
- update_post_meta( $post_id, '_legal_text', sanitize_text_field( esc_html( $_POST[ '_legal_text' ] ) ) );
181
  else
182
  delete_post_meta( $post_id, '_legal_text' );
183
 
57
  add_filter( 'woocommerce_addons_section_data', array( $this, 'set_addon' ), 10, 2 );
58
  add_action( 'woocommerce_admin_order_data_after_shipping_address', array( $this, 'set_order_parcel_delivery_opted_in' ), 10, 1 );
59
 
60
+ add_filter( 'woocommerce_order_actions', array( $this, 'order_actions' ), 10, 1 );
61
+ add_action( 'woocommerce_order_action_order_confirmation', array( $this, 'resend_order_confirmation' ), 10, 1 );
62
+ }
63
+
64
+ public function resend_order_confirmation( $order ) {
65
+
66
+ // Send the customer invoice email.
67
+ WC()->payment_gateways();
68
+ WC()->shipping();
69
+
70
+ $mail = WC_germanized()->emails->get_email_instance_by_id( 'customer_processing_order' );
71
+
72
+ if ( $mail ) {
73
+ $mail->trigger( $order );
74
+
75
+ // Note the event.
76
+ $order->add_order_note( __( 'Order confirmation manually sent to customer.', 'woocommerce-germanized' ), false, true );
77
+ do_action( 'woocommerce_gzd_after_resend_order_confirmation_email', $order, 'customer_processing_order' );
78
+ }
79
+ }
80
+
81
+ public function order_actions( $actions ) {
82
+ $actions[ 'order_confirmation' ] = __( 'Resend order confirmation', 'woocommerce-germanized' );
83
+ return $actions;
84
  }
85
 
86
  public function status_tab() {
201
  return;
202
 
203
  if ( isset( $_POST[ '_legal_text' ] ) && ! empty( $_POST[ '_legal_text' ] ) )
204
+ update_post_meta( $post_id, '_legal_text', wc_gzd_sanitize_html_text_field( $_POST[ '_legal_text' ] ) );
205
  else
206
  delete_post_meta( $post_id, '_legal_text' );
207
 
includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php CHANGED
@@ -381,7 +381,7 @@ class WC_Germanized_Meta_Box_Product_Data {
381
  }
382
 
383
  if ( isset( $data[ '_mini_desc' ] ) ) {
384
- $product = wc_gzd_set_crud_meta_data( $product, '_mini_desc', ( $data[ '_mini_desc' ] === '' ? '' : wc_gzd_sanitize_mini_desc( $data[ '_mini_desc' ] ) ) );
385
  }
386
 
387
  if ( isset( $data[ 'delivery_time' ] ) && ! empty( $data[ 'delivery_time' ] ) ) {
381
  }
382
 
383
  if ( isset( $data[ '_mini_desc' ] ) ) {
384
+ $product = wc_gzd_set_crud_meta_data( $product, '_mini_desc', ( $data[ '_mini_desc' ] === '' ? '' : wc_gzd_sanitize_html_text_field( $data[ '_mini_desc' ] ) ) );
385
  }
386
 
387
  if ( isset( $data[ 'delivery_time' ] ) && ! empty( $data[ 'delivery_time' ] ) ) {
includes/api/class-wc-gzd-rest-products-controller.php CHANGED
@@ -436,7 +436,7 @@ class WC_GZD_REST_Products_Controller {
436
  }
437
 
438
  if ( isset( $request['mini_desc'] ) ) {
439
- $data['_mini_desc'] = wc_gzd_sanitize_mini_desc( $request['mini_desc'] );
440
  }
441
 
442
  foreach( array( 'free_shipping', 'service', 'differential_taxation' ) as $bool_meta ) {
436
  }
437
 
438
  if ( isset( $request['mini_desc'] ) ) {
439
+ $data['_mini_desc'] = wc_gzd_sanitize_html_text_field( $request['mini_desc'] );
440
  }
441
 
442
  foreach( array( 'free_shipping', 'service', 'differential_taxation' ) as $bool_meta ) {
includes/class-wc-gzd-ajax.php CHANGED
@@ -122,7 +122,7 @@ class WC_GZD_AJAX {
122
  $mail->trigger( $data );
123
 
124
  // Send to Admin
125
- $data[ 'mail' ] = get_bloginfo('admin_email');
126
  $mail->trigger( $data );
127
  }
128
 
122
  $mail->trigger( $data );
123
 
124
  // Send to Admin
125
+ $data[ 'mail' ] = apply_filters( 'wc_gzd_revocation_admin_mail', get_bloginfo('admin_email') );
126
  $mail->trigger( $data );
127
  }
128
 
includes/class-wc-gzd-checkout.php CHANGED
@@ -414,12 +414,16 @@ class WC_GZD_Checkout {
414
 
415
  public function set_order_item_meta_crud( $item, $cart_item_key, $values, $order ) {
416
  if ( is_a( $item, 'WC_Order_Item' ) && $item->get_product() ) {
 
417
  $product = $item->get_product();
 
 
 
418
 
419
- $item = wc_gzd_set_crud_meta_data( $item, '_units', wc_gzd_get_gzd_product( $product )->get_product_units_html() );
420
- $item = wc_gzd_set_crud_meta_data( $item, '_delivery_time', wc_gzd_get_gzd_product( $product )->get_delivery_time_html() );
421
- $item = wc_gzd_set_crud_meta_data( $item, '_item_desc', wc_gzd_get_gzd_product( $product )->get_mini_desc() );
422
- $item = wc_gzd_set_crud_meta_data( $item, '_unit_price', wc_gzd_get_gzd_product( $product )->get_unit_html( false ) );
423
  }
424
  }
425
 
414
 
415
  public function set_order_item_meta_crud( $item, $cart_item_key, $values, $order ) {
416
  if ( is_a( $item, 'WC_Order_Item' ) && $item->get_product() ) {
417
+
418
  $product = $item->get_product();
419
+ $gzd_product = wc_gzd_get_gzd_product( $product );
420
+
421
+ do_action( 'woocommerce_gzd_add_order_item_meta', $item, $order, $gzd_product );
422
 
423
+ $item = wc_gzd_set_crud_meta_data( $item, '_units', $gzd_product->get_product_units_html() );
424
+ $item = wc_gzd_set_crud_meta_data( $item, '_delivery_time', $gzd_product->get_delivery_time_html() );
425
+ $item = wc_gzd_set_crud_meta_data( $item, '_item_desc', $gzd_product->get_mini_desc() );
426
+ $item = wc_gzd_set_crud_meta_data( $item, '_unit_price', apply_filters( 'woocommerce_gzd_order_item_unit_price', $gzd_product->get_unit_html( false ), $gzd_product, $item, $order ) );
427
  }
428
  }
429
 
includes/class-wc-gzd-install.php CHANGED
@@ -22,7 +22,8 @@ class WC_GZD_Install {
22
  '1.6.0' => 'updates/woocommerce-gzd-update-1.6.0.php',
23
  '1.6.3' => 'updates/woocommerce-gzd-update-1.6.3.php',
24
  '1.8.0' => 'updates/woocommerce-gzd-update-1.8.0.php',
25
- '1.8.9' => 'updates/woocommerce-gzd-update-1.8.9.php'
 
26
  );
27
 
28
  /**
22
  '1.6.0' => 'updates/woocommerce-gzd-update-1.6.0.php',
23
  '1.6.3' => 'updates/woocommerce-gzd-update-1.6.3.php',
24
  '1.8.0' => 'updates/woocommerce-gzd-update-1.8.0.php',
25
+ '1.8.9' => 'updates/woocommerce-gzd-update-1.8.9.php',
26
+ '1.9.2' => 'updates/woocommerce-gzd-update-1.9.2.php'
27
  );
28
 
29
  /**
includes/compatibility/class-wc-gzd-compatibility-woocommerce-dynamic-pricing.php ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * WPML Helper
4
+ *
5
+ * Specific configuration for WPML
6
+ *
7
+ * @class WC_GZD_WPML_Helper
8
+ * @category Class
9
+ * @author vendidero
10
+ */
11
+ class WC_GZD_Compatibility_Woocommerce_Dynamic_Pricing extends WC_GZD_Compatibility {
12
+
13
+ public function __construct() {
14
+ parent::__construct(
15
+ 'WooCommerce Dynamic Pricing',
16
+ 'woocommerce-dynamic-pricing/woocommerce-dynamic-pricing.php'
17
+ );
18
+ }
19
+
20
+ public function load() {
21
+ // Filter seems to be removed due to low priority
22
+ remove_filter( 'woocommerce_cart_item_price', 'wc_gzd_cart_product_unit_price', wc_gzd_get_hook_priority( 'cart_product_unit_price' ), 3 );
23
+ remove_filter( 'woocommerce_cart_item_subtotal', 'wc_gzd_cart_product_unit_price', wc_gzd_get_hook_priority( 'cart_subtotal_unit_price' ), 3 );
24
+
25
+ // Readd filter with higher priority
26
+ add_filter( 'woocommerce_cart_item_price', 'wc_gzd_cart_product_unit_price', 500, 3 );
27
+ add_filter( 'woocommerce_cart_item_subtotal', 'wc_gzd_cart_product_unit_price', 500, 3 );
28
+
29
+ // Filters to recalculate unit price during cart/checkout
30
+ add_action( 'woocommerce_before_cart', array( $this, 'set_unit_price_filter' ), 10 );
31
+ add_action( 'woocommerce_before_checkout_form', array( $this, 'set_unit_price_filter' ), 10 );
32
+ add_action( 'woocommerce_gzd_review_order_before_cart_contents', array( $this, 'set_unit_price_filter' ), 10 );
33
+
34
+ // Recalculate unit price before adding order item meta
35
+ add_filter( 'woocommerce_gzd_order_item_unit_price', array( $this, 'unit_price_order_item' ), 10, 4 );
36
+ }
37
+
38
+ public function unit_price_order_item( $price, $gzd_product, $item, $order ) {
39
+ $product_price = $order->get_item_subtotal( $item, true );
40
+
41
+ $gzd_product->recalculate_unit_price( array(
42
+ 'regular_price' => $product_price,
43
+ 'price' => $product_price,
44
+ ) );
45
+
46
+ return $gzd_product->get_unit_html( false );
47
+ }
48
+
49
+ public function set_unit_price_filter() {
50
+ add_filter( 'woocommerce_gzd_unit_price_including_tax', array( $this, 'calculate_unit_price' ), 10, 4 );
51
+ add_filter( 'woocommerce_gzd_unit_price_excluding_tax', array( $this, 'calculate_unit_price' ), 10, 4 );
52
+ }
53
+
54
+ public function calculate_unit_price( $price, $single_price, $qty, $product ) {
55
+ $product->recalculate_unit_price();
56
+ return $price;
57
+ }
58
+
59
+ }
includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php CHANGED
@@ -25,8 +25,105 @@ class WC_GZD_Compatibility_Woocommerce_Subscriptions extends WC_GZD_Compatibilit
25
 
26
  public function load() {
27
  add_filter( 'wcs_cart_totals_order_total_html', array( $this, 'set_tax_notice' ), 50, 2 );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  }
29
 
 
 
 
 
 
 
30
  public function set_tax_notice( $price, $cart ) {
31
  // Tax for inclusive prices
32
  if ( 'yes' == get_option( 'woocommerce_calc_taxes' ) && 'incl' == $cart->tax_display_cart ) {
25
 
26
  public function load() {
27
  add_filter( 'wcs_cart_totals_order_total_html', array( $this, 'set_tax_notice' ), 50, 2 );
28
+
29
+ /**
30
+ * Direct Debit Gateway
31
+ */
32
+ add_filter( 'woocommerce_gzd_direct_debit_mandate_type_order_text', array( $this, 'direct_debit_mandate_type_order_text' ), 10, 2 );
33
+ add_filter( 'woocommerce_gzd_direct_debit_mandate_type_text', array( $this, 'direct_debit_mandate_type_cart_text' ), 10, 1 );
34
+ add_filter( 'wcs_renewal_order_meta', array( $this, 'direct_debit_subscription_order_meta' ), 10, 3 );
35
+ add_filter( 'wcs_subscription_meta', array( $this, 'direct_debit_subscription_order_meta' ), 10, 3 );
36
+ add_action( 'woocommerce_gzd_direct_debit_order_data_updated', array( $this, 'update_direct_debit_order' ), 10, 3 );
37
+ add_action( 'woocommerce_scheduled_subscription_payment_direct-debit', array( $this, 'direct_debit_subscription_payment' ), 10, 2 );
38
+ add_filter( 'woocommerce_gzd_direct_debit_export_query_args', array( $this, 'exporter_query' ), 10, 2 );
39
+ add_action( 'woocommerce_process_shop_subscription_meta', array( $this, 'save_direct_debit_data' ), 10, 2 );
40
+ }
41
+
42
+ public function save_direct_debit_data( $post_id, $post ) {
43
+ $order = wc_get_order( $post_id );
44
+
45
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) !== 'direct-debit' )
46
+ return;
47
+
48
+ $gateways = WC()->payment_gateways()->payment_gateways();
49
+
50
+ if ( ! empty( $gateways[ 'direct-debit' ] ) ) {
51
+ $gateways[ 'direct-debit' ]->save_debit_fields( $order );
52
+
53
+ if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
54
+ $order->save();
55
+ }
56
+ }
57
+ }
58
+
59
+ public function exporter_query( $query_args, $args ) {
60
+
61
+ $query_args[ 'post_type' ] = array( 'shop_order', 'shop_subscription' );
62
+ $query_args[ 'post_status' ] = array_merge( $query_args[ 'post_status' ], array( 'wc-active' ) );
63
+
64
+ if ( isset( $query_args[ 'p' ] ) ) {
65
+ $id = $query_args[ 'p' ];
66
+
67
+ if ( wcs_order_contains_subscription( $id, array( 'parent' ) ) ) {
68
+
69
+ $order_ids = array();
70
+ $subscriptions = wcs_get_subscriptions_for_order( $id );
71
+
72
+ if ( ! empty( $subscriptions ) ) {
73
+ foreach( $subscriptions as $subscription ) {
74
+ array_push( $order_ids, wc_gzd_get_crud_data( $subscription, 'id' ) );
75
+
76
+ $orders = $subscription->get_related_orders();
77
+ foreach( $orders as $order_id ) {
78
+ array_push( $order_ids, $order_id );
79
+ }
80
+ }
81
+ }
82
+
83
+ unset( $query_args[ 'p' ] );
84
+ $query_args[ 'post__in' ] = $order_ids;
85
+ }
86
+ }
87
+
88
+ return $query_args;
89
+ }
90
+
91
+ public function direct_debit_subscription_payment( $total, $order ) {
92
+ if ( $mail = WC_germanized()->emails->get_email_instance_by_id( 'customer_sepa_direct_debit_mandate' ) )
93
+ $mail->trigger( $order );
94
+
95
+ WC_Subscriptions_Manager::process_subscription_payments_on_order( $order );
96
+ }
97
+
98
+ public function direct_debit_subscription_order_meta( $meta, $to_order, $from_order ) {
99
+ foreach( $meta as $key => $meta_data ) {
100
+ if ( '_direct_debit_mandate_type' === $meta_data[ 'meta_key' ] ) {
101
+ $meta[ $key ][ 'meta_value' ] = Digitick\Sepa\PaymentInformation::S_RECURRING;
102
+ }
103
+ }
104
+ return $meta;
105
+ }
106
+
107
+ public function direct_debit_mandate_type_order_text( $text, $order ) {
108
+ if ( wcs_order_contains_subscription( wc_gzd_get_crud_data( $order, 'id' ), array( 'parent', 'renewal' ) ) ) {
109
+ return __( 'recurring payments', 'woocommerce-germanized' );
110
+ }
111
+ return $text;
112
+ }
113
+
114
+ public function direct_debit_mandate_type_cart_text( $text ) {
115
+ if ( WC_Subscriptions_Cart::cart_contains_subscription() ) {
116
+ return __( 'recurring payments', 'woocommerce-germanized' );
117
+ }
118
+ return $text;
119
  }
120
 
121
+ public function update_direct_debit_order( $order, $user_id, $gateway ) {
122
+ if ( WC_Subscriptions_Cart::cart_contains_subscription() ) {
123
+ $order = wc_gzd_set_crud_data( $order, '_direct_debit_mandate_type', Digitick\Sepa\PaymentInformation::S_FIRST );
124
+ }
125
+ }
126
+
127
  public function set_tax_notice( $price, $cart ) {
128
  // Tax for inclusive prices
129
  if ( 'yes' == get_option( 'woocommerce_calc_taxes' ) && 'incl' == $cart->tax_display_cart ) {
includes/compatibility/class-wc-gzd-compatibility-wpml.php CHANGED
@@ -10,6 +10,8 @@
10
  */
11
  class WC_GZD_Compatibility_Wpml extends WC_GZD_Compatibility {
12
 
 
 
13
  public function __construct() {
14
  parent::__construct(
15
  'WPML',
@@ -26,6 +28,13 @@ class WC_GZD_Compatibility_Wpml extends WC_GZD_Compatibility {
26
 
27
  public function load() {
28
 
 
 
 
 
 
 
 
29
  // Observe order update and trigger hook
30
  add_action( 'post_updated', array( $this, 'observe_order_update' ), 0, 3 );
31
 
@@ -43,6 +52,10 @@ class WC_GZD_Compatibility_Wpml extends WC_GZD_Compatibility {
43
  $this->filter_page_ids();
44
  }
45
 
 
 
 
 
46
  public function set_language_field() {
47
  if( function_exists('wpml_the_language_input_field' ) ) {
48
  wpml_the_language_input_field();
10
  */
11
  class WC_GZD_Compatibility_Wpml extends WC_GZD_Compatibility {
12
 
13
+ protected $dynamic_unit_pricing = null;
14
+
15
  public function __construct() {
16
  parent::__construct(
17
  'WPML',
28
 
29
  public function load() {
30
 
31
+ // Support unit price for multiple currencies
32
+ if ( function_exists( 'wcml_is_multi_currency_on' ) && wcml_is_multi_currency_on() ) {
33
+ $this->dynamic_unit_pricing = new WC_GZD_Compatibility_Woocommerce_Dynamic_Pricing();
34
+ $this->dynamic_unit_pricing->load();
35
+ add_action( 'woocommerce_gzd_before_get_unit_price_html', array( $this, 'before_show_product_unit_price' ), 10, 1 );
36
+ }
37
+
38
  // Observe order update and trigger hook
39
  add_action( 'post_updated', array( $this, 'observe_order_update' ), 0, 3 );
40
 
52
  $this->filter_page_ids();
53
  }
54
 
55
+ public function before_show_product_unit_price( $product ) {
56
+ $product->recalculate_unit_price();
57
+ }
58
+
59
  public function set_language_field() {
60
  if( function_exists('wpml_the_language_input_field' ) ) {
61
  wpml_the_language_input_field();
includes/gateways/direct-debit/assets/js/direct-debit.js CHANGED
@@ -60,7 +60,7 @@
60
  e.preventDefault();
61
 
62
  var url = $( this ).attr( 'href' );
63
-
64
  var data = {
65
  country: $( '#billing_country' ).val(),
66
  postcode: $( 'input#billing_postcode' ).val(),
@@ -69,7 +69,8 @@
69
  address_2: $( 'input#billing_address_2' ).val(),
70
  debit_holder: $( 'input#direct-debit-account-holder' ).val(),
71
  debit_iban: $( 'input#direct-debit-account-iban' ).val(),
72
- debit_swift: $( 'input#direct-debit-account-bic' ).val()
 
73
  };
74
 
75
  url += '&ajax=true&' + jQuery.param( data );
60
  e.preventDefault();
61
 
62
  var url = $( this ).attr( 'href' );
63
+
64
  var data = {
65
  country: $( '#billing_country' ).val(),
66
  postcode: $( 'input#billing_postcode' ).val(),
69
  address_2: $( 'input#billing_address_2' ).val(),
70
  debit_holder: $( 'input#direct-debit-account-holder' ).val(),
71
  debit_iban: $( 'input#direct-debit-account-iban' ).val(),
72
+ debit_swift: $( 'input#direct-debit-account-bic' ).val(),
73
+ user: $( 'input#createaccount' ).val()
74
  };
75
 
76
  url += '&ajax=true&' + jQuery.param( data );
includes/gateways/direct-debit/assets/js/direct-debit.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){function b(a){return IBAN.isValid(a)}function c(a){var b=/^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$/;return b.test(a)}a(function(){a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-holder",function(){a(this).val()||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-iban",function(){b(a(this).val())||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-bic",function(){c(a(this).val())||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a(".direct-debit-checkbox").hide(),a("form.checkout, form#order_review").on("blur input change","input, select",function(){a(".direct-debit-checkbox").hide(),a("#direct-debit-form").length&&a("#payment_method_direct-debit").is(":checked")&&a("input#direct-debit-account-holder").val()&&a("input#direct-debit-account-iban").val()&&a("input#direct-debit-account-bic").val()&&a(".direct-debit-checkbox").show()}),a(document).on("click","a#show-direct-debit-trigger",function(b){b.preventDefault();var c=a(this).attr("href"),d={country:a("#billing_country").val(),postcode:a("input#billing_postcode").val(),city:a("#billing_city").val(),address:a("input#billing_address_1").val(),address_2:a("input#billing_address_2").val(),debit_holder:a("input#direct-debit-account-holder").val(),debit_iban:a("input#direct-debit-account-iban").val(),debit_swift:a("input#direct-debit-account-bic").val()};c+="&ajax=true&"+jQuery.param(d),a("#show-direct-debit-pretty").attr("href",c),a("#show-direct-debit-pretty").trigger("click")}),a("a#show-direct-debit-pretty").prettyPhoto({social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1})})}(jQuery);
1
+ !function(a){function b(a){return IBAN.isValid(a)}function c(a){var b=/^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$/;return b.test(a)}a(function(){a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-holder",function(){a(this).val()||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-iban",function(){b(a(this).val())||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a("form.checkout, form#order_review").on("blur input change","#direct-debit-form input#direct-debit-account-bic",function(){c(a(this).val())||(a(this).parents("p.form-row").removeClass("woocommerce-validated"),a(this).parents("p.form-row").addClass("woocommerce-invalid woocommerce-invalid-required-field"))}),a(".direct-debit-checkbox").hide(),a("form.checkout, form#order_review").on("blur input change","input, select",function(){a(".direct-debit-checkbox").hide(),a("#direct-debit-form").length&&a("#payment_method_direct-debit").is(":checked")&&a("input#direct-debit-account-holder").val()&&a("input#direct-debit-account-iban").val()&&a("input#direct-debit-account-bic").val()&&a(".direct-debit-checkbox").show()}),a(document).on("click","a#show-direct-debit-trigger",function(b){b.preventDefault();var c=a(this).attr("href"),d={country:a("#billing_country").val(),postcode:a("input#billing_postcode").val(),city:a("#billing_city").val(),address:a("input#billing_address_1").val(),address_2:a("input#billing_address_2").val(),debit_holder:a("input#direct-debit-account-holder").val(),debit_iban:a("input#direct-debit-account-iban").val(),debit_swift:a("input#direct-debit-account-bic").val(),user:a("input#createaccount").val()};c+="&ajax=true&"+jQuery.param(d),a("#show-direct-debit-pretty").attr("href",c),a("#show-direct-debit-pretty").trigger("click")}),a("a#show-direct-debit-pretty").prettyPhoto({social_tools:!1,theme:"pp_woocommerce",horizontal_padding:20,opacity:.8,deeplinking:!1})})}(jQuery);
includes/gateways/direct-debit/class-wc-gzd-gateway-direct-debit.php CHANGED
@@ -12,13 +12,15 @@ if ( ! defined( 'ABSPATH' ) ) {
12
  * @class WC_GZD_Gateway_Direct_Debit
13
  * @extends WC_Payment_Gateway
14
  * @version 2.1.0
15
- * @author Vendidero
16
  */
17
  class WC_GZD_Gateway_Direct_Debit extends WC_Payment_Gateway {
18
 
19
- /**
20
- * Constructor for the gateway.
21
- */
 
 
22
  public function __construct() {
23
  $this->id = 'direct-debit';
24
  $this->icon = apply_filters( 'woocommerce_gzd_direct_debit_icon', '' );
@@ -36,6 +38,8 @@ class WC_GZD_Gateway_Direct_Debit extends WC_Payment_Gateway {
36
  $this->description = $this->get_option( 'description' );
37
  $this->instructions = $this->get_option( 'instructions', $this->description );
38
  $this->enable_checkbox = $this->get_option( 'enable_checkbox', 'yes' );
 
 
39
  $this->generate_mandate_id = $this->get_option( 'generate_mandate_id', 'yes' );
40
  $this->mandate_id_format = $this->get_option( 'mandate_id_format', 'MANDAT{id}' );
41
  $this->company_info = $this->get_option( 'company_info' );
@@ -53,7 +57,7 @@ mandat reference number: [mandate_id].
53
 
54
  <h3>SEPA Direct Debit Mandate</h3>
55
 
56
- I hereby authorize the payee to automatically draft from my savings account listed below for the specified amount. I further authorize my bank to accept the direct debit from this account.
57
 
58
  Notice: I may request a full refund within eight weeks starting with the initial debiting date. Responsibilities agreed with my credit institute apply for a refund.
59
 
@@ -76,6 +80,14 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
76
 
77
  $this->supports = array(
78
  'products',
 
 
 
 
 
 
 
 
79
  );
80
 
81
  if ( $this->get_option( 'enabled' ) === 'yes' && ! $this->supports_encryption() ) {
@@ -95,10 +107,10 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
95
 
96
  // Actions
97
  add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) );
98
- add_action( 'woocommerce_thankyou_direct-debit', array( $this, 'thankyou_page' ) );
99
- add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) );
100
- add_action( 'woocommerce_review_order_after_payment', array( $this, 'checkbox' ), wc_gzd_get_hook_priority( 'checkout_direct_debit' ) );
101
- add_action( 'wp_ajax_show_direct_debit', array( $this, 'generate_mandate' ) );
102
  add_action( 'wp_ajax_nopriv_show_direct_debit', array( $this, 'generate_mandate' ) );
103
  add_filter( 'woocommerce_email_classes', array( $this, 'add_email_template' ) );
104
 
@@ -108,48 +120,148 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
108
  add_action( 'woocommerce_pay_order_before_submit', array( $this, 'checkbox' ) );
109
 
110
  // Order Meta
111
- add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'set_order_meta' ), 10, 2 );
 
 
 
 
 
 
 
 
 
 
112
 
113
- // Customer Emails
114
- add_action( 'woocommerce_email_before_order_table', array( $this, 'email_instructions' ), 10, 3 );
115
- add_action( 'woocommerce_germanized_order_confirmation_sent', array( $this, 'send_mail' ) );
116
- add_action( 'woocommerce_email_customer_details', array( $this, 'email_sepa' ), 15, 3 );
117
 
118
- // Order admin
119
- add_filter( 'woocommerce_admin_billing_fields', array( $this, 'set_debit_fields' ) );
120
- // Admin order table download actions
 
 
 
 
121
  add_filter( 'woocommerce_admin_order_actions', array( $this, 'order_actions' ), 0, 2 );
122
 
123
- // Export filters
124
  add_action( 'export_filters', array( $this, 'export_view' ) );
125
  add_action( 'export_wp', array( $this, 'export' ), 0, 1 );
126
  add_filter( 'export_args', array( $this, 'export_args' ), 0, 1 );
127
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  }
129
 
130
- public function order_actions( $actions, $order ) {
131
 
132
- if ( wc_gzd_get_crud_data( $order, 'payment_method' ) === $this->id ) {
133
- $actions[ 'download-sepa' ] = array(
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  'url' => add_query_arg( array( 'download' => 'true', 'content' => 'sepa', 'sepa_order_id' => wc_gzd_get_crud_data( $order, 'id' ) ), admin_url( 'export.php' ) ),
135
  'name' => __( 'SEPA XML Export', 'woocommerce-germanized' ),
136
  'action' => "xml"
137
  );
138
- }
139
 
140
- return $actions;
141
- }
142
 
143
- public function export_view() {
144
- include_once( 'views/html-export.php' );
145
- }
146
 
147
- public function export_args( $args = array() ) {
148
  if ( 'sepa' === $_GET['content'] ) {
149
  $args['content'] = 'sepa';
150
  if ( isset( $_GET['sepa_start_date'] ) || isset( $_GET['sepa_end_date'] ) ) {
151
  $args['start_date'] = ( isset( $_GET['sepa_start_date'] ) ? sanitize_text_field( $_GET['sepa_start_date'] ) : '' );
152
  $args['end_date'] = ( isset( $_GET['sepa_end_date'] ) ? sanitize_text_field( $_GET['sepa_end_date'] ) : '' );
 
153
  } elseif ( isset( $_GET[ 'sepa_order_id' ] ) ) {
154
  $args['order_id'] = absint( $_GET['sepa_order_id'] );
155
  }
@@ -158,25 +270,35 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
158
  }
159
 
160
  public function export( $args = array() ) {
161
-
162
  if ( $args[ 'content' ] != 'sepa' )
163
  return;
164
 
165
  $filename = '';
166
  $parts = array( 'SEPA-Export' );
167
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
168
  $query_args = array(
169
  'post_type' => 'shop_order',
170
  'post_status' => array_keys( wc_get_order_statuses() ),
171
  'orderby' => 'post_date',
172
  'order' => 'ASC',
173
- 'meta_query' => array(
174
- array(
175
- 'key' => '_payment_method',
176
- 'value' => 'direct-debit',
177
- 'compare' => '=',
178
- ),
179
- ),
180
  );
181
 
182
  if ( isset( $args['order_id'] ) ) {
@@ -201,270 +323,286 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
201
  array_push( $parts, $args['start_date'] );
202
  if ( ! empty( $args['end_date'] ) )
203
  array_push( $parts, $args['end_date'] );
204
-
205
  }
206
 
207
- $order_query = new WP_Query( $query_args );
208
  $filename = apply_filters( 'woocommerce_germanized_direct_debit_export_filename', implode( '-', $parts ) . '.xml', $args );
209
 
210
  if ( $order_query->have_posts() ) {
211
 
212
  $msg_id = apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_msg_id', $this->company_account_bic . '00' . date( 'YmdHis', time() ) );
213
- $payment_id = 'PMT-ID-' . date( 'YmdHis', time() );
214
-
215
  $directDebit = Digitick\Sepa\TransferFile\Factory\TransferFileFacadeFactory::createDirectDebit( $msg_id, $this->company_account_holder, $this->pain_format );
216
  $directDebit = apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_exporter', $directDebit );
217
 
218
- $directDebit->addPaymentInfo( $payment_id, array(
219
- 'id' => $payment_id,
220
- 'creditorName' => $this->company_account_holder,
221
- 'creditorAccountIBAN' => $this->clean_whitespaces( $this->company_account_iban ),
222
- 'creditorAgentBIC' => $this->clean_whitespaces( $this->company_account_bic ),
223
- 'seqType' => Digitick\Sepa\PaymentInformation::S_ONEOFF,
224
- 'creditorId' => $this->clean_whitespaces( $this->company_identification_number ),
225
- ));
226
-
227
  while ( $order_query->have_posts() ) {
228
 
229
  $order_query->next_post();
230
  $order = wc_get_order( $order_query->post->ID );
231
-
232
- // Add a Single Transaction to the named payment
 
 
 
 
 
 
 
 
 
 
 
233
  $directDebit->addTransfer( $payment_id, apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_exporter_transfer_args', array(
234
- 'amount' => $order->get_total(),
235
- 'debtorIban' => $this->clean_whitespaces( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
236
- 'debtorBic' => $this->clean_whitespaces( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ) ),
237
- 'debtorName' => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
238
- 'debtorMandate' => $this->get_mandate_id( wc_gzd_get_crud_data( $order, 'id' ) ), date_i18n( "Y-m-d", strtotime( wc_gzd_get_crud_data( $order, 'order_date' ) ) ),
239
- 'debtorMandateSignDate' => date_i18n( 'd.m.Y', strtotime( wc_gzd_get_crud_data( $order, 'order_date' ) ) ),
240
- 'remittanceInformation' => apply_filters( 'woocommerce_germanized_direct_debit_purpose', sprintf( __( 'Order %s', 'woocommerce-germanized' ), $order->get_order_number() ), $order ),
241
- ) ), $this, $order );
242
  }
243
 
244
  header( 'Content-Description: File Transfer' );
245
  header( 'Content-Disposition: attachment; filename=' . $filename );
246
  header( 'Content-Type: text/xml; charset=' . get_option( 'blog_charset' ), true );
247
- header( 'Cache-Control: no-cache, no-store, must-revalidate' );
248
  header( 'Pragma: no-cache' );
249
  header( 'Expires: 0' );
250
 
251
  echo $directDebit->asXML();
252
  exit();
253
 
254
- }
255
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
256
  }
257
 
258
- public function get_mandate_id( $order_id = false ) {
 
259
 
260
- if ( ! $order_id )
261
- return __( 'Will be notified separately', 'woocommerce-germanized' );
 
262
 
263
- $order = wc_get_order( $order_id );
 
264
 
265
- if ( wc_gzd_get_crud_data( $order, 'direct_debit_mandate_id' ) )
266
- return wc_gzd_get_crud_data( $order, 'direct_debit_mandate_id' );
267
-
268
- $mandate_id = apply_filters( 'woocommerce_germanized_direct_debit_mandate_id', ( $this->generate_mandate_id === 'yes' ? str_replace( '{id}', $order->get_order_number(), $this->mandate_id_format ) : '' ) );
269
- update_post_meta( wc_gzd_get_crud_data( $order, 'id' ), '_direct_debit_mandate_id', $mandate_id );
270
-
271
- return $mandate_id;
272
  }
273
 
274
- public function email_sepa( $order, $sent_to_admin, $plain_text ) {
 
 
 
275
 
276
- if ( $this->id !== wc_gzd_get_crud_data( $order, 'payment_method' ) )
277
- return;
278
 
279
- $sepa_fields = array(
280
- __( 'Account Holder', 'woocommerce-germanized' ) => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
281
- __( 'IBAN', 'woocommerce-germanized' ) => $this->mask( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
282
- __( 'BIC/SWIFT', 'woocommerce-germanized' ) => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ),
283
- );
284
 
285
- if ( $sent_to_admin ) {
286
- $sepa_fields[ __( 'Mandate Reference ID', 'woocommerce-germanized' ) ] = $this->get_mandate_id( wc_gzd_get_crud_data( $order, 'id' ) );
287
- }
 
 
 
 
 
 
288
 
289
- wc_get_template( 'emails/email-sepa-data.php', array( 'fields' => $sepa_fields ) );
290
 
291
- }
292
 
293
- public function set_debit_fields( $fields ) {
 
 
 
 
 
 
 
294
 
295
- global $post;
296
 
297
- if ( ! $post || ! $order = wc_get_order( $post->ID ) )
298
- return $fields;
299
 
300
- if ( wc_gzd_get_crud_data( $order, 'payment_method' ) !== $this->id )
301
- return $fields;
302
 
303
- $fields[ 'direct_debit_holder' ] = array(
304
- 'label' => __( 'Account Holder', 'woocommerce-germanized' ),
305
- 'id' => '_direct_debit_holder',
306
- 'class' => '',
307
- 'show' => false,
308
- );
309
 
310
- $fields[ 'direct_debit_iban' ] = array(
311
- 'label' => __( 'IBAN', 'woocommerce-germanized' ),
312
- 'id' => '_direct_debit_iban',
313
- 'value' => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ),
314
- 'show' => false,
315
- );
316
 
317
- $fields[ 'direct_debit_bic' ] = array(
318
- 'label' => __( 'BIC/SWIFT', 'woocommerce-germanized' ),
319
- 'id' => '_direct_debit_bic',
320
- 'value' => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ),
321
- 'show' => false,
322
- );
323
 
324
- $fields[ 'direct_debit_mandate_id' ] = array(
325
- 'label' => __( 'Mandate Reference ID', 'woocommerce-germanized' ),
326
- 'id' => '_direct_debit_mandate_id',
327
- 'show' => false,
328
- );
329
 
330
- return $fields;
331
 
332
- }
333
 
334
- public function send_mail( $order_id ) {
 
 
 
335
 
336
- $order = wc_get_order( $order_id );
337
 
338
- if ( wc_gzd_get_crud_data( $order, 'payment_method' ) == $this->id ) {
339
- if ( $mail = WC_germanized()->emails->get_email_instance_by_id( 'customer_sepa_direct_debit_mandate' ) )
340
- $mail->trigger( $order );
341
- }
342
 
343
- }
344
 
345
- public function clean_whitespaces( $str ) {
346
- return preg_replace('/\s+/', '', $str );
347
- }
348
 
349
- public function set_order_meta( $order_id, $posted ) {
 
350
 
351
- $order = wc_get_order( $order_id );
 
 
352
 
353
- if ( ! ( wc_gzd_get_crud_data( $order, 'payment_method' ) === $this->id ) )
354
- return;
355
 
356
- $holder = ( isset( $_POST[ 'direct_debit_account_holder' ] ) ? wc_clean( $_POST[ 'direct_debit_account_holder' ] ) : '' );
357
- $iban = ( isset( $_POST[ 'direct_debit_account_iban' ] ) ? $this->maybe_encrypt( $this->clean_whitespaces( wc_clean( $_POST[ 'direct_debit_account_iban' ] ) ) ) : '' );
358
- $bic = ( isset( $_POST[ 'direct_debit_account_bic' ] ) ? $this->maybe_encrypt( $this->clean_whitespaces( wc_clean( $_POST[ 'direct_debit_account_bic' ] ) ) ) : '' );
 
359
 
360
- $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_holder', $holder );
361
- $order = wc_gzd_set_crud_meta_data( $order,'_direct_debit_iban', $iban );
362
- $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_bic', $bic );
363
 
364
- if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
365
- $order->save();
366
- }
 
367
 
368
- if ( ! $this->supports_encryption() || $this->remember === 'no' || ! wc_gzd_get_crud_data( $order, 'user_id' ) )
369
- return;
370
 
371
- update_user_meta( wc_gzd_get_crud_data( $order, 'user_id' ), 'direct_debit_holder', $holder );
372
- update_user_meta( wc_gzd_get_crud_data( $order, 'user_id' ), 'direct_debit_iban', $iban );
373
- update_user_meta( wc_gzd_get_crud_data( $order, 'user_id' ), 'direct_debit_bic', $bic );
374
- }
375
 
376
- public function add_email_template( $mails ) {
377
- $mails[ 'WC_GZD_Email_Customer_SEPA_Direct_Debit_Mandate' ] = include WC_germanized()->plugin_path() . '/includes/emails/class-wc-gzd-email-customer-sepa-direct-debit-mandate.php';
378
- return $mails;
379
- }
380
 
381
- public function generate_mandate() {
 
382
 
383
- if ( ! $this->is_available() )
384
- exit();
 
 
385
 
386
- if ( ! isset( $_GET[ '_wpnonce' ] ) || ! wp_verify_nonce( $_GET[ '_wpnonce' ], 'show_direct_debit' ) )
387
- exit();
 
 
 
 
 
 
 
388
 
389
- $params = array(
390
- 'account_holder' => wc_clean( isset( $_GET[ 'debit_holder' ] ) ? $_GET[ 'debit_holder' ] : '' ),
391
- 'account_iban' => wc_clean( isset( $_GET[ 'debit_iban' ] ) ? $_GET[ 'debit_iban' ] : '' ),
392
- 'account_swift' => wc_clean( isset( $_GET[ 'debit_swift' ] ) ? $_GET[ 'debit_swift' ] : '' ),
393
- 'street' => wc_clean( isset( $_GET[ 'address' ] ) ? $_GET[ 'address' ] : '' ),
 
 
 
394
  'postcode' => wc_clean( isset( $_GET[ 'postcode' ] ) ? $_GET[ 'postcode' ] : '' ),
395
  'city' => wc_clean( isset( $_GET[ 'city' ] ) ? $_GET[ 'city' ] : '' ),
396
  'country' => ( isset( $_GET[ 'country' ] ) && isset( WC()->countries->countries[ $_GET[ 'country' ] ] ) ? WC()->countries->countries[ $_GET[ 'country' ] ] : '' ),
 
397
  );
398
 
399
  echo $this->generate_mandate_text( $params );
400
  exit();
401
 
402
- }
403
 
404
- public function generate_mandate_by_order( $order ) {
405
 
406
- if ( is_numeric( $order ) )
407
- $order = wc_get_order( absint( $order ) );
408
 
409
- $params = array(
410
- 'account_holder' => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
411
- 'account_iban' => $this->mask( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
412
- 'account_swift' => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ),
413
- 'street' => wc_gzd_get_crud_data( $order, 'billing_address_1' ),
414
  'postcode' => wc_gzd_get_crud_data( $order, 'billing_postcode' ),
415
  'city' => wc_gzd_get_crud_data( $order, 'billing_city' ),
416
  'country' => WC()->countries->countries[ wc_gzd_get_crud_data( $order, 'billing_country' ) ],
417
- 'date' => date_i18n( wc_date_format(), strtotime( wc_gzd_get_crud_data( $order, 'order_date' ) ) ),
418
- 'mandate_id' => $this->get_mandate_id( wc_gzd_get_crud_data( $order, 'id' ) ),
 
419
  );
420
 
421
  return $this->generate_mandate_text( $params );
 
422
 
423
- }
 
 
424
 
425
- public function mask( $data ) {
426
-
427
- if ( strlen( $data ) <= 4 || $this->get_option( 'mask' ) === 'no' )
428
- return $data;
429
-
430
- return str_repeat( apply_filters( 'woocommerce_gzd_direct_debit_mask_char', '*' ), strlen( $data ) - 4 ) . substr( $data, -4 );
431
- }
432
 
433
- public function generate_mandate_text( $args = array() ) {
434
 
435
- $args = wp_parse_args( $args, array(
436
- 'company_info' => $this->company_info,
437
- 'company_identification_number' => $this->company_identification_number,
438
- 'date' => date_i18n( wc_date_format(), strtotime( "now" ) ),
439
- 'mandate_id' => $this->get_mandate_id(),
440
- ) );
 
441
 
442
- $text = $this->mandate_text;
443
 
444
- foreach ( $args as $key => $val )
445
- $text = str_replace( '[' . $key . ']', $val, $text );
446
 
447
- return apply_filters( 'the_content', $text );
448
 
449
- }
450
 
451
- public function checkbox() {
452
- if ( $this->is_available() && $this->enable_checkbox === 'yes' ) {
453
- wc_get_template( 'checkout/terms-sepa.php', array( 'checkbox_label' => $this->get_checkbox_label() ) );
454
- }
455
- }
456
 
457
- public function get_checkbox_label() {
458
- $ajax_url = wp_nonce_url( add_query_arg( array( 'action' => 'show_direct_debit' ), admin_url( 'admin-ajax.php' ) ), 'show_direct_debit' );
459
- return apply_filters( 'woocommerce_gzd_direct_debit_ajax_url', str_replace( array( '{link}', '{/link}' ), array( '<a href="' . $ajax_url . '" id="show-direct-debit-trigger" rel="prettyPhoto">', '</a>' ), $this->checkbox_label ), $this );
460
- }
461
 
462
- /**
463
- * Initialise Gateway Settings Form Fields
464
- */
465
- public function init_form_fields() {
466
 
467
- $this->form_fields = array(
468
  'enabled' => array(
469
  'title' => __( 'Enable/Disable', 'woocommerce-germanized' ),
470
  'type' => 'checkbox',
@@ -569,6 +707,19 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
569
  'default' => __( 'I hereby agree to the {link}direct debit mandate{/link}.', 'woocommerce-germanized' ),
570
  'desc_tip' => true,
571
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
572
  'mask' => array(
573
  'title' => __( 'Mask IBAN', 'woocommerce-germanized' ),
574
  'label' => __( 'Mask the IBAN within emails.', 'woocommerce-germanized' ),
@@ -591,32 +742,32 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
591
 
592
  }
593
 
594
- }
595
 
596
- public function get_user_account_data( $user_id = '' ) {
597
-
598
- if ( empty( $user_id ) )
599
- $user_id = get_current_user_id();
600
 
601
- $data = array(
602
- 'holder' => '',
603
- 'iban' => '',
604
- 'bic' => '',
605
- );
606
 
607
- if ( $this->remember !== 'yes' )
608
- return $data;
 
 
 
609
 
610
- $data = array(
611
- 'holder' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_holder', true ) ),
612
- 'iban' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_iban', true ) ),
613
- 'bic' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_bic', true ) ),
614
- );
615
 
616
- return $data;
617
- }
 
 
 
 
 
 
618
 
619
- /**
620
  * Payment form on checkout page
621
  */
622
  public function payment_fields() {
@@ -624,7 +775,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
624
  if ( $description = $this->get_description() ) {
625
  echo wpautop( wptexturize( $description ) );
626
  }
627
-
628
  $account_data = $this->get_user_account_data();
629
 
630
  $fields = array(
@@ -643,22 +794,22 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
643
  );
644
 
645
  ?>
646
- <fieldset id="<?php echo $this->id; ?>-form">
647
  <?php do_action( 'woocommerce_gzd_direct_debit_form_start', $this->id ); ?>
648
  <?php
649
- foreach ( $fields as $field ) {
650
- echo $field;
651
- }
652
  ?>
653
  <?php do_action( 'woocommerce_gzd_direct_debit_form_end', $this->id ); ?>
654
- <div class="clear"></div>
655
- </fieldset>
656
  <?php
657
 
658
  }
659
 
660
- public function validate_fields() {
661
-
662
  if ( ! $this->is_available() || ! isset( $_POST[ 'payment_method' ] ) || $_POST[ 'payment_method' ] != $this->id )
663
  return;
664
 
@@ -683,7 +834,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
683
  wc_add_notice( __( 'Your IBAN\'s country code doesn’t match with your billing country.', 'woocommerce-germanized' ), 'error' );
684
 
685
  // Validate BIC
686
- if ( ! preg_match( '/^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$/', $bic ) )
687
  wc_add_notice( __( 'Your BIC seems to be invalid.', 'woocommerce-germanized' ), 'error' );
688
 
689
  // Make sure that checkbox gets validated if on woocommerce_pay for order page
@@ -706,7 +857,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
706
  * Outputs scripts used for simplify payment
707
  */
708
  public function payment_scripts() {
709
-
710
  if ( ! is_checkout() || ! $this->is_available() ) {
711
  return;
712
  }
@@ -732,50 +883,47 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
732
  wp_enqueue_script( 'wc-gzd-direct-debit' );
733
  }
734
 
735
- /**
736
- * Output for the order received page.
737
- */
738
  public function thankyou_page() {
739
  if ( $this->instructions )
740
- echo wpautop( wptexturize( $this->instructions ) );
741
  }
742
 
743
- /**
744
- * Add content to the WC emails.
745
- *
746
- * @access public
747
- * @param WC_Order $order
748
- * @param bool $sent_to_admin
749
- * @param bool $plain_text
750
- */
751
  public function email_instructions( $order, $sent_to_admin, $plain_text = false ) {
752
- if ( $this->instructions && ! $sent_to_admin && 'direct-debit' === wc_gzd_get_crud_data( $order, 'payment_method' ) && $order->has_status( 'processing' ) ) {
753
  echo wpautop( wptexturize( $this->instructions ) ) . PHP_EOL;
754
  }
755
  }
756
 
757
- /**
758
- * Process the payment and return the result
759
- *
760
- * @param int $order_id
761
- * @return array
762
- */
763
  public function process_payment( $order_id ) {
764
-
765
  $order = wc_get_order( $order_id );
766
-
767
  // Mark as on-hold (we're awaiting the cheque)
768
- $order->update_status( 'on-hold', __( 'Awaiting Direct Debit Payment', 'woocommerce-germanized' ) );
769
 
770
  // Reduce stock level
771
- wc_gzd_reduce_order_stock( $order_id );
772
-
773
- // Check if cart instance exists (frontend request only)
774
- if ( WC()->cart ) {
775
- // Remove cart
776
- WC()->cart->empty_cart();
777
- }
778
 
 
 
 
 
 
779
  // Return thankyou redirect
780
  return array(
781
  'result' => 'success',
@@ -784,7 +932,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
784
  }
785
 
786
  public function maybe_encrypt( $string ) {
787
- if ( $this->supports_encryption() ) {
788
  return WC_GZD_Gateway_Direct_Debit_Encryption_Helper::instance()->encrypt( $string );
789
  }
790
  return $string;
@@ -793,7 +941,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
793
  public function maybe_decrypt( $string ) {
794
  if ( $this->supports_encryption() ) {
795
  $decrypted = WC_GZD_Gateway_Direct_Debit_Encryption_Helper::instance()->decrypt( $string );
796
-
797
  // Maxlength of IBAN is 30 - seems like we have an encrypted string (cannot be decrypted, maybe key changed)
798
  if ( strlen( $decrypted ) > 40 )
799
  return "";
@@ -809,7 +957,7 @@ Please notice: Period for pre-information of the SEPA direct debit is shortened
809
  global $wp_version;
810
 
811
  if ( version_compare( phpversion(), '5.4', '<' ) )
812
- return false;
813
  if ( ! extension_loaded( 'openssl' ) )
814
  return false;
815
  if ( version_compare( $wp_version, '4.4', '<' ) )
12
  * @class WC_GZD_Gateway_Direct_Debit
13
  * @extends WC_Payment_Gateway
14
  * @version 2.1.0
15
+ * @author Vendidero, holzhannes
16
  */
17
  class WC_GZD_Gateway_Direct_Debit extends WC_Payment_Gateway {
18
 
19
+ public $admin_fields = array();
20
+
21
+ /**
22
+ * Constructor for the gateway.
23
+ */
24
  public function __construct() {
25
  $this->id = 'direct-debit';
26
  $this->icon = apply_filters( 'woocommerce_gzd_direct_debit_icon', '' );
38
  $this->description = $this->get_option( 'description' );
39
  $this->instructions = $this->get_option( 'instructions', $this->description );
40
  $this->enable_checkbox = $this->get_option( 'enable_checkbox', 'yes' );
41
+ $this->enable_pre_notification = $this->get_option( 'enable_pre_notification', 'yes' );
42
+ $this->debit_days = $this->get_option( 'debit_days', 5 );
43
  $this->generate_mandate_id = $this->get_option( 'generate_mandate_id', 'yes' );
44
  $this->mandate_id_format = $this->get_option( 'mandate_id_format', 'MANDAT{id}' );
45
  $this->company_info = $this->get_option( 'company_info' );
57
 
58
  <h3>SEPA Direct Debit Mandate</h3>
59
 
60
+ I hereby authorize the payee to [mandate_type_text] draft from my savings account listed below for the specified amount. I further authorize my bank to accept the direct debit from this account.
61
 
62
  Notice: I may request a full refund within eight weeks starting with the initial debiting date. Responsibilities agreed with my credit institute apply for a refund.
63
 
80
 
81
  $this->supports = array(
82
  'products',
83
+ 'subscriptions',
84
+ 'subscription_cancellation',
85
+ 'subscription_suspension',
86
+ 'subscription_reactivation',
87
+ 'subscription_amount_changes',
88
+ 'subscription_date_changes',
89
+ 'subscription_payment_method_change',
90
+ 'gateway_scheduled_payments'
91
  );
92
 
93
  if ( $this->get_option( 'enabled' ) === 'yes' && ! $this->supports_encryption() ) {
107
 
108
  // Actions
109
  add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) );
110
+ add_action( 'woocommerce_thankyou_direct-debit', array( $this, 'thankyou_page' ) );
111
+ add_action( 'wp_enqueue_scripts', array( $this, 'payment_scripts' ) );
112
+ add_action( 'woocommerce_review_order_after_payment', array( $this, 'checkbox' ), wc_gzd_get_hook_priority( 'checkout_direct_debit' ) );
113
+ add_action( 'wp_ajax_show_direct_debit', array( $this, 'generate_mandate' ) );
114
  add_action( 'wp_ajax_nopriv_show_direct_debit', array( $this, 'generate_mandate' ) );
115
  add_filter( 'woocommerce_email_classes', array( $this, 'add_email_template' ) );
116
 
120
  add_action( 'woocommerce_pay_order_before_submit', array( $this, 'checkbox' ) );
121
 
122
  // Order Meta
123
+ add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'set_order_meta' ), 10, 2 );
124
+ add_action( 'woocommerce_scheduled_subscription_payment', array( $this, 'set_order_meta' ), 10, 2 );
125
+
126
+ // User Meta
127
+ add_action( 'woocommerce_subscription_payment_complete', array( $this, 'set_mandate_seqType_to_RCUR_for_user' ), 10, 2 );
128
+ add_action( 'woocommerce_order_status_completed', array( $this, 'set_mandate_seqType_to_RCUR_for_user' ), 10, 2 );
129
+
130
+ // Customer Emails
131
+ add_action( 'woocommerce_email_before_order_table', array( $this, 'email_instructions' ), 10, 3 );
132
+ add_action( 'woocommerce_germanized_order_confirmation_sent', array( $this, 'send_mail' ) );
133
+ add_action( 'woocommerce_email_customer_details', array( $this, 'email_sepa' ), 15, 3 );
134
 
135
+ // Order admin
136
+ add_action( 'woocommerce_admin_order_data_after_order_details', array( $this, 'print_debit_fields' ), 10, 1 );
 
 
137
 
138
+ add_action( 'woocommerce_before_order_object_save', array( $this, 'save_debit_fields' ), 10, 1 );
139
+
140
+ if ( ! wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
141
+ add_action( 'woocommerce_process_shop_order_meta', array( $this, 'save_debit_fields' ), 10, 1 );
142
+ }
143
+
144
+ // Admin order table download actions
145
  add_filter( 'woocommerce_admin_order_actions', array( $this, 'order_actions' ), 0, 2 );
146
 
147
+ // Export filters
148
  add_action( 'export_filters', array( $this, 'export_view' ) );
149
  add_action( 'export_wp', array( $this, 'export' ), 0, 1 );
150
  add_filter( 'export_args', array( $this, 'export_args' ), 0, 1 );
151
 
152
+ $this->admin_fields = array(
153
+ 'direct_debit_holder' => array(
154
+ 'label' => __( 'Account Holder', 'woocommerce-germanized' ),
155
+ 'id' => '_direct_debit_holder',
156
+ 'class' => '',
157
+ 'type' => 'text',
158
+ 'encrypt' => false,
159
+ ),
160
+ 'direct_debit_iban' => array(
161
+ 'label' => __( 'IBAN', 'woocommerce-germanized' ),
162
+ 'id' => '_direct_debit_iban',
163
+ 'type' => 'text',
164
+ 'encrypt' => true,
165
+ ),
166
+ 'direct_debit_bic' => array(
167
+ 'label' => __( 'BIC/SWIFT', 'woocommerce-germanized' ),
168
+ 'id' => '_direct_debit_bic',
169
+ 'type' => 'text',
170
+ 'encrypt' => true,
171
+ ),
172
+ 'direct_debit_mandate_id' => array(
173
+ 'label' => __( 'Mandate Reference ID', 'woocommerce-germanized' ),
174
+ 'id' => '_direct_debit_mandate_id',
175
+ 'type' => 'text',
176
+ 'encrypt' => false,
177
+ ),
178
+ );
179
+
180
+ }
181
+
182
+ public function print_debit_fields( $order ) {
183
+
184
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) !== $this->id )
185
+ return;
186
+
187
+ ?>
188
+ <h3 id="gzd-admin-sepa">
189
+ <?php _e( 'SEPA', 'woocommerce-germanized' ); ?>
190
+ <a href="<?php echo add_query_arg( array( 'download' => 'true', 'content' => 'sepa', 'sepa_order_id' => wc_gzd_get_crud_data( $order, 'id' ) ), admin_url( 'export.php' ) ); ?>" target="_blank" class="download_sepa_xml"><?php _e( 'SEPA XML', 'woocommerce-germanized' ); ?></a>
191
+ </h3>
192
+
193
+ <?php foreach( $this->admin_fields as $key => $field ) :
194
+ $field[ 'value' ] = $this->maybe_decrypt( wc_gzd_get_crud_data( $order, $field[ 'id' ] ) );
195
+ ?>
196
+
197
+ <?php
198
+ switch( $field[ 'type' ] ) {
199
+ case 'select' :
200
+ woocommerce_wp_select( $field );
201
+ break;
202
+ default :
203
+ woocommerce_wp_text_input( $field );
204
+ break;
205
+ } ?>
206
+
207
+ <?php endforeach; ?>
208
+
209
+ <?php
210
  }
211
 
212
+ public function save_debit_fields( $order ) {
213
 
214
+ // Check the nonce
215
+ if ( empty( $_POST['woocommerce_meta_nonce'] ) || ! wp_verify_nonce( $_POST['woocommerce_meta_nonce'], 'woocommerce_save_data' ) ) {
216
+ return;
217
+ }
218
+
219
+ if ( is_numeric( $order ) ) {
220
+ $order = wc_get_order( $order );
221
+ }
222
+
223
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) !== $this->id )
224
+ return;
225
+
226
+ foreach( $this->admin_fields as $key => $field ) {
227
+
228
+ if ( isset( $_POST[ $field[ 'id' ] ] ) ) {
229
+
230
+ $data = wc_clean( $_POST[ $field[ 'id' ] ] );
231
+
232
+ if ( ! empty( $data ) && $field[ 'encrypt' ] ) {
233
+ $data = $this->maybe_encrypt( $data );
234
+ }
235
+
236
+ $order = wc_gzd_set_crud_data( $order, $field[ 'id' ], $data );
237
+ }
238
+ }
239
+ }
240
+
241
+ public function order_actions( $actions, $order ) {
242
+
243
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) === $this->id ) {
244
+ $actions[ 'download-sepa' ] = array(
245
  'url' => add_query_arg( array( 'download' => 'true', 'content' => 'sepa', 'sepa_order_id' => wc_gzd_get_crud_data( $order, 'id' ) ), admin_url( 'export.php' ) ),
246
  'name' => __( 'SEPA XML Export', 'woocommerce-germanized' ),
247
  'action' => "xml"
248
  );
249
+ }
250
 
251
+ return $actions;
252
+ }
253
 
254
+ public function export_view() {
255
+ include_once( 'views/html-export.php' );
256
+ }
257
 
258
+ public function export_args( $args = array() ) {
259
  if ( 'sepa' === $_GET['content'] ) {
260
  $args['content'] = 'sepa';
261
  if ( isset( $_GET['sepa_start_date'] ) || isset( $_GET['sepa_end_date'] ) ) {
262
  $args['start_date'] = ( isset( $_GET['sepa_start_date'] ) ? sanitize_text_field( $_GET['sepa_start_date'] ) : '' );
263
  $args['end_date'] = ( isset( $_GET['sepa_end_date'] ) ? sanitize_text_field( $_GET['sepa_end_date'] ) : '' );
264
+ $args['unpaid_only'] = ( isset( $_GET['sepa_unpaid_only'] ) ? 1 : 0 );
265
  } elseif ( isset( $_GET[ 'sepa_order_id' ] ) ) {
266
  $args['order_id'] = absint( $_GET['sepa_order_id'] );
267
  }
270
  }
271
 
272
  public function export( $args = array() ) {
273
+
274
  if ( $args[ 'content' ] != 'sepa' )
275
  return;
276
 
277
  $filename = '';
278
  $parts = array( 'SEPA-Export' );
279
 
280
+ $meta_query = array(
281
+ array(
282
+ 'key' => '_payment_method',
283
+ 'value' => 'direct-debit',
284
+ 'compare' => '=',
285
+ ),
286
+ );
287
+
288
+ if ( isset( $args['unpaid_only'] ) && $args[ 'unpaid_only' ] === 1 ) {
289
+ array_push( $meta_query, array(
290
+ 'key' => '_date_completed',
291
+ 'value' => '',
292
+ 'compare' => '='
293
+ ) );
294
+ }
295
+
296
  $query_args = array(
297
  'post_type' => 'shop_order',
298
  'post_status' => array_keys( wc_get_order_statuses() ),
299
  'orderby' => 'post_date',
300
  'order' => 'ASC',
301
+ 'meta_query' => $meta_query,
 
 
 
 
 
 
302
  );
303
 
304
  if ( isset( $args['order_id'] ) ) {
323
  array_push( $parts, $args['start_date'] );
324
  if ( ! empty( $args['end_date'] ) )
325
  array_push( $parts, $args['end_date'] );
 
326
  }
327
 
328
+ $order_query = new WP_Query( apply_filters( 'woocommerce_gzd_direct_debit_export_query_args', $query_args, $args ) );
329
  $filename = apply_filters( 'woocommerce_germanized_direct_debit_export_filename', implode( '-', $parts ) . '.xml', $args );
330
 
331
  if ( $order_query->have_posts() ) {
332
 
333
  $msg_id = apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_msg_id', $this->company_account_bic . '00' . date( 'YmdHis', time() ) );
 
 
334
  $directDebit = Digitick\Sepa\TransferFile\Factory\TransferFileFacadeFactory::createDirectDebit( $msg_id, $this->company_account_holder, $this->pain_format );
335
  $directDebit = apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_exporter', $directDebit );
336
 
 
 
 
 
 
 
 
 
 
337
  while ( $order_query->have_posts() ) {
338
 
339
  $order_query->next_post();
340
  $order = wc_get_order( $order_query->post->ID );
341
+
342
+ $payment_id = 'PMT-ID-' . wc_gzd_get_crud_data( $order, 'id' );
343
+
344
+ $directDebit->addPaymentInfo( $payment_id, apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_exporter_payment_args', array(
345
+ 'id' => $payment_id,
346
+ 'creditorName' => $this->company_account_holder,
347
+ 'creditorAccountIBAN' => $this->clean_whitespaces( $this->company_account_iban ),
348
+ 'creditorAgentBIC' => $this->clean_whitespaces( $this->company_account_bic ),
349
+ 'seqType' => $this->get_mandate_type( $order ),
350
+ 'creditorId' => $this->clean_whitespaces( $this->company_identification_number ),
351
+ 'dueDate' => date_i18n( 'Y-m-d', $this->get_debit_date( $order ) ),
352
+ ), $this, $order ) );
353
+
354
  $directDebit->addTransfer( $payment_id, apply_filters( 'woocommerce_gzd_direct_debit_sepa_xml_exporter_transfer_args', array(
355
+ 'amount' => $order->get_total(),
356
+ 'debtorIban' => $this->clean_whitespaces( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
357
+ 'debtorBic' => $this->clean_whitespaces( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ) ),
358
+ 'debtorName' => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
359
+ 'debtorMandate' => $this->get_mandate_id( $order ),
360
+ 'debtorMandateSignDate' => date_i18n( 'Y-m-d', $this->get_mandate_sign_date( $order ) ),
361
+ 'remittanceInformation' => apply_filters( 'woocommerce_germanized_direct_debit_purpose', sprintf( __( 'Order %s', 'woocommerce-germanized' ), $order->get_order_number() ), $order ),
362
+ ), $this, $order ) );
363
  }
364
 
365
  header( 'Content-Description: File Transfer' );
366
  header( 'Content-Disposition: attachment; filename=' . $filename );
367
  header( 'Content-Type: text/xml; charset=' . get_option( 'blog_charset' ), true );
368
+ header( 'Cache-Control: no-cache, no-store, must-revalidate' );
369
  header( 'Pragma: no-cache' );
370
  header( 'Expires: 0' );
371
 
372
  echo $directDebit->asXML();
373
  exit();
374
 
375
+ }
376
+
377
+ }
378
+
379
+ public function get_mandate_id( $order = false ) {
380
+ if ( ! $order ) {
381
+ $id = __( 'Will be notified separately', 'woocommerce-germanized' );
382
+ } else {
383
+ if ( wc_gzd_get_crud_data( $order, 'direct_debit_mandate_id' ) ) {
384
+ $id = wc_gzd_get_crud_data( $order, 'direct_debit_mandate_id' );
385
+ } else {
386
+ $id = ( $this->generate_mandate_id === 'yes' ? str_replace( '{id}', $order->get_order_number(), $this->mandate_id_format ) : '' );
387
+ }
388
+ }
389
+
390
+ return apply_filters( 'woocommerce_germanized_direct_debit_mandate_id', $id, $order );
391
  }
392
 
393
+ public function get_debit_date( $order ) {
394
+ $order_date = wc_gzd_get_crud_data( $order, 'order_date' );
395
 
396
+ if ( is_a( $order_date, 'WC_DateTime' ) ) {
397
+ $order_date = $order_date->format( 'Y-m-d' );
398
+ }
399
 
400
+ return strtotime('+' . $this->debit_days . ' days', strtotime( $order_date ) );
401
+ }
402
 
403
+ public function get_mandate_sign_date( $order ) {
404
+ $date = wc_gzd_get_crud_data( $order, 'direct_debit_mandate_date' ) ? wc_gzd_get_crud_data( $order, 'direct_debit_mandate_date' ) : wc_gzd_get_crud_data( $order, 'order_date' );
405
+ return strtotime( $date );
 
 
 
 
406
  }
407
 
408
+ public function get_mandate_type( $order ) {
409
+ $type = wc_gzd_get_crud_data( $order, 'direct_debit_mandate_type' );
410
+ return ( empty( $type ) ? Digitick\Sepa\PaymentInformation::S_ONEOFF : $type );
411
+ }
412
 
413
+ public function email_sepa( $order, $sent_to_admin, $plain_text ) {
 
414
 
415
+ if ( $this->id !== wc_gzd_get_crud_data( $order, 'payment_method' ) )
416
+ return;
 
 
 
417
 
418
+ $sepa_fields = array(
419
+ __( 'Account Holder', 'woocommerce-germanized' ) => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
420
+ __( 'IBAN', 'woocommerce-germanized' ) => $this->mask( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
421
+ __( 'BIC/SWIFT', 'woocommerce-germanized' ) => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ),
422
+ );
423
+
424
+ if ( $sent_to_admin ) {
425
+ $sepa_fields[ __( 'Mandate Reference ID', 'woocommerce-germanized' ) ] = $this->get_mandate_id( $order );
426
+ }
427
 
428
+ $debit_date = $this->get_debit_date( $order );
429
 
430
+ $pre_notification_text = apply_filters( 'woocommerce_gzd_direct_debit_pre_notification_text', sprintf( __( 'We will debit %s from your account by direct debit on or shortly after %s.', 'woocommerce-germanized' ), wc_price( $order->get_total(), array( 'currency' => wc_gzd_get_order_currency( $order ) ) ), date_i18n( wc_date_format(), $debit_date ) ), $order, $debit_date );
431
 
432
+ wc_get_template( 'emails/email-sepa-data.php', array(
433
+ 'fields' => $sepa_fields,
434
+ 'send_pre_notification' => ( $this->enable_pre_notification === 'yes' && ! $sent_to_admin ),
435
+ 'pre_notification_text' => $pre_notification_text,
436
+ ) );
437
+ }
438
+
439
+ public function set_debit_fields( $fields ) {
440
 
441
+ global $post;
442
 
443
+ if ( ! $post || ! $order = wc_get_order( $post->ID ) )
444
+ return $fields;
445
 
446
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) !== $this->id )
447
+ return $fields;
448
 
 
 
 
 
 
 
449
 
 
 
 
 
 
 
450
 
451
+ return $fields;
 
 
 
 
 
452
 
453
+ }
 
 
 
 
454
 
455
+ public function send_mail( $order_id ) {
456
 
457
+ $order = wc_get_order( $order_id );
458
 
459
+ if ( wc_gzd_get_crud_data( $order, 'payment_method' ) == $this->id ) {
460
+ if ( $mail = WC_germanized()->emails->get_email_instance_by_id( 'customer_sepa_direct_debit_mandate' ) )
461
+ $mail->trigger( $order );
462
+ }
463
 
464
+ }
465
 
466
+ public function clean_whitespaces( $str ) {
467
+ return preg_replace('/\s+/', '', $str );
468
+ }
 
469
 
470
+ public function set_order_meta( $order_id ) {
471
 
472
+ $order = wc_get_order( $order_id );
 
 
473
 
474
+ if ( ! ( wc_gzd_get_crud_data( $order, 'payment_method' ) === $this->id ) )
475
+ return;
476
 
477
+ $holder = ( isset( $_POST[ 'direct_debit_account_holder' ] ) ? wc_clean( $_POST[ 'direct_debit_account_holder' ] ) : '' );
478
+ $iban = ( isset( $_POST[ 'direct_debit_account_iban' ] ) ? $this->maybe_encrypt( $this->clean_whitespaces( wc_clean( $_POST[ 'direct_debit_account_iban' ] ) ) ) : '' );
479
+ $bic = ( isset( $_POST[ 'direct_debit_account_bic' ] ) ? $this->maybe_encrypt( $this->clean_whitespaces( wc_clean( $_POST[ 'direct_debit_account_bic' ] ) ) ) : '' );
480
 
481
+ $user_id = wc_gzd_get_crud_data( $order, 'user_id' );
 
482
 
483
+ // Always save account details to order
484
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_holder', $holder );
485
+ $order = wc_gzd_set_crud_meta_data( $order,'_direct_debit_iban', $iban );
486
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_bic', $bic );
487
 
488
+ // Generate mandate id if applicable
489
+ $mandate_id = $this->get_mandate_id( $order );
 
490
 
491
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_mandate_id', $mandate_id );
492
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_mandate_type', Digitick\Sepa\PaymentInformation::S_ONEOFF );
493
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_mandate_date', current_time( 'timestamp', true ) );
494
+ $order = wc_gzd_set_crud_meta_data( $order, '_direct_debit_mandate_mail', wc_gzd_get_crud_data( $order, 'billing_email' ) );
495
 
496
+ // Let compatibility plugins adjust the mandate data
497
+ do_action( 'woocommerce_gzd_direct_debit_order_data_updated', $order, $user_id, $this );
498
 
499
+ if ( $this->supports_encryption() && $this->remember === 'yes' && wc_gzd_get_crud_data( $order, 'user_id' ) && ! empty( $iban ) ) {
 
 
 
500
 
501
+ update_user_meta( $user_id, 'direct_debit_holder', $holder );
502
+ update_user_meta( $user_id, 'direct_debit_iban', $iban );
503
+ update_user_meta( $user_id, 'direct_debit_bic', $bic );
 
504
 
505
+ do_action( 'woocommerce_gzd_direct_debit_user_data_updated', $order, $user_id, $this );
506
+ }
507
 
508
+ if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
509
+ $order->save();
510
+ }
511
+ }
512
 
513
+ public function add_email_template( $mails ) {
514
+ $mails[ 'WC_GZD_Email_Customer_SEPA_Direct_Debit_Mandate' ] = include WC_germanized()->plugin_path() . '/includes/emails/class-wc-gzd-email-customer-sepa-direct-debit-mandate.php';
515
+ return $mails;
516
+ }
517
+
518
+ public function generate_mandate() {
519
+
520
+ if ( ! $this->is_available() )
521
+ exit();
522
 
523
+ if ( ! isset( $_GET[ '_wpnonce' ] ) || ! wp_verify_nonce( $_GET[ '_wpnonce' ], 'show_direct_debit' ) )
524
+ exit();
525
+
526
+ $params = array(
527
+ 'account_holder' => wc_clean( isset( $_GET[ 'debit_holder' ] ) ? $_GET[ 'debit_holder' ] : '' ),
528
+ 'account_iban' => wc_clean( isset( $_GET[ 'debit_iban' ] ) ? $_GET[ 'debit_iban' ] : '' ),
529
+ 'account_swift' => wc_clean( isset( $_GET[ 'debit_swift' ] ) ? $_GET[ 'debit_swift' ] : '' ),
530
+ 'street' => wc_clean( isset( $_GET[ 'address' ] ) ? $_GET[ 'address' ] : '' ),
531
  'postcode' => wc_clean( isset( $_GET[ 'postcode' ] ) ? $_GET[ 'postcode' ] : '' ),
532
  'city' => wc_clean( isset( $_GET[ 'city' ] ) ? $_GET[ 'city' ] : '' ),
533
  'country' => ( isset( $_GET[ 'country' ] ) && isset( WC()->countries->countries[ $_GET[ 'country' ] ] ) ? WC()->countries->countries[ $_GET[ 'country' ] ] : '' ),
534
+ 'mandate_type_text' => apply_filters( 'woocommerce_gzd_direct_debit_mandate_type_text', __( 'a single payment', 'woocommerce-germanized' ) ),
535
  );
536
 
537
  echo $this->generate_mandate_text( $params );
538
  exit();
539
 
540
+ }
541
 
542
+ public function generate_mandate_by_order( $order ) {
543
 
544
+ if ( is_numeric( $order ) )
545
+ $order = wc_get_order( absint( $order ) );
546
 
547
+ $params = array(
548
+ 'account_holder' => wc_gzd_get_crud_data( $order, 'direct_debit_holder' ),
549
+ 'account_iban' => $this->mask( $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_iban' ) ) ),
550
+ 'account_swift' => $this->maybe_decrypt( wc_gzd_get_crud_data( $order, 'direct_debit_bic' ) ),
551
+ 'street' => wc_gzd_get_crud_data( $order, 'billing_address_1' ),
552
  'postcode' => wc_gzd_get_crud_data( $order, 'billing_postcode' ),
553
  'city' => wc_gzd_get_crud_data( $order, 'billing_city' ),
554
  'country' => WC()->countries->countries[ wc_gzd_get_crud_data( $order, 'billing_country' ) ],
555
+ 'date' => date_i18n( wc_date_format(), $this->get_mandate_sign_date( $order ) ),
556
+ 'mandate_id' => $this->get_mandate_id( $order ),
557
+ 'mandate_type_text' => apply_filters( 'woocommerce_gzd_direct_debit_mandate_type_order_text', __( 'a single payment', 'woocommerce-germanized' ), $order ),
558
  );
559
 
560
  return $this->generate_mandate_text( $params );
561
+ }
562
 
563
+ public function mask( $data ) {
564
+ if ( strlen( $data ) <= 4 || $this->get_option( 'mask' ) === 'no' )
565
+ return $data;
566
 
567
+ return str_repeat( apply_filters( 'woocommerce_gzd_direct_debit_mask_char', '*' ), strlen( $data ) - 4 ) . substr( $data, -4 );
568
+ }
 
 
 
 
 
569
 
570
+ public function generate_mandate_text( $args = array() ) {
571
 
572
+ $args = wp_parse_args( $args, array(
573
+ 'company_info' => $this->company_info,
574
+ 'company_identification_number' => $this->company_identification_number,
575
+ 'date' => date_i18n( wc_date_format(), strtotime( "now" ) ),
576
+ 'mandate_id' => $this->get_mandate_id(),
577
+ 'mandate_type_text' => __( 'a single payment', 'woocommerce-germanized' ),
578
+ ) );
579
 
580
+ $text = $this->mandate_text;
581
 
582
+ foreach ( $args as $key => $val )
583
+ $text = str_replace( '[' . $key . ']', $val, $text );
584
 
585
+ return apply_filters( 'the_content', $text );
586
 
587
+ }
588
 
589
+ public function checkbox() {
590
+ if ( $this->is_available() && $this->enable_checkbox === 'yes' ) {
591
+ wc_get_template( 'checkout/terms-sepa.php', array( 'checkbox_label' => $this->get_checkbox_label() ) );
592
+ }
593
+ }
594
 
595
+ public function get_checkbox_label() {
596
+ $ajax_url = wp_nonce_url( add_query_arg( array( 'action' => 'show_direct_debit' ), admin_url( 'admin-ajax.php' ) ), 'show_direct_debit' );
597
+ return apply_filters( 'woocommerce_gzd_direct_debit_ajax_url', str_replace( array( '{link}', '{/link}' ), array( '<a href="' . $ajax_url . '" id="show-direct-debit-trigger" rel="prettyPhoto">', '</a>' ), $this->checkbox_label ), $this );
598
+ }
599
 
600
+ /**
601
+ * Initialise Gateway Settings Form Fields
602
+ */
603
+ public function init_form_fields() {
604
 
605
+ $this->form_fields = array(
606
  'enabled' => array(
607
  'title' => __( 'Enable/Disable', 'woocommerce-germanized' ),
608
  'type' => 'checkbox',
707
  'default' => __( 'I hereby agree to the {link}direct debit mandate{/link}.', 'woocommerce-germanized' ),
708
  'desc_tip' => true,
709
  ),
710
+ 'enable_pre_notification' => array(
711
+ 'title' => __( 'Enable pre-notification', 'woocommerce-germanized' ),
712
+ 'label' => __( 'Insert pre-notification text within the order confirmation email.', 'woocommerce-germanized' ),
713
+ 'type' => 'checkbox',
714
+ 'description' => __( 'This option inserts a standard text containing a pre-notification for the customer.', 'woocommerce-germanized' ),
715
+ 'default' => 'yes',
716
+ ),
717
+ 'debit_days' => array(
718
+ 'title' => __( 'Debit days', 'woocommerce-germanized' ),
719
+ 'type' => 'number',
720
+ 'description' => __( 'This option is used to calculate the debit date and is added to the order date.', 'woocommerce-germanized' ),
721
+ 'default' => 5,
722
+ ),
723
  'mask' => array(
724
  'title' => __( 'Mask IBAN', 'woocommerce-germanized' ),
725
  'label' => __( 'Mask the IBAN within emails.', 'woocommerce-germanized' ),
742
 
743
  }
744
 
745
+ }
746
 
747
+ public function get_user_account_data( $user_id = '' ) {
 
 
 
748
 
749
+ if ( empty( $user_id ) )
750
+ $user_id = get_current_user_id();
 
 
 
751
 
752
+ $data = array(
753
+ 'holder' => '',
754
+ 'iban' => '',
755
+ 'bic' => '',
756
+ );
757
 
758
+ if ( $this->remember !== 'yes' )
759
+ return $data;
 
 
 
760
 
761
+ $data = array(
762
+ 'holder' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_holder', true ) ),
763
+ 'iban' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_iban', true ) ),
764
+ 'bic' => $this->maybe_decrypt( get_user_meta( $user_id, 'direct_debit_bic', true ) ),
765
+ );
766
+
767
+ return $data;
768
+ }
769
 
770
+ /**
771
  * Payment form on checkout page
772
  */
773
  public function payment_fields() {
775
  if ( $description = $this->get_description() ) {
776
  echo wpautop( wptexturize( $description ) );
777
  }
778
+
779
  $account_data = $this->get_user_account_data();
780
 
781
  $fields = array(
794
  );
795
 
796
  ?>
797
+ <fieldset id="<?php echo $this->id; ?>-form">
798
  <?php do_action( 'woocommerce_gzd_direct_debit_form_start', $this->id ); ?>
799
  <?php
800
+ foreach ( $fields as $field ) {
801
+ echo $field;
802
+ }
803
  ?>
804
  <?php do_action( 'woocommerce_gzd_direct_debit_form_end', $this->id ); ?>
805
+ <div class="clear"></div>
806
+ </fieldset>
807
  <?php
808
 
809
  }
810
 
811
+ public function validate_fields() {
812
+
813
  if ( ! $this->is_available() || ! isset( $_POST[ 'payment_method' ] ) || $_POST[ 'payment_method' ] != $this->id )
814
  return;
815
 
834
  wc_add_notice( __( 'Your IBAN\'s country code doesn’t match with your billing country.', 'woocommerce-germanized' ), 'error' );
835
 
836
  // Validate BIC
837
+ if ( ! preg_match( '/^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$/', $bic ) )
838
  wc_add_notice( __( 'Your BIC seems to be invalid.', 'woocommerce-germanized' ), 'error' );
839
 
840
  // Make sure that checkbox gets validated if on woocommerce_pay for order page
857
  * Outputs scripts used for simplify payment
858
  */
859
  public function payment_scripts() {
860
+
861
  if ( ! is_checkout() || ! $this->is_available() ) {
862
  return;
863
  }
883
  wp_enqueue_script( 'wc-gzd-direct-debit' );
884
  }
885
 
886
+ /**
887
+ * Output for the order received page.
888
+ */
889
  public function thankyou_page() {
890
  if ( $this->instructions )
891
+ echo wpautop( wptexturize( $this->instructions ) );
892
  }
893
 
894
+ /**
895
+ * Add content to the WC emails.
896
+ *
897
+ * @access public
898
+ * @param WC_Order $order
899
+ * @param bool $sent_to_admin
900
+ * @param bool $plain_text
901
+ */
902
  public function email_instructions( $order, $sent_to_admin, $plain_text = false ) {
903
+ if ( $this->instructions && ! $sent_to_admin && 'direct-debit' === wc_gzd_get_crud_data( $order, 'payment_method' ) && $order->has_status( 'processing' ) ) {
904
  echo wpautop( wptexturize( $this->instructions ) ) . PHP_EOL;
905
  }
906
  }
907
 
908
+ /**
909
+ * Process the payment and return the result
910
+ *
911
+ * @param int $order_id
912
+ * @return array
913
+ */
914
  public function process_payment( $order_id ) {
 
915
  $order = wc_get_order( $order_id );
 
916
  // Mark as on-hold (we're awaiting the cheque)
917
+ $order->update_status( apply_filters( 'woocommerce_gzd_direct_debit_default_status', 'on-hold' ), __( 'Awaiting Direct Debit Payment', 'woocommerce-germanized' ) );
918
 
919
  // Reduce stock level
920
+ wc_gzd_reduce_order_stock( $order_id );
 
 
 
 
 
 
921
 
922
+ // Check if cart instance exists (frontend request only)
923
+ if ( WC()->cart ) {
924
+ // Remove cart
925
+ WC()->cart->empty_cart();
926
+ }
927
  // Return thankyou redirect
928
  return array(
929
  'result' => 'success',
932
  }
933
 
934
  public function maybe_encrypt( $string ) {
935
+ if ( $this->supports_encryption() ) {
936
  return WC_GZD_Gateway_Direct_Debit_Encryption_Helper::instance()->encrypt( $string );
937
  }
938
  return $string;
941
  public function maybe_decrypt( $string ) {
942
  if ( $this->supports_encryption() ) {
943
  $decrypted = WC_GZD_Gateway_Direct_Debit_Encryption_Helper::instance()->decrypt( $string );
944
+
945
  // Maxlength of IBAN is 30 - seems like we have an encrypted string (cannot be decrypted, maybe key changed)
946
  if ( strlen( $decrypted ) > 40 )
947
  return "";
957
  global $wp_version;
958
 
959
  if ( version_compare( phpversion(), '5.4', '<' ) )
960
+ return false;
961
  if ( ! extension_loaded( 'openssl' ) )
962
  return false;
963
  if ( version_compare( $wp_version, '4.4', '<' ) )
includes/gateways/direct-debit/views/html-export.php CHANGED
@@ -37,5 +37,9 @@ if ( ! defined( 'ABSPATH' ) )
37
  <?php echo _e( 'End Date', 'woocommerce-germanized' ); ?>
38
  <input type="date" name="sepa_end_date" value="" />
39
  </label>
 
 
 
 
40
  </li>
41
  </ul>
37
  <?php echo _e( 'End Date', 'woocommerce-germanized' ); ?>
38
  <input type="date" name="sepa_end_date" value="" />
39
  </label>
40
+ <label>
41
+ <?php echo _e( 'Unpaid only', 'woocommerce-germanized' ); ?>
42
+ <input type="checkbox" name="sepa_unpaid_only" value="1"/>
43
+ </label>
44
  </li>
45
  </ul>
includes/gateways/invoice/class-wc-gzd-gateway-invoice.php CHANGED
@@ -39,10 +39,17 @@ class WC_GZD_Gateway_Invoice extends WC_Payment_Gateway {
39
  $this->customers_only = $this->get_option( 'customers_only', 'no' );
40
  $this->customers_completed = $this->get_option( 'customers_completed', 'no' );
41
 
 
 
 
 
42
  // Actions
43
  add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) );
44
  add_action( 'woocommerce_thankyou_invoice', array( $this, 'thankyou_page' ) );
 
45
 
 
 
46
  }
47
 
48
  public function admin_options() { ?>
@@ -144,7 +151,9 @@ class WC_GZD_Gateway_Invoice extends WC_Payment_Gateway {
144
  * @param bool $plain_text
145
  */
146
  public function email_instructions( $order, $sent_to_admin, $plain_text = false ) {
147
- if ( $this->instructions && ! $sent_to_admin && 'invoice' === wc_gzd_get_crud_data( $order, 'payment_method' ) && $order->has_status( 'on-hold' ) ) {
 
 
148
  echo wpautop( wptexturize( $this->instructions ) ) . PHP_EOL;
149
  }
150
  }
@@ -179,11 +188,14 @@ class WC_GZD_Gateway_Invoice extends WC_Payment_Gateway {
179
 
180
  $order->update_status( $this->default_order_status );
181
 
182
- // Reduce stock levels
183
- $order->reduce_order_stock();
184
 
185
- // Remove cart
186
- WC()->cart->empty_cart();
 
 
 
187
 
188
  // Return thankyou redirect
189
  return array(
39
  $this->customers_only = $this->get_option( 'customers_only', 'no' );
40
  $this->customers_completed = $this->get_option( 'customers_completed', 'no' );
41
 
42
+ $this->supports = array(
43
+ 'products',
44
+ );
45
+
46
  // Actions
47
  add_action( 'woocommerce_update_options_payment_gateways_' . $this->id, array( $this, 'process_admin_options' ) );
48
  add_action( 'woocommerce_thankyou_invoice', array( $this, 'thankyou_page' ) );
49
+ add_action( 'woocommerce_scheduled_subscription_payment'. $this->id, array( $this, 'process_admin_options' ) );
50
 
51
+ // Customer Emails
52
+ add_action( 'woocommerce_email_before_order_table', array( $this, 'email_instructions' ), 10, 3 );
53
  }
54
 
55
  public function admin_options() { ?>
151
  * @param bool $plain_text
152
  */
153
  public function email_instructions( $order, $sent_to_admin, $plain_text = false ) {
154
+ $status = str_replace( 'wc-', '', $this->default_order_status );
155
+
156
+ if ( $this->instructions && ! $sent_to_admin && 'invoice' === wc_gzd_get_crud_data( $order, 'payment_method' ) && $order->has_status( $status ) ) {
157
  echo wpautop( wptexturize( $this->instructions ) ) . PHP_EOL;
158
  }
159
  }
188
 
189
  $order->update_status( $this->default_order_status );
190
 
191
+ // Reduce stock level
192
+ wc_gzd_reduce_order_stock( $order_id );
193
 
194
+ // Check if cart instance exists (frontend request only)
195
+ if ( WC()->cart ) {
196
+ // Remove cart
197
+ WC()->cart->empty_cart();
198
+ }
199
 
200
  // Return thankyou redirect
201
  return array(
includes/trusted-shops/class-wc-gzd-trusted-shops-schedule.php CHANGED
@@ -45,32 +45,17 @@ class WC_GZD_Trusted_Shops_Schedule {
45
  public function update_reviews() {
46
 
47
  $update = array();
48
-
49
  if ( $this->base->is_enabled() ) {
50
-
51
- if ( function_exists( 'curl_version' ) ) {
52
-
53
- $success = false;
54
- $ch = curl_init();
55
- curl_setopt( $ch, CURLOPT_HEADER, false );
56
- curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
57
- curl_setopt( $ch, CURLOPT_POST, false );
58
- curl_setopt( $ch, CURLOPT_URL, $this->base->api_url );
59
- $output = curl_exec( $ch );
60
- $httpcode = curl_getinfo( $ch, CURLINFO_HTTP_CODE );
61
-
62
- if ( ! curl_errno( $ch ) && $httpcode != 503 )
63
- $success = true;
64
-
65
- curl_close( $ch );
66
-
67
- if ( $success ) {
68
- $output = json_decode( $output, true );
69
- $reviews = $output[ 'response' ][ 'data' ][ 'shop' ][ 'qualityIndicators' ][ 'reviewIndicator' ];
70
- $update[ 'count' ] = (string) $reviews[ 'activeReviewCount' ];
71
- $update[ 'avg' ] = (float) $reviews[ 'overallMark' ];
72
- $update[ 'max' ] = '5.00';
73
- }
74
  }
75
  }
76
 
@@ -150,7 +135,7 @@ class WC_GZD_Trusted_Shops_Schedule {
150
  $diff = $this->base->plugin->get_date_diff( wc_gzd_get_crud_data( $order, 'completed_date' ), date( 'Y-m-d H:i:s' ) );
151
 
152
  if ( $diff[ 'd' ] >= (int) $this->base->review_reminder_days ) {
153
-
154
  if ( $mail = $this->base->plugin->emails->get_email_instance_by_id( 'customer_trusted_shops' ) ) {
155
  $mail->trigger( wc_gzd_get_crud_data( $order, 'id' ) );
156
  update_post_meta( wc_gzd_get_crud_data( $order, 'id' ), '_trusted_shops_review_mail_sent', 1 );
@@ -165,20 +150,11 @@ class WC_GZD_Trusted_Shops_Schedule {
165
  * @param [type] $url [description]
166
  */
167
  private function get_file_content( $url ) {
 
168
 
169
- if ( function_exists( 'curl_init' ) ) {
170
-
171
- $ch = curl_init();
172
- curl_setopt( $ch, CURLOPT_URL, $url );
173
- curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
174
- $output = curl_exec( $ch );
175
- curl_close( $ch );
176
-
177
- return $output;
178
-
179
- } elseif ( ini_get( 'allow_url_fopen' ) ) {
180
- return file_get_contents( $url );
181
- }
182
 
183
  return false;
184
  }
45
  public function update_reviews() {
46
 
47
  $update = array();
48
+
49
  if ( $this->base->is_enabled() ) {
50
+
51
+ $response = wp_remote_post( $this->base->api_url );
52
+
53
+ if ( is_array( $response ) ) {
54
+ $output = json_decode( $response[ 'body' ], true );
55
+ $reviews = $output[ 'response' ][ 'data' ][ 'shop' ][ 'qualityIndicators' ][ 'reviewIndicator' ];
56
+ $update[ 'count' ] = (string) $reviews[ 'activeReviewCount' ];
57
+ $update[ 'avg' ] = (float) $reviews[ 'overallMark' ];
58
+ $update[ 'max' ] = '5.00';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  }
60
  }
61
 
135
  $diff = $this->base->plugin->get_date_diff( wc_gzd_get_crud_data( $order, 'completed_date' ), date( 'Y-m-d H:i:s' ) );
136
 
137
  if ( $diff[ 'd' ] >= (int) $this->base->review_reminder_days ) {
138
+
139
  if ( $mail = $this->base->plugin->emails->get_email_instance_by_id( 'customer_trusted_shops' ) ) {
140
  $mail->trigger( wc_gzd_get_crud_data( $order, 'id' ) );
141
  update_post_meta( wc_gzd_get_crud_data( $order, 'id' ), '_trusted_shops_review_mail_sent', 1 );
150
  * @param [type] $url [description]
151
  */
152
  private function get_file_content( $url ) {
153
+ $response = wp_remote_post( $url );
154
 
155
+ if ( is_array( $response ) ) {
156
+ return $response[ 'body' ];
157
+ }
 
 
 
 
 
 
 
 
 
 
158
 
159
  return false;
160
  }
includes/updates/woocommerce-gzd-update-1.9.2.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ // Get all variable products
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
+ $direct_debit_settings = get_option( 'woocommerce_direct-debit_settings', array() );
9
+
10
+ if ( ! empty( $direct_debit_settings ) && ! empty( $direct_debit_settings[ 'mandate_text' ] ) ) {
11
+ $direct_debit_settings[ 'mandate_text' ] = str_replace( array( 'eine einmalige Zahlung', 'a single payment' ), '[mandate_type_text]', $direct_debit_settings[ 'mandate_text' ] );
12
+ update_option( 'woocommerce_direct-debit_settings', $direct_debit_settings );
13
+ }
14
+
15
+ ?>
includes/wc-gzd-cart-functions.php CHANGED
@@ -133,8 +133,9 @@ function wc_gzd_cart_product_unit_price( $price, $cart_item, $cart_item_key = ''
133
 
134
  $product = apply_filters( 'woocommerce_cart_item_product', $cart_item[ 'data' ], $cart_item, $cart_item_key );
135
 
136
- if ( wc_gzd_get_gzd_product( $product )->has_unit() )
137
  $unit_price = wc_gzd_get_gzd_product( $product )->get_unit_html( false );
 
138
 
139
  } elseif ( isset( $cart_item[ 'unit_price' ] ) ) {
140
 
133
 
134
  $product = apply_filters( 'woocommerce_cart_item_product', $cart_item[ 'data' ], $cart_item, $cart_item_key );
135
 
136
+ if ( wc_gzd_get_gzd_product( $product )->has_unit() ) {
137
  $unit_price = wc_gzd_get_gzd_product( $product )->get_unit_html( false );
138
+ }
139
 
140
  } elseif ( isset( $cart_item[ 'unit_price' ] ) ) {
141
 
includes/wc-gzd-core-functions.php CHANGED
@@ -148,7 +148,7 @@ function wc_gzd_get_shipping_costs_text( $product = false ) {
148
  }
149
  }
150
 
151
- function wc_gzd_sanitize_mini_desc( $value ) {
152
  return wp_kses_post( esc_html( wp_unslash( $value ) ) );
153
  }
154
 
148
  }
149
  }
150
 
151
+ function wc_gzd_sanitize_html_text_field( $value ) {
152
  return wp_kses_post( esc_html( wp_unslash( $value ) ) );
153
  }
154
 
includes/wc-gzd-legacy-functions.php CHANGED
@@ -187,4 +187,12 @@ function wc_gzd_get_product_name( $product ) {
187
  } else {
188
  return $product->get_title();
189
  }
 
 
 
 
 
 
 
 
190
  }
187
  } else {
188
  return $product->get_title();
189
  }
190
+ }
191
+
192
+ function wc_gzd_get_cart_url() {
193
+ return ( function_exists( 'wc_get_cart_url' ) ? wc_get_cart_url() : WC()->cart->get_cart_url() );
194
+ }
195
+
196
+ function wc_gzd_get_checkout_url() {
197
+ return ( function_exists( 'wc_get_checkout_url' ) ? wc_get_checkout_url() : WC()->cart->get_checkout_url() );
198
  }
includes/wc-gzd-template-functions.php CHANGED
@@ -138,7 +138,7 @@ if ( ! function_exists( 'woocommerce_gzd_template_checkout_back_to_cart' ) ) {
138
  * Display back to cart button within checkout cart
139
  */
140
  function woocommerce_gzd_template_checkout_back_to_cart() {
141
- echo '<tr><td colspan="5" class="actions"><a class="button" href="' . WC()->cart->get_cart_url() . '">' . __( 'Edit Order', 'woocommerce-germanized' ) . '</a></td></tr>';
142
  }
143
 
144
  }
138
  * Display back to cart button within checkout cart
139
  */
140
  function woocommerce_gzd_template_checkout_back_to_cart() {
141
+ echo '<tr><td colspan="5" class="actions"><a class="button" href="' . wc_gzd_get_cart_url() . '">' . __( 'Edit Order', 'woocommerce-germanized' ) . '</a></td></tr>';
142
  }
143
 
144
  }
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
  === WooCommerce Germanized ===
2
  Contributors: vendidero
3
- Tags: woocommerce, german market, german, woocommerce-de, germany, deutsch, deutschland, de, de_DE, shop, e-commerce, ecommerce, woothemes, sepa, invoice
4
  Requires at least: 3.8
5
  Tested up to: 4.8
6
  WC requires at least: 2.4
7
- WC tested up to: 3.1
8
- Stable tag: 1.9.1
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
@@ -169,6 +169,16 @@ Bug reports may be filed via our [GitHub repository](https://github.com/vendider
169
 
170
  == Changelog ==
171
 
 
 
 
 
 
 
 
 
 
 
172
  = 1.9.1 =
173
  * Feature: Display toggle options for Email filters (e.g. base price)
174
  * Fix: Extend product type matching (display options)
1
  === WooCommerce Germanized ===
2
  Contributors: vendidero
3
+ Tags: woocommerce, german, woocommerce-de, germany, deutsch, deutschland, de, de_DE, shop, e-commerce, ecommerce, woothemes, sepa, invoice, market
4
  Requires at least: 3.8
5
  Tested up to: 4.8
6
  WC requires at least: 2.4
7
+ WC tested up to: 3.2
8
+ Stable tag: 1.9.2
9
  License: GPLv3
10
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
11
 
169
 
170
  == Changelog ==
171
 
172
+ = 1.9.2 =
173
+ * Feature: Added Mulit-Currency-Support for Unit Prices (WPML)
174
+ * Feature: Basic support for Subscriptions (Direct Debit Gateway)
175
+ * Feature: WooCommerce 3.2 compatibility
176
+ * Improvement: Pre-notification in order confirmation email (Direct Debit Gateway)
177
+ * Improvement: Filter to adjust default SEPA Gateway order status
178
+ * Improvement: Better SEPA data display in order management
179
+ * Fix: Sanitizing for legal text removed line breaks
180
+ * Fix: Send email instructions for invoice gateway
181
+
182
  = 1.9.1 =
183
  * Feature: Display toggle options for Email filters (e.g. base price)
184
  * Fix: Extend product type matching (display options)
templates/checkout/review-order-product-table.php CHANGED
@@ -10,6 +10,8 @@
10
  if ( ! defined( 'ABSPATH' ) )
11
  exit;
12
 
 
 
13
  foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
14
  $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
15
 
10
  if ( ! defined( 'ABSPATH' ) )
11
  exit;
12
 
13
+ do_action( 'woocommerce_gzd_review_order_before_cart_contents' );
14
+
15
  foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
16
  $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
17
 
templates/emails/email-sepa-data.php CHANGED
@@ -17,7 +17,7 @@ if ( ! defined( 'ABSPATH' ) ) {
17
 
18
  <td class="td" style="text-align:left; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;" valign="top" width="50%">
19
 
20
- <h3><?php _e( 'SEPA Data', 'woocommerce-germanized' ); ?></h3>
21
 
22
  <p class="text">
23
  <?php foreach ( $fields as $label => $data ) : ?>
@@ -26,6 +26,14 @@ if ( ! defined( 'ABSPATH' ) ) {
26
  <?php endforeach; ?>
27
  </p>
28
 
 
 
 
 
 
 
 
 
29
  </td>
30
 
31
  </tr>
17
 
18
  <td class="td" style="text-align:left; font-family: 'Helvetica Neue', Helvetica, Roboto, Arial, sans-serif;" valign="top" width="50%">
19
 
20
+ <h2><?php _e( 'SEPA Data', 'woocommerce-germanized' ); ?></h2>
21
 
22
  <p class="text">
23
  <?php foreach ( $fields as $label => $data ) : ?>
26
  <?php endforeach; ?>
27
  </p>
28
 
29
+ <?php if ( $send_pre_notification ) : ?>
30
+
31
+ <p class="pre-notification text">
32
+ <?php echo $pre_notification_text; ?>
33
+ </p>
34
+
35
+ <?php endif; ?>
36
+
37
  </td>
38
 
39
  </tr>
templates/trusted-shops/product-sticker.php CHANGED
@@ -16,5 +16,5 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
16
  <div id="ts_product_sticker"></div>
17
 
18
  <script type="text/javascript">
19
- <?php echo WC_germanized()->trusted_shops->get_product_sticker_code( true, array( 'sku' => ( $product->get_sku() ? $product->get_sku() : $product->id ) ) ); ?>
20
  </script>
16
  <div id="ts_product_sticker"></div>
17
 
18
  <script type="text/javascript">
19
+ <?php echo WC_germanized()->trusted_shops->get_product_sticker_code( true, array( 'sku' => ( $product->get_sku() ? $product->get_sku() : wc_gzd_get_crud_data( $product, 'id' ) ) ) ); ?>
20
  </script>
templates/trusted-shops/product-widget.php CHANGED
@@ -12,10 +12,10 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
12
  global $post;
13
  $product = wc_get_product( $post->ID );
14
  ?>
15
- <div id="ts_product_widget_<?php echo $product->id; ?>"></div>
16
 
17
  <script type="text/javascript" src="//widgets.trustedshops.com/reviews/tsSticker/tsProductStickerSummary.js"></script>
18
 
19
  <script type="text/javascript">
20
- <?php echo WC_germanized()->trusted_shops->get_product_widget_code( true, array( 'sku' => ( $product->get_sku() ? $product->get_sku() : $product->id ), 'element' => '#ts_product_widget_' . $product->id ) ); ?>
21
  </script>
12
  global $post;
13
  $product = wc_get_product( $post->ID );
14
  ?>
15
+ <div id="ts_product_widget_<?php echo wc_gzd_get_crud_data( $product, 'id' ); ?>"></div>
16
 
17
  <script type="text/javascript" src="//widgets.trustedshops.com/reviews/tsSticker/tsProductStickerSummary.js"></script>
18
 
19
  <script type="text/javascript">
20
+ <?php echo WC_germanized()->trusted_shops->get_product_widget_code( true, array( 'sku' => ( $product->get_sku() ? $product->get_sku() : $product->id ), 'element' => '#ts_product_widget_' . wc_gzd_get_crud_data( $product, 'id' ) ) ); ?>
21
  </script>
woocommerce-germanized.php CHANGED
@@ -3,13 +3,15 @@
3
  * Plugin Name: WooCommerce Germanized
4
  * Plugin URI: https://www.vendidero.de/woocommerce-germanized
5
  * Description: Extends WooCommerce to become a legally compliant store for the german market.
6
- * Version: 1.9.1
7
  * Author: Vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 3.8
10
  * Tested up to: 4.8
 
 
11
  * Requires at least WooCommerce: 2.4
12
- * Tested up to WooCommerce: 3.1
13
  *
14
  * Text Domain: woocommerce-germanized
15
  * Domain Path: /i18n/languages/
@@ -29,7 +31,7 @@ final class WooCommerce_Germanized {
29
  *
30
  * @var string
31
  */
32
- public $version = '1.9.1';
33
 
34
  /**
35
  * Single instance of WooCommerce Germanized Main Class
@@ -369,13 +371,12 @@ final class WooCommerce_Germanized {
369
  public function setup_compatibility() {
370
 
371
  $plugins = apply_filters( 'woocommerce_gzd_compatibilities',
372
- array( 'wpml', 'woocommerce-subscriptions', 'polylang' )
373
  );
374
 
375
  foreach ( $plugins as $comp ) {
376
 
377
  $classname = str_replace( ' ', '_', 'WC_GZD_Compatibility_' . ucwords( str_replace( '-', ' ', $comp ) ) );
378
-
379
  if ( class_exists( $classname ) ) {
380
  $this->compatibilities[ $comp ] = new $classname();
381
  }
3
  * Plugin Name: WooCommerce Germanized
4
  * Plugin URI: https://www.vendidero.de/woocommerce-germanized
5
  * Description: Extends WooCommerce to become a legally compliant store for the german market.
6
+ * Version: 1.9.2
7
  * Author: Vendidero
8
  * Author URI: https://vendidero.de
9
  * Requires at least: 3.8
10
  * Tested up to: 4.8
11
+ * WC requires at least: 2.4
12
+ * WC tested up to: 3.2
13
  * Requires at least WooCommerce: 2.4
14
+ * Tested up to WooCommerce: 3.2
15
  *
16
  * Text Domain: woocommerce-germanized
17
  * Domain Path: /i18n/languages/
31
  *
32
  * @var string
33
  */
34
+ public $version = '1.9.2';
35
 
36
  /**
37
  * Single instance of WooCommerce Germanized Main Class
371
  public function setup_compatibility() {
372
 
373
  $plugins = apply_filters( 'woocommerce_gzd_compatibilities',
374
+ array( 'wpml', 'woocommerce-subscriptions', 'polylang', 'woocommerce-dynamic-pricing' )
375
  );
376
 
377
  foreach ( $plugins as $comp ) {
378
 
379
  $classname = str_replace( ' ', '_', 'WC_GZD_Compatibility_' . ucwords( str_replace( '-', ' ', $comp ) ) );
 
380
  if ( class_exists( $classname ) ) {
381
  $this->compatibilities[ $comp ] = new $classname();
382
  }