Version Description
- Feature - DHL Parcel Shop or Pick-Up Station delivery
- Fix - Sale Price Labels Price Suffixes HTML
- Fix - Partial refunded order email legal item information
- Fix - Hook priority for product units in loop
- Fix - Parcel delivery checkbox validation
Download this release
Release Info
Developer | vendidero |
Plugin | WooCommerce Germanized |
Version | 1.8.4 |
Comparing to | |
See all releases |
Code changes from version 1.8.3 to 1.8.4
- assets/css/woocommerce-gzd-admin.css +5 -0
- assets/css/woocommerce-gzd-admin.min.css +1 -1
- assets/css/woocommerce-gzd-dhl-parcel-shop-finder.css +55 -0
- assets/css/woocommerce-gzd-dhl-parcel-shop-finder.min.css +1 -0
- assets/css/woocommerce-gzd-layout.css +4 -0
- assets/css/woocommerce-gzd-layout.min.css +1 -1
- assets/images/dhl-packstation.png +0 -0
- assets/js/checkout-dhl-parcel-shops.js +172 -0
- assets/js/checkout-dhl-parcel-shops.min.js +1 -0
- assets/js/checkout.js +2 -1
- i18n/languages/woocommerce-germanized-de_DE.mo +0 -0
- i18n/languages/woocommerce-germanized-de_DE.po +214 -93
- i18n/languages/woocommerce-germanized-de_DE_formal.mo +0 -0
- i18n/languages/woocommerce-germanized-de_DE_formal.po +203 -94
- includes/abstracts/abstract-wc-gzd-compatibility.php +6 -6
- includes/abstracts/abstract-wc-gzd-product.php +7 -7
- includes/admin/class-wc-gzd-admin-welcome.php +11 -5
- includes/admin/class-wc-gzd-admin.php +1 -1
- includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php +1 -1
- includes/admin/settings/class-wc-gzd-settings-germanized.php +26 -0
- includes/api/class-wc-gzd-rest-api.php +1 -1
- includes/api/class-wc-gzd-rest-orders-controller.php +25 -0
- includes/class-wc-gzd-checkout.php +78 -14
- includes/class-wc-gzd-dhl-parcel-shops.php +261 -0
- includes/class-wc-gzd-emails.php +25 -5
- includes/class-wc-gzd-hook-priorities.php +1 -1
- includes/class-wc-gzd-install.php +7 -6
- includes/class-wc-gzd-product-variable.php +11 -1
- includes/class-wc-gzd-virtual-vat-helper.php +3 -3
- includes/compatibility/class-wc-gzd-compatibility-wpml.php +1 -1
- includes/gateways/direct-debit/libraries/php-sepa-xml/.travis.yml +0 -14
- includes/updates/woocommerce-gzd-update-1.8.0.php +5 -0
- includes/wc-gzd-cart-functions.php +10 -2
- includes/wc-gzd-core-functions.php +4 -0
- includes/wc-gzd-legacy-functions.php +6 -6
- includes/wc-gzd-template-functions.php +1 -1
- readme.txt +19 -2
- templates/checkout/dhl-parcel-shop-finder.php +21 -0
- uninstall.php +108 -0
- woocommerce-germanized.php +194 -149
assets/css/woocommerce-gzd-admin.css
CHANGED
@@ -152,6 +152,11 @@ table.wc-gzd-tax-example tr th:first-child, table.wc-gzd-tax-example tr td:first
|
|
152 |
width: 100%;
|
153 |
}
|
154 |
|
|
|
|
|
|
|
|
|
|
|
155 |
.wc-gzd-text-red {
|
156 |
color: red;
|
157 |
}
|
152 |
width: 100%;
|
153 |
}
|
154 |
|
155 |
+
#order_data ._shipping_parcelshop_post_number_field {
|
156 |
+
clear: left;
|
157 |
+
width: 100% !important;
|
158 |
+
}
|
159 |
+
|
160 |
.wc-gzd-text-red {
|
161 |
color: red;
|
162 |
}
|
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}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}.wc-gzd-button,.wc-gzd-button:hover{border:1px solid #557020!important;text-shadow:none!important}#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/css/woocommerce-gzd-dhl-parcel-shop-finder.css
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
#wc-gzd-parcel-shop-finder-iframe-wrapper {
|
2 |
+
position: relative;
|
3 |
+
z-index: 99999;
|
4 |
+
}
|
5 |
+
|
6 |
+
#wc-gzd-parcel-finder-background-overlay {
|
7 |
+
display: none;
|
8 |
+
position: fixed;
|
9 |
+
top: 0;
|
10 |
+
left: 0;
|
11 |
+
bottom: 0;
|
12 |
+
right: 0;
|
13 |
+
background-color: rgba(0, 0, 0, .45);
|
14 |
+
cursor: pointer
|
15 |
+
}
|
16 |
+
|
17 |
+
#wc-gzd-parcel-finder-iframe-overlay {
|
18 |
+
width: 90%;
|
19 |
+
height: 90%;
|
20 |
+
position: fixed;
|
21 |
+
left: 5%;
|
22 |
+
top: 5%;
|
23 |
+
overflow: hidden;
|
24 |
+
-webkit-border-radius: 5px
|
25 |
+
}
|
26 |
+
|
27 |
+
#wc-gzd-parcel-finder-iframe {
|
28 |
+
width: 90%;
|
29 |
+
height: 90%;
|
30 |
+
position: fixed;
|
31 |
+
left: 5%;
|
32 |
+
top: 5%;
|
33 |
+
border-radius: 5px;
|
34 |
+
border-style: hidden
|
35 |
+
}
|
36 |
+
|
37 |
+
#wc-gzd-parcel-finder-close-btn {
|
38 |
+
background: #d40511;
|
39 |
+
color: #fff;
|
40 |
+
position: fixed;
|
41 |
+
z-index: 100;
|
42 |
+
font-family: 'Helvetica', 'Arial', sans-serif;
|
43 |
+
font-size: 1em;
|
44 |
+
font-weight: bold;
|
45 |
+
text-align: center;
|
46 |
+
width: 20px;
|
47 |
+
height: 20px;
|
48 |
+
border-radius: 0;
|
49 |
+
box-shadow: none;
|
50 |
+
cursor: pointer
|
51 |
+
}
|
52 |
+
|
53 |
+
#wc-gzd-parcel-finder-close-btn:hover {
|
54 |
+
background: #9d0415
|
55 |
+
}
|
assets/css/woocommerce-gzd-dhl-parcel-shop-finder.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
#wc-gzd-parcel-shop-finder-iframe-wrapper{position:relative;z-index:99999}#wc-gzd-parcel-finder-background-overlay{display:none;position:fixed;top:0;left:0;bottom:0;right:0;background-color:rgba(0,0,0,.45);cursor:pointer}#wc-gzd-parcel-finder-iframe-overlay{width:90%;height:90%;position:fixed;left:5%;top:5%;overflow:hidden;-webkit-border-radius:5px}#wc-gzd-parcel-finder-iframe{width:90%;height:90%;position:fixed;left:5%;top:5%;border-radius:5px;border-style:hidden}#wc-gzd-parcel-finder-close-btn{background:#d40511;color:#fff;position:fixed;z-index:100;font-family:Helvetica,Arial,sans-serif;font-size:1em;font-weight:700;text-align:center;width:20px;height:20px;border-radius:0;box-shadow:none;cursor:pointer}#wc-gzd-parcel-finder-close-btn:hover{background:#9d0415}
|
assets/css/woocommerce-gzd-layout.css
CHANGED
@@ -116,4 +116,8 @@ table.product-details-inner tr td:last-child {
|
|
116 |
#eKomiSeal_default img {
|
117 |
width: 100% !important;
|
118 |
height: 100% !important;
|
|
|
|
|
|
|
|
|
119 |
}
|
116 |
#eKomiSeal_default img {
|
117 |
width: 100% !important;
|
118 |
height: 100% !important;
|
119 |
+
}
|
120 |
+
.wc-gzd-parcel-finder-open-button {
|
121 |
+
display: inline;
|
122 |
+
margin-left: 5px;
|
123 |
}
|
assets/css/woocommerce-gzd-layout.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.cart_totals .wc-gzd-additional-wrapper,.entry-content .woocommerce .checkout-btn-wrap,.shop_table .product-name-inner tr td:last-child{text-align:right}.wc-gzd-item-desc p{font-size:.9em}#order_review .legal{text-align:left;padding:0 1em 0 0;float:left}.cart_totals .wc-gzd-additional-wrapper,.entry-content .woocommerce .checkout-btn-wrap,.shop_table .product-name-inner tr td:last-child{text-align:right}#order_review .legal label{display:inline}.woocommerce-checkout .shop_table{background-color:#EEE}.includes_tax,.tax_label{display:none!important}#order_review_heading{display:none}.woocommerce-checkout .shop_table tr td p{margin-bottom:0}.woocommerce-checkout .shop_table td,.woocommerce-checkout .shop_table th{line-height:1.5}.shop_table .product-name-inner,.shop_table .product-name-inner tr td{border:none;padding:0;margin:0}.cart_totals p.wc-gzd-additional-info{font-size:.8em;width:60%;border-top:1px solid #CCC;padding-top:.5rem;display:inline-block}.entry-content .woocommerce #payment{margin-bottom:1em}.woocommerce #payment .wc-terms-and-conditions{display:none!important}.woocommerce-checkout p.direct-debit-checkbox{display:none}.unit-price-cart{font-size:.9em;display:block;margin-top:5px}.products .wc-gzd-additional-info{font-size:.8em;margin:.7rem 0;padding:0}.products .product .price-unit{font-size:.8em}.wc-gzd-item-desc p,p.footer-info{font-size:.9em}.product p.wc-gzd-additional-info{margin-bottom:.5rem;font-size:.9em;clear:left}.product .product_meta{margin-top:1rem}p.footer-info{text-align:center;padding-bottom:.5rem}.wc-gzd-edit-data-notice{background:#EEE;display:inline-block;padding:1em}.wc-gzd-edit-data-notice p.wc-gzd-info{margin:0;padding:0}table.product-details-inner{table-layout:fixed;margin:0;padding:0}table.product-details-inner,table.product-details-inner td,table.product-details-inner tr{padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border:none;background:0 0}table.product-details-inner tr td:last-child{text-align:right}.wc-gzd-product-name-left,.wc-gzd-product-name-right{float:left}.wc-gzd-product-name-left{max-width:15%;margin-right:1em}#eKomiSeal_default img{width:100%!important;height:100%!important}
|
1 |
+
.cart_totals .wc-gzd-additional-wrapper,.entry-content .woocommerce .checkout-btn-wrap,.shop_table .product-name-inner tr td:last-child{text-align:right}.wc-gzd-parcel-finder-open-button{display:inline;margin-left:5px}.wc-gzd-item-desc p{font-size:.9em}#order_review .legal{text-align:left;padding:0 1em 0 0;float:left}.cart_totals .wc-gzd-additional-wrapper,.entry-content .woocommerce .checkout-btn-wrap,.shop_table .product-name-inner tr td:last-child{text-align:right}#order_review .legal label{display:inline}.woocommerce-checkout .shop_table{background-color:#EEE}.includes_tax,.tax_label{display:none!important}#order_review_heading{display:none}.woocommerce-checkout .shop_table tr td p{margin-bottom:0}.woocommerce-checkout .shop_table td,.woocommerce-checkout .shop_table th{line-height:1.5}.shop_table .product-name-inner,.shop_table .product-name-inner tr td{border:none;padding:0;margin:0}.cart_totals p.wc-gzd-additional-info{font-size:.8em;width:60%;border-top:1px solid #CCC;padding-top:.5rem;display:inline-block}.entry-content .woocommerce #payment{margin-bottom:1em}.woocommerce #payment .wc-terms-and-conditions{display:none!important}.woocommerce-checkout p.direct-debit-checkbox{display:none}.unit-price-cart{font-size:.9em;display:block;margin-top:5px}.products .wc-gzd-additional-info{font-size:.8em;margin:.7rem 0;padding:0}.products .product .price-unit{font-size:.8em}.wc-gzd-item-desc p,p.footer-info{font-size:.9em}.product p.wc-gzd-additional-info{margin-bottom:.5rem;font-size:.9em;clear:left}.product .product_meta{margin-top:1rem}p.footer-info{text-align:center;padding-bottom:.5rem}.wc-gzd-edit-data-notice{background:#EEE;display:inline-block;padding:1em}.wc-gzd-edit-data-notice p.wc-gzd-info{margin:0;padding:0}table.product-details-inner{table-layout:fixed;margin:0;padding:0}table.product-details-inner,table.product-details-inner td,table.product-details-inner tr{padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border:none;background:0 0}table.product-details-inner tr td:last-child{text-align:right}.wc-gzd-product-name-left,.wc-gzd-product-name-right{float:left}.wc-gzd-product-name-left{max-width:15%;margin-right:1em}#eKomiSeal_default img{width:100%!important;height:100%!important}
|
assets/images/dhl-packstation.png
ADDED
Binary file
|
assets/js/checkout-dhl-parcel-shops.js
ADDED
@@ -0,0 +1,172 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
jQuery( function( $ ) {
|
2 |
+
|
3 |
+
var wc_gzd_dhl_parcel_shops = {
|
4 |
+
|
5 |
+
$parcelFinderButtonWrapper: $( wc_gzd_dhl_parcel_shops_params.button_wrapper ),
|
6 |
+
$parcelFinderWrapper: $( wc_gzd_dhl_parcel_shops_params.iframe_wrapper ),
|
7 |
+
$parcelCheckboxField: $( '#shipping_parcelshop_field' ),
|
8 |
+
params: wc_gzd_dhl_parcel_shops_params,
|
9 |
+
defaultAddressFieldLabel: '',
|
10 |
+
defaultAddressFieldPlaceholder: '',
|
11 |
+
supportedCountries: [],
|
12 |
+
|
13 |
+
init: function() {
|
14 |
+
|
15 |
+
if ( wc_gzd_dhl_parcel_shops.params.enable_finder ) {
|
16 |
+
this.initParcelFinder();
|
17 |
+
}
|
18 |
+
|
19 |
+
this.initDefaultData();
|
20 |
+
|
21 |
+
this.$parcelCheckboxField.on( 'change', '#shipping_parcelshop', this.parcelCheckboxChanged );
|
22 |
+
$( document ).on( 'change', '#shipping_country', this.shippingCountryChanged );
|
23 |
+
|
24 |
+
this.parcelCheckboxChanged( true );
|
25 |
+
},
|
26 |
+
|
27 |
+
initDefaultData: function() {
|
28 |
+
this.supportedCountries = this.params.supported_countries;
|
29 |
+
this.defaultAddressFieldLabel = $( '#shipping_address_1_field' ).find( 'label' ).contents().filter( function() {
|
30 |
+
return this.nodeType == 3;
|
31 |
+
}).text();
|
32 |
+
this.defaultAddressFieldPlaceholder = $( '#shipping_address_1' ).attr( 'placeholder' );
|
33 |
+
},
|
34 |
+
|
35 |
+
shippingCountryChanged: function() {
|
36 |
+
|
37 |
+
var country = $( '#shipping_country' ).val();
|
38 |
+
|
39 |
+
if ( $.inArray( country, wc_gzd_dhl_parcel_shops.params.supported_countries ) !== -1 ) {
|
40 |
+
wc_gzd_dhl_parcel_shops.$parcelCheckboxField.show();
|
41 |
+
} else {
|
42 |
+
$( '#shipping_parcelshop' ).prop( 'checked', false );
|
43 |
+
wc_gzd_dhl_parcel_shops.$parcelCheckboxField.hide();
|
44 |
+
}
|
45 |
+
|
46 |
+
wc_gzd_dhl_parcel_shops.parcelCheckboxChanged( false );
|
47 |
+
},
|
48 |
+
|
49 |
+
parcelCheckboxChanged: function( afterLoad ) {
|
50 |
+
|
51 |
+
if ( typeof afterLoad === 'undefined' || $.type( afterLoad ) !== 'boolean' ) {
|
52 |
+
afterLoad = false;
|
53 |
+
}
|
54 |
+
|
55 |
+
var label = $( '#shipping_address_1_field' ).find( 'label' );
|
56 |
+
|
57 |
+
if ( $( '#shipping_parcelshop' ).is( ':checked' ) ) {
|
58 |
+
|
59 |
+
wc_gzd_dhl_parcel_shops.showFinderButton();
|
60 |
+
|
61 |
+
// Check if checkbox is checked on load (customer has already chosen option before so there is no need to clean the address input)
|
62 |
+
if ( ! afterLoad && wc_gzd_dhl_parcel_shops.$parcelCheckboxField.hasClass( 'first-check' ) ) {
|
63 |
+
$( '#shipping_address_1' ).val( '' );
|
64 |
+
wc_gzd_dhl_parcel_shops.$parcelCheckboxField.removeClass( 'first-check' );
|
65 |
+
} else if ( afterLoad ) {
|
66 |
+
wc_gzd_dhl_parcel_shops.$parcelCheckboxField.removeClass( 'first-check' );
|
67 |
+
}
|
68 |
+
|
69 |
+
$( '#shipping_parcelshop_post_number_field' ).show();
|
70 |
+
|
71 |
+
label.contents().filter( function() {
|
72 |
+
return this.nodeType == 3;
|
73 |
+
}).first().replaceWith( wc_gzd_dhl_parcel_shops.params.address_field_title + ' ' );
|
74 |
+
|
75 |
+
$( '#shipping_address_1' ).attr( 'placeholder', wc_gzd_dhl_parcel_shops.params.address_field_placeholder );
|
76 |
+
|
77 |
+
if ( $( '#shipping_country' ).val() === 'DE' ) {
|
78 |
+
$( '#shipping_address_2' ).val( '' );
|
79 |
+
$( '#shipping_address_2' ).hide();
|
80 |
+
} else {
|
81 |
+
$( '#shipping_address_2' ).show();
|
82 |
+
}
|
83 |
+
|
84 |
+
} else {
|
85 |
+
|
86 |
+
wc_gzd_dhl_parcel_shops.hideFinderButton();
|
87 |
+
|
88 |
+
label.contents().filter( function() {
|
89 |
+
return this.nodeType == 3;
|
90 |
+
}).first().replaceWith( wc_gzd_dhl_parcel_shops.defaultAddressFieldLabel );
|
91 |
+
|
92 |
+
$( '#shipping_address_1' ).attr( 'placeholder', wc_gzd_dhl_parcel_shops.defaultAddressFieldPlaceholder );
|
93 |
+
$( '#shipping_parcelshop_post_number_field' ).hide();
|
94 |
+
}
|
95 |
+
|
96 |
+
},
|
97 |
+
|
98 |
+
initParcelFinder: function() {
|
99 |
+
|
100 |
+
this.$parcelFinderButtonWrapper.hide();
|
101 |
+
this.$parcelFinderWrapper.find( '#wc-gzd-parcel-finder-background-overlay' ).hide();
|
102 |
+
this.$parcelFinderWrapper.on( 'click', '#wc-gzd-parcel-finder-background-overlay', this.closeParcelFinder );
|
103 |
+
this.$parcelFinderWrapper.on( 'click', '#wc-gzd-parcel-finder-close-btn', this.closeParcelFinder );
|
104 |
+
this.$parcelFinderButtonWrapper.on( 'click', '.wc-gzd-parcel-finder-open-button', this.openParcelFinder );
|
105 |
+
|
106 |
+
$( window ).on( 'message', this.saveParcelFinder );
|
107 |
+
},
|
108 |
+
|
109 |
+
showFinderButton: function() {
|
110 |
+
|
111 |
+
if ( wc_gzd_dhl_parcel_shops.params.enable_finder ) {
|
112 |
+
wc_gzd_dhl_parcel_shops.$parcelFinderButtonWrapper.show();
|
113 |
+
}
|
114 |
+
|
115 |
+
},
|
116 |
+
|
117 |
+
hideFinderButton: function() {
|
118 |
+
|
119 |
+
if ( wc_gzd_dhl_parcel_shops.params.enable_finder ) {
|
120 |
+
wc_gzd_dhl_parcel_shops.$parcelFinderButtonWrapper.hide();
|
121 |
+
}
|
122 |
+
|
123 |
+
},
|
124 |
+
|
125 |
+
saveParcelFinder: function(e) {
|
126 |
+
var c = JSON.parse( e.originalEvent.data );
|
127 |
+
var country = c.countryCode.toUpperCase();
|
128 |
+
|
129 |
+
$( '.wc-gzd-parcel-finder-shipping-country-error' ).remove();
|
130 |
+
|
131 |
+
if ( $.inArray( country, wc_gzd_dhl_parcel_shops.supportedCountries ) !== -1 ) {
|
132 |
+
$( '#shipping_country' ).val( c.countryCode.toUpperCase() ).trigger( 'change' );
|
133 |
+
$( '#shipping_address_1' ).val( c.keyWord + ' ' + c.primaryKeyZipRegion );
|
134 |
+
$( '#shipping_address_2' ).val( c.street + ' ' + c.houseNo );
|
135 |
+
$( '#shipping_city' ).val( c.city );
|
136 |
+
$( '#shipping_postcode' ).val( c.zipCode );
|
137 |
+
} else {
|
138 |
+
|
139 |
+
if ( $( '.woocommerce-error' ).length > 0 ) {
|
140 |
+
$( '.woocommerce-error' ).append( '<li class="wc-gzd-parcel-finder-shipping-country-error">' + wc_gzd_dhl_parcel_shops.params.shipping_country_error + '</li>' );
|
141 |
+
} else {
|
142 |
+
$( 'form.woocommerce-checkout' ).prepend( '<ul class="woocommerce-error wc-gzd-parcel-finder-shipping-country-error"><li>' + wc_gzd_dhl_parcel_shops.params.shipping_country_error + '</li></ul>' );
|
143 |
+
}
|
144 |
+
|
145 |
+
// Scroll to top
|
146 |
+
$( 'html, body' ).animate( {
|
147 |
+
scrollTop: ( $( 'form.checkout' ).offset().top - 100 )
|
148 |
+
}, 1000 );
|
149 |
+
}
|
150 |
+
|
151 |
+
if( c.countryCode === "de" ) {
|
152 |
+
$( '#shipping_address_2' ).val( "" );
|
153 |
+
}
|
154 |
+
|
155 |
+
wc_gzd_dhl_parcel_shops.closeParcelFinder();
|
156 |
+
|
157 |
+
},
|
158 |
+
|
159 |
+
openParcelFinder: function() {
|
160 |
+
wc_gzd_dhl_parcel_shops.$parcelFinderWrapper.find( 'iframe' ).attr( 'src', wc_gzd_dhl_parcel_shops.params.iframe_src );
|
161 |
+
wc_gzd_dhl_parcel_shops.$parcelFinderWrapper.find( '#wc-gzd-parcel-finder-background-overlay' ).show();
|
162 |
+
return false;
|
163 |
+
},
|
164 |
+
|
165 |
+
closeParcelFinder: function() {
|
166 |
+
wc_gzd_dhl_parcel_shops.$parcelFinderWrapper.find( '#wc-gzd-parcel-finder-background-overlay' ).hide();
|
167 |
+
}
|
168 |
+
};
|
169 |
+
|
170 |
+
wc_gzd_dhl_parcel_shops.init();
|
171 |
+
|
172 |
+
});
|
assets/js/checkout-dhl-parcel-shops.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
jQuery(function(a){var b={$parcelFinderButtonWrapper:a(wc_gzd_dhl_parcel_shops_params.button_wrapper),$parcelFinderWrapper:a(wc_gzd_dhl_parcel_shops_params.iframe_wrapper),$parcelCheckboxField:a("#shipping_parcelshop_field"),params:wc_gzd_dhl_parcel_shops_params,defaultAddressFieldLabel:"",defaultAddressFieldPlaceholder:"",supportedCountries:[],init:function(){b.params.enable_finder&&this.initParcelFinder(),this.initDefaultData(),this.$parcelCheckboxField.on("change","#shipping_parcelshop",this.parcelCheckboxChanged),a(document).on("change","#shipping_country",this.shippingCountryChanged),this.parcelCheckboxChanged(!0)},initDefaultData:function(){this.supportedCountries=this.params.supported_countries,this.defaultAddressFieldLabel=a("#shipping_address_1_field").find("label").contents().filter(function(){return 3==this.nodeType}).text(),this.defaultAddressFieldPlaceholder=a("#shipping_address_1").attr("placeholder")},shippingCountryChanged:function(){var c=a("#shipping_country").val();-1!==a.inArray(c,b.params.supported_countries)?b.$parcelCheckboxField.show():(a("#shipping_parcelshop").prop("checked",!1),b.$parcelCheckboxField.hide()),b.parcelCheckboxChanged(!1)},parcelCheckboxChanged:function(c){("undefined"==typeof c||"boolean"!==a.type(c))&&(c=!1);var d=a("#shipping_address_1_field").find("label");a("#shipping_parcelshop").is(":checked")?(b.showFinderButton(),!c&&b.$parcelCheckboxField.hasClass("first-check")?(a("#shipping_address_1").val(""),b.$parcelCheckboxField.removeClass("first-check")):c&&b.$parcelCheckboxField.removeClass("first-check"),a("#shipping_parcelshop_post_number_field").show(),d.contents().filter(function(){return 3==this.nodeType}).first().replaceWith(b.params.address_field_title+" "),a("#shipping_address_1").attr("placeholder",b.params.address_field_placeholder),"DE"===a("#shipping_country").val()?(a("#shipping_address_2").val(""),a("#shipping_address_2").hide()):a("#shipping_address_2").show()):(b.hideFinderButton(),d.contents().filter(function(){return 3==this.nodeType}).first().replaceWith(b.defaultAddressFieldLabel),a("#shipping_address_1").attr("placeholder",b.defaultAddressFieldPlaceholder),a("#shipping_parcelshop_post_number_field").hide())},initParcelFinder:function(){this.$parcelFinderButtonWrapper.hide(),this.$parcelFinderWrapper.find("#wc-gzd-parcel-finder-background-overlay").hide(),this.$parcelFinderWrapper.on("click","#wc-gzd-parcel-finder-background-overlay",this.closeParcelFinder),this.$parcelFinderWrapper.on("click","#wc-gzd-parcel-finder-close-btn",this.closeParcelFinder),this.$parcelFinderButtonWrapper.on("click",".wc-gzd-parcel-finder-open-button",this.openParcelFinder),a(window).on("message",this.saveParcelFinder)},showFinderButton:function(){b.params.enable_finder&&b.$parcelFinderButtonWrapper.show()},hideFinderButton:function(){b.params.enable_finder&&b.$parcelFinderButtonWrapper.hide()},saveParcelFinder:function(c){var d=JSON.parse(c.originalEvent.data),e=d.countryCode.toUpperCase();a(".wc-gzd-parcel-finder-shipping-country-error").remove(),-1!==a.inArray(e,b.supportedCountries)?(a("#shipping_country").val(d.countryCode.toUpperCase()).trigger("change"),a("#shipping_address_1").val(d.keyWord+" "+d.primaryKeyZipRegion),a("#shipping_address_2").val(d.street+" "+d.houseNo),a("#shipping_city").val(d.city),a("#shipping_postcode").val(d.zipCode)):(a(".woocommerce-error").length>0?a(".woocommerce-error").append('<li class="wc-gzd-parcel-finder-shipping-country-error">'+b.params.shipping_country_error+"</li>"):a("form.woocommerce-checkout").prepend('<ul class="woocommerce-error wc-gzd-parcel-finder-shipping-country-error"><li>'+b.params.shipping_country_error+"</li></ul>"),a("html, body").animate({scrollTop:a("form.checkout").offset().top-100},1e3)),"de"===d.countryCode&&a("#shipping_address_2").val(""),b.closeParcelFinder()},openParcelFinder:function(){return b.$parcelFinderWrapper.find("iframe").attr("src",b.params.iframe_src),b.$parcelFinderWrapper.find("#wc-gzd-parcel-finder-background-overlay").show(),!1},closeParcelFinder:function(){b.$parcelFinderWrapper.find("#wc-gzd-parcel-finder-background-overlay").hide()}};b.init()});
|
assets/js/checkout.js
CHANGED
@@ -18,4 +18,5 @@ jQuery( function( $ ) {
|
|
18 |
$( '.woocommerce-checkout' ).find( '#payment' ).after( $( '.woocommerce-checkout' ).find( '#order_review_heading' ) );
|
19 |
$( '.woocommerce-checkout' ).find( '#order_review_heading' ).show();
|
20 |
}
|
21 |
-
|
|
18 |
$( '.woocommerce-checkout' ).find( '#payment' ).after( $( '.woocommerce-checkout' ).find( '#order_review_heading' ) );
|
19 |
$( '.woocommerce-checkout' ).find( '#order_review_heading' ).show();
|
20 |
}
|
21 |
+
|
22 |
+
});
|
i18n/languages/woocommerce-germanized-de_DE.mo
CHANGED
Binary file
|
i18n/languages/woocommerce-germanized-de_DE.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: WooCommerce Germanized v1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2017-03-
|
6 |
-
"PO-Revision-Date: 2017-03-
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
@@ -91,7 +91,7 @@ msgstr "l"
|
|
91 |
# @ woocommerce-germanized
|
92 |
#: includes/abstracts/abstract-wc-gzd-product.php:215
|
93 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
94 |
-
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:
|
95 |
msgid "incl. VAT"
|
96 |
msgstr "inkl. MwSt."
|
97 |
|
@@ -103,7 +103,7 @@ msgstr "exkl. MwSt."
|
|
103 |
# @ woocommerce-germanized
|
104 |
#: includes/abstracts/abstract-wc-gzd-product.php:217
|
105 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
106 |
-
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:
|
107 |
#, php-format
|
108 |
msgid "incl. %s%% VAT"
|
109 |
msgstr "inkl. %s%% MwSt."
|
@@ -178,7 +178,7 @@ msgstr "Zahlungarten"
|
|
178 |
# @ woocommerce-germanized
|
179 |
#: includes/admin/class-wc-gzd-admin-status.php:43
|
180 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:280
|
181 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
182 |
msgid "Shipping Methods"
|
183 |
msgstr "Versandarten"
|
184 |
|
@@ -1503,14 +1503,68 @@ msgstr "Produkt enthält: {product_units} {unit}"
|
|
1503 |
msgid "Checkout & Cart"
|
1504 |
msgstr "Checkout & Warenkorb"
|
1505 |
|
1506 |
-
# @ woocommerce-germanized
|
1507 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:891
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1508 |
#: includes/admin/views/html-page-status-germanized.php:55
|
1509 |
msgid "Fallback Mode"
|
1510 |
msgstr "Fallback Modus"
|
1511 |
|
1512 |
# @ woocommerce-germanized
|
1513 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1514 |
msgid ""
|
1515 |
"Enable to make sure default checkout template is not being overriden by "
|
1516 |
"theme."
|
@@ -1518,7 +1572,7 @@ msgstr ""
|
|
1518 |
"Überschreiben relevanter Templates im Checkout durch dein Theme verhindern."
|
1519 |
|
1520 |
# @ woocommerce-germanized
|
1521 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1522 |
msgid ""
|
1523 |
"If you are facing problems within your checkout e.g. legally relevant data "
|
1524 |
"is not showing (terms, delivery time, unit price etc.) your theme seems to "
|
@@ -1532,17 +1586,17 @@ msgstr ""
|
|
1532 |
"Checkout (review-order.php und form-checkout.php) zu überschreiben. "
|
1533 |
|
1534 |
# @ woocommerce-germanized
|
1535 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1536 |
msgid "Force free shipping"
|
1537 |
msgstr "Versandmethode erzwingen"
|
1538 |
|
1539 |
# @ woocommerce-germanized
|
1540 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1541 |
msgid "Force free shipping method if available?"
|
1542 |
msgstr "Kostenlosen Versand erzwingen wenn die Methode zur Verfügung steht?"
|
1543 |
|
1544 |
# @ woocommerce-germanized
|
1545 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1546 |
msgid ""
|
1547 |
"By default WooCommerce will let customers choose other shipping methods than "
|
1548 |
"free shipping (if available). This option will force free shipping if "
|
@@ -1553,18 +1607,18 @@ msgstr ""
|
|
1553 |
"Versand, sobald dieser verfügbar ist."
|
1554 |
|
1555 |
# @ woocommerce-germanized
|
1556 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1557 |
msgid "Hide taxes estimated"
|
1558 |
msgstr "Hinweis \"Steuern geschätzt\""
|
1559 |
|
1560 |
# @ woocommerce-germanized
|
1561 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1562 |
msgid ""
|
1563 |
"Do you want to hide the \"taxes and shipping estimated\" text from your cart?"
|
1564 |
msgstr "Den Hinweis \"Versandkosten und Steuern werden geschätzt\" entfernen?"
|
1565 |
|
1566 |
# @ woocommerce-germanized
|
1567 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1568 |
msgid ""
|
1569 |
"By default WooCommerce adds a \"taxes and shipping estimated\" text to your "
|
1570 |
"cart. This might puzzle your customers and may not meet german law."
|
@@ -1574,17 +1628,17 @@ msgstr ""
|
|
1574 |
"Markt geeignet."
|
1575 |
|
1576 |
# @ woocommerce-germanized
|
1577 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1578 |
msgid "Show Thumbnails"
|
1579 |
msgstr "Thumbnails anzeigen"
|
1580 |
|
1581 |
# @ woocommerce-germanized
|
1582 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1583 |
msgid "Show product thumbnails on checkout page?"
|
1584 |
msgstr "Produktbilder im Checkout darstellen?"
|
1585 |
|
1586 |
# @ woocommerce-germanized
|
1587 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1588 |
msgid ""
|
1589 |
"Uncheck if you don't want to show your product thumbnails within checkout "
|
1590 |
"table."
|
@@ -1593,17 +1647,17 @@ msgstr ""
|
|
1593 |
"bekommen möchtest."
|
1594 |
|
1595 |
# @ woocommerce-germanized
|
1596 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1597 |
msgid "Hide Shipping Select"
|
1598 |
msgstr "Versandarten Auswahl"
|
1599 |
|
1600 |
# @ woocommerce-germanized
|
1601 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1602 |
msgid "Hide shipping rate selection from checkout?"
|
1603 |
msgstr "Die Auswahl von Versandarten im Checkout deaktivieren?"
|
1604 |
|
1605 |
# @ woocommerce-germanized
|
1606 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1607 |
msgid ""
|
1608 |
"This option will hide shipping rate selection from checkout. By then "
|
1609 |
"customers will only be able to change their shipping rate on cart page."
|
@@ -1613,18 +1667,18 @@ msgstr ""
|
|
1613 |
"Versandmethode ändern."
|
1614 |
|
1615 |
# @ woocommerce-germanized
|
1616 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1617 |
msgid "Show back to cart button"
|
1618 |
msgstr "Bestellung bearbeiten"
|
1619 |
|
1620 |
# @ woocommerce-germanized
|
1621 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1622 |
msgid "Show back to cart button within your checkout table?"
|
1623 |
msgstr ""
|
1624 |
"Einen \"Bestellung bearbeiten\" Button in der Bestellübersicht anzeigen?"
|
1625 |
|
1626 |
# @ woocommerce-germanized
|
1627 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1628 |
msgid ""
|
1629 |
"This button may let your customer edit their order before submitting. Some "
|
1630 |
"people state that this button should be hidden to avoid legal problems."
|
@@ -1636,28 +1690,28 @@ msgstr ""
|
|
1636 |
"keine weitere Informationen abgedruckt werden sollten."
|
1637 |
|
1638 |
# @ woocommerce-germanized
|
1639 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1640 |
msgid "Show edit data notice"
|
1641 |
msgstr "Bestellung prüfen Hinweis"
|
1642 |
|
1643 |
# @ woocommerce-germanized
|
1644 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1645 |
msgid "Show a \"check-your-entries\" notice to the user?"
|
1646 |
msgstr "Einen \"Bestellung prüfen\" Hinweis anzeigen?"
|
1647 |
|
1648 |
# @ woocommerce-germanized
|
1649 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1650 |
msgid "This notice will be added right before the order comments field."
|
1651 |
msgstr ""
|
1652 |
"Dieser Hinweis wird direkt oberhalb des Bestellhinweise-Feldes eingefügt."
|
1653 |
|
1654 |
# @ woocommerce-germanized
|
1655 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1656 |
msgid "Checkout Table Color"
|
1657 |
msgstr "Hintergrundfarbe der Tabelle"
|
1658 |
|
1659 |
# @ woocommerce-germanized
|
1660 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1661 |
msgid ""
|
1662 |
"Choose the color of your checkout product table. This table should be "
|
1663 |
"highlighted within your checkout page."
|
@@ -1666,17 +1720,17 @@ msgstr ""
|
|
1666 |
"Tabelle sollte sich farblich vom Rest des Inhalts abheben."
|
1667 |
|
1668 |
# @ woocommerce-germanized
|
1669 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1670 |
msgid "Checkout Legal Display"
|
1671 |
msgstr "Checkbox oder Text"
|
1672 |
|
1673 |
# @ woocommerce-germanized
|
1674 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1675 |
msgid "Use Text without Checkbox"
|
1676 |
msgstr "Rechtshinweis ohne Checkbox."
|
1677 |
|
1678 |
# @ woocommerce-germanized
|
1679 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1680 |
msgid ""
|
1681 |
"This version will remove checkboxes from Checkout and display a text "
|
1682 |
"instead. This seems to be legally compliant (Zalando & Co are using this "
|
@@ -1687,12 +1741,12 @@ msgstr ""
|
|
1687 |
"diese Form)"
|
1688 |
|
1689 |
# @ woocommerce-germanized
|
1690 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1691 |
msgid "Legal Text"
|
1692 |
msgstr "Rechtlicher Hinweistext"
|
1693 |
|
1694 |
# @ woocommerce-germanized
|
1695 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1696 |
msgid ""
|
1697 |
"Choose a Plain Text which will be shown right above checkout submit button. "
|
1698 |
"Use {term_link}{/term_link}, {data_security_link}{/data_security_link}, "
|
@@ -1705,7 +1759,7 @@ msgstr ""
|
|
1705 |
"revocation_link} um die jeweiligen Links zu den Seiten einzufügen."
|
1706 |
|
1707 |
# @ woocommerce-germanized
|
1708 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1709 |
msgid ""
|
1710 |
"With your order, you agree to have read and understood our {term_link}Terms "
|
1711 |
"and Conditions{/term_link} and your {revocation_link}Right of Recission{/"
|
@@ -1716,12 +1770,12 @@ msgstr ""
|
|
1716 |
"revocation_link} einverstanden."
|
1717 |
|
1718 |
# @ woocommerce-germanized
|
1719 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1720 |
msgid "Legal Text Error"
|
1721 |
msgstr "Fehlermeldung der Checkbox"
|
1722 |
|
1723 |
# @ woocommerce-germanized
|
1724 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1725 |
msgid ""
|
1726 |
"If you have chosen to use checkbox validation please choose a error message "
|
1727 |
"which will be shown if the user doesn't check checkbox. Use {term_link}{/"
|
@@ -1736,7 +1790,7 @@ msgstr ""
|
|
1736 |
"revocation_link}"
|
1737 |
|
1738 |
# @ woocommerce-germanized
|
1739 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1740 |
msgid ""
|
1741 |
"To finish the order you have to accept to our {term_link}Terms and "
|
1742 |
"Conditions{/term_link} and {revocation_link}Right of Recission{/"
|
@@ -1746,17 +1800,17 @@ msgstr ""
|
|
1746 |
"term_link} und {revocation_link}Widerrufsbestimmungen{/revocation_link}."
|
1747 |
|
1748 |
# @ woocommerce-germanized
|
1749 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1750 |
msgid "Show digital notice"
|
1751 |
msgstr "Checkbox digitale Produkte"
|
1752 |
|
1753 |
# @ woocommerce-germanized
|
1754 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1755 |
msgid "Show checkbox for digital products."
|
1756 |
msgstr "Checkbox bei digitalen Produkten anzeigen."
|
1757 |
|
1758 |
# @ woocommerce-germanized
|
1759 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1760 |
msgid ""
|
1761 |
"Disable this option if you want your customers to obtain their right of "
|
1762 |
"recission even if digital products are being bought."
|
@@ -1766,12 +1820,12 @@ msgstr ""
|
|
1766 |
"werden, dass im Falle von digitalen Produkten das Widerrufsrecht erlischt."
|
1767 |
|
1768 |
# @ woocommerce-germanized
|
1769 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1770 |
msgid "Digital Product types"
|
1771 |
msgstr "Digitale Produkttypen"
|
1772 |
|
1773 |
# @ woocommerce-germanized
|
1774 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1775 |
msgid ""
|
1776 |
"Select product types for which the loss of recission notice is shown. "
|
1777 |
"Product types like \"simple product\" may be redudant because they include "
|
@@ -1783,12 +1837,12 @@ msgstr ""
|
|
1783 |
"einschließen."
|
1784 |
|
1785 |
# @ woocommerce-germanized
|
1786 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1787 |
msgid "Legal Digital Text"
|
1788 |
msgstr "Hinweis Digital"
|
1789 |
|
1790 |
# @ woocommerce-germanized
|
1791 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1792 |
msgid ""
|
1793 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1794 |
"if a user has picked a digital product. See legal text option for possible "
|
@@ -1799,7 +1853,7 @@ msgstr ""
|
|
1799 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext"
|
1800 |
|
1801 |
# @ woocommerce-germanized
|
1802 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1803 |
msgid ""
|
1804 |
"For digital products: I strongly agree that the execution of the agreement "
|
1805 |
"starts before the revocation period has expired. I am aware that my right of "
|
@@ -1810,13 +1864,13 @@ msgstr ""
|
|
1810 |
"bekannt, dass mit Beginn der Ausführung mein Widerrufsrecht erlischt."
|
1811 |
|
1812 |
# @ woocommerce-germanized
|
1813 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1814 |
msgid "Legal Digital Error"
|
1815 |
msgstr "Fehlermeldung Digital"
|
1816 |
|
1817 |
# @ woocommerce-germanized
|
1818 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1819 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1820 |
msgid ""
|
1821 |
"This text will be shown as error message if customer has not checked the "
|
1822 |
"corresponding checkbox. See legal text option for possible placeholders."
|
@@ -1826,7 +1880,7 @@ msgstr ""
|
|
1826 |
"Hinweistext für eine Liste der Platzhalter."
|
1827 |
|
1828 |
# @ woocommerce-germanized
|
1829 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1830 |
#: includes/wc-gzd-cart-functions.php:317
|
1831 |
msgid ""
|
1832 |
"To retrieve direct access to digital content you have to agree to the loss "
|
@@ -1836,12 +1890,12 @@ msgstr ""
|
|
1836 |
"Widerrufsrecht verzichten."
|
1837 |
|
1838 |
# @ woocommerce-germanized
|
1839 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1840 |
msgid "Digital Confirmation Notice"
|
1841 |
msgstr "Digitale Bestätigung"
|
1842 |
|
1843 |
# @ woocommerce-germanized
|
1844 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1845 |
msgid ""
|
1846 |
"This text will be appended to your order processing email if the order "
|
1847 |
"contains digital products. Use placeholders {link}{/link} to insert link to "
|
@@ -1852,7 +1906,7 @@ msgstr ""
|
|
1852 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1853 |
|
1854 |
# @ woocommerce-germanized
|
1855 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1856 |
msgid ""
|
1857 |
"Furthermore you have expressly agreed to start the performance of the "
|
1858 |
"contract for digital items (e.g. downloads) before expiry of the withdrawal "
|
@@ -1866,17 +1920,17 @@ msgstr ""
|
|
1866 |
"verlieren."
|
1867 |
|
1868 |
# @ woocommerce-germanized
|
1869 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1870 |
msgid "Show service notice"
|
1871 |
msgstr "Checkbox Dienstleistungen"
|
1872 |
|
1873 |
# @ woocommerce-germanized
|
1874 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1875 |
msgid "Show checkbox for service products."
|
1876 |
msgstr "Checkbox bei Dienstleistungen anzeigen."
|
1877 |
|
1878 |
# @ woocommerce-germanized
|
1879 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1880 |
msgid ""
|
1881 |
"Disable this option if you want your customers to obtain their right of "
|
1882 |
"recission even if service products are being bought."
|
@@ -1887,12 +1941,12 @@ msgstr ""
|
|
1887 |
"Widerrufsfrist mit der Dienstleistung begonnen wird."
|
1888 |
|
1889 |
# @ woocommerce-germanized
|
1890 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1891 |
msgid "Legal Service Text"
|
1892 |
msgstr "Hinweis Dienstleistungen"
|
1893 |
|
1894 |
# @ woocommerce-germanized
|
1895 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1896 |
msgid ""
|
1897 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1898 |
"if a user has picked a service product. See legal text option for possible "
|
@@ -1903,7 +1957,7 @@ msgstr ""
|
|
1903 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext."
|
1904 |
|
1905 |
# @ woocommerce-germanized
|
1906 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1907 |
#: includes/wc-gzd-cart-functions.php:339
|
1908 |
msgid ""
|
1909 |
"For services: I demand and acknowledge the immediate performance of the "
|
@@ -1916,12 +1970,12 @@ msgstr ""
|
|
1916 |
"vollständiger Erfüllung des Vertrages erlischt."
|
1917 |
|
1918 |
# @ woocommerce-germanized
|
1919 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1920 |
msgid "Legal Service Error"
|
1921 |
msgstr "Fehlermeldung"
|
1922 |
|
1923 |
# @ woocommerce-germanized
|
1924 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1925 |
#: includes/wc-gzd-cart-functions.php:348
|
1926 |
msgid ""
|
1927 |
"To allow the immediate performance of the services you have to agree to the "
|
@@ -1930,12 +1984,12 @@ msgstr ""
|
|
1930 |
"Bitte stimme dem Beginn der Dienstleistung vor Ablauf der Widerrufsfrist zu."
|
1931 |
|
1932 |
# @ woocommerce-germanized
|
1933 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1934 |
msgid "Service Confirmation Notice"
|
1935 |
msgstr "Dienstleistung Bestätigung"
|
1936 |
|
1937 |
# @ woocommerce-germanized
|
1938 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1939 |
msgid ""
|
1940 |
"This text will be appended to your order processing email if the order "
|
1941 |
"contains service products. Use placeholders {link}{/link} to insert link to "
|
@@ -1946,7 +2000,7 @@ msgstr ""
|
|
1946 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1947 |
|
1948 |
# @ woocommerce-germanized
|
1949 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1950 |
msgid ""
|
1951 |
"Furthermore you have expressly agreed to start the performance of the "
|
1952 |
"contract for services before expiry of the withdrawal period. I have noted "
|
@@ -1960,18 +2014,18 @@ msgstr ""
|
|
1960 |
"erlischt."
|
1961 |
|
1962 |
# @ woocommerce-germanized
|
1963 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1964 |
msgid "Parcel Delivery Checkbox"
|
1965 |
msgstr "Paketdienstleister Checkbox"
|
1966 |
|
1967 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1968 |
msgid ""
|
1969 |
"Show checkbox for data transmission to third party parcel service providers."
|
1970 |
msgstr ""
|
1971 |
"Checkbox zur Erlaubnis der Datenweitergabe an den Paketdienstleister "
|
1972 |
"einfügen."
|
1973 |
|
1974 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1975 |
msgid ""
|
1976 |
"You may optionally choose to show a checkbox which lets the customer accept "
|
1977 |
"data transmission to a third party parcel service provider to receive parcel "
|
@@ -1985,15 +2039,15 @@ msgstr ""
|
|
1985 |
"weitergeleitet werden. "
|
1986 |
|
1987 |
# @ woocommerce-germanized
|
1988 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1989 |
msgid "Checkbox required"
|
1990 |
msgstr "Checkbox verpflichtend"
|
1991 |
|
1992 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1993 |
msgid "Make the parcel delivery checkbox a required field."
|
1994 |
msgstr "Paketdienstleister Checkbox zum Pflichtfeld machen?"
|
1995 |
|
1996 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1997 |
msgid ""
|
1998 |
"For some reason you may want to force your customers to Opt-In to the data "
|
1999 |
"transmission to a third party parcel service provider."
|
@@ -2003,11 +2057,11 @@ msgstr ""
|
|
2003 |
"diese Option aus."
|
2004 |
|
2005 |
# @ woocommerce-germanized
|
2006 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2007 |
msgid "Parcel Delivery Text"
|
2008 |
msgstr "Paketdienstleister Text"
|
2009 |
|
2010 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2011 |
msgid ""
|
2012 |
"Choose a Plain Text which will be shown right next to the corresponding "
|
2013 |
"checkbox to inform the customer about the data being transfered to the third "
|
@@ -2019,7 +2073,7 @@ msgstr ""
|
|
2019 |
"den Paketdienstleister. Verwende den Platzhalter {shipping_method_title} um "
|
2020 |
"den Titel der Versandmethoden einzubetten."
|
2021 |
|
2022 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2023 |
#: includes/wc-gzd-cart-functions.php:388
|
2024 |
msgid ""
|
2025 |
"Yes, I would like to be reminded via E-mail about parcel delivery "
|
@@ -2031,26 +2085,26 @@ msgstr ""
|
|
2031 |
"wird nur für diesen einmaligen Zweck an unseren Paketdienstleister "
|
2032 |
"weitergegeben."
|
2033 |
|
2034 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2035 |
msgid "Select shipping methods which are applicable for the Opt-In Checkbox."
|
2036 |
msgstr ""
|
2037 |
"Wähle Versandmethoden aus für die die Paketdienstleister Checkbox angezeigt "
|
2038 |
"werden soll."
|
2039 |
|
2040 |
# @ woocommerce-germanized
|
2041 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2042 |
msgid "Pay now Button"
|
2043 |
msgstr "Jetzt bezahlen Button"
|
2044 |
|
2045 |
# @ woocommerce-germanized
|
2046 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2047 |
msgid "Add a pay now button to emails and order success page."
|
2048 |
msgstr ""
|
2049 |
"Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
|
2050 |
"hinzu."
|
2051 |
|
2052 |
# @ woocommerce-germanized
|
2053 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2054 |
msgid ""
|
2055 |
"Add a pay now button to order confirmation email and order success page if "
|
2056 |
"the order awaits payment (PayPal etc)."
|
@@ -2060,30 +2114,30 @@ msgstr ""
|
|
2060 |
"benötigt (z.B. per PayPal)."
|
2061 |
|
2062 |
# @ woocommerce-germanized
|
2063 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2064 |
msgid "Order Success Text"
|
2065 |
msgstr "Bestellung eingegangen"
|
2066 |
|
2067 |
# @ woocommerce-germanized
|
2068 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2069 |
msgid "Choose a custom text to display on order success page."
|
2070 |
msgstr ""
|
2071 |
"Hier kannst du einen individuellen kurzen Text eingeben, der nach der "
|
2072 |
"Bestellung ausgegeben wird."
|
2073 |
|
2074 |
# @ woocommerce-germanized
|
2075 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2076 |
msgid "Order Success Data"
|
2077 |
msgstr "Bestellbestätigungs-Daten"
|
2078 |
|
2079 |
# @ woocommerce-germanized
|
2080 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2081 |
msgid "Hide product table and customer data on order success page"
|
2082 |
msgstr ""
|
2083 |
"Produktdetails (Tabelle, Kundeninfos) von der Bestätigungsseite entfernen."
|
2084 |
|
2085 |
# @ woocommerce-germanized
|
2086 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2087 |
msgid ""
|
2088 |
"Sorry, but the new Virtual VAT rules cannot be applied to small business."
|
2089 |
msgstr ""
|
@@ -2668,8 +2722,8 @@ msgstr "jetzt upgraden"
|
|
2668 |
#: includes/api/class-wc-gzd-rest-customers-controller.php:92
|
2669 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:87
|
2670 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:94
|
2671 |
-
#: includes/class-wc-gzd-checkout.php:
|
2672 |
-
#: includes/class-wc-gzd-checkout.php:
|
2673 |
#: includes/class-wc-gzd-customer-helper.php:84
|
2674 |
#: includes/class-wc-gzd-customer-helper.php:91
|
2675 |
msgid "Title"
|
@@ -2918,9 +2972,10 @@ msgstr ""
|
|
2918 |
"Mail mit deinen Daten als Bestätigung."
|
2919 |
|
2920 |
# @ woocommerce-germanized
|
2921 |
-
#: includes/class-wc-gzd-checkout.php:
|
2922 |
-
#: includes/class-wc-gzd-checkout.php:
|
2923 |
-
#: includes/class-wc-gzd-checkout.php:
|
|
|
2924 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2925 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2926 |
#: includes/class-wc-gzd-revocation.php:41
|
@@ -2928,9 +2983,10 @@ msgid "Mr."
|
|
2928 |
msgstr "Herr"
|
2929 |
|
2930 |
# @ woocommerce-germanized
|
2931 |
-
#: includes/class-wc-gzd-checkout.php:
|
2932 |
-
#: includes/class-wc-gzd-checkout.php:
|
2933 |
-
#: includes/class-wc-gzd-checkout.php:
|
|
|
2934 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2935 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2936 |
#: includes/class-wc-gzd-revocation.php:42
|
@@ -2966,6 +3022,59 @@ msgstr "Vielen Dank. Dein Benutzerkonto wurde erfolgreich aktiviert."
|
|
2966 |
msgid "Sorry, but this activation code cannot be found."
|
2967 |
msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
|
2968 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2969 |
# @ woocommerce-germanized
|
2970 |
#: includes/class-wc-gzd-ekomi.php:55
|
2971 |
msgid "eKomi Customer"
|
@@ -3069,7 +3178,7 @@ msgid "eKomi Options"
|
|
3069 |
msgstr "eKomi"
|
3070 |
|
3071 |
# @ woocommerce-germanized
|
3072 |
-
#: includes/class-wc-gzd-emails.php:
|
3073 |
msgctxt "revocation-form"
|
3074 |
msgid "Forward your Revocation online"
|
3075 |
msgstr "Deinen Widerruf online erklären"
|
@@ -3334,8 +3443,8 @@ msgstr "Neuen Preishinweis anlegen"
|
|
3334 |
msgid "New Price Label Name"
|
3335 |
msgstr "Name des neuen Preishinweises"
|
3336 |
|
3337 |
-
#: includes/class-wc-gzd-product-variable.php:
|
3338 |
-
#: includes/class-wc-gzd-product-variable.php:
|
3339 |
#, php-format
|
3340 |
msgctxt "Price range: from-to"
|
3341 |
msgid "%1$s–%2$s"
|
@@ -3981,7 +4090,7 @@ msgstr ""
|
|
3981 |
# @ woocommerce-germanized
|
3982 |
# @ woocommerce
|
3983 |
#: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
|
3984 |
-
#: woocommerce-germanized.php:
|
3985 |
msgid "Settings"
|
3986 |
msgstr "Einstellungen"
|
3987 |
|
@@ -4916,6 +5025,18 @@ msgctxt "trusted-shops"
|
|
4916 |
msgid "%s custom reviews"
|
4917 |
msgstr "%s Kundenbewertungen"
|
4918 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4919 |
# @ woocommerce-germanized
|
4920 |
#~ msgid "Not found within your imprint"
|
4921 |
#~ msgstr "Nicht in deinem Impressum gefunden"
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: WooCommerce Germanized v1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2017-03-17 16:31+0100\n"
|
6 |
+
"PO-Revision-Date: 2017-03-17 18:37+0100\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
91 |
# @ woocommerce-germanized
|
92 |
#: includes/abstracts/abstract-wc-gzd-product.php:215
|
93 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
94 |
+
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:740
|
95 |
msgid "incl. VAT"
|
96 |
msgstr "inkl. MwSt."
|
97 |
|
103 |
# @ woocommerce-germanized
|
104 |
#: includes/abstracts/abstract-wc-gzd-product.php:217
|
105 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
106 |
+
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:740
|
107 |
#, php-format
|
108 |
msgid "incl. %s%% VAT"
|
109 |
msgstr "inkl. %s%% MwSt."
|
178 |
# @ woocommerce-germanized
|
179 |
#: includes/admin/class-wc-gzd-admin-status.php:43
|
180 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:280
|
181 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1134
|
182 |
msgid "Shipping Methods"
|
183 |
msgstr "Versandarten"
|
184 |
|
1503 |
msgid "Checkout & Cart"
|
1504 |
msgstr "Checkout & Warenkorb"
|
1505 |
|
|
|
1506 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:891
|
1507 |
+
msgid "DHL Parcel Shops"
|
1508 |
+
msgstr "DHL Packstationen"
|
1509 |
+
|
1510 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:892
|
1511 |
+
msgid ""
|
1512 |
+
"Allow customers to choose a DHL parcel shop or packing station as delivery "
|
1513 |
+
"address."
|
1514 |
+
msgstr "Versand an DHL Packstation bzw. Paketshops aktivieren."
|
1515 |
+
|
1516 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:896
|
1517 |
+
msgid ""
|
1518 |
+
"This option adds a checkbox to your checkout shipping fields which allows "
|
1519 |
+
"the customer to optionally choose a DHL packing station or parcel shop for "
|
1520 |
+
"delivery. A PostNumber is required."
|
1521 |
+
msgstr ""
|
1522 |
+
"Diese Option fügt eine Checkbox in der Kasse (Versandadresse) ein. Hier kann "
|
1523 |
+
"der Kunde optional die Lieferung an eine Packstation aktivieren. Fall das "
|
1524 |
+
"der Fall ist, muss eine PostNummer angegeben werden."
|
1525 |
+
|
1526 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:900
|
1527 |
+
msgid "Supported Countries"
|
1528 |
+
msgstr "Unterstützte Länder"
|
1529 |
+
|
1530 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:904
|
1531 |
+
msgid "Choose countries which support Parcel Shop delivery."
|
1532 |
+
msgstr ""
|
1533 |
+
"Wähle hier die Länder an, in denen du die Lieferung an DHL Packstationen "
|
1534 |
+
"bzw. Paketshops aktivieren möchtest."
|
1535 |
+
|
1536 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:908
|
1537 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:237
|
1538 |
+
msgid "Parcel Shop Finder"
|
1539 |
+
msgstr "Paketshop finden"
|
1540 |
+
|
1541 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:909
|
1542 |
+
msgid ""
|
1543 |
+
"Enable DHL Parcel Shop Finder to let customers choose a parcel shop nearby."
|
1544 |
+
msgstr "Standortsuche nach der nächstgelegenen Packstation aktivieren."
|
1545 |
+
|
1546 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:913
|
1547 |
+
#, php-format
|
1548 |
+
msgid ""
|
1549 |
+
"You may enable this option to add a <a href=\"%s\" target=\"_blank\">Parcel "
|
1550 |
+
"Shop Finder</a> to your checkout. Adds an link next to the checkbox. The "
|
1551 |
+
"finder (DHL API) opens in an overlay and lets the customer find and choose a "
|
1552 |
+
"parcel shop or packing station nearby."
|
1553 |
+
msgstr ""
|
1554 |
+
"Aktiviere diese Option um die <a href=\"%s\" target=\"_blank"
|
1555 |
+
"\">Standortsuche</a> zu aktivieren. Diese Option fügt einen Link neben der "
|
1556 |
+
"Checkbox ein bei dessen Klick, die Suche (DHL API) in einer Lightbox "
|
1557 |
+
"geöffnet wird. Der Kunde kann eine Packstation bzw. einen Paketshop seiner "
|
1558 |
+
"Nähe auswählen und die Daten automatisch übernehmen."
|
1559 |
+
|
1560 |
+
# @ woocommerce-germanized
|
1561 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:917
|
1562 |
#: includes/admin/views/html-page-status-germanized.php:55
|
1563 |
msgid "Fallback Mode"
|
1564 |
msgstr "Fallback Modus"
|
1565 |
|
1566 |
# @ woocommerce-germanized
|
1567 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:918
|
1568 |
msgid ""
|
1569 |
"Enable to make sure default checkout template is not being overriden by "
|
1570 |
"theme."
|
1572 |
"Überschreiben relevanter Templates im Checkout durch dein Theme verhindern."
|
1573 |
|
1574 |
# @ woocommerce-germanized
|
1575 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:922
|
1576 |
msgid ""
|
1577 |
"If you are facing problems within your checkout e.g. legally relevant data "
|
1578 |
"is not showing (terms, delivery time, unit price etc.) your theme seems to "
|
1586 |
"Checkout (review-order.php und form-checkout.php) zu überschreiben. "
|
1587 |
|
1588 |
# @ woocommerce-germanized
|
1589 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:926
|
1590 |
msgid "Force free shipping"
|
1591 |
msgstr "Versandmethode erzwingen"
|
1592 |
|
1593 |
# @ woocommerce-germanized
|
1594 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:927
|
1595 |
msgid "Force free shipping method if available?"
|
1596 |
msgstr "Kostenlosen Versand erzwingen wenn die Methode zur Verfügung steht?"
|
1597 |
|
1598 |
# @ woocommerce-germanized
|
1599 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:931
|
1600 |
msgid ""
|
1601 |
"By default WooCommerce will let customers choose other shipping methods than "
|
1602 |
"free shipping (if available). This option will force free shipping if "
|
1607 |
"Versand, sobald dieser verfügbar ist."
|
1608 |
|
1609 |
# @ woocommerce-germanized
|
1610 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:935
|
1611 |
msgid "Hide taxes estimated"
|
1612 |
msgstr "Hinweis \"Steuern geschätzt\""
|
1613 |
|
1614 |
# @ woocommerce-germanized
|
1615 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:936
|
1616 |
msgid ""
|
1617 |
"Do you want to hide the \"taxes and shipping estimated\" text from your cart?"
|
1618 |
msgstr "Den Hinweis \"Versandkosten und Steuern werden geschätzt\" entfernen?"
|
1619 |
|
1620 |
# @ woocommerce-germanized
|
1621 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:940
|
1622 |
msgid ""
|
1623 |
"By default WooCommerce adds a \"taxes and shipping estimated\" text to your "
|
1624 |
"cart. This might puzzle your customers and may not meet german law."
|
1628 |
"Markt geeignet."
|
1629 |
|
1630 |
# @ woocommerce-germanized
|
1631 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:944
|
1632 |
msgid "Show Thumbnails"
|
1633 |
msgstr "Thumbnails anzeigen"
|
1634 |
|
1635 |
# @ woocommerce-germanized
|
1636 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:945
|
1637 |
msgid "Show product thumbnails on checkout page?"
|
1638 |
msgstr "Produktbilder im Checkout darstellen?"
|
1639 |
|
1640 |
# @ woocommerce-germanized
|
1641 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:949
|
1642 |
msgid ""
|
1643 |
"Uncheck if you don't want to show your product thumbnails within checkout "
|
1644 |
"table."
|
1647 |
"bekommen möchtest."
|
1648 |
|
1649 |
# @ woocommerce-germanized
|
1650 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:953
|
1651 |
msgid "Hide Shipping Select"
|
1652 |
msgstr "Versandarten Auswahl"
|
1653 |
|
1654 |
# @ woocommerce-germanized
|
1655 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:954
|
1656 |
msgid "Hide shipping rate selection from checkout?"
|
1657 |
msgstr "Die Auswahl von Versandarten im Checkout deaktivieren?"
|
1658 |
|
1659 |
# @ woocommerce-germanized
|
1660 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:958
|
1661 |
msgid ""
|
1662 |
"This option will hide shipping rate selection from checkout. By then "
|
1663 |
"customers will only be able to change their shipping rate on cart page."
|
1667 |
"Versandmethode ändern."
|
1668 |
|
1669 |
# @ woocommerce-germanized
|
1670 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:962
|
1671 |
msgid "Show back to cart button"
|
1672 |
msgstr "Bestellung bearbeiten"
|
1673 |
|
1674 |
# @ woocommerce-germanized
|
1675 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:963
|
1676 |
msgid "Show back to cart button within your checkout table?"
|
1677 |
msgstr ""
|
1678 |
"Einen \"Bestellung bearbeiten\" Button in der Bestellübersicht anzeigen?"
|
1679 |
|
1680 |
# @ woocommerce-germanized
|
1681 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:967
|
1682 |
msgid ""
|
1683 |
"This button may let your customer edit their order before submitting. Some "
|
1684 |
"people state that this button should be hidden to avoid legal problems."
|
1690 |
"keine weitere Informationen abgedruckt werden sollten."
|
1691 |
|
1692 |
# @ woocommerce-germanized
|
1693 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:971
|
1694 |
msgid "Show edit data notice"
|
1695 |
msgstr "Bestellung prüfen Hinweis"
|
1696 |
|
1697 |
# @ woocommerce-germanized
|
1698 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:972
|
1699 |
msgid "Show a \"check-your-entries\" notice to the user?"
|
1700 |
msgstr "Einen \"Bestellung prüfen\" Hinweis anzeigen?"
|
1701 |
|
1702 |
# @ woocommerce-germanized
|
1703 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:976
|
1704 |
msgid "This notice will be added right before the order comments field."
|
1705 |
msgstr ""
|
1706 |
"Dieser Hinweis wird direkt oberhalb des Bestellhinweise-Feldes eingefügt."
|
1707 |
|
1708 |
# @ woocommerce-germanized
|
1709 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:980
|
1710 |
msgid "Checkout Table Color"
|
1711 |
msgstr "Hintergrundfarbe der Tabelle"
|
1712 |
|
1713 |
# @ woocommerce-germanized
|
1714 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:982
|
1715 |
msgid ""
|
1716 |
"Choose the color of your checkout product table. This table should be "
|
1717 |
"highlighted within your checkout page."
|
1720 |
"Tabelle sollte sich farblich vom Rest des Inhalts abheben."
|
1721 |
|
1722 |
# @ woocommerce-germanized
|
1723 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:988
|
1724 |
msgid "Checkout Legal Display"
|
1725 |
msgstr "Checkbox oder Text"
|
1726 |
|
1727 |
# @ woocommerce-germanized
|
1728 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:989
|
1729 |
msgid "Use Text without Checkbox"
|
1730 |
msgstr "Rechtshinweis ohne Checkbox."
|
1731 |
|
1732 |
# @ woocommerce-germanized
|
1733 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:991
|
1734 |
msgid ""
|
1735 |
"This version will remove checkboxes from Checkout and display a text "
|
1736 |
"instead. This seems to be legally compliant (Zalando & Co are using this "
|
1741 |
"diese Form)"
|
1742 |
|
1743 |
# @ woocommerce-germanized
|
1744 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:997
|
1745 |
msgid "Legal Text"
|
1746 |
msgstr "Rechtlicher Hinweistext"
|
1747 |
|
1748 |
# @ woocommerce-germanized
|
1749 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:998
|
1750 |
msgid ""
|
1751 |
"Choose a Plain Text which will be shown right above checkout submit button. "
|
1752 |
"Use {term_link}{/term_link}, {data_security_link}{/data_security_link}, "
|
1759 |
"revocation_link} um die jeweiligen Links zu den Seiten einzufügen."
|
1760 |
|
1761 |
# @ woocommerce-germanized
|
1762 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1000
|
1763 |
msgid ""
|
1764 |
"With your order, you agree to have read and understood our {term_link}Terms "
|
1765 |
"and Conditions{/term_link} and your {revocation_link}Right of Recission{/"
|
1770 |
"revocation_link} einverstanden."
|
1771 |
|
1772 |
# @ woocommerce-germanized
|
1773 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1007
|
1774 |
msgid "Legal Text Error"
|
1775 |
msgstr "Fehlermeldung der Checkbox"
|
1776 |
|
1777 |
# @ woocommerce-germanized
|
1778 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1008
|
1779 |
msgid ""
|
1780 |
"If you have chosen to use checkbox validation please choose a error message "
|
1781 |
"which will be shown if the user doesn't check checkbox. Use {term_link}{/"
|
1790 |
"revocation_link}"
|
1791 |
|
1792 |
# @ woocommerce-germanized
|
1793 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1010
|
1794 |
msgid ""
|
1795 |
"To finish the order you have to accept to our {term_link}Terms and "
|
1796 |
"Conditions{/term_link} and {revocation_link}Right of Recission{/"
|
1800 |
"term_link} und {revocation_link}Widerrufsbestimmungen{/revocation_link}."
|
1801 |
|
1802 |
# @ woocommerce-germanized
|
1803 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1017
|
1804 |
msgid "Show digital notice"
|
1805 |
msgstr "Checkbox digitale Produkte"
|
1806 |
|
1807 |
# @ woocommerce-germanized
|
1808 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1018
|
1809 |
msgid "Show checkbox for digital products."
|
1810 |
msgstr "Checkbox bei digitalen Produkten anzeigen."
|
1811 |
|
1812 |
# @ woocommerce-germanized
|
1813 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1019
|
1814 |
msgid ""
|
1815 |
"Disable this option if you want your customers to obtain their right of "
|
1816 |
"recission even if digital products are being bought."
|
1820 |
"werden, dass im Falle von digitalen Produkten das Widerrufsrecht erlischt."
|
1821 |
|
1822 |
# @ woocommerce-germanized
|
1823 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1026
|
1824 |
msgid "Digital Product types"
|
1825 |
msgstr "Digitale Produkttypen"
|
1826 |
|
1827 |
# @ woocommerce-germanized
|
1828 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1027
|
1829 |
msgid ""
|
1830 |
"Select product types for which the loss of recission notice is shown. "
|
1831 |
"Product types like \"simple product\" may be redudant because they include "
|
1837 |
"einschließen."
|
1838 |
|
1839 |
# @ woocommerce-germanized
|
1840 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1037
|
1841 |
msgid "Legal Digital Text"
|
1842 |
msgstr "Hinweis Digital"
|
1843 |
|
1844 |
# @ woocommerce-germanized
|
1845 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1038
|
1846 |
msgid ""
|
1847 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1848 |
"if a user has picked a digital product. See legal text option for possible "
|
1853 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext"
|
1854 |
|
1855 |
# @ woocommerce-germanized
|
1856 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1040
|
1857 |
msgid ""
|
1858 |
"For digital products: I strongly agree that the execution of the agreement "
|
1859 |
"starts before the revocation period has expired. I am aware that my right of "
|
1864 |
"bekannt, dass mit Beginn der Ausführung mein Widerrufsrecht erlischt."
|
1865 |
|
1866 |
# @ woocommerce-germanized
|
1867 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1047
|
1868 |
msgid "Legal Digital Error"
|
1869 |
msgstr "Fehlermeldung Digital"
|
1870 |
|
1871 |
# @ woocommerce-germanized
|
1872 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1048
|
1873 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1087
|
1874 |
msgid ""
|
1875 |
"This text will be shown as error message if customer has not checked the "
|
1876 |
"corresponding checkbox. See legal text option for possible placeholders."
|
1880 |
"Hinweistext für eine Liste der Platzhalter."
|
1881 |
|
1882 |
# @ woocommerce-germanized
|
1883 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1050
|
1884 |
#: includes/wc-gzd-cart-functions.php:317
|
1885 |
msgid ""
|
1886 |
"To retrieve direct access to digital content you have to agree to the loss "
|
1890 |
"Widerrufsrecht verzichten."
|
1891 |
|
1892 |
# @ woocommerce-germanized
|
1893 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1057
|
1894 |
msgid "Digital Confirmation Notice"
|
1895 |
msgstr "Digitale Bestätigung"
|
1896 |
|
1897 |
# @ woocommerce-germanized
|
1898 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1058
|
1899 |
msgid ""
|
1900 |
"This text will be appended to your order processing email if the order "
|
1901 |
"contains digital products. Use placeholders {link}{/link} to insert link to "
|
1906 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1907 |
|
1908 |
# @ woocommerce-germanized
|
1909 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1061
|
1910 |
msgid ""
|
1911 |
"Furthermore you have expressly agreed to start the performance of the "
|
1912 |
"contract for digital items (e.g. downloads) before expiry of the withdrawal "
|
1920 |
"verlieren."
|
1921 |
|
1922 |
# @ woocommerce-germanized
|
1923 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1067
|
1924 |
msgid "Show service notice"
|
1925 |
msgstr "Checkbox Dienstleistungen"
|
1926 |
|
1927 |
# @ woocommerce-germanized
|
1928 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1068
|
1929 |
msgid "Show checkbox for service products."
|
1930 |
msgstr "Checkbox bei Dienstleistungen anzeigen."
|
1931 |
|
1932 |
# @ woocommerce-germanized
|
1933 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1069
|
1934 |
msgid ""
|
1935 |
"Disable this option if you want your customers to obtain their right of "
|
1936 |
"recission even if service products are being bought."
|
1941 |
"Widerrufsfrist mit der Dienstleistung begonnen wird."
|
1942 |
|
1943 |
# @ woocommerce-germanized
|
1944 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1076
|
1945 |
msgid "Legal Service Text"
|
1946 |
msgstr "Hinweis Dienstleistungen"
|
1947 |
|
1948 |
# @ woocommerce-germanized
|
1949 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1077
|
1950 |
msgid ""
|
1951 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1952 |
"if a user has picked a service product. See legal text option for possible "
|
1957 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext."
|
1958 |
|
1959 |
# @ woocommerce-germanized
|
1960 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1079
|
1961 |
#: includes/wc-gzd-cart-functions.php:339
|
1962 |
msgid ""
|
1963 |
"For services: I demand and acknowledge the immediate performance of the "
|
1970 |
"vollständiger Erfüllung des Vertrages erlischt."
|
1971 |
|
1972 |
# @ woocommerce-germanized
|
1973 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1086
|
1974 |
msgid "Legal Service Error"
|
1975 |
msgstr "Fehlermeldung"
|
1976 |
|
1977 |
# @ woocommerce-germanized
|
1978 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1089
|
1979 |
#: includes/wc-gzd-cart-functions.php:348
|
1980 |
msgid ""
|
1981 |
"To allow the immediate performance of the services you have to agree to the "
|
1984 |
"Bitte stimme dem Beginn der Dienstleistung vor Ablauf der Widerrufsfrist zu."
|
1985 |
|
1986 |
# @ woocommerce-germanized
|
1987 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1096
|
1988 |
msgid "Service Confirmation Notice"
|
1989 |
msgstr "Dienstleistung Bestätigung"
|
1990 |
|
1991 |
# @ woocommerce-germanized
|
1992 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1097
|
1993 |
msgid ""
|
1994 |
"This text will be appended to your order processing email if the order "
|
1995 |
"contains service products. Use placeholders {link}{/link} to insert link to "
|
2000 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
2001 |
|
2002 |
# @ woocommerce-germanized
|
2003 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1100
|
2004 |
msgid ""
|
2005 |
"Furthermore you have expressly agreed to start the performance of the "
|
2006 |
"contract for services before expiry of the withdrawal period. I have noted "
|
2014 |
"erlischt."
|
2015 |
|
2016 |
# @ woocommerce-germanized
|
2017 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1106
|
2018 |
msgid "Parcel Delivery Checkbox"
|
2019 |
msgstr "Paketdienstleister Checkbox"
|
2020 |
|
2021 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1107
|
2022 |
msgid ""
|
2023 |
"Show checkbox for data transmission to third party parcel service providers."
|
2024 |
msgstr ""
|
2025 |
"Checkbox zur Erlaubnis der Datenweitergabe an den Paketdienstleister "
|
2026 |
"einfügen."
|
2027 |
|
2028 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1108
|
2029 |
msgid ""
|
2030 |
"You may optionally choose to show a checkbox which lets the customer accept "
|
2031 |
"data transmission to a third party parcel service provider to receive parcel "
|
2039 |
"weitergeleitet werden. "
|
2040 |
|
2041 |
# @ woocommerce-germanized
|
2042 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1115
|
2043 |
msgid "Checkbox required"
|
2044 |
msgstr "Checkbox verpflichtend"
|
2045 |
|
2046 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1116
|
2047 |
msgid "Make the parcel delivery checkbox a required field."
|
2048 |
msgstr "Paketdienstleister Checkbox zum Pflichtfeld machen?"
|
2049 |
|
2050 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1117
|
2051 |
msgid ""
|
2052 |
"For some reason you may want to force your customers to Opt-In to the data "
|
2053 |
"transmission to a third party parcel service provider."
|
2057 |
"diese Option aus."
|
2058 |
|
2059 |
# @ woocommerce-germanized
|
2060 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1124
|
2061 |
msgid "Parcel Delivery Text"
|
2062 |
msgstr "Paketdienstleister Text"
|
2063 |
|
2064 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1125
|
2065 |
msgid ""
|
2066 |
"Choose a Plain Text which will be shown right next to the corresponding "
|
2067 |
"checkbox to inform the customer about the data being transfered to the third "
|
2073 |
"den Paketdienstleister. Verwende den Platzhalter {shipping_method_title} um "
|
2074 |
"den Titel der Versandmethoden einzubetten."
|
2075 |
|
2076 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1127
|
2077 |
#: includes/wc-gzd-cart-functions.php:388
|
2078 |
msgid ""
|
2079 |
"Yes, I would like to be reminded via E-mail about parcel delivery "
|
2085 |
"wird nur für diesen einmaligen Zweck an unseren Paketdienstleister "
|
2086 |
"weitergegeben."
|
2087 |
|
2088 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1135
|
2089 |
msgid "Select shipping methods which are applicable for the Opt-In Checkbox."
|
2090 |
msgstr ""
|
2091 |
"Wähle Versandmethoden aus für die die Paketdienstleister Checkbox angezeigt "
|
2092 |
"werden soll."
|
2093 |
|
2094 |
# @ woocommerce-germanized
|
2095 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1145
|
2096 |
msgid "Pay now Button"
|
2097 |
msgstr "Jetzt bezahlen Button"
|
2098 |
|
2099 |
# @ woocommerce-germanized
|
2100 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1146
|
2101 |
msgid "Add a pay now button to emails and order success page."
|
2102 |
msgstr ""
|
2103 |
"Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
|
2104 |
"hinzu."
|
2105 |
|
2106 |
# @ woocommerce-germanized
|
2107 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1147
|
2108 |
msgid ""
|
2109 |
"Add a pay now button to order confirmation email and order success page if "
|
2110 |
"the order awaits payment (PayPal etc)."
|
2114 |
"benötigt (z.B. per PayPal)."
|
2115 |
|
2116 |
# @ woocommerce-germanized
|
2117 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1154
|
2118 |
msgid "Order Success Text"
|
2119 |
msgstr "Bestellung eingegangen"
|
2120 |
|
2121 |
# @ woocommerce-germanized
|
2122 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1155
|
2123 |
msgid "Choose a custom text to display on order success page."
|
2124 |
msgstr ""
|
2125 |
"Hier kannst du einen individuellen kurzen Text eingeben, der nach der "
|
2126 |
"Bestellung ausgegeben wird."
|
2127 |
|
2128 |
# @ woocommerce-germanized
|
2129 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1163
|
2130 |
msgid "Order Success Data"
|
2131 |
msgstr "Bestellbestätigungs-Daten"
|
2132 |
|
2133 |
# @ woocommerce-germanized
|
2134 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1164
|
2135 |
msgid "Hide product table and customer data on order success page"
|
2136 |
msgstr ""
|
2137 |
"Produktdetails (Tabelle, Kundeninfos) von der Bestätigungsseite entfernen."
|
2138 |
|
2139 |
# @ woocommerce-germanized
|
2140 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1272
|
2141 |
msgid ""
|
2142 |
"Sorry, but the new Virtual VAT rules cannot be applied to small business."
|
2143 |
msgstr ""
|
2722 |
#: includes/api/class-wc-gzd-rest-customers-controller.php:92
|
2723 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:87
|
2724 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:94
|
2725 |
+
#: includes/class-wc-gzd-checkout.php:256
|
2726 |
+
#: includes/class-wc-gzd-checkout.php:266
|
2727 |
#: includes/class-wc-gzd-customer-helper.php:84
|
2728 |
#: includes/class-wc-gzd-customer-helper.php:91
|
2729 |
msgid "Title"
|
2972 |
"Mail mit deinen Daten als Bestätigung."
|
2973 |
|
2974 |
# @ woocommerce-germanized
|
2975 |
+
#: includes/class-wc-gzd-checkout.php:257
|
2976 |
+
#: includes/class-wc-gzd-checkout.php:265
|
2977 |
+
#: includes/class-wc-gzd-checkout.php:290
|
2978 |
+
#: includes/class-wc-gzd-checkout.php:424
|
2979 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2980 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2981 |
#: includes/class-wc-gzd-revocation.php:41
|
2983 |
msgstr "Herr"
|
2984 |
|
2985 |
# @ woocommerce-germanized
|
2986 |
+
#: includes/class-wc-gzd-checkout.php:257
|
2987 |
+
#: includes/class-wc-gzd-checkout.php:265
|
2988 |
+
#: includes/class-wc-gzd-checkout.php:291
|
2989 |
+
#: includes/class-wc-gzd-checkout.php:424
|
2990 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2991 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2992 |
#: includes/class-wc-gzd-revocation.php:42
|
3022 |
msgid "Sorry, but this activation code cannot be found."
|
3023 |
msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
|
3024 |
|
3025 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:99
|
3026 |
+
msgid "Send to DHL Parcel Shop?"
|
3027 |
+
msgstr "An DHL Paketshop oder Packstation senden?"
|
3028 |
+
|
3029 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:108
|
3030 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:127
|
3031 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:141
|
3032 |
+
msgid "Postnumber"
|
3033 |
+
msgstr "PostNummer"
|
3034 |
+
|
3035 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:120
|
3036 |
+
msgid "DHL Parcel Shop?"
|
3037 |
+
msgstr "DHL Paketshop/Packstation?"
|
3038 |
+
|
3039 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:122
|
3040 |
+
msgid "No"
|
3041 |
+
msgstr "Nein"
|
3042 |
+
|
3043 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:122
|
3044 |
+
msgid "Yes"
|
3045 |
+
msgstr "Ja"
|
3046 |
+
|
3047 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:123
|
3048 |
+
msgid "Select whether delivery to parcel shop should be enabled."
|
3049 |
+
msgstr ""
|
3050 |
+
"Wähle aus ob die Lieferung an DHL Paketshops bzw. Packstationen aktiviert "
|
3051 |
+
"werden soll."
|
3052 |
+
|
3053 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:129
|
3054 |
+
msgid ""
|
3055 |
+
"In case delivery to parcel shop is enabled please fill in the corresponding "
|
3056 |
+
"DHL post number."
|
3057 |
+
msgstr ""
|
3058 |
+
"Wenn die Lieferung an eine DHL Packstation aktiviert wurde, trage bitte die "
|
3059 |
+
"PostNummer ein."
|
3060 |
+
|
3061 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:162
|
3062 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:213
|
3063 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:214
|
3064 |
+
msgid "Parcel Shop"
|
3065 |
+
msgstr "Shop/Packstation"
|
3066 |
+
|
3067 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:181
|
3068 |
+
msgid "Your PostNumber should contain numbers only"
|
3069 |
+
msgstr "Deine PostNummer sollte nur aus Zahlen bestehen."
|
3070 |
+
|
3071 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:187
|
3072 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:220
|
3073 |
+
#, php-format
|
3074 |
+
msgid "Parcel Shop Delivery is only supported in: %s."
|
3075 |
+
msgstr ""
|
3076 |
+
"Die Lieferung in Paketshops bzw. Packstationen ist nur in %s verfügbar."
|
3077 |
+
|
3078 |
# @ woocommerce-germanized
|
3079 |
#: includes/class-wc-gzd-ekomi.php:55
|
3080 |
msgid "eKomi Customer"
|
3178 |
msgstr "eKomi"
|
3179 |
|
3180 |
# @ woocommerce-germanized
|
3181 |
+
#: includes/class-wc-gzd-emails.php:407
|
3182 |
msgctxt "revocation-form"
|
3183 |
msgid "Forward your Revocation online"
|
3184 |
msgstr "Deinen Widerruf online erklären"
|
3443 |
msgid "New Price Label Name"
|
3444 |
msgstr "Name des neuen Preishinweises"
|
3445 |
|
3446 |
+
#: includes/class-wc-gzd-product-variable.php:127
|
3447 |
+
#: includes/class-wc-gzd-product-variable.php:132
|
3448 |
#, php-format
|
3449 |
msgctxt "Price range: from-to"
|
3450 |
msgid "%1$s–%2$s"
|
4090 |
# @ woocommerce-germanized
|
4091 |
# @ woocommerce
|
4092 |
#: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
|
4093 |
+
#: woocommerce-germanized.php:548
|
4094 |
msgid "Settings"
|
4095 |
msgstr "Einstellungen"
|
4096 |
|
5025 |
msgid "%s custom reviews"
|
5026 |
msgstr "%s Kundenbewertungen"
|
5027 |
|
5028 |
+
#~ msgid ""
|
5029 |
+
#~ "You may enable this option to add a <a href=\"%s\">Parcel Shop Finder</a> "
|
5030 |
+
#~ "to your checkout. Adds an link next to the checkbox. The finder (DHL API) "
|
5031 |
+
#~ "opens in an overlay and lets the customer find and choose a parcel shop "
|
5032 |
+
#~ "or packing station nearby."
|
5033 |
+
#~ msgstr ""
|
5034 |
+
#~ "Aktiviere diese Option um die <a href=\"%s\">Standortsuche</a> zu "
|
5035 |
+
#~ "aktivieren. Diese Option fügt einen Link neben der Checkbox ein bei "
|
5036 |
+
#~ "dessen Klick, die Suche (DHL API) in einer Lightbox geöffnet wird. Der "
|
5037 |
+
#~ "Kunde kann eine Packstation bzw. einen Paketshop seiner Nähe auswählen "
|
5038 |
+
#~ "und die Daten automatisch übernehmen."
|
5039 |
+
|
5040 |
# @ woocommerce-germanized
|
5041 |
#~ msgid "Not found within your imprint"
|
5042 |
#~ msgstr "Nicht in deinem Impressum gefunden"
|
i18n/languages/woocommerce-germanized-de_DE_formal.mo
CHANGED
Binary file
|
i18n/languages/woocommerce-germanized-de_DE_formal.po
CHANGED
@@ -2,8 +2,8 @@ msgid ""
|
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: WooCommerce Germanized v1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
-
"POT-Creation-Date: 2017-03-
|
6 |
-
"PO-Revision-Date: 2017-03-
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
@@ -91,7 +91,7 @@ msgstr "l"
|
|
91 |
# @ woocommerce-germanized
|
92 |
#: includes/abstracts/abstract-wc-gzd-product.php:215
|
93 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
94 |
-
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:
|
95 |
msgid "incl. VAT"
|
96 |
msgstr "inkl. MwSt."
|
97 |
|
@@ -103,7 +103,7 @@ msgstr "exkl. MwSt."
|
|
103 |
# @ woocommerce-germanized
|
104 |
#: includes/abstracts/abstract-wc-gzd-product.php:217
|
105 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
106 |
-
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:
|
107 |
#, php-format
|
108 |
msgid "incl. %s%% VAT"
|
109 |
msgstr "inkl. %s%% MwSt."
|
@@ -178,7 +178,7 @@ msgstr "Zahlungarten"
|
|
178 |
# @ woocommerce-germanized
|
179 |
#: includes/admin/class-wc-gzd-admin-status.php:43
|
180 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:280
|
181 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
182 |
msgid "Shipping Methods"
|
183 |
msgstr "Versandarten"
|
184 |
|
@@ -194,7 +194,7 @@ msgid "Welcome to WooCommerce Germanized"
|
|
194 |
msgstr "Willkommen bei WooCommerce Germanized"
|
195 |
|
196 |
# @ woocommerce-germanized
|
197 |
-
#: includes/admin/class-wc-gzd-admin-welcome.php:
|
198 |
msgid "Go to WooCommerce Germanized Settings"
|
199 |
msgstr "zu den WooCommerce Germanized Einstellungen"
|
200 |
|
@@ -1503,14 +1503,68 @@ msgstr "Produkt enthält: {product_units} {unit}"
|
|
1503 |
msgid "Checkout & Cart"
|
1504 |
msgstr "Checkout & Warenkorb"
|
1505 |
|
1506 |
-
# @ woocommerce-germanized
|
1507 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:891
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1508 |
#: includes/admin/views/html-page-status-germanized.php:55
|
1509 |
msgid "Fallback Mode"
|
1510 |
msgstr "Fallback Modus"
|
1511 |
|
1512 |
# @ woocommerce-germanized
|
1513 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1514 |
msgid ""
|
1515 |
"Enable to make sure default checkout template is not being overriden by "
|
1516 |
"theme."
|
@@ -1518,7 +1572,7 @@ msgstr ""
|
|
1518 |
"Überschreiben relevanter Templates im Checkout durch dein Theme verhindern."
|
1519 |
|
1520 |
# @ woocommerce-germanized
|
1521 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1522 |
msgid ""
|
1523 |
"If you are facing problems within your checkout e.g. legally relevant data "
|
1524 |
"is not showing (terms, delivery time, unit price etc.) your theme seems to "
|
@@ -1532,17 +1586,17 @@ msgstr ""
|
|
1532 |
"Checkout (review-order.php und form-checkout.php) zu überschreiben. "
|
1533 |
|
1534 |
# @ woocommerce-germanized
|
1535 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1536 |
msgid "Force free shipping"
|
1537 |
msgstr "Versandmethode erzwingen"
|
1538 |
|
1539 |
# @ woocommerce-germanized
|
1540 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1541 |
msgid "Force free shipping method if available?"
|
1542 |
msgstr "Kostenlosen Versand erzwingen wenn die Methode zur Verfügung steht?"
|
1543 |
|
1544 |
# @ woocommerce-germanized
|
1545 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1546 |
msgid ""
|
1547 |
"By default WooCommerce will let customers choose other shipping methods than "
|
1548 |
"free shipping (if available). This option will force free shipping if "
|
@@ -1553,18 +1607,18 @@ msgstr ""
|
|
1553 |
"Versand, sobald dieser verfügbar ist."
|
1554 |
|
1555 |
# @ woocommerce-germanized
|
1556 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1557 |
msgid "Hide taxes estimated"
|
1558 |
msgstr "Hinweis \"Steuern geschätzt\""
|
1559 |
|
1560 |
# @ woocommerce-germanized
|
1561 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1562 |
msgid ""
|
1563 |
"Do you want to hide the \"taxes and shipping estimated\" text from your cart?"
|
1564 |
msgstr "Den Hinweis \"Versandkosten und Steuern werden geschätzt\" entfernen?"
|
1565 |
|
1566 |
# @ woocommerce-germanized
|
1567 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1568 |
msgid ""
|
1569 |
"By default WooCommerce adds a \"taxes and shipping estimated\" text to your "
|
1570 |
"cart. This might puzzle your customers and may not meet german law."
|
@@ -1574,17 +1628,17 @@ msgstr ""
|
|
1574 |
"Markt geeignet."
|
1575 |
|
1576 |
# @ woocommerce-germanized
|
1577 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1578 |
msgid "Show Thumbnails"
|
1579 |
msgstr "Thumbnails anzeigen"
|
1580 |
|
1581 |
# @ woocommerce-germanized
|
1582 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1583 |
msgid "Show product thumbnails on checkout page?"
|
1584 |
msgstr "Produktbilder im Checkout darstellen?"
|
1585 |
|
1586 |
# @ woocommerce-germanized
|
1587 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1588 |
msgid ""
|
1589 |
"Uncheck if you don't want to show your product thumbnails within checkout "
|
1590 |
"table."
|
@@ -1593,17 +1647,17 @@ msgstr ""
|
|
1593 |
"bekommen möchtest."
|
1594 |
|
1595 |
# @ woocommerce-germanized
|
1596 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1597 |
msgid "Hide Shipping Select"
|
1598 |
msgstr "Versandarten Auswahl"
|
1599 |
|
1600 |
# @ woocommerce-germanized
|
1601 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1602 |
msgid "Hide shipping rate selection from checkout?"
|
1603 |
msgstr "Die Auswahl von Versandarten im Checkout deaktivieren?"
|
1604 |
|
1605 |
# @ woocommerce-germanized
|
1606 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1607 |
msgid ""
|
1608 |
"This option will hide shipping rate selection from checkout. By then "
|
1609 |
"customers will only be able to change their shipping rate on cart page."
|
@@ -1613,18 +1667,18 @@ msgstr ""
|
|
1613 |
"Versandmethode ändern."
|
1614 |
|
1615 |
# @ woocommerce-germanized
|
1616 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1617 |
msgid "Show back to cart button"
|
1618 |
msgstr "Bestellung bearbeiten"
|
1619 |
|
1620 |
# @ woocommerce-germanized
|
1621 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1622 |
msgid "Show back to cart button within your checkout table?"
|
1623 |
msgstr ""
|
1624 |
"Einen \"Bestellung bearbeiten\" Button in der Bestellübersicht anzeigen?"
|
1625 |
|
1626 |
# @ woocommerce-germanized
|
1627 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1628 |
msgid ""
|
1629 |
"This button may let your customer edit their order before submitting. Some "
|
1630 |
"people state that this button should be hidden to avoid legal problems."
|
@@ -1636,28 +1690,28 @@ msgstr ""
|
|
1636 |
"keine weitere Informationen abgedruckt werden sollten."
|
1637 |
|
1638 |
# @ woocommerce-germanized
|
1639 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1640 |
msgid "Show edit data notice"
|
1641 |
msgstr "Bestellung prüfen Hinweis"
|
1642 |
|
1643 |
# @ woocommerce-germanized
|
1644 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1645 |
msgid "Show a \"check-your-entries\" notice to the user?"
|
1646 |
msgstr "Einen \"Bestellung prüfen\" Hinweis anzeigen?"
|
1647 |
|
1648 |
# @ woocommerce-germanized
|
1649 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1650 |
msgid "This notice will be added right before the order comments field."
|
1651 |
msgstr ""
|
1652 |
"Dieser Hinweis wird direkt oberhalb des Bestellhinweise-Feldes eingefügt."
|
1653 |
|
1654 |
# @ woocommerce-germanized
|
1655 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1656 |
msgid "Checkout Table Color"
|
1657 |
msgstr "Hintergrundfarbe der Tabelle"
|
1658 |
|
1659 |
# @ woocommerce-germanized
|
1660 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1661 |
msgid ""
|
1662 |
"Choose the color of your checkout product table. This table should be "
|
1663 |
"highlighted within your checkout page."
|
@@ -1666,17 +1720,17 @@ msgstr ""
|
|
1666 |
"Tabelle sollte sich farblich vom Rest des Inhalts abheben."
|
1667 |
|
1668 |
# @ woocommerce-germanized
|
1669 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1670 |
msgid "Checkout Legal Display"
|
1671 |
msgstr "Checkbox oder Text"
|
1672 |
|
1673 |
# @ woocommerce-germanized
|
1674 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1675 |
msgid "Use Text without Checkbox"
|
1676 |
msgstr "Rechtshinweis ohne Checkbox."
|
1677 |
|
1678 |
# @ woocommerce-germanized
|
1679 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1680 |
msgid ""
|
1681 |
"This version will remove checkboxes from Checkout and display a text "
|
1682 |
"instead. This seems to be legally compliant (Zalando & Co are using this "
|
@@ -1687,12 +1741,12 @@ msgstr ""
|
|
1687 |
"diese Form)"
|
1688 |
|
1689 |
# @ woocommerce-germanized
|
1690 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1691 |
msgid "Legal Text"
|
1692 |
msgstr "Rechtlicher Hinweistext"
|
1693 |
|
1694 |
# @ woocommerce-germanized
|
1695 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1696 |
msgid ""
|
1697 |
"Choose a Plain Text which will be shown right above checkout submit button. "
|
1698 |
"Use {term_link}{/term_link}, {data_security_link}{/data_security_link}, "
|
@@ -1705,7 +1759,7 @@ msgstr ""
|
|
1705 |
"revocation_link} um die jeweiligen Links zu den Seiten einzufügen."
|
1706 |
|
1707 |
# @ woocommerce-germanized
|
1708 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1709 |
msgid ""
|
1710 |
"With your order, you agree to have read and understood our {term_link}Terms "
|
1711 |
"and Conditions{/term_link} and your {revocation_link}Right of Recission{/"
|
@@ -1716,12 +1770,12 @@ msgstr ""
|
|
1716 |
"revocation_link} einverstanden."
|
1717 |
|
1718 |
# @ woocommerce-germanized
|
1719 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1720 |
msgid "Legal Text Error"
|
1721 |
msgstr "Fehlermeldung der Checkbox"
|
1722 |
|
1723 |
# @ woocommerce-germanized
|
1724 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1725 |
msgid ""
|
1726 |
"If you have chosen to use checkbox validation please choose a error message "
|
1727 |
"which will be shown if the user doesn't check checkbox. Use {term_link}{/"
|
@@ -1736,7 +1790,7 @@ msgstr ""
|
|
1736 |
"revocation_link}"
|
1737 |
|
1738 |
# @ woocommerce-germanized
|
1739 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1740 |
msgid ""
|
1741 |
"To finish the order you have to accept to our {term_link}Terms and "
|
1742 |
"Conditions{/term_link} and {revocation_link}Right of Recission{/"
|
@@ -1746,17 +1800,17 @@ msgstr ""
|
|
1746 |
"term_link} und {revocation_link}Widerrufsbestimmungen{/revocation_link}."
|
1747 |
|
1748 |
# @ woocommerce-germanized
|
1749 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1750 |
msgid "Show digital notice"
|
1751 |
msgstr "Checkbox digitale Produkte"
|
1752 |
|
1753 |
# @ woocommerce-germanized
|
1754 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1755 |
msgid "Show checkbox for digital products."
|
1756 |
msgstr "Checkbox bei digitalen Produkten anzeigen."
|
1757 |
|
1758 |
# @ woocommerce-germanized
|
1759 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1760 |
msgid ""
|
1761 |
"Disable this option if you want your customers to obtain their right of "
|
1762 |
"recission even if digital products are being bought."
|
@@ -1766,12 +1820,12 @@ msgstr ""
|
|
1766 |
"werden, dass im Falle von digitalen Produkten das Widerrufsrecht erlischt."
|
1767 |
|
1768 |
# @ woocommerce-germanized
|
1769 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1770 |
msgid "Digital Product types"
|
1771 |
msgstr "Digitale Produkttypen"
|
1772 |
|
1773 |
# @ woocommerce-germanized
|
1774 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1775 |
msgid ""
|
1776 |
"Select product types for which the loss of recission notice is shown. "
|
1777 |
"Product types like \"simple product\" may be redudant because they include "
|
@@ -1783,12 +1837,12 @@ msgstr ""
|
|
1783 |
"einschließen."
|
1784 |
|
1785 |
# @ woocommerce-germanized
|
1786 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1787 |
msgid "Legal Digital Text"
|
1788 |
msgstr "Hinweis Digital"
|
1789 |
|
1790 |
# @ woocommerce-germanized
|
1791 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1792 |
msgid ""
|
1793 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1794 |
"if a user has picked a digital product. See legal text option for possible "
|
@@ -1799,7 +1853,7 @@ msgstr ""
|
|
1799 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext"
|
1800 |
|
1801 |
# @ woocommerce-germanized
|
1802 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1803 |
msgid ""
|
1804 |
"For digital products: I strongly agree that the execution of the agreement "
|
1805 |
"starts before the revocation period has expired. I am aware that my right of "
|
@@ -1810,13 +1864,13 @@ msgstr ""
|
|
1810 |
"bekannt, dass mit Beginn der Ausführung mein Widerrufsrecht erlischt."
|
1811 |
|
1812 |
# @ woocommerce-germanized
|
1813 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1814 |
msgid "Legal Digital Error"
|
1815 |
msgstr "Fehlermeldung Digital"
|
1816 |
|
1817 |
# @ woocommerce-germanized
|
1818 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1819 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1820 |
msgid ""
|
1821 |
"This text will be shown as error message if customer has not checked the "
|
1822 |
"corresponding checkbox. See legal text option for possible placeholders."
|
@@ -1826,7 +1880,7 @@ msgstr ""
|
|
1826 |
"Hinweistext für eine Liste der Platzhalter."
|
1827 |
|
1828 |
# @ woocommerce-germanized
|
1829 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1830 |
#: includes/wc-gzd-cart-functions.php:317
|
1831 |
msgid ""
|
1832 |
"To retrieve direct access to digital content you have to agree to the loss "
|
@@ -1836,12 +1890,12 @@ msgstr ""
|
|
1836 |
"Widerrufsrecht verzichten."
|
1837 |
|
1838 |
# @ woocommerce-germanized
|
1839 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1840 |
msgid "Digital Confirmation Notice"
|
1841 |
msgstr "Digitale Bestätigung"
|
1842 |
|
1843 |
# @ woocommerce-germanized
|
1844 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1845 |
msgid ""
|
1846 |
"This text will be appended to your order processing email if the order "
|
1847 |
"contains digital products. Use placeholders {link}{/link} to insert link to "
|
@@ -1852,7 +1906,7 @@ msgstr ""
|
|
1852 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1853 |
|
1854 |
# @ woocommerce-germanized
|
1855 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1856 |
msgid ""
|
1857 |
"Furthermore you have expressly agreed to start the performance of the "
|
1858 |
"contract for digital items (e.g. downloads) before expiry of the withdrawal "
|
@@ -1866,17 +1920,17 @@ msgstr ""
|
|
1866 |
"verlieren."
|
1867 |
|
1868 |
# @ woocommerce-germanized
|
1869 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1870 |
msgid "Show service notice"
|
1871 |
msgstr "Checkbox Dienstleistungen"
|
1872 |
|
1873 |
# @ woocommerce-germanized
|
1874 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1875 |
msgid "Show checkbox for service products."
|
1876 |
msgstr "Checkbox bei Dienstleistungen anzeigen."
|
1877 |
|
1878 |
# @ woocommerce-germanized
|
1879 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1880 |
msgid ""
|
1881 |
"Disable this option if you want your customers to obtain their right of "
|
1882 |
"recission even if service products are being bought."
|
@@ -1887,12 +1941,12 @@ msgstr ""
|
|
1887 |
"Widerrufsfrist mit der Dienstleistung begonnen wird."
|
1888 |
|
1889 |
# @ woocommerce-germanized
|
1890 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1891 |
msgid "Legal Service Text"
|
1892 |
msgstr "Hinweis Dienstleistungen"
|
1893 |
|
1894 |
# @ woocommerce-germanized
|
1895 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1896 |
msgid ""
|
1897 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1898 |
"if a user has picked a service product. See legal text option for possible "
|
@@ -1903,7 +1957,7 @@ msgstr ""
|
|
1903 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext."
|
1904 |
|
1905 |
# @ woocommerce-germanized
|
1906 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1907 |
#: includes/wc-gzd-cart-functions.php:339
|
1908 |
msgid ""
|
1909 |
"For services: I demand and acknowledge the immediate performance of the "
|
@@ -1916,12 +1970,12 @@ msgstr ""
|
|
1916 |
"vollständiger Erfüllung des Vertrages erlischt."
|
1917 |
|
1918 |
# @ woocommerce-germanized
|
1919 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1920 |
msgid "Legal Service Error"
|
1921 |
msgstr "Fehlermeldung"
|
1922 |
|
1923 |
# @ woocommerce-germanized
|
1924 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1925 |
#: includes/wc-gzd-cart-functions.php:348
|
1926 |
msgid ""
|
1927 |
"To allow the immediate performance of the services you have to agree to the "
|
@@ -1931,12 +1985,12 @@ msgstr ""
|
|
1931 |
"Widerrufsfrist zu."
|
1932 |
|
1933 |
# @ woocommerce-germanized
|
1934 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1935 |
msgid "Service Confirmation Notice"
|
1936 |
msgstr "Dienstleistung Bestätigung"
|
1937 |
|
1938 |
# @ woocommerce-germanized
|
1939 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1940 |
msgid ""
|
1941 |
"This text will be appended to your order processing email if the order "
|
1942 |
"contains service products. Use placeholders {link}{/link} to insert link to "
|
@@ -1947,7 +2001,7 @@ msgstr ""
|
|
1947 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1948 |
|
1949 |
# @ woocommerce-germanized
|
1950 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1951 |
msgid ""
|
1952 |
"Furthermore you have expressly agreed to start the performance of the "
|
1953 |
"contract for services before expiry of the withdrawal period. I have noted "
|
@@ -1961,18 +2015,18 @@ msgstr ""
|
|
1961 |
"erlischt."
|
1962 |
|
1963 |
# @ woocommerce-germanized
|
1964 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1965 |
msgid "Parcel Delivery Checkbox"
|
1966 |
msgstr "Paketdienstleister Checkbox"
|
1967 |
|
1968 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1969 |
msgid ""
|
1970 |
"Show checkbox for data transmission to third party parcel service providers."
|
1971 |
msgstr ""
|
1972 |
"Checkbox zur Erlaubnis der Datenweitergabe an den Paketdienstleister "
|
1973 |
"einfügen."
|
1974 |
|
1975 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1976 |
msgid ""
|
1977 |
"You may optionally choose to show a checkbox which lets the customer accept "
|
1978 |
"data transmission to a third party parcel service provider to receive parcel "
|
@@ -1986,15 +2040,15 @@ msgstr ""
|
|
1986 |
"weitergeleitet werden. "
|
1987 |
|
1988 |
# @ woocommerce-germanized
|
1989 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1990 |
msgid "Checkbox required"
|
1991 |
msgstr "Checkbox verpflichtend"
|
1992 |
|
1993 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1994 |
msgid "Make the parcel delivery checkbox a required field."
|
1995 |
msgstr "Paketdienstleister Checkbox zum Pflichtfeld machen?"
|
1996 |
|
1997 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
1998 |
msgid ""
|
1999 |
"For some reason you may want to force your customers to Opt-In to the data "
|
2000 |
"transmission to a third party parcel service provider."
|
@@ -2004,11 +2058,11 @@ msgstr ""
|
|
2004 |
"Fall diese Option aus."
|
2005 |
|
2006 |
# @ woocommerce-germanized
|
2007 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2008 |
msgid "Parcel Delivery Text"
|
2009 |
msgstr "Paketdienstleister Text"
|
2010 |
|
2011 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2012 |
msgid ""
|
2013 |
"Choose a Plain Text which will be shown right next to the corresponding "
|
2014 |
"checkbox to inform the customer about the data being transfered to the third "
|
@@ -2020,7 +2074,7 @@ msgstr ""
|
|
2020 |
"den Paketdienstleister. Verwende den Platzhalter {shipping_method_title} um "
|
2021 |
"den Titel der Versandmethoden einzubetten."
|
2022 |
|
2023 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2024 |
#: includes/wc-gzd-cart-functions.php:388
|
2025 |
msgid ""
|
2026 |
"Yes, I would like to be reminded via E-mail about parcel delivery "
|
@@ -2032,26 +2086,26 @@ msgstr ""
|
|
2032 |
"wird nur für diesen einmaligen Zweck an unseren Paketdienstleister "
|
2033 |
"weitergegeben."
|
2034 |
|
2035 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2036 |
msgid "Select shipping methods which are applicable for the Opt-In Checkbox."
|
2037 |
msgstr ""
|
2038 |
"Wähle Versandmethoden aus für die die Paketdienstleister Checkbox angezeigt "
|
2039 |
"werden soll."
|
2040 |
|
2041 |
# @ woocommerce-germanized
|
2042 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2043 |
msgid "Pay now Button"
|
2044 |
msgstr "Jetzt bezahlen Button"
|
2045 |
|
2046 |
# @ woocommerce-germanized
|
2047 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2048 |
msgid "Add a pay now button to emails and order success page."
|
2049 |
msgstr ""
|
2050 |
"Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
|
2051 |
"hinzu."
|
2052 |
|
2053 |
# @ woocommerce-germanized
|
2054 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2055 |
msgid ""
|
2056 |
"Add a pay now button to order confirmation email and order success page if "
|
2057 |
"the order awaits payment (PayPal etc)."
|
@@ -2061,30 +2115,30 @@ msgstr ""
|
|
2061 |
"benötigt (z.B. per PayPal)."
|
2062 |
|
2063 |
# @ woocommerce-germanized
|
2064 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2065 |
msgid "Order Success Text"
|
2066 |
msgstr "Bestellung eingegangen"
|
2067 |
|
2068 |
# @ woocommerce-germanized
|
2069 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2070 |
msgid "Choose a custom text to display on order success page."
|
2071 |
msgstr ""
|
2072 |
"Hier kannst du einen individuellen kurzen Text eingeben, der nach der "
|
2073 |
"Bestellung ausgegeben wird."
|
2074 |
|
2075 |
# @ woocommerce-germanized
|
2076 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2077 |
msgid "Order Success Data"
|
2078 |
msgstr "Bestellbestätigungs-Daten"
|
2079 |
|
2080 |
# @ woocommerce-germanized
|
2081 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2082 |
msgid "Hide product table and customer data on order success page"
|
2083 |
msgstr ""
|
2084 |
"Produktdetails (Tabelle, Kundeninfos) von der Bestätigungsseite entfernen."
|
2085 |
|
2086 |
# @ woocommerce-germanized
|
2087 |
-
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:
|
2088 |
msgid ""
|
2089 |
"Sorry, but the new Virtual VAT rules cannot be applied to small business."
|
2090 |
msgstr ""
|
@@ -2669,8 +2723,8 @@ msgstr "jetzt upgraden"
|
|
2669 |
#: includes/api/class-wc-gzd-rest-customers-controller.php:92
|
2670 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:87
|
2671 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:94
|
2672 |
-
#: includes/class-wc-gzd-checkout.php:
|
2673 |
-
#: includes/class-wc-gzd-checkout.php:
|
2674 |
#: includes/class-wc-gzd-customer-helper.php:84
|
2675 |
#: includes/class-wc-gzd-customer-helper.php:91
|
2676 |
msgid "Title"
|
@@ -2919,9 +2973,10 @@ msgstr ""
|
|
2919 |
"Mail mit Ihren Daten als Bestätigung."
|
2920 |
|
2921 |
# @ woocommerce-germanized
|
2922 |
-
#: includes/class-wc-gzd-checkout.php:
|
2923 |
-
#: includes/class-wc-gzd-checkout.php:
|
2924 |
-
#: includes/class-wc-gzd-checkout.php:
|
|
|
2925 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2926 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2927 |
#: includes/class-wc-gzd-revocation.php:41
|
@@ -2929,9 +2984,10 @@ msgid "Mr."
|
|
2929 |
msgstr "Herr"
|
2930 |
|
2931 |
# @ woocommerce-germanized
|
2932 |
-
#: includes/class-wc-gzd-checkout.php:
|
2933 |
-
#: includes/class-wc-gzd-checkout.php:
|
2934 |
-
#: includes/class-wc-gzd-checkout.php:
|
|
|
2935 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2936 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2937 |
#: includes/class-wc-gzd-revocation.php:42
|
@@ -2969,6 +3025,59 @@ msgstr "Vielen Dank. Ihr Benutzerkonto wurde erfolgreich aktiviert."
|
|
2969 |
msgid "Sorry, but this activation code cannot be found."
|
2970 |
msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
|
2971 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2972 |
# @ woocommerce-germanized
|
2973 |
#: includes/class-wc-gzd-ekomi.php:55
|
2974 |
msgid "eKomi Customer"
|
@@ -3072,7 +3181,7 @@ msgid "eKomi Options"
|
|
3072 |
msgstr "eKomi"
|
3073 |
|
3074 |
# @ woocommerce-germanized
|
3075 |
-
#: includes/class-wc-gzd-emails.php:
|
3076 |
msgctxt "revocation-form"
|
3077 |
msgid "Forward your Revocation online"
|
3078 |
msgstr "Widerruf online erklären"
|
@@ -3337,8 +3446,8 @@ msgstr "Neuen Preishinweis anlegen"
|
|
3337 |
msgid "New Price Label Name"
|
3338 |
msgstr "Name des neuen Preishinweises"
|
3339 |
|
3340 |
-
#: includes/class-wc-gzd-product-variable.php:
|
3341 |
-
#: includes/class-wc-gzd-product-variable.php:
|
3342 |
#, php-format
|
3343 |
msgctxt "Price range: from-to"
|
3344 |
msgid "%1$s–%2$s"
|
@@ -3984,7 +4093,7 @@ msgstr ""
|
|
3984 |
# @ woocommerce-germanized
|
3985 |
# @ woocommerce
|
3986 |
#: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
|
3987 |
-
#: woocommerce-germanized.php:
|
3988 |
msgid "Settings"
|
3989 |
msgstr "Einstellungen"
|
3990 |
|
2 |
msgstr ""
|
3 |
"Project-Id-Version: WooCommerce Germanized v1.5.1\n"
|
4 |
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2017-03-17 17:56+0100\n"
|
6 |
+
"PO-Revision-Date: 2017-03-17 18:37+0100\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: \n"
|
9 |
"Language: de_DE\n"
|
91 |
# @ woocommerce-germanized
|
92 |
#: includes/abstracts/abstract-wc-gzd-product.php:215
|
93 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
94 |
+
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:740
|
95 |
msgid "incl. VAT"
|
96 |
msgstr "inkl. MwSt."
|
97 |
|
103 |
# @ woocommerce-germanized
|
104 |
#: includes/abstracts/abstract-wc-gzd-product.php:217
|
105 |
#: includes/compatibility/class-wc-gzd-compatibility-woocommerce-subscriptions.php:72
|
106 |
+
#: includes/wc-gzd-cart-functions.php:269 woocommerce-germanized.php:740
|
107 |
#, php-format
|
108 |
msgid "incl. %s%% VAT"
|
109 |
msgstr "inkl. %s%% MwSt."
|
178 |
# @ woocommerce-germanized
|
179 |
#: includes/admin/class-wc-gzd-admin-status.php:43
|
180 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:280
|
181 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1134
|
182 |
msgid "Shipping Methods"
|
183 |
msgstr "Versandarten"
|
184 |
|
194 |
msgstr "Willkommen bei WooCommerce Germanized"
|
195 |
|
196 |
# @ woocommerce-germanized
|
197 |
+
#: includes/admin/class-wc-gzd-admin-welcome.php:309
|
198 |
msgid "Go to WooCommerce Germanized Settings"
|
199 |
msgstr "zu den WooCommerce Germanized Einstellungen"
|
200 |
|
1503 |
msgid "Checkout & Cart"
|
1504 |
msgstr "Checkout & Warenkorb"
|
1505 |
|
|
|
1506 |
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:891
|
1507 |
+
msgid "DHL Parcel Shops"
|
1508 |
+
msgstr "DHL Packstationen"
|
1509 |
+
|
1510 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:892
|
1511 |
+
msgid ""
|
1512 |
+
"Allow customers to choose a DHL parcel shop or packing station as delivery "
|
1513 |
+
"address."
|
1514 |
+
msgstr "Versand an DHL Packstation bzw. Paketshops aktivieren."
|
1515 |
+
|
1516 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:896
|
1517 |
+
msgid ""
|
1518 |
+
"This option adds a checkbox to your checkout shipping fields which allows "
|
1519 |
+
"the customer to optionally choose a DHL packing station or parcel shop for "
|
1520 |
+
"delivery. A PostNumber is required."
|
1521 |
+
msgstr ""
|
1522 |
+
"Diese Option fügt eine Checkbox in der Kasse (Versandadresse) ein. Hier kann "
|
1523 |
+
"der Kunde optional die Lieferung an eine Packstation aktivieren. Fall das "
|
1524 |
+
"der Fall ist, muss eine PostNummer angegeben werden."
|
1525 |
+
|
1526 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:900
|
1527 |
+
msgid "Supported Countries"
|
1528 |
+
msgstr "Unterstützte Länder"
|
1529 |
+
|
1530 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:904
|
1531 |
+
msgid "Choose countries which support Parcel Shop delivery."
|
1532 |
+
msgstr ""
|
1533 |
+
"Wähle hier die Länder an, in denen du die Lieferung an DHL Packstationen "
|
1534 |
+
"bzw. Paketshops aktivieren möchtest."
|
1535 |
+
|
1536 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:908
|
1537 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:237
|
1538 |
+
msgid "Parcel Shop Finder"
|
1539 |
+
msgstr "Paketshop finden"
|
1540 |
+
|
1541 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:909
|
1542 |
+
msgid ""
|
1543 |
+
"Enable DHL Parcel Shop Finder to let customers choose a parcel shop nearby."
|
1544 |
+
msgstr "Standortsuche nach der nächstgelegenen Packstation aktivieren."
|
1545 |
+
|
1546 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:913
|
1547 |
+
#, php-format
|
1548 |
+
msgid ""
|
1549 |
+
"You may enable this option to add a <a href=\"%s\" target=\"_blank\">Parcel "
|
1550 |
+
"Shop Finder</a> to your checkout. Adds an link next to the checkbox. The "
|
1551 |
+
"finder (DHL API) opens in an overlay and lets the customer find and choose a "
|
1552 |
+
"parcel shop or packing station nearby."
|
1553 |
+
msgstr ""
|
1554 |
+
"Aktiviere diese Option um die <a href=\"%s\" target=\"_blank"
|
1555 |
+
"\">Standortsuche</a> zu aktivieren. Diese Option fügt einen Link neben der "
|
1556 |
+
"Checkbox ein bei dessen Klick, die Suche (DHL API) in einer Lightbox "
|
1557 |
+
"geöffnet wird. Der Kunde kann eine Packstation bzw. einen Paketshop seiner "
|
1558 |
+
"Nähe auswählen und die Daten automatisch übernehmen."
|
1559 |
+
|
1560 |
+
# @ woocommerce-germanized
|
1561 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:917
|
1562 |
#: includes/admin/views/html-page-status-germanized.php:55
|
1563 |
msgid "Fallback Mode"
|
1564 |
msgstr "Fallback Modus"
|
1565 |
|
1566 |
# @ woocommerce-germanized
|
1567 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:918
|
1568 |
msgid ""
|
1569 |
"Enable to make sure default checkout template is not being overriden by "
|
1570 |
"theme."
|
1572 |
"Überschreiben relevanter Templates im Checkout durch dein Theme verhindern."
|
1573 |
|
1574 |
# @ woocommerce-germanized
|
1575 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:922
|
1576 |
msgid ""
|
1577 |
"If you are facing problems within your checkout e.g. legally relevant data "
|
1578 |
"is not showing (terms, delivery time, unit price etc.) your theme seems to "
|
1586 |
"Checkout (review-order.php und form-checkout.php) zu überschreiben. "
|
1587 |
|
1588 |
# @ woocommerce-germanized
|
1589 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:926
|
1590 |
msgid "Force free shipping"
|
1591 |
msgstr "Versandmethode erzwingen"
|
1592 |
|
1593 |
# @ woocommerce-germanized
|
1594 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:927
|
1595 |
msgid "Force free shipping method if available?"
|
1596 |
msgstr "Kostenlosen Versand erzwingen wenn die Methode zur Verfügung steht?"
|
1597 |
|
1598 |
# @ woocommerce-germanized
|
1599 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:931
|
1600 |
msgid ""
|
1601 |
"By default WooCommerce will let customers choose other shipping methods than "
|
1602 |
"free shipping (if available). This option will force free shipping if "
|
1607 |
"Versand, sobald dieser verfügbar ist."
|
1608 |
|
1609 |
# @ woocommerce-germanized
|
1610 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:935
|
1611 |
msgid "Hide taxes estimated"
|
1612 |
msgstr "Hinweis \"Steuern geschätzt\""
|
1613 |
|
1614 |
# @ woocommerce-germanized
|
1615 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:936
|
1616 |
msgid ""
|
1617 |
"Do you want to hide the \"taxes and shipping estimated\" text from your cart?"
|
1618 |
msgstr "Den Hinweis \"Versandkosten und Steuern werden geschätzt\" entfernen?"
|
1619 |
|
1620 |
# @ woocommerce-germanized
|
1621 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:940
|
1622 |
msgid ""
|
1623 |
"By default WooCommerce adds a \"taxes and shipping estimated\" text to your "
|
1624 |
"cart. This might puzzle your customers and may not meet german law."
|
1628 |
"Markt geeignet."
|
1629 |
|
1630 |
# @ woocommerce-germanized
|
1631 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:944
|
1632 |
msgid "Show Thumbnails"
|
1633 |
msgstr "Thumbnails anzeigen"
|
1634 |
|
1635 |
# @ woocommerce-germanized
|
1636 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:945
|
1637 |
msgid "Show product thumbnails on checkout page?"
|
1638 |
msgstr "Produktbilder im Checkout darstellen?"
|
1639 |
|
1640 |
# @ woocommerce-germanized
|
1641 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:949
|
1642 |
msgid ""
|
1643 |
"Uncheck if you don't want to show your product thumbnails within checkout "
|
1644 |
"table."
|
1647 |
"bekommen möchtest."
|
1648 |
|
1649 |
# @ woocommerce-germanized
|
1650 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:953
|
1651 |
msgid "Hide Shipping Select"
|
1652 |
msgstr "Versandarten Auswahl"
|
1653 |
|
1654 |
# @ woocommerce-germanized
|
1655 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:954
|
1656 |
msgid "Hide shipping rate selection from checkout?"
|
1657 |
msgstr "Die Auswahl von Versandarten im Checkout deaktivieren?"
|
1658 |
|
1659 |
# @ woocommerce-germanized
|
1660 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:958
|
1661 |
msgid ""
|
1662 |
"This option will hide shipping rate selection from checkout. By then "
|
1663 |
"customers will only be able to change their shipping rate on cart page."
|
1667 |
"Versandmethode ändern."
|
1668 |
|
1669 |
# @ woocommerce-germanized
|
1670 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:962
|
1671 |
msgid "Show back to cart button"
|
1672 |
msgstr "Bestellung bearbeiten"
|
1673 |
|
1674 |
# @ woocommerce-germanized
|
1675 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:963
|
1676 |
msgid "Show back to cart button within your checkout table?"
|
1677 |
msgstr ""
|
1678 |
"Einen \"Bestellung bearbeiten\" Button in der Bestellübersicht anzeigen?"
|
1679 |
|
1680 |
# @ woocommerce-germanized
|
1681 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:967
|
1682 |
msgid ""
|
1683 |
"This button may let your customer edit their order before submitting. Some "
|
1684 |
"people state that this button should be hidden to avoid legal problems."
|
1690 |
"keine weitere Informationen abgedruckt werden sollten."
|
1691 |
|
1692 |
# @ woocommerce-germanized
|
1693 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:971
|
1694 |
msgid "Show edit data notice"
|
1695 |
msgstr "Bestellung prüfen Hinweis"
|
1696 |
|
1697 |
# @ woocommerce-germanized
|
1698 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:972
|
1699 |
msgid "Show a \"check-your-entries\" notice to the user?"
|
1700 |
msgstr "Einen \"Bestellung prüfen\" Hinweis anzeigen?"
|
1701 |
|
1702 |
# @ woocommerce-germanized
|
1703 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:976
|
1704 |
msgid "This notice will be added right before the order comments field."
|
1705 |
msgstr ""
|
1706 |
"Dieser Hinweis wird direkt oberhalb des Bestellhinweise-Feldes eingefügt."
|
1707 |
|
1708 |
# @ woocommerce-germanized
|
1709 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:980
|
1710 |
msgid "Checkout Table Color"
|
1711 |
msgstr "Hintergrundfarbe der Tabelle"
|
1712 |
|
1713 |
# @ woocommerce-germanized
|
1714 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:982
|
1715 |
msgid ""
|
1716 |
"Choose the color of your checkout product table. This table should be "
|
1717 |
"highlighted within your checkout page."
|
1720 |
"Tabelle sollte sich farblich vom Rest des Inhalts abheben."
|
1721 |
|
1722 |
# @ woocommerce-germanized
|
1723 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:988
|
1724 |
msgid "Checkout Legal Display"
|
1725 |
msgstr "Checkbox oder Text"
|
1726 |
|
1727 |
# @ woocommerce-germanized
|
1728 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:989
|
1729 |
msgid "Use Text without Checkbox"
|
1730 |
msgstr "Rechtshinweis ohne Checkbox."
|
1731 |
|
1732 |
# @ woocommerce-germanized
|
1733 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:991
|
1734 |
msgid ""
|
1735 |
"This version will remove checkboxes from Checkout and display a text "
|
1736 |
"instead. This seems to be legally compliant (Zalando & Co are using this "
|
1741 |
"diese Form)"
|
1742 |
|
1743 |
# @ woocommerce-germanized
|
1744 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:997
|
1745 |
msgid "Legal Text"
|
1746 |
msgstr "Rechtlicher Hinweistext"
|
1747 |
|
1748 |
# @ woocommerce-germanized
|
1749 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:998
|
1750 |
msgid ""
|
1751 |
"Choose a Plain Text which will be shown right above checkout submit button. "
|
1752 |
"Use {term_link}{/term_link}, {data_security_link}{/data_security_link}, "
|
1759 |
"revocation_link} um die jeweiligen Links zu den Seiten einzufügen."
|
1760 |
|
1761 |
# @ woocommerce-germanized
|
1762 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1000
|
1763 |
msgid ""
|
1764 |
"With your order, you agree to have read and understood our {term_link}Terms "
|
1765 |
"and Conditions{/term_link} and your {revocation_link}Right of Recission{/"
|
1770 |
"revocation_link} einverstanden."
|
1771 |
|
1772 |
# @ woocommerce-germanized
|
1773 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1007
|
1774 |
msgid "Legal Text Error"
|
1775 |
msgstr "Fehlermeldung der Checkbox"
|
1776 |
|
1777 |
# @ woocommerce-germanized
|
1778 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1008
|
1779 |
msgid ""
|
1780 |
"If you have chosen to use checkbox validation please choose a error message "
|
1781 |
"which will be shown if the user doesn't check checkbox. Use {term_link}{/"
|
1790 |
"revocation_link}"
|
1791 |
|
1792 |
# @ woocommerce-germanized
|
1793 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1010
|
1794 |
msgid ""
|
1795 |
"To finish the order you have to accept to our {term_link}Terms and "
|
1796 |
"Conditions{/term_link} and {revocation_link}Right of Recission{/"
|
1800 |
"term_link} und {revocation_link}Widerrufsbestimmungen{/revocation_link}."
|
1801 |
|
1802 |
# @ woocommerce-germanized
|
1803 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1017
|
1804 |
msgid "Show digital notice"
|
1805 |
msgstr "Checkbox digitale Produkte"
|
1806 |
|
1807 |
# @ woocommerce-germanized
|
1808 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1018
|
1809 |
msgid "Show checkbox for digital products."
|
1810 |
msgstr "Checkbox bei digitalen Produkten anzeigen."
|
1811 |
|
1812 |
# @ woocommerce-germanized
|
1813 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1019
|
1814 |
msgid ""
|
1815 |
"Disable this option if you want your customers to obtain their right of "
|
1816 |
"recission even if digital products are being bought."
|
1820 |
"werden, dass im Falle von digitalen Produkten das Widerrufsrecht erlischt."
|
1821 |
|
1822 |
# @ woocommerce-germanized
|
1823 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1026
|
1824 |
msgid "Digital Product types"
|
1825 |
msgstr "Digitale Produkttypen"
|
1826 |
|
1827 |
# @ woocommerce-germanized
|
1828 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1027
|
1829 |
msgid ""
|
1830 |
"Select product types for which the loss of recission notice is shown. "
|
1831 |
"Product types like \"simple product\" may be redudant because they include "
|
1837 |
"einschließen."
|
1838 |
|
1839 |
# @ woocommerce-germanized
|
1840 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1037
|
1841 |
msgid "Legal Digital Text"
|
1842 |
msgstr "Hinweis Digital"
|
1843 |
|
1844 |
# @ woocommerce-germanized
|
1845 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1038
|
1846 |
msgid ""
|
1847 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1848 |
"if a user has picked a digital product. See legal text option for possible "
|
1853 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext"
|
1854 |
|
1855 |
# @ woocommerce-germanized
|
1856 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1040
|
1857 |
msgid ""
|
1858 |
"For digital products: I strongly agree that the execution of the agreement "
|
1859 |
"starts before the revocation period has expired. I am aware that my right of "
|
1864 |
"bekannt, dass mit Beginn der Ausführung mein Widerrufsrecht erlischt."
|
1865 |
|
1866 |
# @ woocommerce-germanized
|
1867 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1047
|
1868 |
msgid "Legal Digital Error"
|
1869 |
msgstr "Fehlermeldung Digital"
|
1870 |
|
1871 |
# @ woocommerce-germanized
|
1872 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1048
|
1873 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1087
|
1874 |
msgid ""
|
1875 |
"This text will be shown as error message if customer has not checked the "
|
1876 |
"corresponding checkbox. See legal text option for possible placeholders."
|
1880 |
"Hinweistext für eine Liste der Platzhalter."
|
1881 |
|
1882 |
# @ woocommerce-germanized
|
1883 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1050
|
1884 |
#: includes/wc-gzd-cart-functions.php:317
|
1885 |
msgid ""
|
1886 |
"To retrieve direct access to digital content you have to agree to the loss "
|
1890 |
"Widerrufsrecht verzichten."
|
1891 |
|
1892 |
# @ woocommerce-germanized
|
1893 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1057
|
1894 |
msgid "Digital Confirmation Notice"
|
1895 |
msgstr "Digitale Bestätigung"
|
1896 |
|
1897 |
# @ woocommerce-germanized
|
1898 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1058
|
1899 |
msgid ""
|
1900 |
"This text will be appended to your order processing email if the order "
|
1901 |
"contains digital products. Use placeholders {link}{/link} to insert link to "
|
1906 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
1907 |
|
1908 |
# @ woocommerce-germanized
|
1909 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1061
|
1910 |
msgid ""
|
1911 |
"Furthermore you have expressly agreed to start the performance of the "
|
1912 |
"contract for digital items (e.g. downloads) before expiry of the withdrawal "
|
1920 |
"verlieren."
|
1921 |
|
1922 |
# @ woocommerce-germanized
|
1923 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1067
|
1924 |
msgid "Show service notice"
|
1925 |
msgstr "Checkbox Dienstleistungen"
|
1926 |
|
1927 |
# @ woocommerce-germanized
|
1928 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1068
|
1929 |
msgid "Show checkbox for service products."
|
1930 |
msgstr "Checkbox bei Dienstleistungen anzeigen."
|
1931 |
|
1932 |
# @ woocommerce-germanized
|
1933 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1069
|
1934 |
msgid ""
|
1935 |
"Disable this option if you want your customers to obtain their right of "
|
1936 |
"recission even if service products are being bought."
|
1941 |
"Widerrufsfrist mit der Dienstleistung begonnen wird."
|
1942 |
|
1943 |
# @ woocommerce-germanized
|
1944 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1076
|
1945 |
msgid "Legal Service Text"
|
1946 |
msgstr "Hinweis Dienstleistungen"
|
1947 |
|
1948 |
# @ woocommerce-germanized
|
1949 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1077
|
1950 |
msgid ""
|
1951 |
"Choose a Plain Text which will be shown right above checkout submit button "
|
1952 |
"if a user has picked a service product. See legal text option for possible "
|
1957 |
"Platzhalter verwenden wie beim Rechtlichen Hinweistext."
|
1958 |
|
1959 |
# @ woocommerce-germanized
|
1960 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1079
|
1961 |
#: includes/wc-gzd-cart-functions.php:339
|
1962 |
msgid ""
|
1963 |
"For services: I demand and acknowledge the immediate performance of the "
|
1970 |
"vollständiger Erfüllung des Vertrages erlischt."
|
1971 |
|
1972 |
# @ woocommerce-germanized
|
1973 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1086
|
1974 |
msgid "Legal Service Error"
|
1975 |
msgstr "Fehlermeldung"
|
1976 |
|
1977 |
# @ woocommerce-germanized
|
1978 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1089
|
1979 |
#: includes/wc-gzd-cart-functions.php:348
|
1980 |
msgid ""
|
1981 |
"To allow the immediate performance of the services you have to agree to the "
|
1985 |
"Widerrufsfrist zu."
|
1986 |
|
1987 |
# @ woocommerce-germanized
|
1988 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1096
|
1989 |
msgid "Service Confirmation Notice"
|
1990 |
msgstr "Dienstleistung Bestätigung"
|
1991 |
|
1992 |
# @ woocommerce-germanized
|
1993 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1097
|
1994 |
msgid ""
|
1995 |
"This text will be appended to your order processing email if the order "
|
1996 |
"contains service products. Use placeholders {link}{/link} to insert link to "
|
2001 |
"Platzhalter {link}{/link} um einen Link zur Widerrufsbelehrung einzufügen."
|
2002 |
|
2003 |
# @ woocommerce-germanized
|
2004 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1100
|
2005 |
msgid ""
|
2006 |
"Furthermore you have expressly agreed to start the performance of the "
|
2007 |
"contract for services before expiry of the withdrawal period. I have noted "
|
2015 |
"erlischt."
|
2016 |
|
2017 |
# @ woocommerce-germanized
|
2018 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1106
|
2019 |
msgid "Parcel Delivery Checkbox"
|
2020 |
msgstr "Paketdienstleister Checkbox"
|
2021 |
|
2022 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1107
|
2023 |
msgid ""
|
2024 |
"Show checkbox for data transmission to third party parcel service providers."
|
2025 |
msgstr ""
|
2026 |
"Checkbox zur Erlaubnis der Datenweitergabe an den Paketdienstleister "
|
2027 |
"einfügen."
|
2028 |
|
2029 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1108
|
2030 |
msgid ""
|
2031 |
"You may optionally choose to show a checkbox which lets the customer accept "
|
2032 |
"data transmission to a third party parcel service provider to receive parcel "
|
2040 |
"weitergeleitet werden. "
|
2041 |
|
2042 |
# @ woocommerce-germanized
|
2043 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1115
|
2044 |
msgid "Checkbox required"
|
2045 |
msgstr "Checkbox verpflichtend"
|
2046 |
|
2047 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1116
|
2048 |
msgid "Make the parcel delivery checkbox a required field."
|
2049 |
msgstr "Paketdienstleister Checkbox zum Pflichtfeld machen?"
|
2050 |
|
2051 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1117
|
2052 |
msgid ""
|
2053 |
"For some reason you may want to force your customers to Opt-In to the data "
|
2054 |
"transmission to a third party parcel service provider."
|
2058 |
"Fall diese Option aus."
|
2059 |
|
2060 |
# @ woocommerce-germanized
|
2061 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1124
|
2062 |
msgid "Parcel Delivery Text"
|
2063 |
msgstr "Paketdienstleister Text"
|
2064 |
|
2065 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1125
|
2066 |
msgid ""
|
2067 |
"Choose a Plain Text which will be shown right next to the corresponding "
|
2068 |
"checkbox to inform the customer about the data being transfered to the third "
|
2074 |
"den Paketdienstleister. Verwende den Platzhalter {shipping_method_title} um "
|
2075 |
"den Titel der Versandmethoden einzubetten."
|
2076 |
|
2077 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1127
|
2078 |
#: includes/wc-gzd-cart-functions.php:388
|
2079 |
msgid ""
|
2080 |
"Yes, I would like to be reminded via E-mail about parcel delivery "
|
2086 |
"wird nur für diesen einmaligen Zweck an unseren Paketdienstleister "
|
2087 |
"weitergegeben."
|
2088 |
|
2089 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1135
|
2090 |
msgid "Select shipping methods which are applicable for the Opt-In Checkbox."
|
2091 |
msgstr ""
|
2092 |
"Wähle Versandmethoden aus für die die Paketdienstleister Checkbox angezeigt "
|
2093 |
"werden soll."
|
2094 |
|
2095 |
# @ woocommerce-germanized
|
2096 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1145
|
2097 |
msgid "Pay now Button"
|
2098 |
msgstr "Jetzt bezahlen Button"
|
2099 |
|
2100 |
# @ woocommerce-germanized
|
2101 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1146
|
2102 |
msgid "Add a pay now button to emails and order success page."
|
2103 |
msgstr ""
|
2104 |
"Füge einen jetzt bezahlen - Button zur E-Mail und der Bestätigungs-Seite "
|
2105 |
"hinzu."
|
2106 |
|
2107 |
# @ woocommerce-germanized
|
2108 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1147
|
2109 |
msgid ""
|
2110 |
"Add a pay now button to order confirmation email and order success page if "
|
2111 |
"the order awaits payment (PayPal etc)."
|
2115 |
"benötigt (z.B. per PayPal)."
|
2116 |
|
2117 |
# @ woocommerce-germanized
|
2118 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1154
|
2119 |
msgid "Order Success Text"
|
2120 |
msgstr "Bestellung eingegangen"
|
2121 |
|
2122 |
# @ woocommerce-germanized
|
2123 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1155
|
2124 |
msgid "Choose a custom text to display on order success page."
|
2125 |
msgstr ""
|
2126 |
"Hier kannst du einen individuellen kurzen Text eingeben, der nach der "
|
2127 |
"Bestellung ausgegeben wird."
|
2128 |
|
2129 |
# @ woocommerce-germanized
|
2130 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1163
|
2131 |
msgid "Order Success Data"
|
2132 |
msgstr "Bestellbestätigungs-Daten"
|
2133 |
|
2134 |
# @ woocommerce-germanized
|
2135 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1164
|
2136 |
msgid "Hide product table and customer data on order success page"
|
2137 |
msgstr ""
|
2138 |
"Produktdetails (Tabelle, Kundeninfos) von der Bestätigungsseite entfernen."
|
2139 |
|
2140 |
# @ woocommerce-germanized
|
2141 |
+
#: includes/admin/settings/class-wc-gzd-settings-germanized.php:1272
|
2142 |
msgid ""
|
2143 |
"Sorry, but the new Virtual VAT rules cannot be applied to small business."
|
2144 |
msgstr ""
|
2723 |
#: includes/api/class-wc-gzd-rest-customers-controller.php:92
|
2724 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:87
|
2725 |
#: includes/api/class-wc-gzd-rest-orders-controller.php:94
|
2726 |
+
#: includes/class-wc-gzd-checkout.php:256
|
2727 |
+
#: includes/class-wc-gzd-checkout.php:266
|
2728 |
#: includes/class-wc-gzd-customer-helper.php:84
|
2729 |
#: includes/class-wc-gzd-customer-helper.php:91
|
2730 |
msgid "Title"
|
2973 |
"Mail mit Ihren Daten als Bestätigung."
|
2974 |
|
2975 |
# @ woocommerce-germanized
|
2976 |
+
#: includes/class-wc-gzd-checkout.php:257
|
2977 |
+
#: includes/class-wc-gzd-checkout.php:265
|
2978 |
+
#: includes/class-wc-gzd-checkout.php:290
|
2979 |
+
#: includes/class-wc-gzd-checkout.php:424
|
2980 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2981 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2982 |
#: includes/class-wc-gzd-revocation.php:41
|
2984 |
msgstr "Herr"
|
2985 |
|
2986 |
# @ woocommerce-germanized
|
2987 |
+
#: includes/class-wc-gzd-checkout.php:257
|
2988 |
+
#: includes/class-wc-gzd-checkout.php:265
|
2989 |
+
#: includes/class-wc-gzd-checkout.php:291
|
2990 |
+
#: includes/class-wc-gzd-checkout.php:424
|
2991 |
#: includes/class-wc-gzd-customer-helper.php:86
|
2992 |
#: includes/class-wc-gzd-customer-helper.php:93
|
2993 |
#: includes/class-wc-gzd-revocation.php:42
|
3025 |
msgid "Sorry, but this activation code cannot be found."
|
3026 |
msgstr "Sorry, dieser Aktivierungscode ist uns leider nicht bekannt."
|
3027 |
|
3028 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:99
|
3029 |
+
msgid "Send to DHL Parcel Shop?"
|
3030 |
+
msgstr "An DHL Paketshop oder Packstation senden?"
|
3031 |
+
|
3032 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:108
|
3033 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:127
|
3034 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:141
|
3035 |
+
msgid "Postnumber"
|
3036 |
+
msgstr "PostNummer"
|
3037 |
+
|
3038 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:120
|
3039 |
+
msgid "DHL Parcel Shop?"
|
3040 |
+
msgstr "DHL Paketshop/Packstation?"
|
3041 |
+
|
3042 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:122
|
3043 |
+
msgid "No"
|
3044 |
+
msgstr "Nein"
|
3045 |
+
|
3046 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:122
|
3047 |
+
msgid "Yes"
|
3048 |
+
msgstr "Ja"
|
3049 |
+
|
3050 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:123
|
3051 |
+
msgid "Select whether delivery to parcel shop should be enabled."
|
3052 |
+
msgstr ""
|
3053 |
+
"Wähle aus ob die Lieferung an DHL Paketshops bzw. Packstationen aktiviert "
|
3054 |
+
"werden soll."
|
3055 |
+
|
3056 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:129
|
3057 |
+
msgid ""
|
3058 |
+
"In case delivery to parcel shop is enabled please fill in the corresponding "
|
3059 |
+
"DHL post number."
|
3060 |
+
msgstr ""
|
3061 |
+
"Wenn die Lieferung an eine DHL Packstation aktiviert wurde, trage bitte die "
|
3062 |
+
"PostNummer ein."
|
3063 |
+
|
3064 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:162
|
3065 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:213
|
3066 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:214
|
3067 |
+
msgid "Parcel Shop"
|
3068 |
+
msgstr "Shop/Packstation"
|
3069 |
+
|
3070 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:181
|
3071 |
+
msgid "Your PostNumber should contain numbers only"
|
3072 |
+
msgstr "Deine PostNummer sollte nur aus Zahlen bestehen."
|
3073 |
+
|
3074 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:187
|
3075 |
+
#: includes/class-wc-gzd-dhl-parcel-shops.php:220
|
3076 |
+
#, php-format
|
3077 |
+
msgid "Parcel Shop Delivery is only supported in: %s."
|
3078 |
+
msgstr ""
|
3079 |
+
"Die Lieferung in Paketshops bzw. Packstationen ist nur in %s verfügbar."
|
3080 |
+
|
3081 |
# @ woocommerce-germanized
|
3082 |
#: includes/class-wc-gzd-ekomi.php:55
|
3083 |
msgid "eKomi Customer"
|
3181 |
msgstr "eKomi"
|
3182 |
|
3183 |
# @ woocommerce-germanized
|
3184 |
+
#: includes/class-wc-gzd-emails.php:407
|
3185 |
msgctxt "revocation-form"
|
3186 |
msgid "Forward your Revocation online"
|
3187 |
msgstr "Widerruf online erklären"
|
3446 |
msgid "New Price Label Name"
|
3447 |
msgstr "Name des neuen Preishinweises"
|
3448 |
|
3449 |
+
#: includes/class-wc-gzd-product-variable.php:127
|
3450 |
+
#: includes/class-wc-gzd-product-variable.php:132
|
3451 |
#, php-format
|
3452 |
msgctxt "Price range: from-to"
|
3453 |
msgid "%1$s–%2$s"
|
4093 |
# @ woocommerce-germanized
|
4094 |
# @ woocommerce
|
4095 |
#: includes/gateways/invoice/class-wc-gzd-gateway-invoice.php:50
|
4096 |
+
#: woocommerce-germanized.php:548
|
4097 |
msgid "Settings"
|
4098 |
msgstr "Einstellungen"
|
4099 |
|
includes/abstracts/abstract-wc-gzd-compatibility.php
CHANGED
@@ -29,11 +29,11 @@ abstract class WC_GZD_Compatibility {
|
|
29 |
$version_data[ 'tested_up_to' ] = $version_data[ 'version' ];
|
30 |
} else if ( empty( $version_data[ 'tested_up_to' ] ) ) {
|
31 |
$version_data[ 'tested_up_to' ] = $version_data[ 'requires_at_least' ];
|
32 |
-
if (
|
33 |
$version_data[ 'tested_up_to' ] = $version_data[ 'version' ];
|
34 |
} else if ( empty( $version_data[ 'requires_at_least' ] ) ) {
|
35 |
$version_data[ 'requires_at_least' ] = $version_data[ 'tested_up_to' ];
|
36 |
-
if (
|
37 |
$version_data[ 'requires_at_least' ] = $version_data[ 'version' ];
|
38 |
}
|
39 |
|
@@ -53,13 +53,13 @@ abstract class WC_GZD_Compatibility {
|
|
53 |
}
|
54 |
|
55 |
public function is_activated() {
|
56 |
-
return
|
57 |
}
|
58 |
|
59 |
public function is_supported() {
|
60 |
-
return
|
61 |
-
|
62 |
-
|
63 |
}
|
64 |
|
65 |
public function get_name() {
|
29 |
$version_data[ 'tested_up_to' ] = $version_data[ 'version' ];
|
30 |
} else if ( empty( $version_data[ 'tested_up_to' ] ) ) {
|
31 |
$version_data[ 'tested_up_to' ] = $version_data[ 'requires_at_least' ];
|
32 |
+
if ( wc_gzd_get_dependencies()->compare_versions( $version_data[ 'version' ], $version_data[ 'requires_at_least' ], '>' ) )
|
33 |
$version_data[ 'tested_up_to' ] = $version_data[ 'version' ];
|
34 |
} else if ( empty( $version_data[ 'requires_at_least' ] ) ) {
|
35 |
$version_data[ 'requires_at_least' ] = $version_data[ 'tested_up_to' ];
|
36 |
+
if ( wc_gzd_get_dependencies()->compare_versions( $version_data[ 'version' ], $version_data[ 'requires_at_least' ], '<' ) )
|
37 |
$version_data[ 'requires_at_least' ] = $version_data[ 'version' ];
|
38 |
}
|
39 |
|
53 |
}
|
54 |
|
55 |
public function is_activated() {
|
56 |
+
return wc_gzd_get_dependencies()->is_plugin_activated( $this->plugin_file );
|
57 |
}
|
58 |
|
59 |
public function is_supported() {
|
60 |
+
return
|
61 |
+
wc_gzd_get_dependencies()->compare_versions( $this->version_data[ 'version' ], $this->version_data[ 'requires_at_least' ], '>=' ) &&
|
62 |
+
wc_gzd_get_dependencies()->compare_versions( $this->version_data[ 'version' ], $this->version_data[ 'tested_up_to' ], '<=' );
|
63 |
}
|
64 |
|
65 |
public function get_name() {
|
includes/abstracts/abstract-wc-gzd-product.php
CHANGED
@@ -164,23 +164,23 @@ class WC_GZD_Product {
|
|
164 |
|
165 |
preg_match( "/<del>(.*?)<\\/del>/si", $price_html, $match_regular );
|
166 |
preg_match( "/<ins>(.*?)<\\/ins>/si", $price_html, $match_sale );
|
|
|
167 |
|
168 |
if ( empty( $match_sale ) || empty( $match_regular ) ) {
|
169 |
return $price_html;
|
170 |
}
|
171 |
|
172 |
-
$new_price_regular =
|
173 |
-
$new_price_sale =
|
|
|
174 |
|
175 |
if ( ! empty( $sale_label ) && isset( $match_regular[1] ) )
|
176 |
-
$new_price_regular = '<span class="wc-gzd-sale-price-label">' . $sale_label . '</span>
|
177 |
|
178 |
if ( ! empty( $sale_regular_label ) && isset( $match_sale[1] ) )
|
179 |
-
$new_price_sale = '<span class="wc-gzd-sale-price-label wc-gzd-sale-price-regular-label">' . $sale_regular_label . '</span>
|
180 |
|
181 |
-
|
182 |
-
|
183 |
-
return $price_html;
|
184 |
}
|
185 |
|
186 |
public function get_price_html_from_to( $from, $to, $show_labels = true ) {
|
164 |
|
165 |
preg_match( "/<del>(.*?)<\\/del>/si", $price_html, $match_regular );
|
166 |
preg_match( "/<ins>(.*?)<\\/ins>/si", $price_html, $match_sale );
|
167 |
+
preg_match( "/<small .*>(.*?)<\\/small>/si", $price_html, $match_suffix );
|
168 |
|
169 |
if ( empty( $match_sale ) || empty( $match_regular ) ) {
|
170 |
return $price_html;
|
171 |
}
|
172 |
|
173 |
+
$new_price_regular = $match_regular[0];
|
174 |
+
$new_price_sale = $match_sale[0];
|
175 |
+
$new_price_suffix = ( empty( $match_suffix ) ? '' : ' ' . $match_suffix[0] );
|
176 |
|
177 |
if ( ! empty( $sale_label ) && isset( $match_regular[1] ) )
|
178 |
+
$new_price_regular = '<span class="wc-gzd-sale-price-label">' . $sale_label . '</span> ' . $match_regular[0];
|
179 |
|
180 |
if ( ! empty( $sale_regular_label ) && isset( $match_sale[1] ) )
|
181 |
+
$new_price_sale = '<span class="wc-gzd-sale-price-label wc-gzd-sale-price-regular-label">' . $sale_regular_label . '</span> ' . $match_sale[0];
|
182 |
|
183 |
+
return apply_filters( 'woocommerce_gzd_product_sale_price_with_labels_html', $new_price_regular . ' ' . $new_price_sale . $new_price_suffix, $org_price_html, $this );
|
|
|
|
|
184 |
}
|
185 |
|
186 |
public function get_price_html_from_to( $from, $to, $show_labels = true ) {
|
includes/admin/class-wc-gzd-admin-welcome.php
CHANGED
@@ -122,11 +122,17 @@ class WC_GZD_Admin_Welcome {
|
|
122 |
<a href="<?php echo admin_url('admin.php?page=wc-settings&tab=germanized'); ?>" class="button button-primary">Einstellungen</a>
|
123 |
<a href="https://vendidero.de/woocommerce-germanized#buy" target="_blank" class="button button-primary">Upgrade zur Pro Version</a>
|
124 |
</p>
|
125 |
-
<div class="changelog new-feature">
|
126 |
-
|
127 |
-
<
|
128 |
-
|
129 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
</div>
|
131 |
<div class="changelog vendipro new-feature">
|
132 |
<h3>Neu: Rechtliche Hinweistexte als PDF-Anhang <span class="wc-gzd-pro">pro</span></h3>
|
122 |
<a href="<?php echo admin_url('admin.php?page=wc-settings&tab=germanized'); ?>" class="button button-primary">Einstellungen</a>
|
123 |
<a href="https://vendidero.de/woocommerce-germanized#buy" target="_blank" class="button button-primary">Upgrade zur Pro Version</a>
|
124 |
</p>
|
125 |
+
<div class="changelog vendipro new-feature">
|
126 |
+
<h3>Neu in 1.8.4: Versand an DHL Shops & Packstationen</h3>
|
127 |
+
<div class="left">
|
128 |
+
<p>
|
129 |
+
Germanized 1.8.4 ermöglicht es dir deinen Kunden den Versand an DHL Shops & Packstationen anzubieten. Dafür fügt Germanized eine Checkbox in der Versandadresse ein, die der Kunde anhaken kann. Anschließend wird die PostNummer und die Packstation abgefragt.
|
130 |
+
Zudem haben wir auch die DHL Standortsuche integriert, über die der Kunde eine Packstation in seiner Nähe finden kann - die Daten der Packstation werden automatisch als Versandresse übernommen. Aktiviere jetzt den Versand an DHL Packstationen bzw. Paketshops in den <a href="<?php echo admin_url( 'admin.php?page=wc-settings&tab=germanized§ion=display#woocommerce_gzd_dhl_parcel_shops' ); ?>">Einstellungen</a>.
|
131 |
+
</p>
|
132 |
+
</div>
|
133 |
+
<div class="right">
|
134 |
+
<img src="<?php echo WC_germanized()->plugin_url();?>/assets/images/dhl-packstation.png" style="max-width: 600px; border: none" />
|
135 |
+
</div>
|
136 |
</div>
|
137 |
<div class="changelog vendipro new-feature">
|
138 |
<h3>Neu: Rechtliche Hinweistexte als PDF-Anhang <span class="wc-gzd-pro">pro</span></h3>
|
includes/admin/class-wc-gzd-admin.php
CHANGED
@@ -276,7 +276,7 @@ class WC_GZD_Admin {
|
|
276 |
|
277 |
if ( isset( $_GET[ 'delete-version-cache' ] ) && isset( $_GET[ '_wpnonce' ] ) && check_admin_referer( 'wc-gzd-delete-version-cache' ) ) {
|
278 |
|
279 |
-
|
280 |
|
281 |
do_action( 'woocommerce_gzd_deleted_cached_plugin_header_data' );
|
282 |
}
|
276 |
|
277 |
if ( isset( $_GET[ 'delete-version-cache' ] ) && isset( $_GET[ '_wpnonce' ] ) && check_admin_referer( 'wc-gzd-delete-version-cache' ) ) {
|
278 |
|
279 |
+
wc_gzd_get_dependencies()->delete_cached_plugin_header_data();
|
280 |
|
281 |
do_action( 'woocommerce_gzd_deleted_cached_plugin_header_data' );
|
282 |
}
|
includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php
CHANGED
@@ -111,7 +111,7 @@ class WC_Germanized_Meta_Box_Product_Data {
|
|
111 |
|
112 |
$args[ 'id' ] = empty( $args[ 'id' ] ) ? $args[ 'name' ] : $args[ 'id' ];
|
113 |
|
114 |
-
if (
|
115 |
?>
|
116 |
<select class="wc-product-search wc-gzd-delivery-time-search" style="<?php echo $args[ 'style' ]; ?>" id="<?php echo $args[ 'id' ]; ?>" name="<?php echo $args[ 'name' ]; ?>" data-minimum_input_length="1" data-allow_clear="true" data-placeholder="<?php echo $args[ 'placeholder' ]; ?>" data-action="woocommerce_gzd_json_search_delivery_time" data-multiple="false">
|
117 |
<?php
|
111 |
|
112 |
$args[ 'id' ] = empty( $args[ 'id' ] ) ? $args[ 'name' ] : $args[ 'id' ];
|
113 |
|
114 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
115 |
?>
|
116 |
<select class="wc-product-search wc-gzd-delivery-time-search" style="<?php echo $args[ 'style' ]; ?>" id="<?php echo $args[ 'id' ]; ?>" name="<?php echo $args[ 'name' ]; ?>" data-minimum_input_length="1" data-allow_clear="true" data-placeholder="<?php echo $args[ 'placeholder' ]; ?>" data-action="woocommerce_gzd_json_search_delivery_time" data-multiple="false">
|
117 |
<?php
|
includes/admin/settings/class-wc-gzd-settings-germanized.php
CHANGED
@@ -887,6 +887,32 @@ class WC_GZD_Settings_Germanized extends WC_Settings_Page {
|
|
887 |
|
888 |
array( 'title' => __( 'Checkout & Cart', 'woocommerce-germanized' ), 'type' => 'title', 'id' => 'checkout_options' ),
|
889 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
890 |
array(
|
891 |
'title' => __( 'Fallback Mode', 'woocommerce-germanized' ),
|
892 |
'desc' => __( 'Enable to make sure default checkout template is not being overriden by theme.', 'woocommerce-germanized' ),
|
887 |
|
888 |
array( 'title' => __( 'Checkout & Cart', 'woocommerce-germanized' ), 'type' => 'title', 'id' => 'checkout_options' ),
|
889 |
|
890 |
+
array(
|
891 |
+
'title' => __( 'DHL Parcel Shops', 'woocommerce-germanized' ),
|
892 |
+
'desc' => __( 'Allow customers to choose a DHL parcel shop or packing station as delivery address.', 'woocommerce-germanized' ),
|
893 |
+
'id' => 'woocommerce_gzd_dhl_parcel_shops',
|
894 |
+
'default' => 'no',
|
895 |
+
'type' => 'checkbox',
|
896 |
+
'desc_tip' => __( 'This option adds a checkbox to your checkout shipping fields which allows the customer to optionally choose a DHL packing station or parcel shop for delivery. A PostNumber is required.', 'woocommerce-germanized' ),
|
897 |
+
),
|
898 |
+
|
899 |
+
array(
|
900 |
+
'title' => __( 'Supported Countries', 'woocommerce-germanized' ),
|
901 |
+
'id' => 'woocommerce_gzd_dhl_parcel_shop_supported_countries',
|
902 |
+
'default' => array( 'DE', 'AT' ),
|
903 |
+
'type' => 'multi_select_countries',
|
904 |
+
'desc_tip' => __( 'Choose countries which support Parcel Shop delivery.', 'woocommerce-germanized' ),
|
905 |
+
),
|
906 |
+
|
907 |
+
array(
|
908 |
+
'title' => __( 'Parcel Shop Finder', 'woocommerce-germanized' ),
|
909 |
+
'desc' => __( 'Enable DHL Parcel Shop Finder to let customers choose a parcel shop nearby.', 'woocommerce-germanized' ),
|
910 |
+
'id' => 'woocommerce_gzd_dhl_parcel_shop_finder',
|
911 |
+
'default' => 'no',
|
912 |
+
'type' => 'checkbox',
|
913 |
+
'desc_tip' => sprintf( __( 'You may enable this option to add a <a href="%s" target="_blank">Parcel Shop Finder</a> to your checkout. Adds an link next to the checkbox. The finder (DHL API) opens in an overlay and lets the customer find and choose a parcel shop or packing station nearby.', 'woocommerce-germanized' ), 'https://parcelshopfinder.dhlparcel.com/' ),
|
914 |
+
),
|
915 |
+
|
916 |
array(
|
917 |
'title' => __( 'Fallback Mode', 'woocommerce-germanized' ),
|
918 |
'desc' => __( 'Enable to make sure default checkout template is not being overriden by theme.', 'woocommerce-germanized' ),
|
includes/api/class-wc-gzd-rest-api.php
CHANGED
@@ -22,7 +22,7 @@ class WC_GZD_REST_API {
|
|
22 |
}
|
23 |
|
24 |
public function init() {
|
25 |
-
if ( version_compare(
|
26 |
return;
|
27 |
|
28 |
$this->rest_api_includes();
|
22 |
}
|
23 |
|
24 |
public function init() {
|
25 |
+
if ( version_compare( wc_gzd_get_dependencies()->get_plugin_version( 'woocommerce' ), '2.6', '<' ) )
|
26 |
return;
|
27 |
|
28 |
$this->rest_api_includes();
|
includes/api/class-wc-gzd-rest-orders-controller.php
CHANGED
@@ -42,6 +42,8 @@ class WC_GZD_REST_Orders_Controller {
|
|
42 |
|
43 |
$response_order_data['billing']['title'] = wc_gzd_get_crud_data( $order, 'billing_title' );
|
44 |
$response_order_data['shipping']['title'] = wc_gzd_get_crud_data( $order, 'shipping_title' );
|
|
|
|
|
45 |
$response_order_data['parcel_delivery_opted_in'] = wc_gzd_get_crud_data( $order, 'parcel_delivery_opted_in' );
|
46 |
|
47 |
$response->set_data( $response_order_data );
|
@@ -69,6 +71,17 @@ class WC_GZD_REST_Orders_Controller {
|
|
69 |
update_post_meta( $post->ID, '_shipping_title', absint( $request['shipping']['title'] ) );
|
70 |
}
|
71 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
}
|
73 |
|
74 |
/**
|
@@ -97,6 +110,18 @@ class WC_GZD_REST_Orders_Controller {
|
|
97 |
'enum' => array( 1, 2 )
|
98 |
);
|
99 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
$schema_properties['parcel_delivery_opted_in'] = array(
|
101 |
'description' => __( 'Parcel Delivery Data Transfer', 'woocommerce-germanized' ),
|
102 |
'type' => 'string',
|
42 |
|
43 |
$response_order_data['billing']['title'] = wc_gzd_get_crud_data( $order, 'billing_title' );
|
44 |
$response_order_data['shipping']['title'] = wc_gzd_get_crud_data( $order, 'shipping_title' );
|
45 |
+
$response_order_data['shipping']['parcelshop'] = (bool) wc_gzd_get_crud_data( $order, 'shipping_parcelshop' );
|
46 |
+
$response_order_data['shipping']['parcelshop_post_number'] = wc_gzd_get_crud_data( $order, 'shipping_parcelshop_post_number' );
|
47 |
$response_order_data['parcel_delivery_opted_in'] = wc_gzd_get_crud_data( $order, 'parcel_delivery_opted_in' );
|
48 |
|
49 |
$response->set_data( $response_order_data );
|
71 |
update_post_meta( $post->ID, '_shipping_title', absint( $request['shipping']['title'] ) );
|
72 |
}
|
73 |
|
74 |
+
if ( isset( $request['shipping']['parcelshop'] ) ) {
|
75 |
+
if ( (bool) $request['shipping']['parcelshop'] ) {
|
76 |
+
update_post_meta( $post->ID, '_shipping_parcelshop', 1 );
|
77 |
+
} else {
|
78 |
+
delete_post_meta( $post->ID, '_shipping_parcelshop' );
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
if ( isset( $request['shipping']['parcelshop_post_number'] ) ) {
|
83 |
+
update_post_meta( $post->ID, '_shipping_parcelshop_post_number', wc_clean( $request['shipping']['parcelshop_post_number'] ) );
|
84 |
+
}
|
85 |
}
|
86 |
|
87 |
/**
|
110 |
'enum' => array( 1, 2 )
|
111 |
);
|
112 |
|
113 |
+
$schema_properties['shipping']['properties']['parcelshop'] = array(
|
114 |
+
'description' => __( 'Parcel Shop', 'woocommerce-germanized' ),
|
115 |
+
'type' => 'boolean',
|
116 |
+
'context' => array( 'view', 'edit' ),
|
117 |
+
);
|
118 |
+
|
119 |
+
$schema_properties['shipping']['properties']['parcelshop_post_number'] = array(
|
120 |
+
'description' => __( 'Postnumber', 'woocommerce-germanized' ),
|
121 |
+
'type' => 'string',
|
122 |
+
'context' => array( 'view', 'edit' ),
|
123 |
+
);
|
124 |
+
|
125 |
$schema_properties['parcel_delivery_opted_in'] = array(
|
126 |
'description' => __( 'Parcel Delivery Data Transfer', 'woocommerce-germanized' ),
|
127 |
'type' => 'string',
|
includes/class-wc-gzd-checkout.php
CHANGED
@@ -33,13 +33,13 @@ class WC_GZD_Checkout {
|
|
33 |
|
34 |
public function __construct() {
|
35 |
|
36 |
-
add_action( 'init', array( $this, 'init_fields' ) );
|
37 |
add_filter( 'woocommerce_billing_fields', array( $this, 'set_custom_fields' ), 0, 1 );
|
38 |
add_filter( 'woocommerce_shipping_fields', array( $this, 'set_custom_fields_shipping' ), 0, 1 );
|
39 |
|
40 |
// Add Fields to Order Edit Page
|
41 |
-
add_filter( 'woocommerce_admin_billing_fields', array( $this, '
|
42 |
-
add_filter( 'woocommerce_admin_shipping_fields', array( $this, '
|
43 |
|
44 |
// Save Fields on order
|
45 |
add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'save_fields' ) );
|
@@ -48,13 +48,16 @@ class WC_GZD_Checkout {
|
|
48 |
add_filter( 'woocommerce_order_formatted_billing_address', array( $this, 'set_formatted_billing_address' ), 0, 2 );
|
49 |
add_filter( 'woocommerce_order_formatted_shipping_address', array( $this, 'set_formatted_shipping_address' ), 0, 2 );
|
50 |
add_filter( 'woocommerce_formatted_address_replacements', array( $this, 'set_formatted_address' ), 0, 2 );
|
51 |
-
|
|
|
|
|
|
|
52 |
// Add item desc to order
|
53 |
-
if (
|
54 |
add_action( 'woocommerce_new_order_item', array( $this, 'set_order_item_meta_crud' ), 0, 3 );
|
55 |
} else {
|
56 |
add_action( 'woocommerce_order_add_product', array( $this, 'set_order_meta' ), 0, 5 );
|
57 |
-
}
|
58 |
|
59 |
add_filter( 'woocommerce_hidden_order_itemmeta', array( $this, 'set_order_meta_hidden' ), 0 );
|
60 |
|
@@ -86,6 +89,7 @@ class WC_GZD_Checkout {
|
|
86 |
|
87 |
if ( wc_gzd_is_parcel_delivery_data_transfer_checkbox_enabled() )
|
88 |
add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'order_parcel_delivery_data_transfer' ), 10, 2 );
|
|
|
89 |
}
|
90 |
|
91 |
public function remove_cancel_button( $actions, $order ) {
|
@@ -259,8 +263,8 @@ class WC_GZD_Checkout {
|
|
259 |
'before' => 'first_name',
|
260 |
'type' => 'select',
|
261 |
'options' => array( 1 => __( 'Mr.', 'woocommerce-germanized' ), 2 => __( 'Ms.', 'woocommerce-germanized' ) ),
|
262 |
-
'show' => false,
|
263 |
'label' => __( 'Title', 'woocommerce-germanized' ),
|
|
|
264 |
);
|
265 |
|
266 |
}
|
@@ -275,6 +279,22 @@ class WC_GZD_Checkout {
|
|
275 |
);
|
276 |
|
277 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
278 |
}
|
279 |
|
280 |
/**
|
@@ -386,6 +406,7 @@ class WC_GZD_Checkout {
|
|
386 |
|
387 |
if ( wc_gzd_get_crud_data( $order, 'billing_title' ) )
|
388 |
$fields[ 'title' ] = $this->get_customer_title( wc_gzd_get_crud_data( $order, 'billing_title' ) );
|
|
|
389 |
return $fields;
|
390 |
}
|
391 |
|
@@ -414,56 +435,99 @@ class WC_GZD_Checkout {
|
|
414 |
}
|
415 |
|
416 |
public function set_custom_fields( $fields = array(), $type = 'billing' ) {
|
417 |
-
|
418 |
if ( ! empty( $this->custom_fields ) ) {
|
|
|
419 |
foreach ( $this->custom_fields as $key => $custom_field ) {
|
|
|
|
|
|
|
420 |
if ( in_array( $type, $custom_field[ 'group' ] ) ) {
|
|
|
421 |
if ( ! empty( $fields ) ) {
|
|
|
422 |
foreach ( $fields as $name => $field ) {
|
423 |
-
|
|
|
424 |
$new[ $type . '_' . $key ] = $custom_field;
|
|
|
|
|
425 |
$new[ $name ] = $field;
|
426 |
-
|
|
|
427 |
$new[ $name ] = array_merge( $field, $custom_field );
|
|
|
428 |
}
|
429 |
}
|
430 |
}
|
|
|
|
|
|
|
|
|
431 |
}
|
432 |
}
|
433 |
-
|
|
|
434 |
}
|
435 |
|
436 |
public function set_custom_fields_shipping( $fields ) {
|
437 |
return $this->set_custom_fields( $fields, 'shipping' );
|
438 |
}
|
439 |
|
440 |
-
public function set_custom_fields_admin( $fields = array() ) {
|
441 |
$new = array();
|
|
|
442 |
if ( ! empty( $this->custom_fields_admin ) ) {
|
|
|
443 |
foreach ( $this->custom_fields_admin as $key => $custom_field ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
444 |
if ( ! empty( $fields ) ) {
|
|
|
445 |
foreach ( $fields as $name => $field ) {
|
446 |
if ( $name == $custom_field[ 'before' ] && ! isset( $custom_field[ 'override' ] ) )
|
447 |
$new[ $key ] = $custom_field;
|
|
|
448 |
$new[ $name ] = $field;
|
449 |
}
|
450 |
}
|
|
|
|
|
|
|
|
|
451 |
}
|
452 |
}
|
453 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
454 |
}
|
455 |
|
456 |
public function save_fields( $order_id ) {
|
457 |
$checkout = WC()->checkout();
|
|
|
458 |
if ( ! empty( $this->custom_fields ) ) {
|
459 |
foreach ( $this->custom_fields as $key => $custom_field ) {
|
460 |
if ( ! empty( $custom_field[ 'group' ] ) && ! isset( $custom_field[ 'override' ] ) ) {
|
461 |
foreach ( $custom_field[ 'group' ] as $group ) {
|
|
|
462 |
$val = ( isset( $checkout->posted[ $group . '_' . $key ] ) ? $checkout->posted[ $group . '_' . $key ] : '' );
|
|
|
463 |
if ( $group == 'shipping' || $group == 'billing' )
|
464 |
$val = $checkout->get_posted_address_data( $key, $group );
|
|
|
465 |
if ( ! empty( $val ) )
|
466 |
-
update_post_meta( $order_id, '_' . $group . '_' . $key, sanitize_text_field( $val ) );
|
467 |
}
|
468 |
}
|
469 |
}
|
33 |
|
34 |
public function __construct() {
|
35 |
|
36 |
+
add_action( 'init', array( $this, 'init_fields' ), 30 );
|
37 |
add_filter( 'woocommerce_billing_fields', array( $this, 'set_custom_fields' ), 0, 1 );
|
38 |
add_filter( 'woocommerce_shipping_fields', array( $this, 'set_custom_fields_shipping' ), 0, 1 );
|
39 |
|
40 |
// Add Fields to Order Edit Page
|
41 |
+
add_filter( 'woocommerce_admin_billing_fields', array( $this, 'set_custom_fields_admin_billing' ), 0, 1 );
|
42 |
+
add_filter( 'woocommerce_admin_shipping_fields', array( $this, 'set_custom_fields_admin_shipping' ), 0, 1 );
|
43 |
|
44 |
// Save Fields on order
|
45 |
add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'save_fields' ) );
|
48 |
add_filter( 'woocommerce_order_formatted_billing_address', array( $this, 'set_formatted_billing_address' ), 0, 2 );
|
49 |
add_filter( 'woocommerce_order_formatted_shipping_address', array( $this, 'set_formatted_shipping_address' ), 0, 2 );
|
50 |
add_filter( 'woocommerce_formatted_address_replacements', array( $this, 'set_formatted_address' ), 0, 2 );
|
51 |
+
|
52 |
+
// Support Checkout Field Managers (which are unable to map options to values)
|
53 |
+
add_filter( 'woocommerce_gzd_custom_title_field_value', array( $this, 'set_title_field_mapping_editors' ), 10, 1 );
|
54 |
+
|
55 |
// Add item desc to order
|
56 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
57 |
add_action( 'woocommerce_new_order_item', array( $this, 'set_order_item_meta_crud' ), 0, 3 );
|
58 |
} else {
|
59 |
add_action( 'woocommerce_order_add_product', array( $this, 'set_order_meta' ), 0, 5 );
|
60 |
+
}
|
61 |
|
62 |
add_filter( 'woocommerce_hidden_order_itemmeta', array( $this, 'set_order_meta_hidden' ), 0 );
|
63 |
|
89 |
|
90 |
if ( wc_gzd_is_parcel_delivery_data_transfer_checkbox_enabled() )
|
91 |
add_action( 'woocommerce_checkout_update_order_meta', array( $this, 'order_parcel_delivery_data_transfer' ), 10, 2 );
|
92 |
+
|
93 |
}
|
94 |
|
95 |
public function remove_cancel_button( $actions, $order ) {
|
263 |
'before' => 'first_name',
|
264 |
'type' => 'select',
|
265 |
'options' => array( 1 => __( 'Mr.', 'woocommerce-germanized' ), 2 => __( 'Ms.', 'woocommerce-germanized' ) ),
|
|
|
266 |
'label' => __( 'Title', 'woocommerce-germanized' ),
|
267 |
+
'show' => false,
|
268 |
);
|
269 |
|
270 |
}
|
279 |
);
|
280 |
|
281 |
}
|
282 |
+
|
283 |
+
$this->custom_fields_admin = apply_filters( 'woocommerce_gzd_custom_checkout_admin_fields', $this->custom_fields_admin, $this );
|
284 |
+
$this->custom_fields = apply_filters( 'woocommerce_gzd_custom_checkout_fields', $this->custom_fields, $this );
|
285 |
+
}
|
286 |
+
|
287 |
+
public function set_title_field_mapping_editors( $val ) {
|
288 |
+
|
289 |
+
$values = array(
|
290 |
+
__( 'Mr.', 'woocommerce-germanized' ) => 1,
|
291 |
+
__( 'Ms.', 'woocommerce-germanized' ) => 2,
|
292 |
+
);
|
293 |
+
|
294 |
+
if ( isset( $values[ $val ] ) )
|
295 |
+
return $values[ $val ];
|
296 |
+
|
297 |
+
return $val;
|
298 |
}
|
299 |
|
300 |
/**
|
406 |
|
407 |
if ( wc_gzd_get_crud_data( $order, 'billing_title' ) )
|
408 |
$fields[ 'title' ] = $this->get_customer_title( wc_gzd_get_crud_data( $order, 'billing_title' ) );
|
409 |
+
|
410 |
return $fields;
|
411 |
}
|
412 |
|
435 |
}
|
436 |
|
437 |
public function set_custom_fields( $fields = array(), $type = 'billing' ) {
|
438 |
+
|
439 |
if ( ! empty( $this->custom_fields ) ) {
|
440 |
+
|
441 |
foreach ( $this->custom_fields as $key => $custom_field ) {
|
442 |
+
|
443 |
+
$new = array();
|
444 |
+
|
445 |
if ( in_array( $type, $custom_field[ 'group' ] ) ) {
|
446 |
+
|
447 |
if ( ! empty( $fields ) ) {
|
448 |
+
|
449 |
foreach ( $fields as $name => $field ) {
|
450 |
+
|
451 |
+
if ( $name == $type . '_' . $custom_field[ 'before' ] && ! isset( $custom_field[ 'override' ] ) ) {
|
452 |
$new[ $type . '_' . $key ] = $custom_field;
|
453 |
+
}
|
454 |
+
|
455 |
$new[ $name ] = $field;
|
456 |
+
|
457 |
+
if ( $name == $type . '_' . $key && isset( $custom_field[ 'override' ] ) ) {
|
458 |
$new[ $name ] = array_merge( $field, $custom_field );
|
459 |
+
}
|
460 |
}
|
461 |
}
|
462 |
}
|
463 |
+
|
464 |
+
if ( ! empty( $new ) ) {
|
465 |
+
$fields = $new;
|
466 |
+
}
|
467 |
}
|
468 |
}
|
469 |
+
|
470 |
+
return $fields;
|
471 |
}
|
472 |
|
473 |
public function set_custom_fields_shipping( $fields ) {
|
474 |
return $this->set_custom_fields( $fields, 'shipping' );
|
475 |
}
|
476 |
|
477 |
+
public function set_custom_fields_admin( $fields = array(), $type = 'billing' ) {
|
478 |
$new = array();
|
479 |
+
|
480 |
if ( ! empty( $this->custom_fields_admin ) ) {
|
481 |
+
|
482 |
foreach ( $this->custom_fields_admin as $key => $custom_field ) {
|
483 |
+
|
484 |
+
$new = array();
|
485 |
+
|
486 |
+
if ( isset( $custom_field[ 'address_type' ] ) && $custom_field[ 'address_type' ] !== $type )
|
487 |
+
continue;
|
488 |
+
|
489 |
if ( ! empty( $fields ) ) {
|
490 |
+
|
491 |
foreach ( $fields as $name => $field ) {
|
492 |
if ( $name == $custom_field[ 'before' ] && ! isset( $custom_field[ 'override' ] ) )
|
493 |
$new[ $key ] = $custom_field;
|
494 |
+
|
495 |
$new[ $name ] = $field;
|
496 |
}
|
497 |
}
|
498 |
+
|
499 |
+
if ( ! empty( $new ) ) {
|
500 |
+
$fields = $new;
|
501 |
+
}
|
502 |
}
|
503 |
}
|
504 |
+
|
505 |
+
return $fields;
|
506 |
+
}
|
507 |
+
|
508 |
+
public function set_custom_fields_admin_billing( $fields = array() ) {
|
509 |
+
return $this->set_custom_fields_admin( $fields, 'billing' );
|
510 |
+
}
|
511 |
+
|
512 |
+
public function set_custom_fields_admin_shipping( $fields = array() ) {
|
513 |
+
return $this->set_custom_fields_admin( $fields, 'shipping' );
|
514 |
}
|
515 |
|
516 |
public function save_fields( $order_id ) {
|
517 |
$checkout = WC()->checkout();
|
518 |
+
|
519 |
if ( ! empty( $this->custom_fields ) ) {
|
520 |
foreach ( $this->custom_fields as $key => $custom_field ) {
|
521 |
if ( ! empty( $custom_field[ 'group' ] ) && ! isset( $custom_field[ 'override' ] ) ) {
|
522 |
foreach ( $custom_field[ 'group' ] as $group ) {
|
523 |
+
|
524 |
$val = ( isset( $checkout->posted[ $group . '_' . $key ] ) ? $checkout->posted[ $group . '_' . $key ] : '' );
|
525 |
+
|
526 |
if ( $group == 'shipping' || $group == 'billing' )
|
527 |
$val = $checkout->get_posted_address_data( $key, $group );
|
528 |
+
|
529 |
if ( ! empty( $val ) )
|
530 |
+
update_post_meta( $order_id, '_' . $group . '_' . $key, apply_filters( 'woocommerce_gzd_custom_' . $key . '_field_value', sanitize_text_field( $val ) ) );
|
531 |
}
|
532 |
}
|
533 |
}
|
includes/class-wc-gzd-dhl-parcel-shops.php
ADDED
@@ -0,0 +1,261 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) )
|
4 |
+
exit;
|
5 |
+
|
6 |
+
class WC_GZD_DHL_Parcel_Shops {
|
7 |
+
|
8 |
+
/**
|
9 |
+
* Single instance of WC_GZD_DHL_Parcel_Shops Class
|
10 |
+
*
|
11 |
+
* @var object
|
12 |
+
*/
|
13 |
+
protected static $_instance = null;
|
14 |
+
|
15 |
+
public static function instance( $plugin = null ) {
|
16 |
+
if ( is_null( self::$_instance ) ) {
|
17 |
+
self::$_instance = new self( $plugin );
|
18 |
+
}
|
19 |
+
|
20 |
+
return self::$_instance;
|
21 |
+
}
|
22 |
+
|
23 |
+
public function __construct() {
|
24 |
+
|
25 |
+
$this->address_hooks();
|
26 |
+
|
27 |
+
if ( $this->is_enabled() ) {
|
28 |
+
|
29 |
+
// Register fields before WC_GZD_Checkout is loaded
|
30 |
+
add_filter( 'woocommerce_gzd_custom_checkout_fields', array( $this, 'init_fields' ), 10, 1 );
|
31 |
+
add_filter( 'woocommerce_gzd_custom_checkout_admin_fields', array( $this, 'init_admin_fields' ), 10, 1 );
|
32 |
+
|
33 |
+
add_action( 'woocommerce_gzd_registered_scripts', array( $this, 'load_scripts' ), 10, 3 );
|
34 |
+
add_action( 'woocommerce_gzd_localized_scripts', array( $this, 'localize_scripts' ), 10, 1 );
|
35 |
+
|
36 |
+
add_action( 'woocommerce_checkout_process', array( $this, 'manipulate_checkout_fields' ), 10 );
|
37 |
+
add_action( 'woocommerce_after_checkout_validation', array( $this, 'validate_fields' ), 10, 1 );
|
38 |
+
|
39 |
+
// Customer fields
|
40 |
+
add_filter( 'woocommerce_customer_meta_fields', array( $this, 'init_profile_fields' ), 10, 1 );
|
41 |
+
|
42 |
+
if ( $this->is_finder_enabled() ) {
|
43 |
+
// Add Markup
|
44 |
+
add_filter( 'woocommerce_form_field_checkbox', array( $this, 'add_button_markup' ), 10, 4 );
|
45 |
+
add_action( 'wp_footer', array( $this, 'add_overlay_markup' ), 50 );
|
46 |
+
}
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
public function address_hooks() {
|
51 |
+
add_filter( 'woocommerce_order_formatted_shipping_address', array( $this, 'set_formatted_shipping_address' ), 20, 2 );
|
52 |
+
add_filter( 'woocommerce_order_formatted_billing_address', array( $this, 'set_formatted_billing_address' ), 20, 2 );
|
53 |
+
add_filter( 'woocommerce_formatted_address_replacements', array( $this, 'set_formatted_address' ), 20, 2 );
|
54 |
+
add_filter( 'woocommerce_localisation_address_formats', array( $this, 'set_address_format' ), 20 );
|
55 |
+
}
|
56 |
+
|
57 |
+
public function set_address_format( $formats ) {
|
58 |
+
|
59 |
+
foreach( $this->get_supported_countries() as $country ) {
|
60 |
+
$format = $formats[ $country ];
|
61 |
+
$format = str_replace( "{name}", "{name}\n{parcelshop_post_number}", $format );
|
62 |
+
$formats[ $country ] = $format;
|
63 |
+
}
|
64 |
+
|
65 |
+
return $formats;
|
66 |
+
}
|
67 |
+
|
68 |
+
public function set_formatted_shipping_address( $fields = array(), $order ) {
|
69 |
+
|
70 |
+
$fields[ 'parcelshop_post_number' ] = '';
|
71 |
+
|
72 |
+
if ( wc_gzd_get_crud_data( $order, 'shipping_parcelshop' ) ) {
|
73 |
+
$fields[ 'parcelshop_post_number' ] = wc_gzd_get_crud_data( $order, 'shipping_parcelshop_post_number' );
|
74 |
+
}
|
75 |
+
|
76 |
+
return $fields;
|
77 |
+
}
|
78 |
+
|
79 |
+
public function set_formatted_billing_address( $fields = array(), $order ) {
|
80 |
+
|
81 |
+
$fields[ 'parcelshop_post_number' ] = '';
|
82 |
+
|
83 |
+
return $fields;
|
84 |
+
}
|
85 |
+
|
86 |
+
public function set_formatted_address( $placeholder, $args ) {
|
87 |
+
if ( isset( $args[ 'parcelshop_post_number' ] ) ) {
|
88 |
+
$placeholder[ '{parcelshop_post_number}' ] = $args[ 'parcelshop_post_number' ];
|
89 |
+
$placeholder[ '{parcelshop_post_number_upper}' ] = strtoupper( $args[ 'parcelshop_post_number' ] );
|
90 |
+
}
|
91 |
+
return $placeholder;
|
92 |
+
}
|
93 |
+
|
94 |
+
public function init_fields( $fields ) {
|
95 |
+
|
96 |
+
$fields[ 'parcelshop' ] = array(
|
97 |
+
'type' => 'checkbox',
|
98 |
+
'required' => false,
|
99 |
+
'label' => __( 'Send to DHL Parcel Shop?', 'woocommerce-germanized' ),
|
100 |
+
'before' => 'address_1',
|
101 |
+
'group' => array( 'shipping' ),
|
102 |
+
'class' => array( 'form-row-wide', 'first-check' ),
|
103 |
+
);
|
104 |
+
|
105 |
+
$fields[ 'parcelshop_post_number' ] = array(
|
106 |
+
'type' => 'text',
|
107 |
+
'required' => true,
|
108 |
+
'label' => __( 'Postnumber', 'woocommerce-germanized' ),
|
109 |
+
'before' => 'address_1',
|
110 |
+
'group' => array( 'shipping' ),
|
111 |
+
'class' => array( 'form-row-wide' ),
|
112 |
+
);
|
113 |
+
|
114 |
+
return $fields;
|
115 |
+
}
|
116 |
+
|
117 |
+
public function init_profile_fields( $fields ) {
|
118 |
+
|
119 |
+
$fields[ 'shipping' ][ 'fields' ][ 'shipping_parcelshop' ] = array(
|
120 |
+
'label' => __( 'DHL Parcel Shop?', 'woocommerce-germanized' ),
|
121 |
+
'type' => 'select',
|
122 |
+
'options' => array( 0 => __( 'No', 'woocommerce-germanized' ), 1 => __( 'Yes', 'woocommerce-germanized' ) ),
|
123 |
+
'description' => __( 'Select whether delivery to parcel shop should be enabled.', 'woocommerce-germanized' ),
|
124 |
+
);
|
125 |
+
|
126 |
+
$fields[ 'shipping' ][ 'fields' ][ 'shipping_parcelshop_post_number' ] = array(
|
127 |
+
'label' => __( 'Postnumber', 'woocommerce-germanized' ),
|
128 |
+
'type' => 'text',
|
129 |
+
'description' => __( 'In case delivery to parcel shop is enabled please fill in the corresponding DHL post number.', 'woocommerce-germanized' ),
|
130 |
+
);
|
131 |
+
|
132 |
+
return $fields;
|
133 |
+
|
134 |
+
}
|
135 |
+
|
136 |
+
|
137 |
+
public function init_admin_fields( $fields ) {
|
138 |
+
|
139 |
+
$fields[ 'parcelshop_post_number' ] = array(
|
140 |
+
'type' => 'text',
|
141 |
+
'label' => __( 'Postnumber', 'woocommerce-germanized' ),
|
142 |
+
'before' => 'address_1',
|
143 |
+
'address_type' => 'shipping',
|
144 |
+
'show' => false,
|
145 |
+
);
|
146 |
+
|
147 |
+
return $fields;
|
148 |
+
}
|
149 |
+
|
150 |
+
public function is_enabled() {
|
151 |
+
return ( get_option( 'woocommerce_gzd_dhl_parcel_shops' ) === 'yes' );
|
152 |
+
}
|
153 |
+
|
154 |
+
public function is_finder_enabled() {
|
155 |
+
return ( get_option( 'woocommerce_gzd_dhl_parcel_shop_finder' ) === 'yes' );
|
156 |
+
}
|
157 |
+
|
158 |
+
public function manipulate_checkout_fields() {
|
159 |
+
if ( ! WC()->checkout()->get_value( 'shipping_parcelshop' ) ) {
|
160 |
+
$fields = WC()->checkout()->checkout_fields;
|
161 |
+
$fields[ 'shipping' ][ 'shipping_parcelshop_post_number' ][ 'required' ] = false;
|
162 |
+
WC()->checkout()->checkout_fields = $fields;
|
163 |
+
} else {
|
164 |
+
$fields = WC()->checkout()->checkout_fields;
|
165 |
+
$fields[ 'shipping' ][ 'shipping_address_1' ][ 'label' ] = __( 'Parcel Shop', 'wooocommerce-germanized' );
|
166 |
+
WC()->checkout()->checkout_fields = $fields;
|
167 |
+
}
|
168 |
+
}
|
169 |
+
|
170 |
+
public function validate_fields( $data ) {
|
171 |
+
|
172 |
+
$required = array(
|
173 |
+
'shipping_parcelshop_post_number',
|
174 |
+
'shipping_parcelshop'
|
175 |
+
);
|
176 |
+
|
177 |
+
foreach( $required as $req ) {
|
178 |
+
if ( ! isset( $data[ $req ] ) || empty( $data[ $req ] ) )
|
179 |
+
return;
|
180 |
+
}
|
181 |
+
|
182 |
+
$is_valid_postnumber = (bool) preg_match( '/^([0-9]*)$/', $data[ 'shipping_parcelshop_post_number' ] );
|
183 |
+
|
184 |
+
if ( ! $is_valid_postnumber ) {
|
185 |
+
wc_add_notice( __( 'Your PostNumber should contain numbers only', 'woocommerce-germanized' ), 'error' );
|
186 |
+
}
|
187 |
+
|
188 |
+
$is_valid_shipping_country = in_array( $data[ 'shipping_country' ], $this->get_supported_countries() );
|
189 |
+
|
190 |
+
if ( ! $is_valid_shipping_country ) {
|
191 |
+
wc_add_notice( sprintf( __( 'Parcel Shop Delivery is only supported in: %s.', 'woocommerce-germanized' ), implode( ', ', $this->get_supported_countries( true ) ) ), 'error' );
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
public function load_scripts( $suffix, $frontend_script_path, $assets_path ) {
|
196 |
+
|
197 |
+
if ( is_checkout() ) {
|
198 |
+
|
199 |
+
wp_enqueue_script( 'wc-gzd-checkout-dhl-parcel-shops', $frontend_script_path . 'checkout-dhl-parcel-shops' . $suffix . '.js', array(
|
200 |
+
'jquery',
|
201 |
+
'wc-checkout'
|
202 |
+
), WC_GERMANIZED_VERSION, true );
|
203 |
+
|
204 |
+
if ( $this->is_finder_enabled() ) {
|
205 |
+
wp_register_style( 'wc-gzd-checkout-dhl-parcel-shops-finder', $assets_path . 'css/woocommerce-gzd-dhl-parcel-shop-finder' . $suffix . '.css', '', WC_GERMANIZED_VERSION, 'all' );
|
206 |
+
wp_enqueue_style( 'wc-gzd-checkout-dhl-parcel-shops-finder' );
|
207 |
+
}
|
208 |
+
}
|
209 |
+
}
|
210 |
+
|
211 |
+
public function localize_scripts( $assets_path ) {
|
212 |
+
|
213 |
+
$lang = substr( get_bloginfo( "language" ), 0, 2 );
|
214 |
+
|
215 |
+
if ( wp_script_is( 'wc-gzd-checkout-dhl-parcel-shops' ) ) {
|
216 |
+
wp_localize_script( 'wc-gzd-checkout-dhl-parcel-shops', 'wc_gzd_dhl_parcel_shops_params', apply_filters( 'wc_gzd_dhl_parcel_shops_params', array(
|
217 |
+
'address_field_title' => __( 'Parcel Shop', 'woocommerce-germanized' ),
|
218 |
+
'address_field_placeholder' => __( 'Parcel Shop', 'woocommerce-germanized' ),
|
219 |
+
'supported_countries' => $this->get_supported_countries(),
|
220 |
+
'enable_finder' => $this->is_finder_enabled(),
|
221 |
+
'button_wrapper' => '#wc-gzd-parcel-shop-finder-button-wrapper',
|
222 |
+
'iframe_wrapper' => '#wc-gzd-parcel-shop-finder-iframe-wrapper',
|
223 |
+
'iframe_src' => '//parcelshopfinder.dhlparcel.com/partnerservice.html?setLng=' . $lang,
|
224 |
+
'shipping_country_error' => sprintf( __( 'Parcel Shop Delivery is only supported in: %s.', 'woocommerce-germanized' ), implode( ', ', $this->get_supported_countries( true ) ) ),
|
225 |
+
) ) );
|
226 |
+
}
|
227 |
+
}
|
228 |
+
|
229 |
+
public function add_overlay_markup() {
|
230 |
+
if ( ! is_checkout() )
|
231 |
+
return;
|
232 |
+
|
233 |
+
wc_get_template( 'checkout/dhl-parcel-shop-finder.php' );
|
234 |
+
}
|
235 |
+
|
236 |
+
public function add_button_markup( $field, $key, $args, $value ) {
|
237 |
+
|
238 |
+
if ( 'shipping_parcelshop' === $key ) {
|
239 |
+
if ( substr( $field, -4 ) === "</p>" ) {
|
240 |
+
$field = substr( $field, 0, -4 );
|
241 |
+
$field .= apply_filters( 'woocommerce_gzd_dhl_parcel_finder_button_html', '<span id="wc-gzd-parcel-shop-finder-button-wrapper"><a class="wc-gzd-parcel-finder-open-button" href="#">' . __( 'Parcel Shop Finder', 'woocommerce-germanized' ) . '</a></span></p><div class="clear"></div>' );
|
242 |
+
}
|
243 |
+
}
|
244 |
+
|
245 |
+
return $field;
|
246 |
+
}
|
247 |
+
|
248 |
+
public function get_supported_countries( $as_names = false ) {
|
249 |
+
|
250 |
+
$codes = apply_filters( 'woocommerce_gzd_dhl_parcel_shops_countries', (array) get_option( 'woocommerce_gzd_dhl_parcel_shop_supported_countries', array( 'DE', 'AT' ) ) );
|
251 |
+
|
252 |
+
if ( $as_names ) {
|
253 |
+
$names = WC()->countries->get_countries();
|
254 |
+
return array_intersect_key( $names, array_flip( $codes ) );
|
255 |
+
} else {
|
256 |
+
return $codes;
|
257 |
+
}
|
258 |
+
}
|
259 |
+
}
|
260 |
+
|
261 |
+
WC_GZD_DHL_Parcel_Shops::instance();
|
includes/class-wc-gzd-emails.php
CHANGED
@@ -39,10 +39,21 @@ class WC_GZD_Emails {
|
|
39 |
// Change email template path if is germanized email template
|
40 |
add_filter( 'woocommerce_template_directory', array( $this, 'set_woocommerce_template_dir' ), 10, 2 );
|
41 |
|
|
|
|
|
|
|
42 |
if ( is_admin() )
|
43 |
$this->admin_hooks();
|
44 |
}
|
45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
private function set_mailer( $mailer = null ) {
|
47 |
if ( $mailer )
|
48 |
$this->mailer = $mailer;
|
@@ -315,7 +326,7 @@ class WC_GZD_Emails {
|
|
315 |
}
|
316 |
|
317 |
public function get_current_email_object() {
|
318 |
-
|
319 |
if ( isset( $GLOBALS[ 'wc_gzd_template_name' ] ) && ! empty( $GLOBALS[ 'wc_gzd_template_name' ] ) ) {
|
320 |
|
321 |
$object = $this->get_email_instance_by_tpl( $GLOBALS[ 'wc_gzd_template_name' ] );
|
@@ -338,21 +349,30 @@ class WC_GZD_Emails {
|
|
338 |
$this->set_mailer();
|
339 |
|
340 |
$found_mails = array();
|
|
|
341 |
|
342 |
foreach ( $tpls as $tpl ) {
|
343 |
|
344 |
$tpl = apply_filters( 'woocommerce_germanized_email_template_name', str_replace( array( 'admin-', '-' ), array( '', '_' ), basename( $tpl, '.php' ) ), $tpl );
|
345 |
-
$mails = $this->mailer->get_emails();
|
346 |
|
347 |
if ( ! empty( $mails ) ) {
|
|
|
348 |
foreach ( $mails as $mail ) {
|
349 |
-
|
350 |
-
|
|
|
|
|
|
|
|
|
|
|
351 |
}
|
352 |
}
|
353 |
}
|
354 |
-
|
|
|
355 |
return $found_mails[ sizeof( $found_mails ) - 1 ];
|
|
|
|
|
356 |
return null;
|
357 |
}
|
358 |
|
39 |
// Change email template path if is germanized email template
|
40 |
add_filter( 'woocommerce_template_directory', array( $this, 'set_woocommerce_template_dir' ), 10, 2 );
|
41 |
|
42 |
+
// Map partially refunded order mail template to correct email instance
|
43 |
+
add_filter( 'woocommerce_gzd_email_template_id_comparison', array( $this, 'check_for_partial_refund_mail' ), 10, 3 );
|
44 |
+
|
45 |
if ( is_admin() )
|
46 |
$this->admin_hooks();
|
47 |
}
|
48 |
|
49 |
+
public function check_for_partial_refund_mail( $result, $mail_id, $tpl ) {
|
50 |
+
|
51 |
+
if ( $mail_id === 'customer_partially_refunded_order' && $tpl === 'customer_refunded_order' )
|
52 |
+
return true;
|
53 |
+
|
54 |
+
return $result;
|
55 |
+
}
|
56 |
+
|
57 |
private function set_mailer( $mailer = null ) {
|
58 |
if ( $mailer )
|
59 |
$this->mailer = $mailer;
|
326 |
}
|
327 |
|
328 |
public function get_current_email_object() {
|
329 |
+
|
330 |
if ( isset( $GLOBALS[ 'wc_gzd_template_name' ] ) && ! empty( $GLOBALS[ 'wc_gzd_template_name' ] ) ) {
|
331 |
|
332 |
$object = $this->get_email_instance_by_tpl( $GLOBALS[ 'wc_gzd_template_name' ] );
|
349 |
$this->set_mailer();
|
350 |
|
351 |
$found_mails = array();
|
352 |
+
$mails = $this->mailer->get_emails();
|
353 |
|
354 |
foreach ( $tpls as $tpl ) {
|
355 |
|
356 |
$tpl = apply_filters( 'woocommerce_germanized_email_template_name', str_replace( array( 'admin-', '-' ), array( '', '_' ), basename( $tpl, '.php' ) ), $tpl );
|
|
|
357 |
|
358 |
if ( ! empty( $mails ) ) {
|
359 |
+
|
360 |
foreach ( $mails as $mail ) {
|
361 |
+
|
362 |
+
if ( is_object( $mail ) ) {
|
363 |
+
|
364 |
+
if ( apply_filters( 'woocommerce_gzd_email_template_id_comparison', ( $mail->id === $tpl ), $mail->id, $tpl ) ) {
|
365 |
+
array_push( $found_mails, $mail );
|
366 |
+
}
|
367 |
+
}
|
368 |
}
|
369 |
}
|
370 |
}
|
371 |
+
|
372 |
+
if ( ! empty( $found_mails ) ) {
|
373 |
return $found_mails[ sizeof( $found_mails ) - 1 ];
|
374 |
+
}
|
375 |
+
|
376 |
return null;
|
377 |
}
|
378 |
|
includes/class-wc-gzd-hook-priorities.php
CHANGED
@@ -78,10 +78,10 @@ class WC_GZD_Hook_Priorities {
|
|
78 |
'single_small_business_info' => 30,
|
79 |
'single_product_units' => 5,
|
80 |
'loop_price_unit' => 10,
|
81 |
-
'loop_product_units' => 5,
|
82 |
'loop_tax_info' => 6,
|
83 |
'loop_shipping_costs_info' => 7,
|
84 |
'loop_delivery_time_info' => 8,
|
|
|
85 |
'cart_subtotal_unit_price' => 0,
|
86 |
'cart_product_unit_price' => 0,
|
87 |
'cart_product_units' => 10,
|
78 |
'single_small_business_info' => 30,
|
79 |
'single_product_units' => 5,
|
80 |
'loop_price_unit' => 10,
|
|
|
81 |
'loop_tax_info' => 6,
|
82 |
'loop_shipping_costs_info' => 7,
|
83 |
'loop_delivery_time_info' => 8,
|
84 |
+
'loop_product_units' => 9,
|
85 |
'cart_subtotal_unit_price' => 0,
|
86 |
'cart_product_unit_price' => 0,
|
87 |
'cart_product_units' => 10,
|
includes/class-wc-gzd-install.php
CHANGED
@@ -118,7 +118,7 @@ class WC_GZD_Install {
|
|
118 |
|
119 |
load_textdomain( 'woocommerce-germanized', $mofile );
|
120 |
|
121 |
-
if ( !
|
122 |
deactivate_plugins( WC_GERMANIZED_PLUGIN_FILE );
|
123 |
wp_die( sprintf( __( 'Please install <a href="%s" target="_blank">WooCommerce</a> before installing WooCommerce Germanized. Thank you!', 'woocommerce-germanized' ), 'http://wordpress.org/plugins/woocommerce/' ) );
|
124 |
}
|
@@ -307,16 +307,17 @@ class WC_GZD_Install {
|
|
307 |
wp_schedule_event( time(), 'daily', 'woocommerce_gzd_ekomi' );
|
308 |
}
|
309 |
|
310 |
-
|
311 |
-
$units =
|
312 |
if ( ! empty( $units ) ) {
|
313 |
-
foreach ( $units as $slug => $unit )
|
314 |
wp_insert_term( $unit, 'product_unit', array( 'slug' => $slug ) );
|
|
|
315 |
}
|
316 |
}
|
317 |
|
318 |
-
|
319 |
-
$labels =
|
320 |
if ( ! empty( $labels ) ) {
|
321 |
foreach ( $labels as $slug => $unit )
|
322 |
wp_insert_term( $unit, 'product_price_label', array( 'slug' => $slug ) );
|
118 |
|
119 |
load_textdomain( 'woocommerce-germanized', $mofile );
|
120 |
|
121 |
+
if ( ! wc_gzd_get_dependencies()->is_woocommerce_activated() ) {
|
122 |
deactivate_plugins( WC_GERMANIZED_PLUGIN_FILE );
|
123 |
wp_die( sprintf( __( 'Please install <a href="%s" target="_blank">WooCommerce</a> before installing WooCommerce Germanized. Thank you!', 'woocommerce-germanized' ), 'http://wordpress.org/plugins/woocommerce/' ) );
|
124 |
}
|
307 |
wp_schedule_event( time(), 'daily', 'woocommerce_gzd_ekomi' );
|
308 |
}
|
309 |
|
310 |
+
public static function create_units() {
|
311 |
+
$units = include( WC_Germanized()->plugin_path() . '/i18n/units.php' );
|
312 |
if ( ! empty( $units ) ) {
|
313 |
+
foreach ( $units as $slug => $unit ) {
|
314 |
wp_insert_term( $unit, 'product_unit', array( 'slug' => $slug ) );
|
315 |
+
}
|
316 |
}
|
317 |
}
|
318 |
|
319 |
+
public static function create_labels() {
|
320 |
+
$labels = include( WC_Germanized()->plugin_path() . '/i18n/labels.php' );
|
321 |
if ( ! empty( $labels ) ) {
|
322 |
foreach ( $labels as $slug => $unit )
|
323 |
wp_insert_term( $unit, 'product_price_label', array( 'slug' => $slug ) );
|
includes/class-wc-gzd-product-variable.php
CHANGED
@@ -84,6 +84,16 @@ class WC_GZD_Product_Variable extends WC_GZD_Product {
|
|
84 |
return apply_filters( 'woocommerce_get_price_html', $price, $this );
|
85 |
}
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
/**
|
88 |
* Returns the price in html format.
|
89 |
*
|
@@ -104,7 +114,7 @@ class WC_GZD_Product_Variable extends WC_GZD_Product {
|
|
104 |
$min_price = current( $prices['price'] );
|
105 |
$max_price = end( $prices['price'] );
|
106 |
|
107 |
-
if (
|
108 |
|
109 |
if ( $min_price !== $max_price ) {
|
110 |
$price = apply_filters( 'woocommerce_gzd_variable_unit_price_html', wc_format_price_range( $min_price, $max_price ), $this );
|
84 |
return apply_filters( 'woocommerce_get_price_html', $price, $this );
|
85 |
}
|
86 |
|
87 |
+
public function get_price_html_from_to( $from, $to, $show_labels = true ) {
|
88 |
+
|
89 |
+
$sale_label = ( $show_labels ? $this->get_sale_price_label() : '' );
|
90 |
+
$sale_regular_label = ( $show_labels ? $this->get_sale_price_regular_label() : '' );
|
91 |
+
|
92 |
+
$price = ( ! empty( $sale_label ) ? '<span class="wc-gzd-sale-price-label">' . $sale_label . '</span>' : '' ) . ' <del>' . ( ( is_numeric( $from ) ) ? wc_price( $from ) : $from ) . '</del> ' . ( ! empty( $sale_regular_label ) ? '<span class="wc-gzd-sale-price-label wc-gzd-sale-price-regular-label">' . $sale_regular_label . '</span> ' : '' ) . '<ins>' . ( ( is_numeric( $to ) ) ? wc_price( $to ) : $to ) . '</ins>';
|
93 |
+
|
94 |
+
return apply_filters( 'woocommerce_germanized_get_price_html_from_to', $price, $from, $to, $this );
|
95 |
+
}
|
96 |
+
|
97 |
/**
|
98 |
* Returns the price in html format.
|
99 |
*
|
114 |
$min_price = current( $prices['price'] );
|
115 |
$max_price = end( $prices['price'] );
|
116 |
|
117 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
118 |
|
119 |
if ( $min_price !== $max_price ) {
|
120 |
$price = apply_filters( 'woocommerce_gzd_variable_unit_price_html', wc_format_price_range( $min_price, $max_price ), $this );
|
includes/class-wc-gzd-virtual-vat-helper.php
CHANGED
@@ -30,7 +30,9 @@ class WC_GZD_Virtual_VAT_Helper {
|
|
30 |
|
31 |
$location = WC_Tax::get_tax_location( $tax_class );
|
32 |
|
33 |
-
|
|
|
|
|
34 |
|
35 |
list( $country, $state, $postcode, $city ) = $location;
|
36 |
|
@@ -41,11 +43,9 @@ class WC_GZD_Virtual_VAT_Helper {
|
|
41 |
'city' => $city,
|
42 |
'tax_class' => $tax_class
|
43 |
) );
|
44 |
-
|
45 |
}
|
46 |
|
47 |
return $rates;
|
48 |
-
|
49 |
}
|
50 |
|
51 |
}
|
30 |
|
31 |
$location = WC_Tax::get_tax_location( $tax_class );
|
32 |
|
33 |
+
$virtual_vat_applicable = in_array( $tax_class, array( 'virtual-rate', 'virtual-reduced-rate' ) ) && isset( $location[0] ) && sizeof( $location ) === 4 && $location[0] !== WC()->countries->get_base_country();
|
34 |
+
|
35 |
+
if ( apply_filters( 'woocommerce_gzd_force_tax_location_vat_base_rates', $virtual_vat_applicable, $tax_class, $location ) ) {
|
36 |
|
37 |
list( $country, $state, $postcode, $city ) = $location;
|
38 |
|
43 |
'city' => $city,
|
44 |
'tax_class' => $tax_class
|
45 |
) );
|
|
|
46 |
}
|
47 |
|
48 |
return $rates;
|
|
|
49 |
}
|
50 |
|
51 |
}
|
includes/compatibility/class-wc-gzd-compatibility-wpml.php
CHANGED
@@ -21,7 +21,7 @@ class WC_GZD_Compatibility_Wpml extends WC_GZD_Compatibility {
|
|
21 |
}
|
22 |
|
23 |
public function is_activated() {
|
24 |
-
return parent::is_activated() &&
|
25 |
}
|
26 |
|
27 |
public function load() {
|
21 |
}
|
22 |
|
23 |
public function is_activated() {
|
24 |
+
return parent::is_activated() && wc_gzd_get_dependencies()->is_plugin_activated( 'woocommerce-multilingual/wpml-woocommerce.php' );
|
25 |
}
|
26 |
|
27 |
public function load() {
|
includes/gateways/direct-debit/libraries/php-sepa-xml/.travis.yml
DELETED
@@ -1,14 +0,0 @@
|
|
1 |
-
language: php
|
2 |
-
|
3 |
-
php:
|
4 |
-
- 5.3
|
5 |
-
- 5.4
|
6 |
-
- 5.5
|
7 |
-
- 5.6
|
8 |
-
- 7.0
|
9 |
-
|
10 |
-
before_script:
|
11 |
-
- composer install
|
12 |
-
|
13 |
-
script:
|
14 |
-
- ./bin/phpunit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/updates/woocommerce-gzd-update-1.8.0.php
CHANGED
@@ -1,5 +1,10 @@
|
|
1 |
<?php
|
2 |
|
|
|
|
|
|
|
|
|
|
|
3 |
// Insert complaints shortcode in terms (if existent)
|
4 |
$terms = wc_get_page_id( 'terms' );
|
5 |
|
1 |
<?php
|
2 |
|
3 |
+
// Get all variable products
|
4 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
5 |
+
exit;
|
6 |
+
}
|
7 |
+
|
8 |
// Insert complaints shortcode in terms (if existent)
|
9 |
$terms = wc_get_page_id( 'terms' );
|
10 |
|
includes/wc-gzd-cart-functions.php
CHANGED
@@ -369,7 +369,11 @@ function wc_gzd_get_legal_text_service_email_notice() {
|
|
369 |
return $text;
|
370 |
}
|
371 |
|
372 |
-
function wc_gzd_get_chosen_shipping_rates() {
|
|
|
|
|
|
|
|
|
373 |
|
374 |
$packages = WC()->shipping->get_packages();
|
375 |
$shipping_methods = (array) WC()->session->get( 'chosen_shipping_methods' );
|
@@ -377,7 +381,11 @@ function wc_gzd_get_chosen_shipping_rates() {
|
|
377 |
|
378 |
foreach ( $packages as $i => $package ) {
|
379 |
if ( isset( $shipping_methods[ $i ] ) && isset( $package['rates'][ $shipping_methods[ $i ] ] ) ) {
|
380 |
-
|
|
|
|
|
|
|
|
|
381 |
}
|
382 |
}
|
383 |
|
369 |
return $text;
|
370 |
}
|
371 |
|
372 |
+
function wc_gzd_get_chosen_shipping_rates( $args = array() ) {
|
373 |
+
|
374 |
+
$args = wp_parse_args( $args, array(
|
375 |
+
'value' => '',
|
376 |
+
) );
|
377 |
|
378 |
$packages = WC()->shipping->get_packages();
|
379 |
$shipping_methods = (array) WC()->session->get( 'chosen_shipping_methods' );
|
381 |
|
382 |
foreach ( $packages as $i => $package ) {
|
383 |
if ( isset( $shipping_methods[ $i ] ) && isset( $package['rates'][ $shipping_methods[ $i ] ] ) ) {
|
384 |
+
if ( empty( $args[ 'value' ] ) ) {
|
385 |
+
array_push( $rates, $package['rates'][ $shipping_methods[ $i ] ] );
|
386 |
+
} else {
|
387 |
+
array_push( $rates, $package['rates'][ $shipping_methods[ $i ] ]->{$args['value']} );
|
388 |
+
}
|
389 |
}
|
390 |
}
|
391 |
|
includes/wc-gzd-core-functions.php
CHANGED
@@ -12,6 +12,10 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
12 |
|
13 |
include( 'wc-gzd-product-functions.php' );
|
14 |
|
|
|
|
|
|
|
|
|
15 |
function wc_gzd_send_instant_order_confirmation() {
|
16 |
return ( apply_filters( 'woocommerce_gzd_instant_order_confirmation', true ) && ( 'yes' !== get_option( 'woocommerce_gzd_disable_instant_order_confirmation' ) ) );
|
17 |
}
|
12 |
|
13 |
include( 'wc-gzd-product-functions.php' );
|
14 |
|
15 |
+
function wc_gzd_get_dependencies( $instance = null ) {
|
16 |
+
return apply_filters( 'woocommerce_gzd_dependencies_instance', WC_GZD_Dependencies::instance( $instance ) );
|
17 |
+
}
|
18 |
+
|
19 |
function wc_gzd_send_instant_order_confirmation() {
|
20 |
return ( apply_filters( 'woocommerce_gzd_instant_order_confirmation', true ) && ( 'yes' !== get_option( 'woocommerce_gzd_disable_instant_order_confirmation' ) ) );
|
21 |
}
|
includes/wc-gzd-legacy-functions.php
CHANGED
@@ -21,9 +21,9 @@ function wc_gzd_get_crud_data( $object, $key ) {
|
|
21 |
$getter = substr( $key, 0, 3 ) === "get" ? $key : "get_$key";
|
22 |
$key = substr( $key, 0, 3 ) === "get" ? substr( $key, 3 ) : $key;
|
23 |
|
24 |
-
if ( 'id' === $key && is_callable( array( $object, 'is_type' ) ) && $object->is_type( 'variation' ) && !
|
25 |
$key = 'variation_id';
|
26 |
-
} else if ( 'parent' === $key && is_callable( array( $object, 'is_type' ) ) && $object->is_type( 'variation' ) && !
|
27 |
// Set getter to parent so that it is not being used for pre 2.7
|
28 |
$key = 'id';
|
29 |
$getter = 'parent';
|
@@ -46,7 +46,7 @@ function wc_gzd_get_crud_data( $object, $key ) {
|
|
46 |
if ( $reflection->isPublic() ) {
|
47 |
$value = $object->{$getter}();
|
48 |
}
|
49 |
-
} else if (
|
50 |
if ( substr( $key, 0, 1 ) !== '_' )
|
51 |
$key = '_' . $key;
|
52 |
|
@@ -78,19 +78,19 @@ function wc_gzd_get_price_excluding_tax( $product, $args = array() ) {
|
|
78 |
}
|
79 |
|
80 |
function wc_gzd_get_variation( $parent, $variation ) {
|
81 |
-
if (
|
82 |
return wc_get_product( $variation );
|
83 |
return $parent->get_child( $variation );
|
84 |
}
|
85 |
|
86 |
function wc_gzd_get_order_currency( $order ) {
|
87 |
-
if (
|
88 |
return $order->get_currency();
|
89 |
return $order->get_order_currency();
|
90 |
}
|
91 |
|
92 |
function wc_gzd_reduce_order_stock( $order_id ) {
|
93 |
-
if (
|
94 |
wc_reduce_stock_levels($order_id);
|
95 |
} else {
|
96 |
$order = wc_get_order( $order_id );
|
21 |
$getter = substr( $key, 0, 3 ) === "get" ? $key : "get_$key";
|
22 |
$key = substr( $key, 0, 3 ) === "get" ? substr( $key, 3 ) : $key;
|
23 |
|
24 |
+
if ( 'id' === $key && is_callable( array( $object, 'is_type' ) ) && $object->is_type( 'variation' ) && ! wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
25 |
$key = 'variation_id';
|
26 |
+
} else if ( 'parent' === $key && is_callable( array( $object, 'is_type' ) ) && $object->is_type( 'variation' ) && ! wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
27 |
// Set getter to parent so that it is not being used for pre 2.7
|
28 |
$key = 'id';
|
29 |
$getter = 'parent';
|
46 |
if ( $reflection->isPublic() ) {
|
47 |
$value = $object->{$getter}();
|
48 |
}
|
49 |
+
} else if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
50 |
if ( substr( $key, 0, 1 ) !== '_' )
|
51 |
$key = '_' . $key;
|
52 |
|
78 |
}
|
79 |
|
80 |
function wc_gzd_get_variation( $parent, $variation ) {
|
81 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() )
|
82 |
return wc_get_product( $variation );
|
83 |
return $parent->get_child( $variation );
|
84 |
}
|
85 |
|
86 |
function wc_gzd_get_order_currency( $order ) {
|
87 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() )
|
88 |
return $order->get_currency();
|
89 |
return $order->get_order_currency();
|
90 |
}
|
91 |
|
92 |
function wc_gzd_reduce_order_stock( $order_id ) {
|
93 |
+
if ( wc_gzd_get_dependencies()->woocommerce_version_supports_crud() ) {
|
94 |
wc_reduce_stock_levels($order_id);
|
95 |
} else {
|
96 |
$order = wc_get_order( $order_id );
|
includes/wc-gzd-template-functions.php
CHANGED
@@ -268,7 +268,7 @@ if ( ! function_exists( 'woocommerce_gzd_checkout_validation' ) ) {
|
|
268 |
if ( get_option( 'woocommerce_gzd_checkout_legal_service_checkbox' ) === 'yes' && $is_service && ! isset( $_POST[ 'service-revocate' ] ) )
|
269 |
wc_add_notice( wc_gzd_get_legal_text_service_error(), 'error' );
|
270 |
|
271 |
-
if ( ( wc_gzd_is_parcel_delivery_data_transfer_checkbox_enabled() && get_option( 'woocommerce_gzd_checkout_legal_parcel_delivery_checkbox_required' ) === 'yes' ) && ! isset( $_POST[ 'parcel-delivery' ] ) )
|
272 |
wc_add_notice( __( 'Please accept our parcel delivery agreement', 'woocommerce-germanized' ), 'error' );
|
273 |
}
|
274 |
}
|
268 |
if ( get_option( 'woocommerce_gzd_checkout_legal_service_checkbox' ) === 'yes' && $is_service && ! isset( $_POST[ 'service-revocate' ] ) )
|
269 |
wc_add_notice( wc_gzd_get_legal_text_service_error(), 'error' );
|
270 |
|
271 |
+
if ( ( wc_gzd_is_parcel_delivery_data_transfer_checkbox_enabled( wc_gzd_get_chosen_shipping_rates( array( 'value' => 'method_id' ) ) ) && get_option( 'woocommerce_gzd_checkout_legal_parcel_delivery_checkbox_required' ) === 'yes' ) && ! isset( $_POST[ 'parcel-delivery' ] ) )
|
272 |
wc_add_notice( __( 'Please accept our parcel delivery agreement', 'woocommerce-germanized' ), 'error' );
|
273 |
}
|
274 |
}
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: vendidero
|
|
3 |
Tags: woocommerce, german market, german, germany, deutsch, deutschland, de, de_DE, shop, commerce, e-commerce, ecommerce, woothemes, sepa, invoice
|
4 |
Requires at least: 3.8
|
5 |
Tested up to: 4.7
|
6 |
-
Stable tag: 1.8.
|
7 |
License: GPLv3
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
@@ -39,6 +39,7 @@ Furthermore we have customized the checkout to make your WooCommerce Shop meet t
|
|
39 |
* Payment Gateway Fees
|
40 |
* Online Revocation Form
|
41 |
* Sale Price Labels
|
|
|
42 |
|
43 |
= Certified by Trusted Shops =
|
44 |
WooCommerce Germanized has been approved by Trusted Shops and therefor offers best technical conditions to operate a legally certain Online Shop in Germany.
|
@@ -88,6 +89,10 @@ Starting with version 1.6 one may deactivate the checkout for inactive customers
|
|
88 |
By default WooCommerce does not offer a distinction between receiving and confirming the order. WooCommerce Germanized Pro offers a feature to manually examine orders before confirming them to the customer.
|
89 |
Shop managers may check order details and then manually confirm the order through a Button in the WooCommerce Backend.
|
90 |
|
|
|
|
|
|
|
|
|
91 |
= eKomi Integration =
|
92 |
Shop managers who are using eKomi as a Review Management Service may easily integrate it's features within WooCommerce.
|
93 |
Easily set up eKomi by adapting a few Settings within WooCommerce Germanized.
|
@@ -98,7 +103,7 @@ Easily set up eKomi by adapting a few Settings within WooCommerce Germanized.
|
|
98 |
|
99 |
* WordPress 3.8 or newer
|
100 |
* WooCommerce 2.4 (newest version recommended)
|
101 |
-
* PHP Version 5.
|
102 |
|
103 |
= Automatic Installation =
|
104 |
|
@@ -147,6 +152,11 @@ Professional Support via Ticket is being offered to [Professional Users](https:/
|
|
147 |
Unfortunately not every Theme does implement WooCommerce in the way it's meant to be or differs from the original structure which leads to layout and/or compatibility
|
148 |
issues. Out of that reason we have developed [VendiPro](https://vendidero.de/vendipro) which perfectly fits all Germanized Options and is optimized for German Market.
|
149 |
|
|
|
|
|
|
|
|
|
|
|
150 |
= Want to file a Bug or improve Germanized? =
|
151 |
|
152 |
Bug reports may be filed via our [GitHub repository](https://github.com/vendidero/woocommerce-germanized).
|
@@ -157,6 +167,13 @@ Bug reports may be filed via our [GitHub repository](https://github.com/vendider
|
|
157 |
|
158 |
== Changelog ==
|
159 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
= 1.8.3 =
|
161 |
* Fix - Is empty check in 1.8.2
|
162 |
* Fix - API free shipping
|
3 |
Tags: woocommerce, german market, german, germany, deutsch, deutschland, de, de_DE, shop, commerce, e-commerce, ecommerce, woothemes, sepa, invoice
|
4 |
Requires at least: 3.8
|
5 |
Tested up to: 4.7
|
6 |
+
Stable tag: 1.8.4
|
7 |
License: GPLv3
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
39 |
* Payment Gateway Fees
|
40 |
* Online Revocation Form
|
41 |
* Sale Price Labels
|
42 |
+
* Delivery to DHL Parcel Shops or Pick-Up Stations
|
43 |
|
44 |
= Certified by Trusted Shops =
|
45 |
WooCommerce Germanized has been approved by Trusted Shops and therefor offers best technical conditions to operate a legally certain Online Shop in Germany.
|
89 |
By default WooCommerce does not offer a distinction between receiving and confirming the order. WooCommerce Germanized Pro offers a feature to manually examine orders before confirming them to the customer.
|
90 |
Shop managers may check order details and then manually confirm the order through a Button in the WooCommerce Backend.
|
91 |
|
92 |
+
= Delivery to DHL Parcel Shops =
|
93 |
+
You may optionally choose to offer delivery to DHL parcel shops or pick-up stations. Customers may find a parcel shop nearby by embedding an overlay of the DHL search API.
|
94 |
+
On choosing a parcel shop within the overlay the corresponding data is automatically added to the checkout fields.
|
95 |
+
|
96 |
= eKomi Integration =
|
97 |
Shop managers who are using eKomi as a Review Management Service may easily integrate it's features within WooCommerce.
|
98 |
Easily set up eKomi by adapting a few Settings within WooCommerce Germanized.
|
103 |
|
104 |
* WordPress 3.8 or newer
|
105 |
* WooCommerce 2.4 (newest version recommended)
|
106 |
+
* PHP Version 5.3 or newer
|
107 |
|
108 |
= Automatic Installation =
|
109 |
|
152 |
Unfortunately not every Theme does implement WooCommerce in the way it's meant to be or differs from the original structure which leads to layout and/or compatibility
|
153 |
issues. Out of that reason we have developed [VendiPro](https://vendidero.de/vendipro) which perfectly fits all Germanized Options and is optimized for German Market.
|
154 |
|
155 |
+
= Email Attachments not showing in Order Confirmation Email =
|
156 |
+
|
157 |
+
In most times you have a wrong configuration within your Germanized Email settings. The order confirmation email sent to the customer after an order has been made is called "Processing Order". The email called "New Order" is the email
|
158 |
+
sent to the Administrator which serves as a notification only - so make sure you have "Processing Order" selected within the Germanized settings.
|
159 |
+
|
160 |
= Want to file a Bug or improve Germanized? =
|
161 |
|
162 |
Bug reports may be filed via our [GitHub repository](https://github.com/vendidero/woocommerce-germanized).
|
167 |
|
168 |
== Changelog ==
|
169 |
|
170 |
+
= 1.8.4 =
|
171 |
+
* Feature - DHL Parcel Shop or Pick-Up Station delivery
|
172 |
+
* Fix - Sale Price Labels Price Suffixes HTML
|
173 |
+
* Fix - Partial refunded order email legal item information
|
174 |
+
* Fix - Hook priority for product units in loop
|
175 |
+
* Fix - Parcel delivery checkbox validation
|
176 |
+
|
177 |
= 1.8.3 =
|
178 |
* Fix - Is empty check in 1.8.2
|
179 |
* Fix - API free shipping
|
templates/checkout/dhl-parcel-shop-finder.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Parcel Shop finder markup
|
4 |
+
*
|
5 |
+
* @author Vendidero
|
6 |
+
* @package WooCommerceGermanized/Templates
|
7 |
+
* @version 1.0
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
?>
|
12 |
+
|
13 |
+
<div id="wc-gzd-parcel-shop-finder-iframe-wrapper">
|
14 |
+
<div id="wc-gzd-parcel-finder-background-overlay">
|
15 |
+
<div id="wc-gzd-parcel-finder-iframe-overlay">
|
16 |
+
<a id="wc-gzd-parcel-finder-close-btn">X</a>
|
17 |
+
<iframe id="wc-gzd-parcel-finder-iframe"></iframe>
|
18 |
+
</div>
|
19 |
+
</div>
|
20 |
+
</div>
|
21 |
+
|
uninstall.php
ADDED
@@ -0,0 +1,108 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* WooCommerce GZD Uninstall
|
4 |
+
*
|
5 |
+
* Uninstalling WooCommerce Germanized deletes pages, tables, and options.
|
6 |
+
*
|
7 |
+
* @author WooThemes
|
8 |
+
* @category Core
|
9 |
+
* @package WooCommerce/Uninstaller
|
10 |
+
* @version 2.3.0
|
11 |
+
*/
|
12 |
+
|
13 |
+
if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
|
14 |
+
exit;
|
15 |
+
}
|
16 |
+
|
17 |
+
global $wpdb, $wp_version;
|
18 |
+
|
19 |
+
wp_clear_scheduled_hook( 'woocommerce_gzd_customer_cleanup' );
|
20 |
+
wp_clear_scheduled_hook( 'woocommerce_gzd_trusted_shops_reviews' );
|
21 |
+
wp_clear_scheduled_hook( 'woocommerce_gzd_ekomi' );
|
22 |
+
|
23 |
+
if ( defined( 'WC_GZD_REMOVE_ALL_DATA' ) && true === WC_GZD_REMOVE_ALL_DATA ) {
|
24 |
+
|
25 |
+
include_once( 'includes/class-wc-gzd-install.php' );
|
26 |
+
|
27 |
+
// Delete digital rates
|
28 |
+
$wpdb->delete( $wpdb->prefix . 'woocommerce_tax_rates', array( 'tax_rate_class' => 'virtual-rate' ), array( '%s' ) );
|
29 |
+
|
30 |
+
// delete pages
|
31 |
+
wp_trash_post( get_option( 'woocommerce_revocation_page_id' ) );
|
32 |
+
wp_trash_post( get_option( 'woocommerce_data_security_page_id' ) );
|
33 |
+
wp_trash_post( get_option( 'woocommerce_imprint_page_id' ) );
|
34 |
+
wp_trash_post( get_option( 'woocommerce_terms_page_id' ) );
|
35 |
+
wp_trash_post( get_option( 'woocommerce_shipping_costs_page_id' ) );
|
36 |
+
wp_trash_post( get_option( 'woocommerce_payment_methods_page_id' ) );
|
37 |
+
|
38 |
+
// Delete options.
|
39 |
+
$wpdb->query( "DELETE FROM $wpdb->options WHERE option_name LIKE 'woocommerce_gzd\_%';" );
|
40 |
+
// Delete options.
|
41 |
+
$wpdb->query( "DELETE FROM $wpdb->options WHERE option_name LIKE 'wc_gzd\_%';" );
|
42 |
+
|
43 |
+
$meta_keys = array(
|
44 |
+
'_unit_base',
|
45 |
+
'_unit_product',
|
46 |
+
'_unit_price_auto',
|
47 |
+
'_unit_price_regular',
|
48 |
+
'_unit_price',
|
49 |
+
'_unit_price_sale',
|
50 |
+
'_mini_desc',
|
51 |
+
'_free_shipping',
|
52 |
+
'_unit',
|
53 |
+
'_wc_gzd_ekomi_added',
|
54 |
+
'_service',
|
55 |
+
'_sale_price_label',
|
56 |
+
'_sale_price_regular_label',
|
57 |
+
'_legal_text',
|
58 |
+
'_trusted_shops_review_mail_sent',
|
59 |
+
'_direct_debit_bic',
|
60 |
+
'_direct_debit_iban',
|
61 |
+
'_direct_debit_holder',
|
62 |
+
'_parcel_delivery_opted_in',
|
63 |
+
'_shipping_parcelshop_post_number',
|
64 |
+
'_shipping_parcelshop',
|
65 |
+
'_shipping_title',
|
66 |
+
'_billing_title',
|
67 |
+
'_woocommerce_activation'
|
68 |
+
);
|
69 |
+
|
70 |
+
// Delete gzd meta data
|
71 |
+
$wpdb->query( "DELETE meta FROM {$wpdb->postmeta} meta WHERE meta.meta_key IN ('".join("','", $meta_keys)."');" );
|
72 |
+
|
73 |
+
// Delete ekomi data
|
74 |
+
$user_id = get_user_by( 'email', 'ekomi@loremipsumdolorom.com' );
|
75 |
+
|
76 |
+
if ( $user_id ) {
|
77 |
+
$wpdb->query( "DELETE meta FROM {$wpdb->commentmeta} LEFT JOIN {$wpdb->comments} comments ON comments.comment_ID = meta.comment_id WHERE user_id = {$user_id};" );
|
78 |
+
$wpdb->query( "DELETE comments FROM {$wpdb->comments} WHERE user_id = {$user_id};" );
|
79 |
+
wp_delete_user( $user_id );
|
80 |
+
}
|
81 |
+
|
82 |
+
// Delete terms if > WP 4.2 (term splitting was added in 4.2)
|
83 |
+
if ( version_compare( $wp_version, '4.2', '>=' ) ) {
|
84 |
+
// Delete term taxonomies
|
85 |
+
foreach ( array( 'product_delivery_time', 'product_unit', 'product_price_label' ) as $taxonomy ) {
|
86 |
+
$wpdb->delete(
|
87 |
+
$wpdb->term_taxonomy,
|
88 |
+
array(
|
89 |
+
'taxonomy' => $taxonomy,
|
90 |
+
)
|
91 |
+
);
|
92 |
+
}
|
93 |
+
|
94 |
+
// Delete orphan relationships
|
95 |
+
$wpdb->query( "DELETE tr FROM {$wpdb->term_relationships} tr LEFT JOIN {$wpdb->posts} posts ON posts.ID = tr.object_id WHERE posts.ID IS NULL;" );
|
96 |
+
|
97 |
+
// Delete orphan terms
|
98 |
+
$wpdb->query( "DELETE t FROM {$wpdb->terms} t LEFT JOIN {$wpdb->term_taxonomy} tt ON t.term_id = tt.term_id WHERE tt.term_id IS NULL;" );
|
99 |
+
|
100 |
+
// Delete orphan term meta
|
101 |
+
if ( ! empty( $wpdb->termmeta ) ) {
|
102 |
+
$wpdb->query( "DELETE tm FROM {$wpdb->termmeta} tm LEFT JOIN {$wpdb->term_taxonomy} tt ON tm.term_id = tt.term_id WHERE tt.term_id IS NULL;" );
|
103 |
+
}
|
104 |
+
}
|
105 |
+
|
106 |
+
// Clear any cached data that has been removed
|
107 |
+
wp_cache_flush();
|
108 |
+
}
|
woocommerce-germanized.php
CHANGED
@@ -3,21 +3,22 @@
|
|
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.8.
|
7 |
* Author: Vendidero
|
8 |
* Author URI: https://vendidero.de
|
9 |
* Requires at least: 3.8
|
10 |
* Tested up to: 4.6
|
11 |
* Requires at least WooCommerce: 2.4
|
12 |
-
* Tested up to WooCommerce:
|
13 |
*
|
14 |
* Text Domain: woocommerce-germanized
|
15 |
* Domain Path: /i18n/languages/
|
16 |
*
|
17 |
* @author Vendidero
|
18 |
*/
|
19 |
-
if ( ! defined( 'ABSPATH' ) )
|
20 |
exit; // Exit if accessed directly
|
|
|
21 |
|
22 |
if ( ! class_exists( 'WooCommerce_Germanized' ) ) :
|
23 |
|
@@ -28,7 +29,7 @@ final class WooCommerce_Germanized {
|
|
28 |
*
|
29 |
* @var string
|
30 |
*/
|
31 |
-
public $version = '1.8.
|
32 |
|
33 |
/**
|
34 |
* Single instance of WooCommerce Germanized Main Class
|
@@ -74,8 +75,9 @@ final class WooCommerce_Germanized {
|
|
74 |
* @return WooCommerceGermanized - Main instance
|
75 |
*/
|
76 |
public static function instance() {
|
77 |
-
if ( is_null( self::$_instance ) )
|
78 |
self::$_instance = new self();
|
|
|
79 |
return self::$_instance;
|
80 |
}
|
81 |
|
@@ -100,7 +102,7 @@ final class WooCommerce_Germanized {
|
|
100 |
/**
|
101 |
* Global getter
|
102 |
*
|
103 |
-
* @param string
|
104 |
* @return mixed
|
105 |
*/
|
106 |
public function __get( $key ) {
|
@@ -113,16 +115,17 @@ final class WooCommerce_Germanized {
|
|
113 |
public function __construct() {
|
114 |
|
115 |
// Auto-load classes on demand
|
116 |
-
if ( function_exists(
|
117 |
-
spl_autoload_register(
|
118 |
-
|
|
|
119 |
spl_autoload_register( array( $this, 'autoload' ) );
|
120 |
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
if ( ! $init->is_loadable() )
|
125 |
return;
|
|
|
126 |
|
127 |
// Define constants
|
128 |
$this->define_constants();
|
@@ -133,7 +136,7 @@ final class WooCommerce_Germanized {
|
|
133 |
register_activation_hook( __FILE__, array( 'WC_GZD_Install', 'install' ) );
|
134 |
add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'action_links' ) );
|
135 |
add_action( 'after_setup_theme', array( $this, 'include_template_functions' ), 12 );
|
136 |
-
|
137 |
add_action( 'init', array( $this, 'init' ), 0 );
|
138 |
add_action( 'init', array( 'WC_GZD_Shortcodes', 'init' ), 2 );
|
139 |
add_action( 'init', array( $this, 'setup_compatibility' ), 15 );
|
@@ -152,7 +155,7 @@ final class WooCommerce_Germanized {
|
|
152 |
|
153 |
/**
|
154 |
* Checks if is pro user
|
155 |
-
*
|
156 |
* @return boolean
|
157 |
*/
|
158 |
public function is_pro() {
|
@@ -168,12 +171,13 @@ final class WooCommerce_Germanized {
|
|
168 |
do_action( 'before_woocommerce_germanized_init' );
|
169 |
|
170 |
$this->load_plugin_textdomain();
|
171 |
-
|
172 |
-
if ( get_option( 'woocommerce_gzd_display_checkout_fallback' ) == 'yes' )
|
173 |
add_filter( 'woocommerce_germanized_filter_template', array( $this, 'set_checkout_fallback' ), 10, 3 );
|
174 |
-
|
|
|
175 |
add_filter( 'woocommerce_get_settings_pages', array( $this, 'add_settings' ) );
|
176 |
-
|
177 |
add_filter( 'woocommerce_enqueue_styles', array( $this, 'add_styles' ) );
|
178 |
// Load after WooCommerce Frontend scripts
|
179 |
add_action( 'wp_enqueue_scripts', array( $this, 'add_scripts' ), 15 );
|
@@ -187,8 +191,7 @@ final class WooCommerce_Germanized {
|
|
187 |
add_filter( 'woocommerce_get_order_item_totals', array( $this, 'order_item_totals' ), 0, 2 );
|
188 |
|
189 |
// Unsure wether this could lead to future problems - tax classes with same name wont be merged anylonger
|
190 |
-
//add_filter( 'woocommerce_rate_code', array( $this, 'prevent_tax_name_merge' ), PHP_INT_MAX, 2 );
|
191 |
-
|
192 |
// Hide cart estimated text if chosen
|
193 |
add_action( 'woocommerce_cart_totals_after_order_total', array( $this, 'hide_cart_estimated_text' ) );
|
194 |
add_action( 'woocommerce_after_cart_totals', array( $this, 'remove_cart_tax_zero_filter' ) );
|
@@ -202,7 +205,7 @@ final class WooCommerce_Germanized {
|
|
202 |
// Remove cart subtotal filter
|
203 |
add_action( 'template_redirect', array( $this, 'remove_cart_unit_price_filter' ) );
|
204 |
|
205 |
-
|
206 |
|
207 |
// Init action
|
208 |
do_action( 'woocommerce_germanized_init' );
|
@@ -211,33 +214,33 @@ final class WooCommerce_Germanized {
|
|
211 |
/**
|
212 |
* Auto-load WC_Germanized classes on demand to reduce memory consumption.
|
213 |
*
|
214 |
-
* @param mixed
|
215 |
* @return void
|
216 |
*/
|
217 |
public function autoload( $class ) {
|
218 |
-
|
219 |
$path = $this->plugin_path() . '/includes/';
|
220 |
$original_class = $class;
|
221 |
$class = strtolower( $class );
|
222 |
$file = 'class-' . str_replace( '_', '-', $class ) . '.php';
|
223 |
|
224 |
-
if ( strpos( $class, 'wc_gzd_admin' ) !== false )
|
225 |
$path = $this->plugin_path() . '/includes/admin/';
|
226 |
-
|
227 |
$path = $this->plugin_path() . '/includes/gateways/' . substr( str_replace( '_', '-', $class ), 15 ) . '/';
|
228 |
-
|
229 |
$path = $this->plugin_path() . '/includes/trusted-shops/';
|
230 |
-
|
231 |
$path = $this->plugin_path() . '/includes/compatibility/';
|
232 |
-
|
233 |
$path = $this->plugin_path() . '/includes/gateways/direct-debit/libraries/php-encryption/';
|
234 |
-
$file = ucfirst( str_replace( 'Defuse/Crypto/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
235 |
-
}
|
236 |
$path = $this->plugin_path() . '/includes/gateways/direct-debit/libraries/php-sepa-xml/';
|
237 |
-
$file = ucfirst( str_replace( 'Digitick/Sepa/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
238 |
-
}
|
239 |
$path = $this->plugin_path() . '/includes/libraries/Ekomi/';
|
240 |
-
$file = ucfirst( str_replace( 'Ekomi/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
241 |
}
|
242 |
|
243 |
if ( $path && is_readable( $path . $file ) ) {
|
@@ -267,7 +270,7 @@ final class WooCommerce_Germanized {
|
|
267 |
|
268 |
/**
|
269 |
* Get WC Germanized template path
|
270 |
-
*
|
271 |
* @return string
|
272 |
*/
|
273 |
public function template_path() {
|
@@ -296,12 +299,12 @@ final class WooCommerce_Germanized {
|
|
296 |
*/
|
297 |
private function includes() {
|
298 |
|
299 |
-
include_once
|
300 |
-
include_once
|
301 |
-
include_once
|
302 |
|
303 |
if ( is_admin() ) {
|
304 |
-
|
305 |
include_once( 'includes/admin/class-wc-gzd-admin.php' );
|
306 |
include_once( 'includes/admin/class-wc-gzd-admin-welcome.php' );
|
307 |
include_once( 'includes/admin/class-wc-gzd-admin-notices.php' );
|
@@ -313,8 +316,9 @@ final class WooCommerce_Germanized {
|
|
313 |
include_once( 'includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php' );
|
314 |
include_once( 'includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php' );
|
315 |
|
316 |
-
if ( defined( 'DOING_AJAX' ) )
|
317 |
$this->ajax_includes();
|
|
|
318 |
|
319 |
if ( ( ! is_admin() || defined( 'DOING_AJAX' ) ) && ! defined( 'DOING_CRON' ) ) {
|
320 |
if ( did_action( 'woocommerce_loaded' ) ) {
|
@@ -325,25 +329,27 @@ final class WooCommerce_Germanized {
|
|
325 |
}
|
326 |
|
327 |
// Post types
|
328 |
-
include_once
|
329 |
// Gateway manipulation
|
330 |
-
include_once
|
331 |
// Template priority
|
332 |
-
include_once
|
333 |
|
334 |
// Abstracts
|
335 |
-
include_once
|
336 |
-
include_once
|
337 |
-
include_once
|
338 |
|
339 |
// API
|
340 |
-
include_once
|
341 |
|
342 |
-
include_once
|
343 |
-
include_once
|
344 |
-
|
345 |
-
include_once
|
346 |
-
include_once
|
|
|
|
|
347 |
|
348 |
$this->setup_trusted_shops();
|
349 |
$this->ekomi = new WC_GZD_Ekomi();
|
@@ -353,13 +359,14 @@ final class WooCommerce_Germanized {
|
|
353 |
public function setup_compatibility() {
|
354 |
|
355 |
$plugins = apply_filters( 'woocommerce_gzd_compatibilities', array( 'wpml', 'woocommerce-subscriptions' ) );
|
356 |
-
|
357 |
foreach ( $plugins as $comp ) {
|
358 |
-
|
359 |
$classname = str_replace( ' ', '_', 'WC_GZD_Compatibility_' . ucwords( str_replace( '-', ' ', $comp ) ) );
|
360 |
-
|
361 |
-
if ( class_exists( $classname ) )
|
362 |
$this->compatibilities[ $comp ] = new $classname();
|
|
|
363 |
}
|
364 |
|
365 |
}
|
@@ -382,48 +389,51 @@ final class WooCommerce_Germanized {
|
|
382 |
* Function used to Init WooCommerceGermanized Template Functions - This makes them pluggable by plugins and themes.
|
383 |
*/
|
384 |
public function include_template_functions() {
|
385 |
-
if ( ! is_admin() || defined( 'DOING_AJAX' ) )
|
386 |
include_once( 'includes/wc-gzd-template-functions.php' );
|
|
|
387 |
}
|
388 |
|
389 |
/**
|
390 |
* Filter WooCommerce Templates to look into /templates before looking within theme folder
|
391 |
*
|
392 |
-
* @param string
|
393 |
-
* @param string
|
394 |
-
* @param string
|
395 |
* @return string
|
396 |
*/
|
397 |
public function filter_templates( $template, $template_name, $template_path ) {
|
398 |
$template_path = $this->template_path();
|
399 |
|
400 |
-
if ( ! isset( $GLOBALS[
|
401 |
$GLOBALS['wc_gzd_template_name'] = array();
|
402 |
-
|
|
|
403 |
$GLOBALS['wc_gzd_template_name'][] = $template_name;
|
404 |
|
405 |
// Check Theme
|
406 |
$theme_template = locate_template(
|
407 |
array(
|
408 |
-
|
409 |
-
|
410 |
)
|
411 |
);
|
412 |
|
413 |
$template_name = apply_filters( 'woocommerce_gzd_template_name', $template_name );
|
414 |
|
415 |
// Load Default
|
416 |
-
if ( ! $theme_template && file_exists( apply_filters( 'woocommerce_gzd_default_plugin_template', $this->plugin_path() . '/templates/' . $template_name, $template_name ) ) )
|
417 |
$template = apply_filters( 'woocommerce_gzd_default_plugin_template', $this->plugin_path() . '/templates/' . $template_name, $template_name );
|
418 |
-
|
419 |
$template = $theme_template;
|
420 |
-
|
|
|
421 |
return apply_filters( 'woocommerce_germanized_filter_template', $template, $template_name, $template_path );
|
422 |
}
|
423 |
|
424 |
/**
|
425 |
* Get templates which are legally critical
|
426 |
-
*
|
427 |
* @return array
|
428 |
*/
|
429 |
public function get_critical_templates() {
|
@@ -432,19 +442,20 @@ final class WooCommerce_Germanized {
|
|
432 |
|
433 |
/**
|
434 |
* Sets review-order.php fallback (if activated) by filtering template name.
|
435 |
-
*
|
436 |
* @param string $template_name
|
437 |
* @return string
|
438 |
*/
|
439 |
public function set_checkout_fallback( $template, $template_name, $template_path ) {
|
440 |
-
|
441 |
-
$path = WC()->plugin_path() . '/templates/';
|
442 |
|
443 |
-
|
|
|
|
|
444 |
return trailingslashit( $path ) . 'checkout/review-order.php';
|
445 |
-
|
446 |
return trailingslashit( $path ) . 'checkout/form-checkout.php';
|
447 |
-
|
|
|
448 |
return $template;
|
449 |
}
|
450 |
|
@@ -457,20 +468,22 @@ final class WooCommerce_Germanized {
|
|
457 |
|
458 |
/**
|
459 |
* Replace default WC_Shipping_Rate to enable exact taxation for shipping costs
|
460 |
-
*
|
461 |
-
* @param array
|
462 |
* @param WC_Shipping_Rate $rate current object
|
463 |
-
* @return array
|
464 |
*/
|
465 |
public function replace_shipping_rate_class( $rates, $rate ) {
|
466 |
|
467 |
-
if ( get_option( 'woocommerce_gzd_shipping_tax' ) !== 'yes' )
|
468 |
return $rates;
|
|
|
469 |
|
470 |
foreach ( $rates as $key => $rate ) {
|
471 |
// Check for instance to make sure calculation is not done for multiple times
|
472 |
-
if ( ! $rate instanceof WC_GZD_Shipping_Rate )
|
473 |
$rates[ $key ] = new WC_GZD_Shipping_Rate( $rate );
|
|
|
474 |
}
|
475 |
|
476 |
return $rates;
|
@@ -481,13 +494,14 @@ final class WooCommerce_Germanized {
|
|
481 |
* Filter is being remove right after get_cart_tax - check has been finished within cart-totals.php
|
482 |
*/
|
483 |
public function hide_cart_estimated_text() {
|
484 |
-
if ( get_option( 'woocommerce_gzd_display_hide_cart_tax_estimated' ) == 'yes' )
|
485 |
add_filter( 'woocommerce_get_cart_tax', array( $this, 'set_cart_tax_zero' ) );
|
|
|
486 |
}
|
487 |
|
488 |
/**
|
489 |
* This will set the cart tax to zero
|
490 |
-
*
|
491 |
* @param float $tax current's cart tax
|
492 |
* @return int
|
493 |
*/
|
@@ -499,8 +513,9 @@ final class WooCommerce_Germanized {
|
|
499 |
* Removes the zero cart tax filter after get_cart_tax has been finished
|
500 |
*/
|
501 |
public function remove_cart_tax_zero_filter() {
|
502 |
-
if ( get_option( 'woocommerce_gzd_display_hide_cart_tax_estimated' ) == 'yes' )
|
503 |
remove_filter( 'woocommerce_get_cart_tax', array( $this, 'set_cart_tax_zero' ) );
|
|
|
504 |
}
|
505 |
|
506 |
/**
|
@@ -514,8 +529,9 @@ final class WooCommerce_Germanized {
|
|
514 |
*/
|
515 |
public function filter_product_classes( $classname, $product_type, $post_type, $product_id ) {
|
516 |
$gzd_classname = str_replace( 'WC', 'WC_GZD', $classname );
|
517 |
-
if ( class_exists( $gzd_classname ) )
|
518 |
$classname = $gzd_classname;
|
|
|
519 |
return $classname;
|
520 |
}
|
521 |
|
@@ -530,7 +546,7 @@ final class WooCommerce_Germanized {
|
|
530 |
*/
|
531 |
public function load_plugin_textdomain() {
|
532 |
$locale = apply_filters( 'plugin_locale', get_locale(), 'woocommerce-germanized' );
|
533 |
-
|
534 |
load_textdomain( 'woocommerce-germanized', trailingslashit( WP_LANG_DIR ) . 'woocommerce-germanized/woocommerce-germanized-' . $locale . '.mo' );
|
535 |
load_plugin_textdomain( 'woocommerce-germanized', false, plugin_basename( dirname( __FILE__ ) ) . '/i18n/languages/' );
|
536 |
}
|
@@ -538,7 +554,7 @@ final class WooCommerce_Germanized {
|
|
538 |
/**
|
539 |
* Show action links on the plugin screen
|
540 |
*
|
541 |
-
* @param mixed
|
542 |
* @return array
|
543 |
*/
|
544 |
public function action_links( $links ) {
|
@@ -550,18 +566,18 @@ final class WooCommerce_Germanized {
|
|
550 |
/**
|
551 |
* Add styles to frontend
|
552 |
*
|
553 |
-
* @param array
|
554 |
*/
|
555 |
public function add_styles( $styles ) {
|
556 |
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
557 |
-
|
558 |
$styles['woocommerce-gzd-layout'] = array(
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
);
|
564 |
-
|
565 |
return $styles;
|
566 |
}
|
567 |
|
@@ -570,8 +586,8 @@ final class WooCommerce_Germanized {
|
|
570 |
*/
|
571 |
public function add_inline_styles() {
|
572 |
$color = ( get_option( 'woocommerce_gzd_display_checkout_table_color' ) ? get_option( 'woocommerce_gzd_display_checkout_table_color' ) : '#eee' );
|
573 |
-
|
574 |
-
|
575 |
}
|
576 |
|
577 |
/**
|
@@ -579,24 +595,33 @@ final class WooCommerce_Germanized {
|
|
579 |
*/
|
580 |
public function add_scripts() {
|
581 |
global $post;
|
582 |
-
|
583 |
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
584 |
$assets_path = str_replace( array( 'http:', 'https:' ), '', WC_germanized()->plugin_url() ) . '/assets/';
|
585 |
$frontend_script_path = $assets_path . 'js/';
|
586 |
|
587 |
-
if ( is_page() && is_object( $post ) && has_shortcode( $post->post_content, 'revocation_form' ) )
|
588 |
wp_enqueue_script( 'wc-gzd-revocation', $frontend_script_path . 'revocation' . $suffix . '.js', array( 'jquery', 'woocommerce', 'wc-country-select', 'wc-address-i18n' ), WC_GERMANIZED_VERSION, true );
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
593 |
if ( is_singular( 'product' ) ) {
|
594 |
$product = wc_get_product( $post->ID );
|
595 |
if ( $product && $product->is_type( 'variable' ) ) {
|
596 |
// Enqueue variation scripts
|
597 |
wp_enqueue_script( 'wc-gzd-add-to-cart-variation', $frontend_script_path . 'add-to-cart-variation' . $suffix . '.js', array( 'jquery', 'woocommerce', 'wc-add-to-cart-variation' ), WC_GERMANIZED_VERSION, true );
|
598 |
}
|
599 |
-
}
|
|
|
|
|
600 |
}
|
601 |
|
602 |
/**
|
@@ -605,18 +630,21 @@ final class WooCommerce_Germanized {
|
|
605 |
public function localize_scripts() {
|
606 |
global $wp;
|
607 |
$assets_path = str_replace( array( 'http:', 'https:' ), '', WC()->plugin_url() ) . '/assets/';
|
|
|
608 |
if ( wp_script_is( 'wc-gzd-revocation' ) ) {
|
609 |
wp_localize_script( 'wc-gzd-revocation', 'wc_gzd_revocation_params', apply_filters( 'wc_gzd_revocation_params', array(
|
610 |
'ajax_url' => WC()->ajax_url(),
|
611 |
'ajax_loader_url' => apply_filters( 'woocommerce_ajax_loader_url', $assets_path . 'images/ajax-loader@2x.gif' ),
|
612 |
) ) );
|
613 |
}
|
|
|
|
|
614 |
}
|
615 |
|
616 |
/**
|
617 |
* Add WooCommerce Germanized Settings Tab
|
618 |
*
|
619 |
-
* @param array
|
620 |
* @return array
|
621 |
*/
|
622 |
public function add_settings( $integrations ) {
|
@@ -629,59 +657,64 @@ final class WooCommerce_Germanized {
|
|
629 |
* Add small business global Email Footer
|
630 |
*/
|
631 |
public function email_small_business_notice() {
|
632 |
-
if ( get_option( 'woocommerce_gzd_small_enterprise' ) == 'yes' )
|
633 |
wc_get_template( 'global/small-business-info.php' );
|
|
|
634 |
}
|
635 |
|
636 |
/**
|
637 |
* PHP 5.3 backwards compatibility for getting date diff in days
|
638 |
-
*
|
639 |
* @param string $from date from
|
640 |
* @param string $to date to
|
641 |
* @return array
|
642 |
*/
|
643 |
public function get_date_diff( $from, $to ) {
|
644 |
$diff = abs( strtotime( $to ) - strtotime( $from ) );
|
645 |
-
return array(
|
|
|
|
|
646 |
}
|
647 |
|
648 |
/**
|
649 |
* Add Custom Email templates
|
650 |
*
|
651 |
-
* @param array
|
652 |
* @return array
|
653 |
*/
|
654 |
public function add_emails( $mails ) {
|
655 |
-
$mails[
|
656 |
-
$mails[
|
657 |
-
$mails[
|
658 |
-
$mails[
|
659 |
-
$mails[
|
660 |
return $mails;
|
661 |
}
|
662 |
|
663 |
/**
|
664 |
* Filter Email template to include WooCommerce Germanized template files
|
665 |
*
|
666 |
-
* @param string
|
667 |
-
* @param string
|
668 |
-
* @param string
|
669 |
* @return string
|
670 |
*/
|
671 |
public function email_templates( $core_file, $template, $template_base ) {
|
672 |
-
|
673 |
-
if ( ! file_exists( $template_base . $template ) && file_exists( $this->plugin_path() . '/templates/' . $template ) )
|
674 |
$core_file = $this->plugin_path() . '/templates/' . $template;
|
675 |
-
|
|
|
676 |
return apply_filters( 'woocommerce_germanized_email_template_hook', $core_file, $template, $template_base );
|
677 |
}
|
678 |
|
679 |
public function register_gateways( $gateways ) {
|
680 |
|
681 |
// Do only load gateway for PHP >= 5.3 because of Namespaces
|
682 |
-
if ( version_compare( phpversion(), '5.3', '>=' ) )
|
683 |
$gateways[] = 'WC_GZD_Gateway_Direct_Debit';
|
684 |
-
|
|
|
685 |
$gateways[] = 'WC_GZD_Gateway_Invoice';
|
686 |
|
687 |
return $gateways;
|
@@ -690,10 +723,10 @@ final class WooCommerce_Germanized {
|
|
690 |
|
691 |
/**
|
692 |
* Improve tax display within order totals
|
693 |
-
*
|
694 |
-
* @param array
|
695 |
-
* @param object $order
|
696 |
-
* @return array
|
697 |
*/
|
698 |
public function order_item_totals( $order_totals, $order ) {
|
699 |
|
@@ -702,34 +735,42 @@ final class WooCommerce_Germanized {
|
|
702 |
|
703 |
// Tax for inclusive prices
|
704 |
if ( 'yes' == get_option( 'woocommerce_calc_taxes' ) && 'incl' == get_option( 'woocommerce_tax_display_cart' ) ) {
|
705 |
-
|
706 |
$tax_array = array();
|
707 |
if ( 'itemized' == get_option( 'woocommerce_tax_total_display' ) ) {
|
708 |
foreach ( $order->get_tax_totals() as $code => $tax ) {
|
709 |
$tax->rate = WC_Tax::get_rate_percent( $tax->rate_id );
|
710 |
-
if ( ! isset( $tax_array[ $tax->rate ] ) )
|
711 |
-
$tax_array[ $tax->rate ] = array(
|
712 |
-
|
713 |
-
|
714 |
-
|
|
|
|
|
|
|
|
|
715 |
}
|
716 |
}
|
717 |
} else {
|
718 |
$base_rate = array_values( WC_Tax::get_shop_base_rate() );
|
719 |
$base_rate = (object) $base_rate[0];
|
720 |
$base_rate->rate = $base_rate->rate;
|
721 |
-
$tax_array[] = array(
|
|
|
|
|
|
|
|
|
722 |
}
|
723 |
|
724 |
if ( ! empty( $tax_array ) ) {
|
725 |
foreach ( $tax_array as $tax ) {
|
726 |
-
$order_totals['tax_' . $tax['tax']->label] = array(
|
727 |
-
|
728 |
-
|
729 |
);
|
730 |
}
|
731 |
}
|
732 |
-
}
|
733 |
|
734 |
return $order_totals;
|
735 |
}
|
@@ -738,15 +779,16 @@ final class WooCommerce_Germanized {
|
|
738 |
* Remove cart unit price subtotal filter
|
739 |
*/
|
740 |
public function remove_cart_unit_price_filter() {
|
741 |
-
if ( is_cart() )
|
742 |
remove_filter( 'woocommerce_cart_item_subtotal', 'wc_gzd_cart_product_unit_price', 0, 2 );
|
|
|
743 |
}
|
744 |
|
745 |
/**
|
746 |
* Prevent tax class merging. Could lead to future problems - not yet implemented
|
747 |
-
*
|
748 |
* @param string $code tax class code
|
749 |
-
* @param int
|
750 |
* @return string unique tax class code
|
751 |
*/
|
752 |
public function prevent_tax_name_merge( $code, $rate_id ) {
|
@@ -759,19 +801,24 @@ final class WooCommerce_Germanized {
|
|
759 |
private function setup_trusted_shops() {
|
760 |
// Initialize Trusted Shops module
|
761 |
$this->trusted_shops = new WC_GZD_Trusted_Shops( $this, array(
|
762 |
-
|
763 |
-
|
764 |
-
'
|
765 |
-
'
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
771 |
)
|
772 |
);
|
773 |
}
|
774 |
-
|
775 |
}
|
776 |
|
777 |
endif;
|
@@ -784,5 +831,3 @@ function WC_germanized() {
|
|
784 |
}
|
785 |
|
786 |
$GLOBALS['woocommerce_germanized'] = WC_germanized();
|
787 |
-
|
788 |
-
?>
|
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.8.4
|
7 |
* Author: Vendidero
|
8 |
* Author URI: https://vendidero.de
|
9 |
* Requires at least: 3.8
|
10 |
* Tested up to: 4.6
|
11 |
* Requires at least WooCommerce: 2.4
|
12 |
+
* Tested up to WooCommerce: 3.0
|
13 |
*
|
14 |
* Text Domain: woocommerce-germanized
|
15 |
* Domain Path: /i18n/languages/
|
16 |
*
|
17 |
* @author Vendidero
|
18 |
*/
|
19 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
20 |
exit; // Exit if accessed directly
|
21 |
+
}
|
22 |
|
23 |
if ( ! class_exists( 'WooCommerce_Germanized' ) ) :
|
24 |
|
29 |
*
|
30 |
* @var string
|
31 |
*/
|
32 |
+
public $version = '1.8.4';
|
33 |
|
34 |
/**
|
35 |
* Single instance of WooCommerce Germanized Main Class
|
75 |
* @return WooCommerceGermanized - Main instance
|
76 |
*/
|
77 |
public static function instance() {
|
78 |
+
if ( is_null( self::$_instance ) ) {
|
79 |
self::$_instance = new self();
|
80 |
+
}
|
81 |
return self::$_instance;
|
82 |
}
|
83 |
|
102 |
/**
|
103 |
* Global getter
|
104 |
*
|
105 |
+
* @param string $key
|
106 |
* @return mixed
|
107 |
*/
|
108 |
public function __get( $key ) {
|
115 |
public function __construct() {
|
116 |
|
117 |
// Auto-load classes on demand
|
118 |
+
if ( function_exists( '__autoload' ) ) {
|
119 |
+
spl_autoload_register( '__autoload' );
|
120 |
+
}
|
121 |
+
|
122 |
spl_autoload_register( array( $this, 'autoload' ) );
|
123 |
|
124 |
+
$dependencies = apply_filters( 'woocommerce_gzd_dependencies_instance', WC_GZD_Dependencies::instance( $this ) );
|
125 |
+
|
126 |
+
if ( ! $dependencies->is_loadable() ) {
|
|
|
127 |
return;
|
128 |
+
}
|
129 |
|
130 |
// Define constants
|
131 |
$this->define_constants();
|
136 |
register_activation_hook( __FILE__, array( 'WC_GZD_Install', 'install' ) );
|
137 |
add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'action_links' ) );
|
138 |
add_action( 'after_setup_theme', array( $this, 'include_template_functions' ), 12 );
|
139 |
+
|
140 |
add_action( 'init', array( $this, 'init' ), 0 );
|
141 |
add_action( 'init', array( 'WC_GZD_Shortcodes', 'init' ), 2 );
|
142 |
add_action( 'init', array( $this, 'setup_compatibility' ), 15 );
|
155 |
|
156 |
/**
|
157 |
* Checks if is pro user
|
158 |
+
*
|
159 |
* @return boolean
|
160 |
*/
|
161 |
public function is_pro() {
|
171 |
do_action( 'before_woocommerce_germanized_init' );
|
172 |
|
173 |
$this->load_plugin_textdomain();
|
174 |
+
|
175 |
+
if ( get_option( 'woocommerce_gzd_display_checkout_fallback' ) == 'yes' ) {
|
176 |
add_filter( 'woocommerce_germanized_filter_template', array( $this, 'set_checkout_fallback' ), 10, 3 );
|
177 |
+
}
|
178 |
+
|
179 |
add_filter( 'woocommerce_get_settings_pages', array( $this, 'add_settings' ) );
|
180 |
+
|
181 |
add_filter( 'woocommerce_enqueue_styles', array( $this, 'add_styles' ) );
|
182 |
// Load after WooCommerce Frontend scripts
|
183 |
add_action( 'wp_enqueue_scripts', array( $this, 'add_scripts' ), 15 );
|
191 |
add_filter( 'woocommerce_get_order_item_totals', array( $this, 'order_item_totals' ), 0, 2 );
|
192 |
|
193 |
// Unsure wether this could lead to future problems - tax classes with same name wont be merged anylonger
|
194 |
+
// add_filter( 'woocommerce_rate_code', array( $this, 'prevent_tax_name_merge' ), PHP_INT_MAX, 2 );
|
|
|
195 |
// Hide cart estimated text if chosen
|
196 |
add_action( 'woocommerce_cart_totals_after_order_total', array( $this, 'hide_cart_estimated_text' ) );
|
197 |
add_action( 'woocommerce_after_cart_totals', array( $this, 'remove_cart_tax_zero_filter' ) );
|
205 |
// Remove cart subtotal filter
|
206 |
add_action( 'template_redirect', array( $this, 'remove_cart_unit_price_filter' ) );
|
207 |
|
208 |
+
$this->emails = new WC_GZD_Emails();
|
209 |
|
210 |
// Init action
|
211 |
do_action( 'woocommerce_germanized_init' );
|
214 |
/**
|
215 |
* Auto-load WC_Germanized classes on demand to reduce memory consumption.
|
216 |
*
|
217 |
+
* @param mixed $class
|
218 |
* @return void
|
219 |
*/
|
220 |
public function autoload( $class ) {
|
221 |
+
|
222 |
$path = $this->plugin_path() . '/includes/';
|
223 |
$original_class = $class;
|
224 |
$class = strtolower( $class );
|
225 |
$file = 'class-' . str_replace( '_', '-', $class ) . '.php';
|
226 |
|
227 |
+
if ( strpos( $class, 'wc_gzd_admin' ) !== false ) {
|
228 |
$path = $this->plugin_path() . '/includes/admin/';
|
229 |
+
} elseif ( strpos( $class, 'wc_gzd_gateway_' ) !== false ) {
|
230 |
$path = $this->plugin_path() . '/includes/gateways/' . substr( str_replace( '_', '-', $class ), 15 ) . '/';
|
231 |
+
} elseif ( strpos( $class, 'wc_gzd_trusted_shops' ) !== false ) {
|
232 |
$path = $this->plugin_path() . '/includes/trusted-shops/';
|
233 |
+
} elseif ( strpos( $class, 'wc_gzd_compatibility' ) !== false ) {
|
234 |
$path = $this->plugin_path() . '/includes/compatibility/';
|
235 |
+
} elseif ( strpos( $class, 'defuse\crypto' ) !== false ) {
|
236 |
$path = $this->plugin_path() . '/includes/gateways/direct-debit/libraries/php-encryption/';
|
237 |
+
$file = ucfirst( str_replace( 'Defuse/Crypto/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
238 |
+
} elseif ( strpos( $class, 'digitick\sepa' ) !== false ) {
|
239 |
$path = $this->plugin_path() . '/includes/gateways/direct-debit/libraries/php-sepa-xml/';
|
240 |
+
$file = ucfirst( str_replace( 'Digitick/Sepa/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
241 |
+
} elseif ( strpos( $class, 'ekomi\\' ) !== false ) {
|
242 |
$path = $this->plugin_path() . '/includes/libraries/Ekomi/';
|
243 |
+
$file = ucfirst( str_replace( 'Ekomi/', '', str_replace( '\\', '/', $original_class ) ) . '.php' );
|
244 |
}
|
245 |
|
246 |
if ( $path && is_readable( $path . $file ) ) {
|
270 |
|
271 |
/**
|
272 |
* Get WC Germanized template path
|
273 |
+
*
|
274 |
* @return string
|
275 |
*/
|
276 |
public function template_path() {
|
299 |
*/
|
300 |
private function includes() {
|
301 |
|
302 |
+
include_once( 'includes/wc-gzd-core-functions.php' );
|
303 |
+
include_once( 'includes/wc-gzd-legacy-functions.php' );
|
304 |
+
include_once( 'includes/class-wc-gzd-install.php' );
|
305 |
|
306 |
if ( is_admin() ) {
|
307 |
+
|
308 |
include_once( 'includes/admin/class-wc-gzd-admin.php' );
|
309 |
include_once( 'includes/admin/class-wc-gzd-admin-welcome.php' );
|
310 |
include_once( 'includes/admin/class-wc-gzd-admin-notices.php' );
|
316 |
include_once( 'includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data.php' );
|
317 |
include_once( 'includes/admin/meta-boxes/class-wc-gzd-meta-box-product-data-variable.php' );
|
318 |
|
319 |
+
if ( defined( 'DOING_AJAX' ) ) {
|
320 |
$this->ajax_includes();
|
321 |
+
}
|
322 |
|
323 |
if ( ( ! is_admin() || defined( 'DOING_AJAX' ) ) && ! defined( 'DOING_CRON' ) ) {
|
324 |
if ( did_action( 'woocommerce_loaded' ) ) {
|
329 |
}
|
330 |
|
331 |
// Post types
|
332 |
+
include_once( 'includes/class-wc-gzd-post-types.php' );
|
333 |
// Gateway manipulation
|
334 |
+
include_once( 'includes/class-wc-gzd-payment-gateways.php' );
|
335 |
// Template priority
|
336 |
+
include_once( 'includes/class-wc-gzd-hook-priorities.php' );
|
337 |
|
338 |
// Abstracts
|
339 |
+
include_once( 'includes/abstracts/abstract-wc-gzd-product.php' );
|
340 |
+
include_once( 'includes/abstracts/abstract-wc-gzd-taxonomy.php' );
|
341 |
+
include_once( 'includes/abstracts/abstract-wc-gzd-compatibility.php' );
|
342 |
|
343 |
// API
|
344 |
+
include_once( 'includes/api/class-wc-gzd-rest-api.php' );
|
345 |
|
346 |
+
include_once( 'includes/wc-gzd-cart-functions.php' );
|
347 |
+
include_once( 'includes/wc-gzd-order-functions.php' );
|
348 |
+
|
349 |
+
include_once( 'includes/class-wc-gzd-checkout.php' );
|
350 |
+
include_once( 'includes/class-wc-gzd-dhl-parcel-shops.php' );
|
351 |
+
include_once( 'includes/class-wc-gzd-customer-helper.php' );
|
352 |
+
include_once( 'includes/class-wc-gzd-virtual-vat-helper.php' );
|
353 |
|
354 |
$this->setup_trusted_shops();
|
355 |
$this->ekomi = new WC_GZD_Ekomi();
|
359 |
public function setup_compatibility() {
|
360 |
|
361 |
$plugins = apply_filters( 'woocommerce_gzd_compatibilities', array( 'wpml', 'woocommerce-subscriptions' ) );
|
362 |
+
|
363 |
foreach ( $plugins as $comp ) {
|
364 |
+
|
365 |
$classname = str_replace( ' ', '_', 'WC_GZD_Compatibility_' . ucwords( str_replace( '-', ' ', $comp ) ) );
|
366 |
+
|
367 |
+
if ( class_exists( $classname ) ) {
|
368 |
$this->compatibilities[ $comp ] = new $classname();
|
369 |
+
}
|
370 |
}
|
371 |
|
372 |
}
|
389 |
* Function used to Init WooCommerceGermanized Template Functions - This makes them pluggable by plugins and themes.
|
390 |
*/
|
391 |
public function include_template_functions() {
|
392 |
+
if ( ! is_admin() || defined( 'DOING_AJAX' ) ) {
|
393 |
include_once( 'includes/wc-gzd-template-functions.php' );
|
394 |
+
}
|
395 |
}
|
396 |
|
397 |
/**
|
398 |
* Filter WooCommerce Templates to look into /templates before looking within theme folder
|
399 |
*
|
400 |
+
* @param string $template
|
401 |
+
* @param string $template_name
|
402 |
+
* @param string $template_path
|
403 |
* @return string
|
404 |
*/
|
405 |
public function filter_templates( $template, $template_name, $template_path ) {
|
406 |
$template_path = $this->template_path();
|
407 |
|
408 |
+
if ( ! isset( $GLOBALS['wc_gzd_template_name'] ) || empty( $GLOBALS['wc_gzd_template_name'] ) || ! is_array( $GLOBALS['wc_gzd_template_name'] ) ) {
|
409 |
$GLOBALS['wc_gzd_template_name'] = array();
|
410 |
+
}
|
411 |
+
|
412 |
$GLOBALS['wc_gzd_template_name'][] = $template_name;
|
413 |
|
414 |
// Check Theme
|
415 |
$theme_template = locate_template(
|
416 |
array(
|
417 |
+
trailingslashit( $template_path ) . $template_name,
|
418 |
+
$template_name,
|
419 |
)
|
420 |
);
|
421 |
|
422 |
$template_name = apply_filters( 'woocommerce_gzd_template_name', $template_name );
|
423 |
|
424 |
// Load Default
|
425 |
+
if ( ! $theme_template && file_exists( apply_filters( 'woocommerce_gzd_default_plugin_template', $this->plugin_path() . '/templates/' . $template_name, $template_name ) ) ) {
|
426 |
$template = apply_filters( 'woocommerce_gzd_default_plugin_template', $this->plugin_path() . '/templates/' . $template_name, $template_name );
|
427 |
+
} elseif ( $theme_template ) {
|
428 |
$template = $theme_template;
|
429 |
+
}
|
430 |
+
|
431 |
return apply_filters( 'woocommerce_germanized_filter_template', $template, $template_name, $template_path );
|
432 |
}
|
433 |
|
434 |
/**
|
435 |
* Get templates which are legally critical
|
436 |
+
*
|
437 |
* @return array
|
438 |
*/
|
439 |
public function get_critical_templates() {
|
442 |
|
443 |
/**
|
444 |
* Sets review-order.php fallback (if activated) by filtering template name.
|
445 |
+
*
|
446 |
* @param string $template_name
|
447 |
* @return string
|
448 |
*/
|
449 |
public function set_checkout_fallback( $template, $template_name, $template_path ) {
|
|
|
|
|
450 |
|
451 |
+
$path = WC()->plugin_path() . '/templates/';
|
452 |
+
|
453 |
+
if ( strstr( $template_name, 'review-order.php' ) ) {
|
454 |
return trailingslashit( $path ) . 'checkout/review-order.php';
|
455 |
+
} elseif ( strstr( $template_name, 'form-checkout.php' ) ) {
|
456 |
return trailingslashit( $path ) . 'checkout/form-checkout.php';
|
457 |
+
}
|
458 |
+
|
459 |
return $template;
|
460 |
}
|
461 |
|
468 |
|
469 |
/**
|
470 |
* Replace default WC_Shipping_Rate to enable exact taxation for shipping costs
|
471 |
+
*
|
472 |
+
* @param array $rates containing WC_Shipping_Rate objects
|
473 |
* @param WC_Shipping_Rate $rate current object
|
474 |
+
* @return array
|
475 |
*/
|
476 |
public function replace_shipping_rate_class( $rates, $rate ) {
|
477 |
|
478 |
+
if ( get_option( 'woocommerce_gzd_shipping_tax' ) !== 'yes' ) {
|
479 |
return $rates;
|
480 |
+
}
|
481 |
|
482 |
foreach ( $rates as $key => $rate ) {
|
483 |
// Check for instance to make sure calculation is not done for multiple times
|
484 |
+
if ( ! $rate instanceof WC_GZD_Shipping_Rate ) {
|
485 |
$rates[ $key ] = new WC_GZD_Shipping_Rate( $rate );
|
486 |
+
}
|
487 |
}
|
488 |
|
489 |
return $rates;
|
494 |
* Filter is being remove right after get_cart_tax - check has been finished within cart-totals.php
|
495 |
*/
|
496 |
public function hide_cart_estimated_text() {
|
497 |
+
if ( get_option( 'woocommerce_gzd_display_hide_cart_tax_estimated' ) == 'yes' ) {
|
498 |
add_filter( 'woocommerce_get_cart_tax', array( $this, 'set_cart_tax_zero' ) );
|
499 |
+
}
|
500 |
}
|
501 |
|
502 |
/**
|
503 |
* This will set the cart tax to zero
|
504 |
+
*
|
505 |
* @param float $tax current's cart tax
|
506 |
* @return int
|
507 |
*/
|
513 |
* Removes the zero cart tax filter after get_cart_tax has been finished
|
514 |
*/
|
515 |
public function remove_cart_tax_zero_filter() {
|
516 |
+
if ( get_option( 'woocommerce_gzd_display_hide_cart_tax_estimated' ) == 'yes' ) {
|
517 |
remove_filter( 'woocommerce_get_cart_tax', array( $this, 'set_cart_tax_zero' ) );
|
518 |
+
}
|
519 |
}
|
520 |
|
521 |
/**
|
529 |
*/
|
530 |
public function filter_product_classes( $classname, $product_type, $post_type, $product_id ) {
|
531 |
$gzd_classname = str_replace( 'WC', 'WC_GZD', $classname );
|
532 |
+
if ( class_exists( $gzd_classname ) ) {
|
533 |
$classname = $gzd_classname;
|
534 |
+
}
|
535 |
return $classname;
|
536 |
}
|
537 |
|
546 |
*/
|
547 |
public function load_plugin_textdomain() {
|
548 |
$locale = apply_filters( 'plugin_locale', get_locale(), 'woocommerce-germanized' );
|
549 |
+
|
550 |
load_textdomain( 'woocommerce-germanized', trailingslashit( WP_LANG_DIR ) . 'woocommerce-germanized/woocommerce-germanized-' . $locale . '.mo' );
|
551 |
load_plugin_textdomain( 'woocommerce-germanized', false, plugin_basename( dirname( __FILE__ ) ) . '/i18n/languages/' );
|
552 |
}
|
554 |
/**
|
555 |
* Show action links on the plugin screen
|
556 |
*
|
557 |
+
* @param mixed $links
|
558 |
* @return array
|
559 |
*/
|
560 |
public function action_links( $links ) {
|
566 |
/**
|
567 |
* Add styles to frontend
|
568 |
*
|
569 |
+
* @param array $styles
|
570 |
*/
|
571 |
public function add_styles( $styles ) {
|
572 |
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
573 |
+
|
574 |
$styles['woocommerce-gzd-layout'] = array(
|
575 |
+
'src' => str_replace( array( 'http:', 'https:' ), '', WC_germanized()->plugin_url() ) . '/assets/css/woocommerce-gzd-layout' . $suffix . '.css',
|
576 |
+
'deps' => '',
|
577 |
+
'version' => WC_GERMANIZED_VERSION,
|
578 |
+
'media' => 'all',
|
579 |
);
|
580 |
+
|
581 |
return $styles;
|
582 |
}
|
583 |
|
586 |
*/
|
587 |
public function add_inline_styles() {
|
588 |
$color = ( get_option( 'woocommerce_gzd_display_checkout_table_color' ) ? get_option( 'woocommerce_gzd_display_checkout_table_color' ) : '#eee' );
|
589 |
+
$custom_css = ".woocommerce-checkout .shop_table { background-color: $color; }";
|
590 |
+
wp_add_inline_style( 'woocommerce-gzd-layout', $custom_css );
|
591 |
}
|
592 |
|
593 |
/**
|
595 |
*/
|
596 |
public function add_scripts() {
|
597 |
global $post;
|
598 |
+
|
599 |
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
600 |
$assets_path = str_replace( array( 'http:', 'https:' ), '', WC_germanized()->plugin_url() ) . '/assets/';
|
601 |
$frontend_script_path = $assets_path . 'js/';
|
602 |
|
603 |
+
if ( is_page() && is_object( $post ) && has_shortcode( $post->post_content, 'revocation_form' ) ) {
|
604 |
wp_enqueue_script( 'wc-gzd-revocation', $frontend_script_path . 'revocation' . $suffix . '.js', array( 'jquery', 'woocommerce', 'wc-country-select', 'wc-address-i18n' ), WC_GERMANIZED_VERSION, true );
|
605 |
+
}
|
606 |
+
|
607 |
+
if ( is_checkout() ) {
|
608 |
+
|
609 |
+
wp_enqueue_script( 'wc-gzd-checkout', $frontend_script_path . 'checkout' . $suffix . '.js', array(
|
610 |
+
'jquery',
|
611 |
+
'wc-checkout',
|
612 |
+
), WC_GERMANIZED_VERSION, true );
|
613 |
+
|
614 |
+
}
|
615 |
+
|
616 |
if ( is_singular( 'product' ) ) {
|
617 |
$product = wc_get_product( $post->ID );
|
618 |
if ( $product && $product->is_type( 'variable' ) ) {
|
619 |
// Enqueue variation scripts
|
620 |
wp_enqueue_script( 'wc-gzd-add-to-cart-variation', $frontend_script_path . 'add-to-cart-variation' . $suffix . '.js', array( 'jquery', 'woocommerce', 'wc-add-to-cart-variation' ), WC_GERMANIZED_VERSION, true );
|
621 |
}
|
622 |
+
}
|
623 |
+
|
624 |
+
do_action( 'woocommerce_gzd_registered_scripts', $suffix, $frontend_script_path, $assets_path );
|
625 |
}
|
626 |
|
627 |
/**
|
630 |
public function localize_scripts() {
|
631 |
global $wp;
|
632 |
$assets_path = str_replace( array( 'http:', 'https:' ), '', WC()->plugin_url() ) . '/assets/';
|
633 |
+
|
634 |
if ( wp_script_is( 'wc-gzd-revocation' ) ) {
|
635 |
wp_localize_script( 'wc-gzd-revocation', 'wc_gzd_revocation_params', apply_filters( 'wc_gzd_revocation_params', array(
|
636 |
'ajax_url' => WC()->ajax_url(),
|
637 |
'ajax_loader_url' => apply_filters( 'woocommerce_ajax_loader_url', $assets_path . 'images/ajax-loader@2x.gif' ),
|
638 |
) ) );
|
639 |
}
|
640 |
+
|
641 |
+
do_action( 'woocommerce_gzd_localized_scripts', $assets_path );
|
642 |
}
|
643 |
|
644 |
/**
|
645 |
* Add WooCommerce Germanized Settings Tab
|
646 |
*
|
647 |
+
* @param array $integrations
|
648 |
* @return array
|
649 |
*/
|
650 |
public function add_settings( $integrations ) {
|
657 |
* Add small business global Email Footer
|
658 |
*/
|
659 |
public function email_small_business_notice() {
|
660 |
+
if ( get_option( 'woocommerce_gzd_small_enterprise' ) == 'yes' ) {
|
661 |
wc_get_template( 'global/small-business-info.php' );
|
662 |
+
}
|
663 |
}
|
664 |
|
665 |
/**
|
666 |
* PHP 5.3 backwards compatibility for getting date diff in days
|
667 |
+
*
|
668 |
* @param string $from date from
|
669 |
* @param string $to date to
|
670 |
* @return array
|
671 |
*/
|
672 |
public function get_date_diff( $from, $to ) {
|
673 |
$diff = abs( strtotime( $to ) - strtotime( $from ) );
|
674 |
+
return array(
|
675 |
+
'd' => floor( $diff / ( 60 * 60 * 24 ) ),
|
676 |
+
);
|
677 |
}
|
678 |
|
679 |
/**
|
680 |
* Add Custom Email templates
|
681 |
*
|
682 |
+
* @param array $mails
|
683 |
* @return array
|
684 |
*/
|
685 |
public function add_emails( $mails ) {
|
686 |
+
$mails['WC_GZD_Email_Customer_Paid_For_Order'] = include 'includes/emails/class-wc-gzd-email-customer-paid-for-order.php';
|
687 |
+
$mails['WC_GZD_Email_Customer_New_Account_Activation'] = include 'includes/emails/class-wc-gzd-email-customer-new-account-activation.php';
|
688 |
+
$mails['WC_GZD_Email_Customer_Revocation'] = include 'includes/emails/class-wc-gzd-email-customer-revocation.php';
|
689 |
+
$mails['WC_GZD_Email_Customer_Ekomi'] = include 'includes/emails/class-wc-gzd-email-customer-ekomi.php';
|
690 |
+
$mails['WC_GZD_Email_Customer_Trusted_Shops'] = include 'includes/emails/class-wc-gzd-email-customer-trusted-shops.php';
|
691 |
return $mails;
|
692 |
}
|
693 |
|
694 |
/**
|
695 |
* Filter Email template to include WooCommerce Germanized template files
|
696 |
*
|
697 |
+
* @param string $core_file
|
698 |
+
* @param string $template
|
699 |
+
* @param string $template_base
|
700 |
* @return string
|
701 |
*/
|
702 |
public function email_templates( $core_file, $template, $template_base ) {
|
703 |
+
|
704 |
+
if ( ! file_exists( $template_base . $template ) && file_exists( $this->plugin_path() . '/templates/' . $template ) ) {
|
705 |
$core_file = $this->plugin_path() . '/templates/' . $template;
|
706 |
+
}
|
707 |
+
|
708 |
return apply_filters( 'woocommerce_germanized_email_template_hook', $core_file, $template, $template_base );
|
709 |
}
|
710 |
|
711 |
public function register_gateways( $gateways ) {
|
712 |
|
713 |
// Do only load gateway for PHP >= 5.3 because of Namespaces
|
714 |
+
if ( version_compare( phpversion(), '5.3', '>=' ) ) {
|
715 |
$gateways[] = 'WC_GZD_Gateway_Direct_Debit';
|
716 |
+
}
|
717 |
+
|
718 |
$gateways[] = 'WC_GZD_Gateway_Invoice';
|
719 |
|
720 |
return $gateways;
|
723 |
|
724 |
/**
|
725 |
* Improve tax display within order totals
|
726 |
+
*
|
727 |
+
* @param array $order_totals
|
728 |
+
* @param object $order
|
729 |
+
* @return array
|
730 |
*/
|
731 |
public function order_item_totals( $order_totals, $order ) {
|
732 |
|
735 |
|
736 |
// Tax for inclusive prices
|
737 |
if ( 'yes' == get_option( 'woocommerce_calc_taxes' ) && 'incl' == get_option( 'woocommerce_tax_display_cart' ) ) {
|
738 |
+
|
739 |
$tax_array = array();
|
740 |
if ( 'itemized' == get_option( 'woocommerce_tax_total_display' ) ) {
|
741 |
foreach ( $order->get_tax_totals() as $code => $tax ) {
|
742 |
$tax->rate = WC_Tax::get_rate_percent( $tax->rate_id );
|
743 |
+
if ( ! isset( $tax_array[ $tax->rate ] ) ) {
|
744 |
+
$tax_array[ $tax->rate ] = array(
|
745 |
+
'tax' => $tax,
|
746 |
+
'amount' => $tax->amount,
|
747 |
+
'contains' => array( $tax ),
|
748 |
+
);
|
749 |
+
} else {
|
750 |
+
array_push( $tax_array[ $tax->rate ]['contains'], $tax );
|
751 |
+
$tax_array[ $tax->rate ]['amount'] += $tax->amount;
|
752 |
}
|
753 |
}
|
754 |
} else {
|
755 |
$base_rate = array_values( WC_Tax::get_shop_base_rate() );
|
756 |
$base_rate = (object) $base_rate[0];
|
757 |
$base_rate->rate = $base_rate->rate;
|
758 |
+
$tax_array[] = array(
|
759 |
+
'tax' => $base_rate,
|
760 |
+
'contains' => array( $base_rate ),
|
761 |
+
'amount' => $order->get_total_tax(),
|
762 |
+
);
|
763 |
}
|
764 |
|
765 |
if ( ! empty( $tax_array ) ) {
|
766 |
foreach ( $tax_array as $tax ) {
|
767 |
+
$order_totals[ 'tax_' . $tax['tax']->label ] = array(
|
768 |
+
'label' => ( get_option( 'woocommerce_tax_total_display' ) == 'itemized' ? sprintf( __( 'incl. %s%% VAT', 'woocommerce-germanized' ), wc_gzd_format_tax_rate_percentage( $tax['tax']->rate ) ) : __( 'incl. VAT', 'woocommerce-germanized' ) ),
|
769 |
+
'value' => wc_price( $tax['amount'] ),
|
770 |
);
|
771 |
}
|
772 |
}
|
773 |
+
}// End if().
|
774 |
|
775 |
return $order_totals;
|
776 |
}
|
779 |
* Remove cart unit price subtotal filter
|
780 |
*/
|
781 |
public function remove_cart_unit_price_filter() {
|
782 |
+
if ( is_cart() ) {
|
783 |
remove_filter( 'woocommerce_cart_item_subtotal', 'wc_gzd_cart_product_unit_price', 0, 2 );
|
784 |
+
}
|
785 |
}
|
786 |
|
787 |
/**
|
788 |
* Prevent tax class merging. Could lead to future problems - not yet implemented
|
789 |
+
*
|
790 |
* @param string $code tax class code
|
791 |
+
* @param int $rate_id
|
792 |
* @return string unique tax class code
|
793 |
*/
|
794 |
public function prevent_tax_name_merge( $code, $rate_id ) {
|
801 |
private function setup_trusted_shops() {
|
802 |
// Initialize Trusted Shops module
|
803 |
$this->trusted_shops = new WC_GZD_Trusted_Shops( $this, array(
|
804 |
+
'prefix' => 'GZD_',
|
805 |
+
'et_params' => array(
|
806 |
+
'utm_campaign' => 'shopsoftware',
|
807 |
+
'utm_content' => 'WOOCOMMERCEGERMANIZED',
|
808 |
+
),
|
809 |
+
'signup_params' => array(
|
810 |
+
'utm_source' => 'woocommerce-germanized',
|
811 |
+
'utm_campaign' => 'woocommerce-germanized',
|
812 |
+
),
|
813 |
+
'urls' => array(
|
814 |
+
'integration' => 'http://www.trustedshops.de/shopbetreiber/integration/shopsoftware-integration/woocommerce-germanized/',
|
815 |
+
'signup' => 'http://www.trustbadge.com/de/Preise/',
|
816 |
+
'trustbadge_custom' => 'http://www.trustedshops.de/shopbetreiber/integration/trustbadge/trustbadge-custom/',
|
817 |
+
'reviews' => 'http://www.trustedshops.de/shopbetreiber/integration/product-reviews/',
|
818 |
+
),
|
819 |
)
|
820 |
);
|
821 |
}
|
|
|
822 |
}
|
823 |
|
824 |
endif;
|
831 |
}
|
832 |
|
833 |
$GLOBALS['woocommerce_germanized'] = WC_germanized();
|
|
|
|