Version Description
- 16/04/2019 =
- Fix - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Fix PHP warning about headers already sent.
- Fix - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Improve compatibility with Add-ons plugin.
- Fix - PRICES & CURRENCIES - Offer Your Price - Check if
$_product
really exists onoffer_price()
. - Fix - PRICES & CURRENCIES - Replace
woocommerce_before_main_content
hook bywp_footer
for adding the form on frontend as some themes don't use the original hook. - Fix - PRODUCTS - Add to Cart - Fix compatibility between Order Min/Max Quantities and radio buttons for variations.
- Fix - CART & CHECKOUT - Checkout Custom Fields - Fix some special characters (e.g Russian) being wiped out on checkout by using
urldecode()
. - Fix - CART & CHECKOUT - Checkout Custom Fields - Display field value instead of key when using radio or select as fields.
- Fix - CART & CHECKOUT - EU VAT Number - Default EU VAT number value on the checkout page fixed.
- Fix - PAYMENT GATEWAYS - Gateways Currency Converter - Replace commas by periods on
change_price_by_gateway()
avoiding wrong calculations. - Fix - PDF INVOICING & PACKING SLIPS - Check if TCPDF class exists before loading it, avoiding possible errors with other plugins.
- Fix - PDF INVOICING & PACKING SLIPS - Fix Too many redirects when using Generate Invoice from Bulk actions.
- Fix - PDF INVOICING & PACKING SLIPS - Fix "Failed to load PDF document" in some environments by putting the pdf inside buffer instead of displaying it directly.
- Fix - Functions - Admin - Make
wcj_get_settings_as_multiselect_or_text()
compatible withwcj_get_ajax_settings()
. - Fix - Functions - Booster Core -
wcj_is_module_enabled()
- Checking if it is a REST API call before requiringpluggable.php
. - Fix - Functions - Exchange Rates - Fix 'Division by zero' PHP warning.
- Fix - Functions - Exchange Rates - Ignore warnings from
simplexml_load_file()
depending on WP_DEBUG constant. - Fix - Functions - General -
wcj_session_maybe_start()
Improve session detection method. - Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Add compatibility with Smart Coupons plugin.
- Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Add compatibility with WooCommerce Price Filter widget.
- Dev - PRICES & CURRENCIES - Wholesale Price - Add ajax search to Product fields.
- Dev - PRODUCTS - Add to Cart - Add radio inputs template using
woocommerce_before_variations_form
hook instead of replacing the entire add-to-cart/variable.php. - Dev - PRODUCTS - Add to Cart - Change radio buttons for variations mechanism. Now the native WooCommerce dropdown for variations will be on DOM but hidden. That will make some js functions unnecessary like
maybe_hide_unavailable()
. - Dev - PRODUCTS - Add to Cart - Add attributes label on top of the radio inputs table.
- Dev - PRODUCTS - Bookings - Add loader on frontend while ajax is loading.
- Dev - PRODUCTS - Bookings - Add bookings price beneath dates table instead of replacing prices avoiding possible duplicated prices.
- Dev - PRODUCTS - Bookings - Add new option to enable/disable the variable product calculation per day.
- Dev - PRODUCTS - Product Images - Add options to control the callback and priority from some hooks.
- Dev - PRODUCTS - Product Info Settings - Add ajax search to Product fields.
- Dev - PRODUCTS - Product Input Fields - Add ajax search to Product fields.
- Dev - PRODUCTS - Sorting - Add new option to restore default WooCommerce Sorting on Avada theme.
- Dev - SHIPPING & ORDERS - Left to Free Shipping - Info on Checkout - "Order review: Before shipping" and "Order review: After shipping" positions added.
- Dev - SHIPPING & ORDERS - Shipping Methods by Min/Max Order Quantity - Initial module release.
- Dev - PDF INVOICING & PACKING SLIPS - Update WordPress filters used to create bulk actions.
- Dev - PDF INVOICING & PACKING SLIPS - Add security check
check_admin_referer( 'bulk-posts' )
onbulk_actions_handle()
. - Dev - PDF INVOICING & PACKING SLIPS - Tools - Invoices Report -
wcj_pdf_invoicing_report_tool_row
filter added. - Dev - EMAILS & MISC. - My Account - "Custom Menu Pages" section added.
- Dev - Functions - Admin - Add
wcj_get_ajax_settings()
making it possible to search products and categories by ajax. - Dev - Functions - General - Add option to include
read_and_close
parameter tosession_start
. - Dev - Functions - General - Sanitize IP Detection methods on
wcj_get_the_ip()
. - Dev - Functions - General - Add option to increase control over IP Detection methods.
- Dev - Booster Module -
maybe_fix_settings()
adds 'wc-enhanced-select' class only if 'remove_class' parameter is not present. - Dev - Shortcodes - General -
[wcj_country_select_drop_down_list]
shortcode will be hidden if Prices and Currencies by Country module is not enabled, unless parameterforce_display
have been passed astrue
.
Download this release
Release Info
Developer | algoritmika |
Plugin | Booster for WooCommerce |
Version | 4.3.0 |
Comparing to | |
See all releases |
Code changes from version 4.2.0 to 4.3.0
- includes/admin/wcj-modules-cats.php +2 -1
- includes/class-wcj-checkout-custom-fields.php +13 -6
- includes/class-wcj-eu-vat-number.php +3 -3
- includes/class-wcj-multicurrency.php +228 -16
- includes/class-wcj-my-account.php +99 -3
- includes/class-wcj-offer-price.php +7 -4
- includes/class-wcj-payment-gateways-currency.php +4 -3
- includes/class-wcj-pdf-invoicing.php +52 -66
- includes/class-wcj-product-add-to-cart.php +20 -12
- includes/class-wcj-product-bookings.php +68 -15
- includes/class-wcj-product-images.php +35 -2
- includes/class-wcj-shipping-by-order-amount.php +1 -0
- includes/class-wcj-shipping-by-order-qty.php +87 -0
- includes/class-wcj-sorting.php +50 -2
- includes/classes/class-wcj-module.php +11 -6
- includes/classes/class-wcj-tcpdf.php +4 -2
- includes/core/wcj-modules.php +2 -1
- includes/functions/wcj-functions-admin.php +66 -13
- includes/functions/wcj-functions-booster-core.php +60 -23
- includes/functions/wcj-functions-exchange-rates.php +9 -5
- includes/functions/wcj-functions-general.php +21 -17
- includes/js/wcj-bookings.js +15 -6
- includes/js/wcj-variations-frontend.js +30 -15
- includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php +3 -3
- includes/settings/wcj-settings-general.php +17 -1
- includes/settings/wcj-settings-left-to-free-shipping.php +3 -1
- includes/settings/wcj-settings-my-account.php +52 -1
- includes/settings/wcj-settings-product-bookings.php +9 -1
- includes/settings/wcj-settings-product-custom-info.php +3 -4
- includes/settings/wcj-settings-product-images.php +36 -0
- includes/settings/wcj-settings-product-input-fields.php +3 -4
- includes/settings/wcj-settings-shipping-by-order-qty.php +79 -0
- includes/settings/wcj-settings-sorting.php +28 -1
- includes/settings/wcj-settings-wholesale-price.php +7 -12
- includes/shortcodes/class-wcj-shortcodes-general.php +8 -2
- includes/templates/wcj-add-to-cart-variable.php +0 -69
- includes/templates/wcj-radio-for-variations.php +39 -0
- langs/woocommerce-jetpack.pot +516 -359
- readme.txt +47 -2
- woocommerce-jetpack.php +2 -2
includes/admin/wcj-modules-cats.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules Array
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) split "Shipping & Orders", "Cart & Checkout", "Products", "Prices & Currencies" etc.
|
@@ -146,6 +146,7 @@ return apply_filters( 'wcj_modules', array(
|
|
146 |
'shipping_by_cities',
|
147 |
'shipping_by_time',
|
148 |
'shipping_by_order_amount',
|
|
|
149 |
'address_formats',
|
150 |
'orders',
|
151 |
'admin_orders_list',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules Array
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) split "Shipping & Orders", "Cart & Checkout", "Products", "Prices & Currencies" etc.
|
146 |
'shipping_by_cities',
|
147 |
'shipping_by_time',
|
148 |
'shipping_by_order_amount',
|
149 |
+
'shipping_by_order_qty',
|
150 |
'address_formats',
|
151 |
'orders',
|
152 |
'admin_orders_list',
|
includes/class-wcj-checkout-custom-fields.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Checkout Custom Fields
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -187,7 +187,7 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
187 |
/**
|
188 |
* update_custom_checkout_fields_order_meta.
|
189 |
*
|
190 |
-
* @version 4.
|
191 |
*/
|
192 |
function update_custom_checkout_fields_order_meta( $order_id ) {
|
193 |
for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_checkout_custom_fields_total_number', 1 ) ); $i++ ) {
|
@@ -212,14 +212,14 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
212 |
get_option( 'wcj_checkout_custom_field_checkbox_no_' . $i );
|
213 |
update_post_meta( $order_id, '_' . $option_name_checkbox_value, $checkbox_value );
|
214 |
} elseif ( 'radio' === $the_type || 'select' === $the_type ) {
|
215 |
-
update_post_meta( $order_id, '_' . $option_name, wc_clean( $_POST[ $option_name ] ) );
|
216 |
$option_name_values = $the_section . '_' . 'wcj_checkout_field_select_options_' . $i;
|
217 |
$the_values = get_option( 'wcj_checkout_custom_field_select_options_' . $i );
|
218 |
update_post_meta( $order_id, '_' . $option_name_values, $the_values );
|
219 |
} elseif ( 'textarea' === $the_type && 'no' === get_option( 'wcj_checkout_custom_fields_textarea_clean', 'yes' ) ) {
|
220 |
-
update_post_meta( $order_id, '_' . $option_name, $_POST[ $option_name ] );
|
221 |
} else {
|
222 |
-
update_post_meta( $order_id, '_' . $option_name, wc_clean( $_POST[ $option_name ] ) );
|
223 |
}
|
224 |
}
|
225 |
}
|
@@ -336,7 +336,7 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
336 |
/**
|
337 |
* add_woocommerce_admin_fields.
|
338 |
*
|
339 |
-
* @version
|
340 |
* @todo converting from before version 2.3.0: section?
|
341 |
* @todo add alternative way of displaying fields (e.g. new meta box), so we have more control over displaying fields' values (e.g. line breaks)
|
342 |
*/
|
@@ -398,6 +398,13 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
398 |
'wrapper_class' => 'form-field-wide',
|
399 |
);
|
400 |
if ( isset( $options ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
401 |
$fields[ $the_key ]['options'] = $options;
|
402 |
}
|
403 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Checkout Custom Fields
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
187 |
/**
|
188 |
* update_custom_checkout_fields_order_meta.
|
189 |
*
|
190 |
+
* @version 4.3.0
|
191 |
*/
|
192 |
function update_custom_checkout_fields_order_meta( $order_id ) {
|
193 |
for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_checkout_custom_fields_total_number', 1 ) ); $i++ ) {
|
212 |
get_option( 'wcj_checkout_custom_field_checkbox_no_' . $i );
|
213 |
update_post_meta( $order_id, '_' . $option_name_checkbox_value, $checkbox_value );
|
214 |
} elseif ( 'radio' === $the_type || 'select' === $the_type ) {
|
215 |
+
update_post_meta( $order_id, '_' . $option_name, wc_clean( urldecode( $_POST[ $option_name ] ) ) );
|
216 |
$option_name_values = $the_section . '_' . 'wcj_checkout_field_select_options_' . $i;
|
217 |
$the_values = get_option( 'wcj_checkout_custom_field_select_options_' . $i );
|
218 |
update_post_meta( $order_id, '_' . $option_name_values, $the_values );
|
219 |
} elseif ( 'textarea' === $the_type && 'no' === get_option( 'wcj_checkout_custom_fields_textarea_clean', 'yes' ) ) {
|
220 |
+
update_post_meta( $order_id, '_' . $option_name, urldecode( $_POST[ $option_name ] ) );
|
221 |
} else {
|
222 |
+
update_post_meta( $order_id, '_' . $option_name, wc_clean( urldecode( $_POST[ $option_name ] ) ) );
|
223 |
}
|
224 |
}
|
225 |
}
|
336 |
/**
|
337 |
* add_woocommerce_admin_fields.
|
338 |
*
|
339 |
+
* @version 4.3.0
|
340 |
* @todo converting from before version 2.3.0: section?
|
341 |
* @todo add alternative way of displaying fields (e.g. new meta box), so we have more control over displaying fields' values (e.g. line breaks)
|
342 |
*/
|
398 |
'wrapper_class' => 'form-field-wide',
|
399 |
);
|
400 |
if ( isset( $options ) ) {
|
401 |
+
// Displays checkout field value, not the key
|
402 |
+
add_filter( "woocommerce_order_get__{$section}_{$the_key}", function ( $name ) use ( $options ) {
|
403 |
+
if ( isset( $options[ $name ] ) ) {
|
404 |
+
return $options[ $name ];
|
405 |
+
}
|
406 |
+
return $name;
|
407 |
+
} );
|
408 |
$fields[ $the_key ]['options'] = $options;
|
409 |
}
|
410 |
}
|
includes/class-wcj-eu-vat-number.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - EU VAT Number
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.3.9
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -280,10 +280,10 @@ class WCJ_EU_VAT_Number extends WCJ_Module {
|
|
280 |
/**
|
281 |
* add_default_checkout_billing_eu_vat_number.
|
282 |
*
|
283 |
-
* @version 3.
|
284 |
*/
|
285 |
function add_default_checkout_billing_eu_vat_number( $default_value, $field_key ) {
|
286 |
-
if (
|
287 |
return $eu_vat_number_to_check;
|
288 |
} elseif ( is_user_logged_in() ) {
|
289 |
$current_user = wp_get_current_user();
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - EU VAT Number
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.3.9
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
280 |
/**
|
281 |
* add_default_checkout_billing_eu_vat_number.
|
282 |
*
|
283 |
+
* @version 4.3.0
|
284 |
*/
|
285 |
function add_default_checkout_billing_eu_vat_number( $default_value, $field_key ) {
|
286 |
+
if ( '' != ( $eu_vat_number_to_check = wcj_session_get( 'wcj_eu_vat_number_to_check' ) ) ) {
|
287 |
return $eu_vat_number_to_check;
|
288 |
} elseif ( is_user_logged_in() ) {
|
289 |
$current_user = wp_get_current_user();
|
includes/class-wcj-multicurrency.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Multicurrency (Currency Switcher)
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.4.3
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 4.
|
20 |
* @todo check if we can just always execute `init()` on `init` hook
|
21 |
*/
|
22 |
function __construct() {
|
@@ -41,7 +41,6 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
41 |
parent::__construct();
|
42 |
|
43 |
if ( $this->is_enabled() ) {
|
44 |
-
|
45 |
$this->price_hooks_priority = wcj_get_module_price_hooks_priority( 'multicurrency' );
|
46 |
|
47 |
// Session
|
@@ -65,10 +64,145 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
65 |
}
|
66 |
}
|
67 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
68 |
/**
|
69 |
* add_hooks.
|
70 |
*
|
71 |
-
* @version 3.
|
72 |
*/
|
73 |
function add_hooks() {
|
74 |
if ( wcj_is_frontend() ) {
|
@@ -84,7 +218,11 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
84 |
wcj_add_change_price_hooks( $this, $this->price_hooks_priority );
|
85 |
|
86 |
// "WooCommerce Product Add-ons" plugin
|
87 |
-
add_filter( '
|
|
|
|
|
|
|
|
|
88 |
|
89 |
// Additional Price Filters
|
90 |
$this->additional_price_filters = get_option( 'wcj_multicurrency_switcher_additional_price_filters', '' );
|
@@ -100,6 +238,28 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
100 |
}
|
101 |
}
|
102 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
/**
|
104 |
* init.
|
105 |
*
|
@@ -114,22 +274,75 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
114 |
}
|
115 |
|
116 |
/**
|
117 |
-
*
|
|
|
|
|
|
|
118 |
*
|
119 |
-
* @
|
120 |
-
* @
|
|
|
|
|
121 |
*/
|
122 |
-
function
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
}
|
129 |
}
|
130 |
}
|
131 |
}
|
132 |
-
return $
|
133 |
}
|
134 |
|
135 |
/**
|
@@ -236,7 +449,6 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
236 |
* @version 3.8.0
|
237 |
*/
|
238 |
function change_price( $price, $_product ) {
|
239 |
-
|
240 |
if ( '' === $price ) {
|
241 |
return $price;
|
242 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Multicurrency (Currency Switcher)
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.4.3
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 4.3.0
|
20 |
* @todo check if we can just always execute `init()` on `init` hook
|
21 |
*/
|
22 |
function __construct() {
|
41 |
parent::__construct();
|
42 |
|
43 |
if ( $this->is_enabled() ) {
|
|
|
44 |
$this->price_hooks_priority = wcj_get_module_price_hooks_priority( 'multicurrency' );
|
45 |
|
46 |
// Session
|
64 |
}
|
65 |
}
|
66 |
|
67 |
+
/**
|
68 |
+
* Handles third party compatibility
|
69 |
+
*
|
70 |
+
* @version 4.3.0
|
71 |
+
* @since 4.3.0
|
72 |
+
*/
|
73 |
+
function handle_third_party_compatibility(){
|
74 |
+
// "WooCommerce Smart Coupons" Compatibility
|
75 |
+
add_filter( 'woocommerce_coupon_get_amount', array( $this, 'smart_coupons_get_amount' ), 10, 2 );
|
76 |
+
|
77 |
+
// WooCommerce Price Filter Widget
|
78 |
+
add_action( 'wp_footer', array( $this, 'add_compatibility_with_price_filter_widget' ) );
|
79 |
+
add_action( 'wp_footer', array( $this, 'fix_price_filter_widget_currency_format' ) );
|
80 |
+
}
|
81 |
+
|
82 |
+
/**
|
83 |
+
* Adds compatibility with WooCommerce Price Filter widget
|
84 |
+
* @version 4.3.0
|
85 |
+
* @since 4.3.0
|
86 |
+
*/
|
87 |
+
function add_compatibility_with_price_filter_widget() {
|
88 |
+
if ( ! is_active_widget( false, false, 'woocommerce_price_filter' ) ) {
|
89 |
+
return;
|
90 |
+
}
|
91 |
+
?>
|
92 |
+
<?php
|
93 |
+
$exchange_rate = $this->get_currency_exchange_rate( $this->get_current_currency_code() );
|
94 |
+
?>
|
95 |
+
<input type="hidden" id="wcj_mc_exchange_rate" value="<?php echo esc_html( $exchange_rate ) ?>"/>
|
96 |
+
<script>
|
97 |
+
var wcj_mc_pf_slider = {
|
98 |
+
slider: null,
|
99 |
+
convert_rate: 1,
|
100 |
+
original_min: 1,
|
101 |
+
original_max: 1,
|
102 |
+
original_values: [],
|
103 |
+
current_min: 1,
|
104 |
+
current_max: 1,
|
105 |
+
current_values: [],
|
106 |
+
|
107 |
+
init(slider, convert_rate) {
|
108 |
+
this.slider = slider;
|
109 |
+
this.convert_rate = convert_rate;
|
110 |
+
this.original_min = jQuery(this.slider).slider("option", "min");
|
111 |
+
this.original_max = jQuery(this.slider).slider("option", "max");
|
112 |
+
this.original_values = jQuery(this.slider).slider("option", "values");
|
113 |
+
this.current_min = this.original_min * this.convert_rate;
|
114 |
+
this.current_max = this.original_max * this.convert_rate;
|
115 |
+
this.current_values = this.original_values.map(function (elem) {
|
116 |
+
return elem * wcj_mc_pf_slider.convert_rate;
|
117 |
+
});
|
118 |
+
this.update_slider();
|
119 |
+
},
|
120 |
+
|
121 |
+
/**
|
122 |
+
* @see price-slider.js, init_price_filter()
|
123 |
+
*/
|
124 |
+
update_slider() {
|
125 |
+
jQuery(this.slider).slider("destroy");
|
126 |
+
var current_min_price = Math.floor(this.current_min);
|
127 |
+
var current_max_price = Math.ceil(this.current_max);
|
128 |
+
|
129 |
+
jQuery(this.slider).slider({
|
130 |
+
range: true,
|
131 |
+
animate: true,
|
132 |
+
min: current_min_price,
|
133 |
+
max: current_max_price,
|
134 |
+
values: wcj_mc_pf_slider.current_values,
|
135 |
+
create: function () {
|
136 |
+
jQuery(wcj_mc_pf_slider.slider).parent().find('.price_slider_amount #min_price').val(wcj_mc_pf_slider.current_values[0] / wcj_mc_pf_slider.convert_rate);
|
137 |
+
jQuery(wcj_mc_pf_slider.slider).parent().find('.price_slider_amount #max_price').val(wcj_mc_pf_slider.current_values[1] / wcj_mc_pf_slider.convert_rate);
|
138 |
+
jQuery(document.body).trigger('price_slider_create', [Math.floor(wcj_mc_pf_slider.current_values[0]), Math.ceil(wcj_mc_pf_slider.current_values[1])]);
|
139 |
+
},
|
140 |
+
slide: function (event, ui) {
|
141 |
+
jQuery(wcj_mc_pf_slider.slider).parent().find('.price_slider_amount #min_price').val(Math.floor(ui.values[0] / wcj_mc_pf_slider.convert_rate));
|
142 |
+
jQuery(wcj_mc_pf_slider.slider).parent().find('.price_slider_amount #max_price').val(Math.ceil(ui.values[1] / wcj_mc_pf_slider.convert_rate));
|
143 |
+
jQuery(document.body).trigger('price_slider_slide', [Math.floor(ui.values[0]), Math.ceil(ui.values[1])]);
|
144 |
+
},
|
145 |
+
change: function (event, ui) {
|
146 |
+
jQuery(document.body).trigger('price_slider_change', [Math.floor(ui.values[0]), Math.ceil(ui.values[1])]);
|
147 |
+
}
|
148 |
+
});
|
149 |
+
}
|
150 |
+
};
|
151 |
+
var wcj_mc_pf = {
|
152 |
+
price_filters: null,
|
153 |
+
rate: 1,
|
154 |
+
init: function (price_filters) {
|
155 |
+
this.price_filters = price_filters;
|
156 |
+
this.rate = document.getElementById('wcj_mc_exchange_rate').value;
|
157 |
+
this.update_slider();
|
158 |
+
},
|
159 |
+
update_slider: function () {
|
160 |
+
[].forEach.call(wcj_mc_pf.price_filters, function (el) {
|
161 |
+
wcj_mc_pf_slider.init(el, wcj_mc_pf.rate);
|
162 |
+
});
|
163 |
+
}
|
164 |
+
}
|
165 |
+
document.addEventListener("DOMContentLoaded", function () {
|
166 |
+
var price_filters = document.querySelectorAll('.price_slider.ui-slider');
|
167 |
+
if (price_filters.length) {
|
168 |
+
wcj_mc_pf.init(price_filters);
|
169 |
+
}
|
170 |
+
});
|
171 |
+
</script>
|
172 |
+
<?php
|
173 |
+
}
|
174 |
+
|
175 |
+
/**
|
176 |
+
* Fixes price filter widget currency format
|
177 |
+
*
|
178 |
+
* @version 4.3.0
|
179 |
+
* @since 4.3.0
|
180 |
+
*/
|
181 |
+
function fix_price_filter_widget_currency_format() {
|
182 |
+
$price_args = apply_filters( 'wc_price_args', array(
|
183 |
+
'ex_tax_label' => false,
|
184 |
+
'currency' => '',
|
185 |
+
'decimal_separator' => wc_get_price_decimal_separator(),
|
186 |
+
'thousand_separator' => wc_get_price_thousand_separator(),
|
187 |
+
'decimals' => wc_get_price_decimals(),
|
188 |
+
'price_format' => get_woocommerce_price_format(),
|
189 |
+
) );
|
190 |
+
$symbol = apply_filters( 'woocommerce_currency_symbol', get_woocommerce_currency_symbol(), get_woocommerce_currency() );
|
191 |
+
wp_localize_script(
|
192 |
+
'wc-price-slider', 'woocommerce_price_slider_params', array(
|
193 |
+
'currency_format_num_decimals' => $price_args['decimals'],
|
194 |
+
'currency_format_symbol' => $symbol,
|
195 |
+
'currency_format_decimal_sep' => esc_attr( $price_args['decimal_separator'] ),
|
196 |
+
'currency_format_thousand_sep' => esc_attr( $price_args['thousand_separator'] ),
|
197 |
+
'currency_format' => esc_attr( str_replace( array( '%1$s', '%2$s' ), array( '%s', '%v' ), $price_args['price_format'] ) ),
|
198 |
+
)
|
199 |
+
);
|
200 |
+
}
|
201 |
+
|
202 |
/**
|
203 |
* add_hooks.
|
204 |
*
|
205 |
+
* @version 4.3.0
|
206 |
*/
|
207 |
function add_hooks() {
|
208 |
if ( wcj_is_frontend() ) {
|
218 |
wcj_add_change_price_hooks( $this, $this->price_hooks_priority );
|
219 |
|
220 |
// "WooCommerce Product Add-ons" plugin
|
221 |
+
add_filter( 'woocommerce_get_item_data', array( $this, 'get_addons_item_data' ), 20, 2 );
|
222 |
+
add_filter( 'woocommerce_product_addons_option_price_raw', array( $this, 'product_addons_option_price_raw' ), 10, 2 );
|
223 |
+
|
224 |
+
// Third Party Compatibility
|
225 |
+
$this->handle_third_party_compatibility();
|
226 |
|
227 |
// Additional Price Filters
|
228 |
$this->additional_price_filters = get_option( 'wcj_multicurrency_switcher_additional_price_filters', '' );
|
238 |
}
|
239 |
}
|
240 |
|
241 |
+
/**
|
242 |
+
* Converts Smart Coupon currency.
|
243 |
+
*
|
244 |
+
* @version 4.3.0
|
245 |
+
* @since 4.3.0
|
246 |
+
*
|
247 |
+
* @param $value
|
248 |
+
* @param $coupon
|
249 |
+
*
|
250 |
+
* @return float|int
|
251 |
+
*/
|
252 |
+
function smart_coupons_get_amount( $value, $coupon ) {
|
253 |
+
if (
|
254 |
+
! is_a( $coupon, 'WC_Coupon' ) ||
|
255 |
+
'smart_coupon' !== $coupon->get_discount_type()
|
256 |
+
) {
|
257 |
+
return $value;
|
258 |
+
}
|
259 |
+
$value = $this->change_price( $value, null );
|
260 |
+
return $value;
|
261 |
+
}
|
262 |
+
|
263 |
/**
|
264 |
* init.
|
265 |
*
|
274 |
}
|
275 |
|
276 |
/**
|
277 |
+
* Converts add-ons plugin prices.
|
278 |
+
*
|
279 |
+
* @version 4.3.0
|
280 |
+
* @since 4.3.0
|
281 |
*
|
282 |
+
* @param $price
|
283 |
+
* @param $option
|
284 |
+
*
|
285 |
+
* @return float|int
|
286 |
*/
|
287 |
+
function product_addons_option_price_raw( $price, $option ) {
|
288 |
+
$price = $this->change_price( $price, null );
|
289 |
+
return $price;
|
290 |
+
}
|
291 |
+
|
292 |
+
/**
|
293 |
+
* Finds old add-ons fields on cart and replace by correct price.
|
294 |
+
*
|
295 |
+
* @version 4.3.0
|
296 |
+
* @since 4.3.0
|
297 |
+
*
|
298 |
+
* @param $other_data
|
299 |
+
* @param $cart_item
|
300 |
+
*
|
301 |
+
* @return mixed
|
302 |
+
*/
|
303 |
+
function get_addons_item_data( $other_data, $cart_item ) {
|
304 |
+
if ( ! empty( $cart_item['addons'] ) ) {
|
305 |
+
foreach ( $cart_item['addons'] as $addon ) {
|
306 |
+
$price = isset( $cart_item['addons_price_before_calc'] ) ? $cart_item['addons_price_before_calc'] : $addon['price'];
|
307 |
+
$name_old = $addon['name'];
|
308 |
+
|
309 |
+
// Get old field name (with wrong currency price)
|
310 |
+
if ( 0 == $addon['price'] ) {
|
311 |
+
$name_old .= '';
|
312 |
+
} elseif ( 'percentage_based' === $addon['price_type'] && 0 == $price ) {
|
313 |
+
$name_old .= '';
|
314 |
+
} elseif ( 'percentage_based' !== $addon['price_type'] && $addon['price'] && apply_filters( 'woocommerce_addons_add_price_to_name', '__return_true' ) ) {
|
315 |
+
$name_old .= ' (' . wc_price( \WC_Product_Addons_Helper::get_product_addon_price_for_display( $addon['price'], $cart_item['data'], true ) ) . ')';
|
316 |
+
} else {
|
317 |
+
$_product = new WC_Product( $cart_item['product_id'] );
|
318 |
+
$_product->set_price( $price * ( $addon['price'] / 100 ) );
|
319 |
+
$name_old .= ' (' . WC()->cart->get_product_price( $_product ) . ')';
|
320 |
+
}
|
321 |
+
|
322 |
+
// Get new field name (with correct currency price)
|
323 |
+
$name_new = $addon['name'];
|
324 |
+
$addon['price'] = $this->change_price( $addon['price'], null );
|
325 |
+
if ( 0 == $addon['price'] ) {
|
326 |
+
$name_new .= '';
|
327 |
+
} elseif ( 'percentage_based' === $addon['price_type'] && 0 == $price ) {
|
328 |
+
$name_new .= '';
|
329 |
+
} elseif ( 'percentage_based' !== $addon['price_type'] && $addon['price'] && apply_filters( 'woocommerce_addons_add_price_to_name', '__return_true' ) ) {
|
330 |
+
$name_new .= ' (' . wc_price( \WC_Product_Addons_Helper::get_product_addon_price_for_display( $addon['price'], $cart_item['data'], true ) ) . ')';
|
331 |
+
} else {
|
332 |
+
$_product = new WC_Product( $cart_item['product_id'] );
|
333 |
+
$_product->set_price( $price * ( $addon['price'] / 100 ) );
|
334 |
+
$name_new .= ' (' . WC()->cart->get_product_price( $_product ) . ')';
|
335 |
+
}
|
336 |
+
|
337 |
+
// Find old field on cart and replace by correct price
|
338 |
+
foreach ( $other_data as $key => $data ) {
|
339 |
+
if ( $data['name'] == $name_old ) {
|
340 |
+
$other_data[ $key ]['name'] = $name_new;
|
341 |
}
|
342 |
}
|
343 |
}
|
344 |
}
|
345 |
+
return $other_data;
|
346 |
}
|
347 |
|
348 |
/**
|
449 |
* @version 3.8.0
|
450 |
*/
|
451 |
function change_price( $price, $_product ) {
|
|
|
452 |
if ( '' === $price ) {
|
453 |
return $price;
|
454 |
}
|
includes/class-wcj-my-account.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - My Account
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,8 +16,10 @@ class WCJ_My_Account extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 3.
|
20 |
* @since 2.9.0
|
|
|
|
|
21 |
*/
|
22 |
function __construct() {
|
23 |
|
@@ -52,6 +54,13 @@ class WCJ_My_Account extends WCJ_Module {
|
|
52 |
add_filter( 'woocommerce_my_account_my_orders_actions', array( $this, 'maybe_add_my_account_order_actions' ), 10, 2 );
|
53 |
add_action( 'wp_footer', array( $this, 'maybe_add_js_conformation' ) );
|
54 |
add_action( 'init', array( $this, 'process_woocommerce_mark_order_status' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
// Custom info
|
56 |
if ( 'yes' === get_option( 'wcj_my_account_custom_info_enabled', 'no' ) ) {
|
57 |
$total_number = apply_filters( 'booster_option', 1, get_option( 'wcj_my_account_custom_info_total_number', 1 ) );
|
@@ -85,6 +94,73 @@ class WCJ_My_Account extends WCJ_Module {
|
|
85 |
}
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
/**
|
89 |
* customize_menu_custom_endpoints.
|
90 |
*
|
@@ -105,12 +181,32 @@ class WCJ_My_Account extends WCJ_Module {
|
|
105 |
/**
|
106 |
* customize_dashboard.
|
107 |
*
|
108 |
-
* @version 3.
|
109 |
* @since 3.8.0
|
110 |
* @see woocommerce/templates/myaccount/dashboard.php
|
111 |
*/
|
112 |
function customize_dashboard( $value ) {
|
113 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
$current_user = get_user_by( 'id', get_current_user_id() );
|
115 |
|
116 |
if ( '' != ( $custom_content = get_option( 'wcj_my_account_custom_dashboard_content', '' ) ) ) {
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - My Account
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 4.3.0
|
20 |
* @since 2.9.0
|
21 |
+
* @todo [dev] Custom Menu Pages: add "Type" option with values: "param" (i.e. as it is now) or "endpoint"
|
22 |
+
* @todo [dev] Custom Menu Pages: deprecate "Add Custom Menu Items" (and add "link" value in "Type" options)
|
23 |
*/
|
24 |
function __construct() {
|
25 |
|
54 |
add_filter( 'woocommerce_my_account_my_orders_actions', array( $this, 'maybe_add_my_account_order_actions' ), 10, 2 );
|
55 |
add_action( 'wp_footer', array( $this, 'maybe_add_js_conformation' ) );
|
56 |
add_action( 'init', array( $this, 'process_woocommerce_mark_order_status' ) );
|
57 |
+
// Custom pages
|
58 |
+
if ( 'yes' === get_option( 'wcj_my_account_custom_pages_enabled', 'no' ) ) {
|
59 |
+
add_action( 'woocommerce_account_' . 'page' . '_endpoint', array( $this, 'customize_dashboard' ), PHP_INT_MAX );
|
60 |
+
add_filter( 'the_title', array( $this, 'set_custom_page_title' ), PHP_INT_MAX, 2 );
|
61 |
+
add_filter( 'woocommerce_account_menu_items', array( $this, 'add_custom_page_menu_item' ), PHP_INT_MAX );
|
62 |
+
add_filter( 'woocommerce_get_endpoint_url', array( $this, 'set_custom_page_url' ), PHP_INT_MAX, 4 );
|
63 |
+
}
|
64 |
// Custom info
|
65 |
if ( 'yes' === get_option( 'wcj_my_account_custom_info_enabled', 'no' ) ) {
|
66 |
$total_number = apply_filters( 'booster_option', 1, get_option( 'wcj_my_account_custom_info_total_number', 1 ) );
|
94 |
}
|
95 |
}
|
96 |
|
97 |
+
/**
|
98 |
+
* get_custom_pages.
|
99 |
+
*
|
100 |
+
* @version 4.3.0
|
101 |
+
* @since 4.3.0
|
102 |
+
* @todo [dev] customizable ID (i.e. instead of `sanitize_title( $title[ $i ] )`)
|
103 |
+
*/
|
104 |
+
function get_custom_pages() {
|
105 |
+
if ( isset( $this->custom_pages ) ) {
|
106 |
+
return $this->custom_pages;
|
107 |
+
}
|
108 |
+
$this->custom_pages = array();
|
109 |
+
$title = get_option( 'wcj_my_account_custom_pages_title', array() );
|
110 |
+
$content = get_option( 'wcj_my_account_custom_pages_content', array() );
|
111 |
+
for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_my_account_custom_pages_total_number', 1 ) ); $i++ ) {
|
112 |
+
if ( ! empty( $title[ $i ] ) && ! empty( $content[ $i ] ) ) {
|
113 |
+
$this->custom_pages[ sanitize_title( $title[ $i ] ) ] = array( 'title' => $title[ $i ], 'content' => $content[ $i ] );
|
114 |
+
}
|
115 |
+
}
|
116 |
+
return $this->custom_pages;
|
117 |
+
}
|
118 |
+
|
119 |
+
/**
|
120 |
+
* set_custom_page_title.
|
121 |
+
*
|
122 |
+
* @version 4.3.0
|
123 |
+
* @since 4.3.0
|
124 |
+
*/
|
125 |
+
function set_custom_page_title( $title, $id ) {
|
126 |
+
if ( isset( $_GET['section'] ) && $id == get_option( 'woocommerce_myaccount_page_id' ) ) {
|
127 |
+
if ( ! isset( $this->custom_pages ) ) {
|
128 |
+
$this->get_custom_pages();
|
129 |
+
}
|
130 |
+
$endpoint = $_GET['section'];
|
131 |
+
return ( isset( $this->custom_pages[ $endpoint ] ) ? $this->custom_pages[ $endpoint ]['title'] : $title );
|
132 |
+
}
|
133 |
+
return $title;
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* set_custom_page_url.
|
138 |
+
*
|
139 |
+
* @version 4.3.0
|
140 |
+
* @since 4.3.0
|
141 |
+
* @todo [dev] (maybe) customizable `section` (e.g. `wcj-section`)
|
142 |
+
*/
|
143 |
+
function set_custom_page_url( $url, $endpoint, $value, $permalink ) {
|
144 |
+
if ( ! isset( $this->custom_pages ) ) {
|
145 |
+
$this->get_custom_pages();
|
146 |
+
}
|
147 |
+
return ( isset( $this->custom_pages[ $endpoint ] ) && ( $myaccount_page_id = get_option( 'woocommerce_myaccount_page_id' ) ) ?
|
148 |
+
add_query_arg( 'section', $endpoint, get_permalink( $myaccount_page_id ) ) : $url );
|
149 |
+
}
|
150 |
+
|
151 |
+
/**
|
152 |
+
* add_custom_page_menu_item.
|
153 |
+
*
|
154 |
+
* @version 4.3.0
|
155 |
+
* @since 4.3.0
|
156 |
+
*/
|
157 |
+
function add_custom_page_menu_item( $items ) {
|
158 |
+
foreach ( $this->get_custom_pages() as $custom_menu_page_id => $custom_menu_page_data ) {
|
159 |
+
$items[ $custom_menu_page_id ] = $custom_menu_page_data['title'];
|
160 |
+
}
|
161 |
+
return $items;
|
162 |
+
}
|
163 |
+
|
164 |
/**
|
165 |
* customize_menu_custom_endpoints.
|
166 |
*
|
181 |
/**
|
182 |
* customize_dashboard.
|
183 |
*
|
184 |
+
* @version 4.3.0
|
185 |
* @since 3.8.0
|
186 |
* @see woocommerce/templates/myaccount/dashboard.php
|
187 |
*/
|
188 |
function customize_dashboard( $value ) {
|
189 |
|
190 |
+
// Custom pages
|
191 |
+
if ( 'yes' === get_option( 'wcj_my_account_custom_pages_enabled', 'no' ) ) {
|
192 |
+
if ( isset( $_GET['section'] ) ) {
|
193 |
+
if ( ! isset( $this->custom_pages ) ) {
|
194 |
+
$this->get_custom_pages();
|
195 |
+
}
|
196 |
+
if ( isset( $this->custom_pages[ $_GET['section'] ] ) ) {
|
197 |
+
echo do_shortcode( $this->custom_pages[ $_GET['section'] ]['content'] );
|
198 |
+
return;
|
199 |
+
}
|
200 |
+
}
|
201 |
+
if ( 'no' === get_option( 'wcj_my_account_custom_dashboard_enabled', 'no' ) ) {
|
202 |
+
wc_get_template( 'myaccount/dashboard.php', array(
|
203 |
+
'current_user' => get_user_by( 'id', get_current_user_id() ),
|
204 |
+
) );
|
205 |
+
return;
|
206 |
+
}
|
207 |
+
}
|
208 |
+
|
209 |
+
// Dashboard customization
|
210 |
$current_user = get_user_by( 'id', get_current_user_id() );
|
211 |
|
212 |
if ( '' != ( $custom_content = get_option( 'wcj_my_account_custom_dashboard_content', '' ) ) ) {
|
includes/class-wcj-offer-price.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Offer Price
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Offer_Price extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 4.
|
20 |
* @since 2.9.0
|
21 |
* @todo settings - more info about position priorities, e.g.: __( 'Standard priorities for "Inside single product summary": title - 5, rating - 10, price - 10, excerpt - 20, add to cart - 30, meta - 40, sharing - 50', 'woocommerce-jetpack' )
|
22 |
* @todo (maybe) css - customizable fonts etc.
|
@@ -66,7 +66,7 @@ class WCJ_Offer_Price extends WCJ_Module {
|
|
66 |
);
|
67 |
}
|
68 |
}
|
69 |
-
add_action( '
|
70 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
|
71 |
add_action( 'init', array( $this, 'offer_price' ) );
|
72 |
if ( in_array( apply_filters( 'booster_option', 'all_products', get_option( 'wcj_offer_price_enabled_type', 'all_products' ) ), array( 'per_product', 'per_product_and_per_category' ) ) ) {
|
@@ -409,7 +409,7 @@ class WCJ_Offer_Price extends WCJ_Module {
|
|
409 |
/**
|
410 |
* offer_price.
|
411 |
*
|
412 |
-
* @version
|
413 |
* @since 2.9.0
|
414 |
* @todo (maybe) separate customer copy email template and subject
|
415 |
* @todo (maybe) redirect (no notice though)
|
@@ -422,6 +422,9 @@ class WCJ_Offer_Price extends WCJ_Module {
|
|
422 |
if ( isset( $_POST['wcj-offer-price-submit'] ) ) {
|
423 |
$product_id = $_POST['wcj-offer-price-product-id'];
|
424 |
$_product = wc_get_product( $product_id );
|
|
|
|
|
|
|
425 |
// Email address
|
426 |
$email_address = get_option( 'wcj_offer_price_email_address', '%admin_email%' );
|
427 |
if ( '' == $email_address ) {
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Offer Price
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 4.3.0
|
20 |
* @since 2.9.0
|
21 |
* @todo settings - more info about position priorities, e.g.: __( 'Standard priorities for "Inside single product summary": title - 5, rating - 10, price - 10, excerpt - 20, add to cart - 30, meta - 40, sharing - 50', 'woocommerce-jetpack' )
|
22 |
* @todo (maybe) css - customizable fonts etc.
|
66 |
);
|
67 |
}
|
68 |
}
|
69 |
+
add_action( 'wp_footer', array( $this, 'add_offer_price_form' ) );
|
70 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
|
71 |
add_action( 'init', array( $this, 'offer_price' ) );
|
72 |
if ( in_array( apply_filters( 'booster_option', 'all_products', get_option( 'wcj_offer_price_enabled_type', 'all_products' ) ), array( 'per_product', 'per_product_and_per_category' ) ) ) {
|
409 |
/**
|
410 |
* offer_price.
|
411 |
*
|
412 |
+
* @version 4.3.0
|
413 |
* @since 2.9.0
|
414 |
* @todo (maybe) separate customer copy email template and subject
|
415 |
* @todo (maybe) redirect (no notice though)
|
422 |
if ( isset( $_POST['wcj-offer-price-submit'] ) ) {
|
423 |
$product_id = $_POST['wcj-offer-price-product-id'];
|
424 |
$_product = wc_get_product( $product_id );
|
425 |
+
if ( ! is_a( $_product, 'WC_Product' ) ) {
|
426 |
+
return;
|
427 |
+
}
|
428 |
// Email address
|
429 |
$email_address = get_option( 'wcj_offer_price_email_address', '%admin_email%' );
|
430 |
if ( '' == $email_address ) {
|
includes/class-wcj-payment-gateways-currency.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Gateways Currency Converter
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.3.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -130,7 +130,7 @@ class WCJ_Payment_Gateways_Currency extends WCJ_Module {
|
|
130 |
/**
|
131 |
* change_price_by_gateway.
|
132 |
*
|
133 |
-
* @version 3.
|
134 |
* @since 2.3.0
|
135 |
*/
|
136 |
function change_price_by_gateway( $price, $product ) {
|
@@ -138,7 +138,8 @@ class WCJ_Payment_Gateways_Currency extends WCJ_Module {
|
|
138 |
$current_gateway = $this->get_chosen_payment_method();
|
139 |
if ( '' != $current_gateway ) {
|
140 |
$gateway_currency_exchange_rate = get_option( 'wcj_gateways_currency_exchange_rate_' . $current_gateway );
|
141 |
-
$
|
|
|
142 |
}
|
143 |
}
|
144 |
return $price;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Gateways Currency Converter
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.3.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
130 |
/**
|
131 |
* change_price_by_gateway.
|
132 |
*
|
133 |
+
* @version 4.3.0
|
134 |
* @since 2.3.0
|
135 |
*/
|
136 |
function change_price_by_gateway( $price, $product ) {
|
138 |
$current_gateway = $this->get_chosen_payment_method();
|
139 |
if ( '' != $current_gateway ) {
|
140 |
$gateway_currency_exchange_rate = get_option( 'wcj_gateways_currency_exchange_rate_' . $current_gateway );
|
141 |
+
$gateway_currency_exchange_rate = str_replace( ',', '.', $gateway_currency_exchange_rate );
|
142 |
+
$price = $price * $gateway_currency_exchange_rate;
|
143 |
}
|
144 |
}
|
145 |
return $price;
|
includes/class-wcj-pdf-invoicing.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - PDF Invoicing
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,7 +15,7 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
@@ -43,8 +43,8 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
43 |
add_action( 'init', array( $this, 'generate_pdf_on_init' ) );
|
44 |
|
45 |
// Bulk actions
|
46 |
-
|
47 |
-
|
48 |
add_action( 'admin_notices', array( $this, 'bulk_actions_pdfs_notices' ) );
|
49 |
|
50 |
$this->the_pdf_invoicing_report_tool = include_once( 'pdf-invoices/class-wcj-pdf-invoicing-report-tool.php' );
|
@@ -74,43 +74,30 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
74 |
}
|
75 |
|
76 |
/**
|
77 |
-
*
|
78 |
-
*
|
79 |
-
* Using Javascript until WordPress core fixes: http://core.trac.wordpress.org/ticket/16031
|
80 |
*
|
81 |
-
* @
|
82 |
-
* @version 3.5.0
|
83 |
* @since 2.5.7
|
84 |
-
*
|
|
|
|
|
|
|
85 |
*/
|
86 |
-
function
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
$
|
96 |
-
|
97 |
-
foreach ( $actions as $action_id => $action_title ) {
|
98 |
-
foreach ( $invoice_types as $invoice_type ) {
|
99 |
-
$key = $invoice_type['id'];
|
100 |
-
$title = $invoice_type['title'];
|
101 |
-
$html .= 'jQuery(function() { ';
|
102 |
-
foreach ( array( 'action', 'action2' ) as $action ) {
|
103 |
-
$html .= 'jQuery(\'<option>\').' .
|
104 |
-
'val(\''. $action_id . '_' . $key . '\').' .
|
105 |
-
'text(\'' . $action_title . ' ' . $title . '\').' .
|
106 |
-
'appendTo(\'select[name="' . $action . '"]\'); ';
|
107 |
-
}
|
108 |
-
$html .= '}); ';
|
109 |
-
}
|
110 |
}
|
111 |
-
$html .= '</script>';
|
112 |
-
echo $html;
|
113 |
}
|
|
|
|
|
114 |
}
|
115 |
|
116 |
/**
|
@@ -160,33 +147,34 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
160 |
}
|
161 |
|
162 |
/**
|
163 |
-
*
|
164 |
*
|
165 |
-
* @version 4.
|
166 |
* @since 2.5.7
|
167 |
* @todo on `generate` (and maybe other actions) validate user permissions/capabilities - `if ( ! current_user_can( $post_type_object->cap->export_post, $post_id ) ) { wp_die( __( 'You are not allowed to export this post.' ) ); }`
|
168 |
-
*
|
|
|
|
|
|
|
|
|
|
|
169 |
*/
|
170 |
-
function
|
171 |
-
|
172 |
-
// Get the action
|
173 |
-
$wp_list_table = _get_list_table( 'WP_Posts_List_Table' );
|
174 |
-
$action = $wp_list_table->current_action();
|
175 |
-
|
176 |
-
// Validate the action
|
177 |
-
$action_exploded = explode( '_', $action, 2 );
|
178 |
if (
|
179 |
-
|
180 |
-
|
|
|
181 |
) {
|
182 |
-
return;
|
183 |
}
|
184 |
|
|
|
|
|
|
|
185 |
// Perform the action
|
186 |
-
$post_ids = $_GET['post'];
|
187 |
$the_action = $action_exploded[0];
|
188 |
$the_type = $action_exploded[1];
|
189 |
-
|
190 |
switch( $the_action ) {
|
191 |
case 'generate':
|
192 |
$generated = 0;
|
@@ -196,28 +184,26 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
196 |
}
|
197 |
}
|
198 |
// Build the redirect url
|
199 |
-
$
|
200 |
array(
|
201 |
-
'post_type' => 'shop_order',
|
202 |
'generated' => $generated,
|
203 |
'generated_type' => $the_type,
|
204 |
'generated_' . $the_type => 1,
|
205 |
'ids' => join( ',', $post_ids ),
|
206 |
'post_status' => $_GET['post_status'],
|
207 |
),
|
208 |
-
$
|
209 |
);
|
210 |
break;
|
211 |
case 'download':
|
212 |
if ( '' != ( $result = $this->get_invoices_zip( $the_type, $post_ids ) ) ) {
|
213 |
// Build the redirect url
|
214 |
-
$
|
215 |
array(
|
216 |
-
'post_type' => 'shop_order',
|
217 |
'post_status' => $_GET['post_status'],
|
218 |
'wcj_notice' => $result,
|
219 |
),
|
220 |
-
$
|
221 |
);
|
222 |
}
|
223 |
break;
|
@@ -231,13 +217,12 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
231 |
if ( ! empty( $merge_ids ) ) {
|
232 |
if ( '' != ( $result = $this->merge_pdfs( $the_type, $merge_ids ) ) ) {
|
233 |
// Build the redirect url
|
234 |
-
$
|
235 |
array(
|
236 |
-
'post_type' => 'shop_order',
|
237 |
'post_status' => $_GET['post_status'],
|
238 |
'wcj_notice' => $result,
|
239 |
),
|
240 |
-
$
|
241 |
);
|
242 |
}
|
243 |
}
|
@@ -245,10 +230,7 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
245 |
default:
|
246 |
return;
|
247 |
}
|
248 |
-
|
249 |
-
// Redirect client
|
250 |
-
wp_redirect( esc_url_raw( $sendback ) );
|
251 |
-
exit();
|
252 |
}
|
253 |
|
254 |
/**
|
@@ -455,7 +437,7 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
455 |
/**
|
456 |
* generate_pdf_on_init.
|
457 |
*
|
458 |
-
* @version
|
459 |
*/
|
460 |
function generate_pdf_on_init() {
|
461 |
// Check if all is OK
|
@@ -465,7 +447,11 @@ class WCJ_PDF_Invoicing extends WCJ_Module {
|
|
465 |
// Get PDF
|
466 |
$the_invoice = wcj_get_pdf_invoice( $this->order_id, $this->invoice_type_id );
|
467 |
$dest = ( true === $this->save_as_pdf ? 'D' : 'I' );
|
|
|
|
|
468 |
$the_invoice->get_pdf( $dest );
|
|
|
|
|
469 |
die();
|
470 |
}
|
471 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - PDF Invoicing
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 4.3.0
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
43 |
add_action( 'init', array( $this, 'generate_pdf_on_init' ) );
|
44 |
|
45 |
// Bulk actions
|
46 |
+
add_filter( 'bulk_actions-edit-' . 'shop_order', array( $this, 'bulk_actions_register' ) );
|
47 |
+
add_filter( 'handle_bulk_actions-edit-' . 'shop_order', array( $this, 'bulk_actions_handle' ), 10, 3 );
|
48 |
add_action( 'admin_notices', array( $this, 'bulk_actions_pdfs_notices' ) );
|
49 |
|
50 |
$this->the_pdf_invoicing_report_tool = include_once( 'pdf-invoices/class-wcj-pdf-invoicing-report-tool.php' );
|
74 |
}
|
75 |
|
76 |
/**
|
77 |
+
* Adds extra bulk action options to generate/download documents.
|
|
|
|
|
78 |
*
|
79 |
+
* @version 4.3.0
|
|
|
80 |
* @since 2.5.7
|
81 |
+
*
|
82 |
+
* @param $actions
|
83 |
+
*
|
84 |
+
* @return array
|
85 |
*/
|
86 |
+
function bulk_actions_register( $actions ) {
|
87 |
+
$invoice_types = wcj_get_enabled_invoice_types();
|
88 |
+
$new_actions_source = array(
|
89 |
+
'generate' => __( 'Generate', 'woocommerce-jetpack' ),
|
90 |
+
'download' => __( 'Download (Zip)', 'woocommerce-jetpack' ),
|
91 |
+
'merge' => __( 'Merge (Print)', 'woocommerce-jetpack' ),
|
92 |
+
);
|
93 |
+
$new_actions = array();
|
94 |
+
foreach ( $new_actions_source as $source_key => $source_value ) {
|
95 |
+
foreach ( $invoice_types as $type_key => $type_value ) {
|
96 |
+
$new_actions[ $source_key . '_' . $type_value['id'] ] = $source_value . ' ' . $type_value['title'];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
}
|
|
|
|
|
98 |
}
|
99 |
+
$actions = array_merge( $actions, $new_actions );
|
100 |
+
return $actions;
|
101 |
}
|
102 |
|
103 |
/**
|
147 |
}
|
148 |
|
149 |
/**
|
150 |
+
* Processes the PDF bulk actions.
|
151 |
*
|
152 |
+
* @version 4.3.0
|
153 |
* @since 2.5.7
|
154 |
* @todo on `generate` (and maybe other actions) validate user permissions/capabilities - `if ( ! current_user_can( $post_type_object->cap->export_post, $post_id ) ) { wp_die( __( 'You are not allowed to export this post.' ) ); }`
|
155 |
+
*
|
156 |
+
* @param $redirect_to
|
157 |
+
* @param $action
|
158 |
+
* @param $post_ids
|
159 |
+
*
|
160 |
+
* @return string
|
161 |
*/
|
162 |
+
function bulk_actions_handle( $redirect_to, $action, $post_ids ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
if (
|
164 |
+
false === preg_match( '(generate|download|merge)', $action ) ||
|
165 |
+
false === preg_match( '(invoice|packing_slip|credit_note)', $action ) ||
|
166 |
+
false === check_admin_referer( 'bulk-posts' )
|
167 |
) {
|
168 |
+
return $redirect_to;
|
169 |
}
|
170 |
|
171 |
+
// Validate the action
|
172 |
+
$action_exploded = explode( '_', $action, 2 );
|
173 |
+
|
174 |
// Perform the action
|
|
|
175 |
$the_action = $action_exploded[0];
|
176 |
$the_type = $action_exploded[1];
|
177 |
+
|
178 |
switch( $the_action ) {
|
179 |
case 'generate':
|
180 |
$generated = 0;
|
184 |
}
|
185 |
}
|
186 |
// Build the redirect url
|
187 |
+
$redirect_to = add_query_arg(
|
188 |
array(
|
|
|
189 |
'generated' => $generated,
|
190 |
'generated_type' => $the_type,
|
191 |
'generated_' . $the_type => 1,
|
192 |
'ids' => join( ',', $post_ids ),
|
193 |
'post_status' => $_GET['post_status'],
|
194 |
),
|
195 |
+
$redirect_to
|
196 |
);
|
197 |
break;
|
198 |
case 'download':
|
199 |
if ( '' != ( $result = $this->get_invoices_zip( $the_type, $post_ids ) ) ) {
|
200 |
// Build the redirect url
|
201 |
+
$redirect_to = add_query_arg(
|
202 |
array(
|
|
|
203 |
'post_status' => $_GET['post_status'],
|
204 |
'wcj_notice' => $result,
|
205 |
),
|
206 |
+
$redirect_to
|
207 |
);
|
208 |
}
|
209 |
break;
|
217 |
if ( ! empty( $merge_ids ) ) {
|
218 |
if ( '' != ( $result = $this->merge_pdfs( $the_type, $merge_ids ) ) ) {
|
219 |
// Build the redirect url
|
220 |
+
$redirect_to = add_query_arg(
|
221 |
array(
|
|
|
222 |
'post_status' => $_GET['post_status'],
|
223 |
'wcj_notice' => $result,
|
224 |
),
|
225 |
+
$redirect_to
|
226 |
);
|
227 |
}
|
228 |
}
|
230 |
default:
|
231 |
return;
|
232 |
}
|
233 |
+
return $redirect_to;
|
|
|
|
|
|
|
234 |
}
|
235 |
|
236 |
/**
|
437 |
/**
|
438 |
* generate_pdf_on_init.
|
439 |
*
|
440 |
+
* @version 4.3.0
|
441 |
*/
|
442 |
function generate_pdf_on_init() {
|
443 |
// Check if all is OK
|
447 |
// Get PDF
|
448 |
$the_invoice = wcj_get_pdf_invoice( $this->order_id, $this->invoice_type_id );
|
449 |
$dest = ( true === $this->save_as_pdf ? 'D' : 'I' );
|
450 |
+
ob_clean();
|
451 |
+
ob_flush();
|
452 |
$the_invoice->get_pdf( $dest );
|
453 |
+
ob_end_flush();
|
454 |
+
ob_end_clean();
|
455 |
die();
|
456 |
}
|
457 |
|
includes/class-wcj-product-add-to-cart.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Add To Cart
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Product_Add_To_Cart extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 3.
|
20 |
* @todo (maybe) move "Display radio buttons instead of drop box for variable products" to new module
|
21 |
* @todo (maybe) rename to "Add to Cart Button (Options)"
|
22 |
*/
|
@@ -68,7 +68,7 @@ class WCJ_Product_Add_To_Cart extends WCJ_Module {
|
|
68 |
// Variable Add to Cart Template
|
69 |
if ( 'yes' === apply_filters( 'booster_option', 'wcj', get_option( 'wcj_add_to_cart_variable_as_radio_enabled', 'no' ) ) ) {
|
70 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_variable_add_to_cart_scripts' ) );
|
71 |
-
|
72 |
}
|
73 |
|
74 |
// Replace Add to Cart Loop with Single
|
@@ -318,16 +318,24 @@ class WCJ_Product_Add_To_Cart extends WCJ_Module {
|
|
318 |
}
|
319 |
|
320 |
/**
|
321 |
-
|
322 |
-
*
|
323 |
-
* @
|
324 |
-
* @
|
325 |
*/
|
326 |
-
function
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
331 |
}
|
332 |
|
333 |
/*
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Add To Cart
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 4.3.0
|
20 |
* @todo (maybe) move "Display radio buttons instead of drop box for variable products" to new module
|
21 |
* @todo (maybe) rename to "Add to Cart Button (Options)"
|
22 |
*/
|
68 |
// Variable Add to Cart Template
|
69 |
if ( 'yes' === apply_filters( 'booster_option', 'wcj', get_option( 'wcj_add_to_cart_variable_as_radio_enabled', 'no' ) ) ) {
|
70 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_variable_add_to_cart_scripts' ) );
|
71 |
+
add_action( 'woocommerce_before_variations_form', array( $this, 'add_variations_radio_buttons_template' ) );
|
72 |
}
|
73 |
|
74 |
// Replace Add to Cart Loop with Single
|
318 |
}
|
319 |
|
320 |
/**
|
321 |
+
* Adds radio buttons template for variations
|
322 |
+
* @version 4.3.0
|
323 |
+
* @since 4.3.0
|
324 |
+
* @see woocommerce_variable_add_to_cart()
|
325 |
*/
|
326 |
+
function add_variations_radio_buttons_template() {
|
327 |
+
global $product;
|
328 |
+
$get_variations = count( $product->get_children() ) <= apply_filters( 'woocommerce_ajax_variation_threshold', 30, $product );
|
329 |
+
wc_get_template( 'wcj-radio-for-variations.php', array(
|
330 |
+
'available_variations' => $get_variations ? $product->get_available_variations() : false,
|
331 |
+
'attributes' => $product->get_variation_attributes(),
|
332 |
+
'selected_attributes' => $product->get_default_attributes(),
|
333 |
+
), '', WCJ_PLUGIN_PATH . '/includes/templates/' );
|
334 |
+
?>
|
335 |
+
<style>
|
336 |
+
table.variations{display:none}
|
337 |
+
</style>
|
338 |
+
<?php
|
339 |
}
|
340 |
|
341 |
/*
|
includes/class-wcj-product-bookings.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Bookings
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.5.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -120,22 +120,25 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
120 |
/**
|
121 |
* enqueue_scripts.
|
122 |
*
|
123 |
-
* @version
|
124 |
* @since 2.5.0
|
125 |
* @todo add "calculating price" progress message
|
126 |
*/
|
127 |
function enqueue_scripts() {
|
128 |
-
if (
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
'product_id' => get_the_ID(),
|
135 |
-
'wrong_dates_message' => get_option( 'wcj_product_bookings_message_date_to_before_date_from', __( '"Date to" must be after "Date from"', 'woocommerce-jetpack' ) ),
|
136 |
-
) );
|
137 |
-
}
|
138 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
}
|
140 |
|
141 |
/**
|
@@ -302,10 +305,46 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
302 |
return $cart_item_data;
|
303 |
}
|
304 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
/**
|
306 |
* add_input_fields_to_frontend.
|
307 |
*
|
308 |
-
* @version 3.
|
309 |
* @since 2.5.0
|
310 |
* @todo more options: exclude days (1-31), exact availability dates, mindate, maxdate, firstday, dateformat etc.
|
311 |
*/
|
@@ -314,6 +353,7 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
314 |
return;
|
315 |
}
|
316 |
if ( $this->is_bookings_product( wc_get_product() ) ) {
|
|
|
317 |
$data_table = array();
|
318 |
$date_from_value = ( isset( $_POST['wcj_product_bookings_date_from'] ) ) ? $_POST['wcj_product_bookings_date_from'] : '';
|
319 |
$date_to_value = ( isset( $_POST['wcj_product_bookings_date_to'] ) ) ? $_POST['wcj_product_bookings_date_to'] : '';
|
@@ -334,6 +374,7 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
334 |
'<input firstday="0"' . $date_to_exclude_days . $date_to_exclude_months . ' dateformat="mm/dd/yy" mindate="0" type="datepicker" display="date" id="wcj_product_bookings_date_to" name="wcj_product_bookings_date_to" placeholder="" value="' . $date_to_value . '">',
|
335 |
);
|
336 |
echo wcj_get_table_html( $data_table, array( 'table_heading_type' => 'none', ) );
|
|
|
337 |
echo '<div style="display:none !important;" name="wcj_bookings_message"><p style="color:red;"></p></div>';
|
338 |
$this->are_bookings_input_fields_displayed = true;
|
339 |
}
|
@@ -342,20 +383,32 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
342 |
/**
|
343 |
* add_per_day_label.
|
344 |
*
|
345 |
-
* @version
|
346 |
* @since 2.5.0
|
347 |
*/
|
348 |
function add_per_day_label( $price_html, $_product ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
349 |
return ( $this->is_bookings_product( $_product ) ) ? $price_html . ' ' . get_option( 'wcj_product_bookings_label_per_day', __( '/ day', 'woocommerce-jetpack' ) ) : $price_html;
|
350 |
}
|
351 |
|
352 |
/**
|
353 |
* change_price.
|
354 |
*
|
355 |
-
* @version
|
356 |
* @since 2.5.0
|
357 |
*/
|
358 |
function change_price( $price, $_product ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
return ( $this->is_bookings_product( $_product ) && isset( $_product->wcj_bookings_price ) ) ? $_product->wcj_bookings_price : $price;
|
360 |
}
|
361 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Bookings
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.5.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
120 |
/**
|
121 |
* enqueue_scripts.
|
122 |
*
|
123 |
+
* @version 4.3.0
|
124 |
* @since 2.5.0
|
125 |
* @todo add "calculating price" progress message
|
126 |
*/
|
127 |
function enqueue_scripts() {
|
128 |
+
if (
|
129 |
+
! is_product() ||
|
130 |
+
! $this->is_bookings_product( $the_product = wc_get_product() ) ||
|
131 |
+
( 'no' === get_option( 'wcj_product_bookings_price_per_day_variable_products', 'yes' ) && ( $the_product->is_type( 'variable' ) || $the_product->is_type( 'variation' ) ) )
|
132 |
+
) {
|
133 |
+
return;
|
|
|
|
|
|
|
|
|
134 |
}
|
135 |
+
|
136 |
+
wp_enqueue_script( 'wcj-bookings', wcj_plugin_url() . '/includes/js/wcj-bookings.js', array(), WCJ()->version, true );
|
137 |
+
wp_localize_script( 'wcj-bookings', 'ajax_object', array(
|
138 |
+
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
139 |
+
'product_id' => get_the_ID(),
|
140 |
+
'wrong_dates_message' => get_option( 'wcj_product_bookings_message_date_to_before_date_from', __( '"Date to" must be after "Date from"', 'woocommerce-jetpack' ) ),
|
141 |
+
) );
|
142 |
}
|
143 |
|
144 |
/**
|
305 |
return $cart_item_data;
|
306 |
}
|
307 |
|
308 |
+
/**
|
309 |
+
* Create custom style for bookings product page
|
310 |
+
*
|
311 |
+
* @version 4.3.0
|
312 |
+
* @since 2.5.0
|
313 |
+
*/
|
314 |
+
function create_custom_style(){
|
315 |
+
?>
|
316 |
+
<style>
|
317 |
+
.wcj-loader {
|
318 |
+
display:none;
|
319 |
+
border: 4px solid #f3f3f3;
|
320 |
+
border-radius: 50%;
|
321 |
+
border-top: 4px solid #999999;
|
322 |
+
width: 25px;height: 25px;
|
323 |
+
-webkit-animation: spin 1s linear infinite; animation: spin 1s linear infinite;
|
324 |
+
}
|
325 |
+
/* Safari */
|
326 |
+
@-webkit-keyframes spin {
|
327 |
+
0% { -webkit-transform: rotate(0deg); }
|
328 |
+
100% { -webkit-transform: rotate(360deg); }
|
329 |
+
}
|
330 |
+
@keyframes spin {
|
331 |
+
0% { transform: rotate(0deg); }
|
332 |
+
100% { transform: rotate(360deg); }
|
333 |
+
}
|
334 |
+
.wcj-bookings-price-wrapper{
|
335 |
+
margin-bottom:25px;
|
336 |
+
}
|
337 |
+
.wcj-bookings-price-wrapper.loading .wcj-loader{
|
338 |
+
display:block;
|
339 |
+
}
|
340 |
+
</style>
|
341 |
+
<?php
|
342 |
+
}
|
343 |
+
|
344 |
/**
|
345 |
* add_input_fields_to_frontend.
|
346 |
*
|
347 |
+
* @version 4.3.0
|
348 |
* @since 2.5.0
|
349 |
* @todo more options: exclude days (1-31), exact availability dates, mindate, maxdate, firstday, dateformat etc.
|
350 |
*/
|
353 |
return;
|
354 |
}
|
355 |
if ( $this->is_bookings_product( wc_get_product() ) ) {
|
356 |
+
$this->create_custom_style();
|
357 |
$data_table = array();
|
358 |
$date_from_value = ( isset( $_POST['wcj_product_bookings_date_from'] ) ) ? $_POST['wcj_product_bookings_date_from'] : '';
|
359 |
$date_to_value = ( isset( $_POST['wcj_product_bookings_date_to'] ) ) ? $_POST['wcj_product_bookings_date_to'] : '';
|
374 |
'<input firstday="0"' . $date_to_exclude_days . $date_to_exclude_months . ' dateformat="mm/dd/yy" mindate="0" type="datepicker" display="date" id="wcj_product_bookings_date_to" name="wcj_product_bookings_date_to" placeholder="" value="' . $date_to_value . '">',
|
375 |
);
|
376 |
echo wcj_get_table_html( $data_table, array( 'table_heading_type' => 'none', ) );
|
377 |
+
echo '<div class="wcj-bookings-price-wrapper"><div class="wcj-value"></div><div class="wcj-loader"></div></div>';
|
378 |
echo '<div style="display:none !important;" name="wcj_bookings_message"><p style="color:red;"></p></div>';
|
379 |
$this->are_bookings_input_fields_displayed = true;
|
380 |
}
|
383 |
/**
|
384 |
* add_per_day_label.
|
385 |
*
|
386 |
+
* @version 4.3.0
|
387 |
* @since 2.5.0
|
388 |
*/
|
389 |
function add_per_day_label( $price_html, $_product ) {
|
390 |
+
if (
|
391 |
+
'no' === get_option( 'wcj_product_bookings_price_per_day_variable_products', 'yes' ) &&
|
392 |
+
( $_product->is_type( 'variable' ) || $_product->is_type( 'variation' ) )
|
393 |
+
) {
|
394 |
+
return $price_html;
|
395 |
+
}
|
396 |
return ( $this->is_bookings_product( $_product ) ) ? $price_html . ' ' . get_option( 'wcj_product_bookings_label_per_day', __( '/ day', 'woocommerce-jetpack' ) ) : $price_html;
|
397 |
}
|
398 |
|
399 |
/**
|
400 |
* change_price.
|
401 |
*
|
402 |
+
* @version 4.3.0
|
403 |
* @since 2.5.0
|
404 |
*/
|
405 |
function change_price( $price, $_product ) {
|
406 |
+
if (
|
407 |
+
'no' === get_option( 'wcj_product_bookings_price_per_day_variable_products', 'yes' ) &&
|
408 |
+
( $_product->is_type( 'variable' ) || $_product->is_type( 'variation' ) )
|
409 |
+
) {
|
410 |
+
return $price;
|
411 |
+
}
|
412 |
return ( $this->is_bookings_product( $_product ) && isset( $_product->wcj_bookings_price ) ) ? $_product->wcj_bookings_price : $price;
|
413 |
}
|
414 |
|
includes/class-wcj-product-images.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Images
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Product_Images extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 3.
|
20 |
* @todo add watermarks to images (http://php.net/manual/en/image.examples-watermark.php); Filter: `wp_get_attachment_image_src`.
|
21 |
*/
|
22 |
function __construct() {
|
@@ -59,7 +59,40 @@ class WCJ_Product_Images extends WCJ_Module {
|
|
59 |
add_filter( 'woocommerce_placeholder_img_src', array( $this, 'placeholder_img_src' ), PHP_INT_MAX );
|
60 |
}
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
}
|
|
|
63 |
}
|
64 |
|
65 |
/**
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Images
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 4.3.0
|
20 |
* @todo add watermarks to images (http://php.net/manual/en/image.examples-watermark.php); Filter: `wp_get_attachment_image_src`.
|
21 |
*/
|
22 |
function __construct() {
|
59 |
add_filter( 'woocommerce_placeholder_img_src', array( $this, 'placeholder_img_src' ), PHP_INT_MAX );
|
60 |
}
|
61 |
|
62 |
+
// Get callbacks from database
|
63 |
+
add_filter( 'wcj_product_images_loop_product_thumbnail_filter', array( $this, 'get_callback_and_priority' ) );
|
64 |
+
add_filter( 'wcj_product_images_cb_loop_product_thumbnail_priority', array( $this, 'get_callback_and_priority' ) );
|
65 |
+
add_filter( 'wcj_product_images_single_product_images_filter', array( $this, 'get_callback_and_priority' ) );
|
66 |
+
add_filter( 'wcj_product_images_single_product_images_filter_priority', array( $this, 'get_callback_and_priority' ) );
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
/**
|
71 |
+
* Gets callbacks and priorities from database.
|
72 |
+
*
|
73 |
+
* @version 4.3.0
|
74 |
+
* @since 4.3.0
|
75 |
+
*
|
76 |
+
* @param $value
|
77 |
+
*
|
78 |
+
* @return mixed
|
79 |
+
*/
|
80 |
+
function get_callback_and_priority( $value ) {
|
81 |
+
switch ( current_filter() ) {
|
82 |
+
case 'wcj_product_images_loop_product_thumbnail_filter':
|
83 |
+
$value = get_option( 'wcj_product_images_cb_loop_product_thumbnail', 'woocommerce_template_loop_product_thumbnail' );
|
84 |
+
break;
|
85 |
+
case 'wcj_product_images_loop_product_thumbnail_filter_priority':
|
86 |
+
$value = get_option( 'wcj_product_images_cb_loop_product_thumbnail_priority', 10 );
|
87 |
+
break;
|
88 |
+
case 'wcj_product_images_single_product_images_filter':
|
89 |
+
$value = get_option( 'wcj_product_images_cb_show_product_images', 'woocommerce_show_product_images' );
|
90 |
+
break;
|
91 |
+
case 'wcj_product_images_single_product_images_filter_priority':
|
92 |
+
$value = get_option( 'wcj_product_images_cb_show_product_images_priority', 30 );
|
93 |
+
break;
|
94 |
}
|
95 |
+
return $value;
|
96 |
}
|
97 |
|
98 |
/**
|
includes/class-wcj-shipping-by-order-amount.php
CHANGED
@@ -39,6 +39,7 @@ class WCJ_Shipping_By_Order_Amount extends WCJ_Module {
|
|
39 |
*
|
40 |
* @version 3.5.0
|
41 |
* @since 3.2.1
|
|
|
42 |
* @todo apply_filters( 'booster_option' )
|
43 |
* @todo (maybe) add option to include or exclude taxes when calculating cart total
|
44 |
*/
|
39 |
*
|
40 |
* @version 3.5.0
|
41 |
* @since 3.2.1
|
42 |
+
* @todo [dev] currency conversion
|
43 |
* @todo apply_filters( 'booster_option' )
|
44 |
* @todo (maybe) add option to include or exclude taxes when calculating cart total
|
45 |
*/
|
includes/class-wcj-shipping-by-order-qty.php
ADDED
@@ -0,0 +1,87 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Shipping Methods by Min/Max Order Quantity
|
4 |
+
*
|
5 |
+
* @version 4.3.0
|
6 |
+
* @since 4.3.0
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Shipping_By_Order_Qty' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Shipping_By_Order_Qty extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 4.3.0
|
20 |
+
* @since 4.3.0
|
21 |
+
* @todo (maybe) add customer messages on cart and checkout pages (if some shipping method is not available)
|
22 |
+
*/
|
23 |
+
function __construct() {
|
24 |
+
|
25 |
+
$this->id = 'shipping_by_order_qty';
|
26 |
+
$this->short_desc = __( 'Shipping Methods by Min/Max Order Quantity', 'woocommerce-jetpack' );
|
27 |
+
$this->desc = __( 'Set minimum and/or maximum order quantity for shipping methods to show up.', 'woocommerce-jetpack' );
|
28 |
+
$this->link_slug = 'woocommerce-shipping-methods-by-min-max-order-quantity';
|
29 |
+
parent::__construct();
|
30 |
+
|
31 |
+
if ( $this->is_enabled() ) {
|
32 |
+
$this->use_shipping_instances = ( 'yes' === get_option( 'wcj_shipping_by_order_qty_use_shipping_instance', 'no' ) );
|
33 |
+
$min_option_name = 'wcj_shipping_by_order_qty_min';
|
34 |
+
$max_option_name = 'wcj_shipping_by_order_qty_max';
|
35 |
+
if ( $this->use_shipping_instances ) {
|
36 |
+
$min_option_name .= '_instance';
|
37 |
+
$max_option_name .= '_instance';
|
38 |
+
}
|
39 |
+
$this->min_qty = get_option( $min_option_name, array() );
|
40 |
+
$this->max_qty = get_option( $max_option_name, array() );
|
41 |
+
add_filter( 'woocommerce_package_rates', array( $this, 'available_shipping_methods' ), PHP_INT_MAX, 2 );
|
42 |
+
}
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* get_min_max_qty.
|
47 |
+
*
|
48 |
+
* @version 4.3.0
|
49 |
+
* @since 4.3.0
|
50 |
+
*/
|
51 |
+
function get_min_max_qty( $rate, $min_or_max ) {
|
52 |
+
$key = ( $this->use_shipping_instances ? $rate->instance_id : $rate->method_id );
|
53 |
+
switch ( $min_or_max ) {
|
54 |
+
case 'min':
|
55 |
+
return ( isset( $this->min_qty[ $key ] ) ? $this->min_qty[ $key ] : 0 );
|
56 |
+
case 'max':
|
57 |
+
return ( isset( $this->max_qty[ $key ] ) ? $this->max_qty[ $key ] : 0 );
|
58 |
+
}
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* available_shipping_methods.
|
63 |
+
*
|
64 |
+
* @version 4.3.0
|
65 |
+
* @since 4.3.0
|
66 |
+
* @todo apply_filters( 'booster_option' )
|
67 |
+
*/
|
68 |
+
function available_shipping_methods( $rates, $package ) {
|
69 |
+
if ( ! isset( WC()->cart ) || WC()->cart->is_empty() ) {
|
70 |
+
return $rates;
|
71 |
+
}
|
72 |
+
$total_qty = WC()->cart->get_cart_contents_count();
|
73 |
+
foreach ( $rates as $rate_key => $rate ) {
|
74 |
+
if ( 0 != ( $min = $this->get_min_max_qty( $rate, 'min' ) ) && $total_qty < $min ) {
|
75 |
+
unset( $rates[ $rate_key ] );
|
76 |
+
} elseif ( 0 != ( $max = $this->get_min_max_qty( $rate, 'max' ) ) && $total_qty > $max ) {
|
77 |
+
unset( $rates[ $rate_key ] );
|
78 |
+
}
|
79 |
+
}
|
80 |
+
return $rates;
|
81 |
+
}
|
82 |
+
|
83 |
+
}
|
84 |
+
|
85 |
+
endif;
|
86 |
+
|
87 |
+
return new WCJ_Shipping_By_Order_Qty();
|
includes/class-wcj-sorting.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Sorting
|
4 |
*
|
5 |
-
* @version
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -16,7 +16,7 @@ class WCJ_Sorting extends WCJ_Module {
|
|
16 |
* WCJ_Sorting Constructor.
|
17 |
*
|
18 |
* @access public
|
19 |
-
* @version
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
@@ -54,11 +54,59 @@ class WCJ_Sorting extends WCJ_Module {
|
|
54 |
add_filter( 'woocommerce_catalog_orderby', array( $this, 'rearrange_sorting' ), PHP_INT_MAX );
|
55 |
add_filter( 'woocommerce_default_catalog_orderby_options', array( $this, 'rearrange_sorting' ), PHP_INT_MAX );
|
56 |
}
|
|
|
|
|
|
|
|
|
|
|
57 |
}
|
58 |
|
59 |
}
|
60 |
}
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
/**
|
63 |
* remove_sorting_template.
|
64 |
*
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Sorting
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
16 |
* WCJ_Sorting Constructor.
|
17 |
*
|
18 |
* @access public
|
19 |
+
* @version 4.3.0
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
54 |
add_filter( 'woocommerce_catalog_orderby', array( $this, 'rearrange_sorting' ), PHP_INT_MAX );
|
55 |
add_filter( 'woocommerce_default_catalog_orderby_options', array( $this, 'rearrange_sorting' ), PHP_INT_MAX );
|
56 |
}
|
57 |
+
|
58 |
+
// Restore Default WooCommerce Sorting
|
59 |
+
if ( 'yes' === get_option( 'wcj_sorting_restore_default_sorting', 'no' ) ) {
|
60 |
+
$this->restore_default_sorting();
|
61 |
+
}
|
62 |
}
|
63 |
|
64 |
}
|
65 |
}
|
66 |
|
67 |
+
/**
|
68 |
+
* Restores default WooCommerce sorting on Avada Theme.
|
69 |
+
*
|
70 |
+
* @version 4.3.0
|
71 |
+
* @since 4.3.0
|
72 |
+
*/
|
73 |
+
function restore_default_sorting_on_avada() {
|
74 |
+
add_action( 'wp_head', function () {
|
75 |
+
?>
|
76 |
+
<style>
|
77 |
+
form.woocommerce-ordering {
|
78 |
+
display: inline-block;
|
79 |
+
}
|
80 |
+
</style>
|
81 |
+
<?php
|
82 |
+
} );
|
83 |
+
add_action( 'woocommerce_before_shop_loop', function () {
|
84 |
+
echo '<div class="catalog-ordering fusion-clearfix">';
|
85 |
+
}, 9 );
|
86 |
+
add_action( 'woocommerce_before_shop_loop', function () {
|
87 |
+
echo '</div>';
|
88 |
+
}, 31 );
|
89 |
+
add_action( 'after_setup_theme', function () {
|
90 |
+
global $avada_woocommerce;
|
91 |
+
remove_action( 'pre_get_posts', array( $avada_woocommerce, 'product_ordering' ), 5 );
|
92 |
+
} );
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Restores default WooCommerce sorting
|
97 |
+
*
|
98 |
+
* @version 4.3.0
|
99 |
+
* @since 4.3.0
|
100 |
+
*/
|
101 |
+
function restore_default_sorting() {
|
102 |
+
$theme = get_option( 'wcj_sorting_restore_default_sorting_theme', 'avada' );
|
103 |
+
switch ( $theme ) {
|
104 |
+
case 'avada':
|
105 |
+
$this->restore_default_sorting_on_avada();
|
106 |
+
break;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
/**
|
111 |
* remove_sorting_template.
|
112 |
*
|
includes/classes/class-wcj-module.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce Module
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo [dev] maybe should be `abstract` ?
|
@@ -143,17 +143,22 @@ class WCJ_Module {
|
|
143 |
/**
|
144 |
* maybe_fix_settings.
|
145 |
*
|
146 |
-
* @version 3.
|
147 |
* @since 3.2.1
|
148 |
*/
|
149 |
function maybe_fix_settings( $settings ) {
|
150 |
if ( ! WCJ_IS_WC_VERSION_BELOW_3_2_0 ) {
|
151 |
foreach ( $settings as &$setting ) {
|
152 |
if ( isset( $setting['type'] ) && 'select' === $setting['type'] ) {
|
153 |
-
if (
|
154 |
-
$setting['
|
155 |
-
|
156 |
-
|
|
|
|
|
|
|
|
|
|
|
157 |
}
|
158 |
}
|
159 |
if ( isset( $setting['type'] ) && 'text' === $setting['type'] && isset( $setting['class'] ) && 'widefat' === $setting['class'] ) {
|
2 |
/**
|
3 |
* Booster for WooCommerce Module
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo [dev] maybe should be `abstract` ?
|
143 |
/**
|
144 |
* maybe_fix_settings.
|
145 |
*
|
146 |
+
* @version 4.3.0
|
147 |
* @since 3.2.1
|
148 |
*/
|
149 |
function maybe_fix_settings( $settings ) {
|
150 |
if ( ! WCJ_IS_WC_VERSION_BELOW_3_2_0 ) {
|
151 |
foreach ( $settings as &$setting ) {
|
152 |
if ( isset( $setting['type'] ) && 'select' === $setting['type'] ) {
|
153 |
+
if (
|
154 |
+
! isset( $setting['ignore_enhanced_select_class'] ) ||
|
155 |
+
( isset( $setting['ignore_enhanced_select_class'] ) && false === $setting['ignore_enhanced_select_class'] )
|
156 |
+
) {
|
157 |
+
if ( ! isset( $setting['class'] ) || '' === $setting['class'] ) {
|
158 |
+
$setting['class'] = 'wc-enhanced-select';
|
159 |
+
} else {
|
160 |
+
$setting['class'] .= ' ' . 'wc-enhanced-select';
|
161 |
+
}
|
162 |
}
|
163 |
}
|
164 |
if ( isset( $setting['type'] ) && 'text' === $setting['type'] && isset( $setting['class'] ) && 'widefat' === $setting['class'] ) {
|
includes/classes/class-wcj-tcpdf.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - TCPDF
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @author Algoritmika Ltd.
|
7 |
* @todo (maybe) `Header()`
|
8 |
*/
|
@@ -16,7 +16,9 @@ define( 'K_TCPDF_EXTERNAL_CONFIG', true );
|
|
16 |
require_once( wcj_plugin_path() . '/includes/lib/tcpdf_config.php' );
|
17 |
|
18 |
// Include TCPDF library
|
19 |
-
|
|
|
|
|
20 |
|
21 |
class WCJ_TCPDF extends TCPDF {
|
22 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - TCPDF
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
* @todo (maybe) `Header()`
|
8 |
*/
|
16 |
require_once( wcj_plugin_path() . '/includes/lib/tcpdf_config.php' );
|
17 |
|
18 |
// Include TCPDF library
|
19 |
+
if ( ! class_exists( 'TCPDF' ) ) {
|
20 |
+
require_once( wcj_plugin_path() . '/includes/lib/tcpdf/tcpdf.php' );
|
21 |
+
}
|
22 |
|
23 |
class WCJ_TCPDF extends TCPDF {
|
24 |
|
includes/core/wcj-modules.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 3.2.4
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -86,6 +86,7 @@ $wcj_module_files = array(
|
|
86 |
'class-wcj-shipping-by-cities.php',
|
87 |
'class-wcj-shipping-by-time.php',
|
88 |
'class-wcj-shipping-by-order-amount.php',
|
|
|
89 |
'class-wcj-address-formats.php',
|
90 |
'class-wcj-orders.php',
|
91 |
'class-wcj-admin-orders-list.php',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 3.2.4
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
86 |
'class-wcj-shipping-by-cities.php',
|
87 |
'class-wcj-shipping-by-time.php',
|
88 |
'class-wcj-shipping-by-order-amount.php',
|
89 |
+
'class-wcj-shipping-by-order-qty.php',
|
90 |
'class-wcj-address-formats.php',
|
91 |
'class-wcj-orders.php',
|
92 |
'class-wcj-admin-orders-list.php',
|
includes/functions/wcj-functions-admin.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Admin
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -117,26 +117,79 @@ if ( ! function_exists( 'wcj_admin_notices_version_updated' ) ) {
|
|
117 |
}
|
118 |
}
|
119 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
if ( ! function_exists( 'wcj_get_settings_as_multiselect_or_text' ) ) {
|
121 |
/**
|
122 |
* wcj_get_settings_as_multiselect_or_text.
|
123 |
*
|
124 |
-
* @version 3.
|
125 |
* @since 2.9.1
|
126 |
*/
|
127 |
function wcj_get_settings_as_multiselect_or_text( $values, $multiselect_options, $is_multiselect ) {
|
128 |
$prev_desc = ( isset( $values['desc'] ) ? $values['desc'] . ' ' : '' );
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
}
|
141 |
}
|
142 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Admin
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
117 |
}
|
118 |
}
|
119 |
|
120 |
+
if ( ! function_exists( 'wcj_get_ajax_settings' ) ) {
|
121 |
+
/**
|
122 |
+
* wcj_get_ajax_settings
|
123 |
+
*
|
124 |
+
* @version 4.3.0
|
125 |
+
* @since 4.3.0
|
126 |
+
*
|
127 |
+
* @param $values
|
128 |
+
* @param string $search_type Possible values 'woocommerce_json_search_products', 'woocommerce_json_search_products_and_variations' , 'woocommerce_json_search_categories'
|
129 |
+
* @param bool $allow_multiple_values
|
130 |
+
*
|
131 |
+
* @return array
|
132 |
+
*/
|
133 |
+
function wcj_get_ajax_settings( $values, $allow_multiple_values = false, $search_type = 'woocommerce_json_search_products' ) {
|
134 |
+
$options_raw = get_option( $values['id'], isset( $values['default'] ) ? $values['default'] : '' );
|
135 |
+
$options = array();
|
136 |
+
$class = '';
|
137 |
+
if ( $search_type == 'woocommerce_json_search_products' || $search_type == 'woocommerce_json_search_products_and_variations' ) {
|
138 |
+
$class = 'wc-product-search';
|
139 |
+
foreach ( $options_raw as $product_id ) {
|
140 |
+
$product = wc_get_product( $product_id );
|
141 |
+
$options[ $product_id ] = wp_kses_post( $product->get_formatted_name() );
|
142 |
+
}
|
143 |
+
} elseif ( $search_type == 'woocommerce_json_search_categories' ) {
|
144 |
+
$class = 'wc-category-search';
|
145 |
+
foreach ( $options_raw as $term_id ) {
|
146 |
+
$term = get_term_by( 'slug', $term_id, 'product_cat' );
|
147 |
+
$options[ $term_id ] = wp_kses_post( $term->name );
|
148 |
+
}
|
149 |
+
}
|
150 |
+
$placeholder = isset( $values['placeholder'] ) ? isset( $values['placeholder'] ) : __( "Search…", 'woocommerce-jetpack' );
|
151 |
+
return array_merge( $values, array(
|
152 |
+
'custom_attributes' => array(
|
153 |
+
'data-action' => $search_type,
|
154 |
+
'data-allow_clear' => "true",
|
155 |
+
'aria-hidden' => "true",
|
156 |
+
'data-sortable' => "true",
|
157 |
+
'data-placeholder' => $placeholder
|
158 |
+
),
|
159 |
+
'type' => $allow_multiple_values ? 'multiselect' : 'select',
|
160 |
+
'options' => $options,
|
161 |
+
'class' => $class,
|
162 |
+
'ignore_enhanced_select_class' => true
|
163 |
+
) );
|
164 |
+
}
|
165 |
+
}
|
166 |
+
|
167 |
if ( ! function_exists( 'wcj_get_settings_as_multiselect_or_text' ) ) {
|
168 |
/**
|
169 |
* wcj_get_settings_as_multiselect_or_text.
|
170 |
*
|
171 |
+
* @version 4.3.0
|
172 |
* @since 2.9.1
|
173 |
*/
|
174 |
function wcj_get_settings_as_multiselect_or_text( $values, $multiselect_options, $is_multiselect ) {
|
175 |
$prev_desc = ( isset( $values['desc'] ) ? $values['desc'] . ' ' : '' );
|
176 |
+
|
177 |
+
if ( $is_multiselect ) {
|
178 |
+
if ( ! empty( $multiselect_options ) ) {
|
179 |
+
return array_merge( $values, array(
|
180 |
+
'type' => 'multiselect',
|
181 |
+
'class' => 'chosen_select',
|
182 |
+
'options' => $multiselect_options,
|
183 |
+
) );
|
184 |
+
} else {
|
185 |
+
return wcj_get_ajax_settings( $values, true );
|
186 |
+
}
|
187 |
+
} else {
|
188 |
+
return array_merge( $values, array(
|
189 |
+
'type' => 'text',
|
190 |
+
'desc' => $prev_desc . __( 'Enter comma separated list of IDs.', 'woocommerce-jetpack' ),
|
191 |
+
) );
|
192 |
+
}
|
193 |
}
|
194 |
}
|
195 |
|
includes/functions/wcj-functions-booster-core.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Booster Core
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -47,35 +47,72 @@ if ( ! function_exists( 'wcj_plugin_path' ) ) {
|
|
47 |
}
|
48 |
}
|
49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
if ( ! function_exists( 'wcj_is_module_enabled' ) ) {
|
51 |
/*
|
52 |
* wcj_is_module_enabled.
|
53 |
*
|
54 |
-
* @version
|
55 |
* @since 2.4.0
|
56 |
* @return boolean
|
57 |
*/
|
58 |
function wcj_is_module_enabled( $module_id ) {
|
59 |
-
|
60 |
-
|
61 |
-
if ( ! isset( $wcj_modules_by_user_roles_data ) ) {
|
62 |
-
if( ! function_exists( 'wp_get_current_user' ) ) {
|
63 |
-
require_once( ABSPATH . 'wp-includes/pluggable.php' );
|
64 |
-
}
|
65 |
-
$current_user = wp_get_current_user();
|
66 |
-
$wcj_modules_by_user_roles_data['role'] = ( isset( $current_user->roles ) && is_array( $current_user->roles ) && ! empty( $current_user->roles ) ?
|
67 |
-
reset( $current_user->roles ) : 'guest' );
|
68 |
-
$wcj_modules_by_user_roles_data['role'] = ( '' != $wcj_modules_by_user_roles_data['role'] ? $wcj_modules_by_user_roles_data['role'] : 'guest' );
|
69 |
-
$wcj_modules_by_user_roles_data['modules_incl'] = get_option( 'wcj_modules_by_user_roles_incl_' . $wcj_modules_by_user_roles_data['role'], '' );
|
70 |
-
$wcj_modules_by_user_roles_data['modules_excl'] = get_option( 'wcj_modules_by_user_roles_excl_' . $wcj_modules_by_user_roles_data['role'], '' );
|
71 |
-
}
|
72 |
-
if ( ! empty( $wcj_modules_by_user_roles_data['modules_incl'] ) && ! in_array( $module_id, $wcj_modules_by_user_roles_data['modules_incl'] ) ) {
|
73 |
-
return false;
|
74 |
-
}
|
75 |
-
if ( ! empty( $wcj_modules_by_user_roles_data['modules_excl'] ) && in_array( $module_id, $wcj_modules_by_user_roles_data['modules_excl'] ) ) {
|
76 |
-
return false;
|
77 |
-
}
|
78 |
-
}
|
79 |
-
return ( 'yes' === get_option( 'wcj_' . $module_id . '_enabled', 'no' ) );
|
80 |
}
|
81 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Booster Core
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
47 |
}
|
48 |
}
|
49 |
|
50 |
+
if ( ! function_exists( 'wcj_is_rest' ) ) {
|
51 |
+
/**
|
52 |
+
* Checks if the current request is a WP REST API request.
|
53 |
+
*
|
54 |
+
* @version 4.3.0
|
55 |
+
* @since 4.3.0
|
56 |
+
*
|
57 |
+
* @author matzeeable
|
58 |
+
* @see https://wordpress.stackexchange.com/a/317041/25264
|
59 |
+
* @return boolean
|
60 |
+
*/
|
61 |
+
function wcj_is_rest() {
|
62 |
+
$prefix = rest_get_url_prefix();
|
63 |
+
if (
|
64 |
+
defined( 'REST_REQUEST' ) && REST_REQUEST || // After WP_REST_Request initialisation
|
65 |
+
isset( $_GET['rest_route'] ) && 0 === strpos( trim( $_GET['rest_route'], '\\/' ), $prefix , 0 ) // Support "plain" permalink settings
|
66 |
+
) {
|
67 |
+
return true;
|
68 |
+
}
|
69 |
+
// URL Path begins with wp-json/ (your REST prefix)
|
70 |
+
// Also supports WP installations in subfolders
|
71 |
+
$rest_url = wp_parse_url( site_url( $prefix ) );
|
72 |
+
$current_url = wp_parse_url( add_query_arg( array() ) );
|
73 |
+
return ( 0 === strpos( $current_url['path'], $rest_url['path'], 0 ) );
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
if ( ! function_exists( 'wcj_check_modules_by_user_roles' ) ) {
|
78 |
+
/**
|
79 |
+
* wcj_check_modules_by_user_roles.
|
80 |
+
*
|
81 |
+
* @version 4.3.0
|
82 |
+
* @since 4.3.0
|
83 |
+
* @return boolean
|
84 |
+
* @todo [fix] re-implement `wcj_wp_get_current_user()` instead of requiring `pluggable.php`
|
85 |
+
*/
|
86 |
+
function wcj_check_modules_by_user_roles( $module_id ) {
|
87 |
+
global $wcj_modules_by_user_roles_data;
|
88 |
+
if ( ! isset( $wcj_modules_by_user_roles_data ) ) {
|
89 |
+
if ( ! function_exists( 'wp_get_current_user' ) ) {
|
90 |
+
require_once( ABSPATH . 'wp-includes/pluggable.php' );
|
91 |
+
}
|
92 |
+
$current_user = wp_get_current_user();
|
93 |
+
$wcj_modules_by_user_roles_data['role'] = ( isset( $current_user->roles ) && is_array( $current_user->roles ) && ! empty( $current_user->roles ) ?
|
94 |
+
reset( $current_user->roles ) : 'guest' );
|
95 |
+
$wcj_modules_by_user_roles_data['role'] = ( '' != $wcj_modules_by_user_roles_data['role'] ? $wcj_modules_by_user_roles_data['role'] : 'guest' );
|
96 |
+
$wcj_modules_by_user_roles_data['modules_incl'] = get_option( 'wcj_modules_by_user_roles_incl_' . $wcj_modules_by_user_roles_data['role'], '' );
|
97 |
+
$wcj_modules_by_user_roles_data['modules_excl'] = get_option( 'wcj_modules_by_user_roles_excl_' . $wcj_modules_by_user_roles_data['role'], '' );
|
98 |
+
}
|
99 |
+
return (
|
100 |
+
( ! empty( $wcj_modules_by_user_roles_data['modules_incl'] ) && ! in_array( $module_id, $wcj_modules_by_user_roles_data['modules_incl'] ) ) ||
|
101 |
+
( ! empty( $wcj_modules_by_user_roles_data['modules_excl'] ) && in_array( $module_id, $wcj_modules_by_user_roles_data['modules_excl'] ) )
|
102 |
+
) ? false : true;
|
103 |
+
}
|
104 |
+
}
|
105 |
+
|
106 |
if ( ! function_exists( 'wcj_is_module_enabled' ) ) {
|
107 |
/*
|
108 |
* wcj_is_module_enabled.
|
109 |
*
|
110 |
+
* @version 4.3.0
|
111 |
* @since 2.4.0
|
112 |
* @return boolean
|
113 |
*/
|
114 |
function wcj_is_module_enabled( $module_id ) {
|
115 |
+
return ( 'modules_by_user_roles' != $module_id && wcj_is_module_enabled( 'modules_by_user_roles' ) && ! wcj_is_rest() && ! wcj_check_modules_by_user_roles( $module_id ) ?
|
116 |
+
false : ( 'yes' === get_option( 'wcj_' . $module_id . '_enabled', 'no' ) ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
}
|
118 |
}
|
includes/functions/wcj-functions-exchange-rates.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Exchange Rates
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -125,7 +125,7 @@ if ( ! function_exists( 'wcj_get_exchange_rate' ) ) {
|
|
125 |
/*
|
126 |
* wcj_get_exchange_rate.
|
127 |
*
|
128 |
-
* @version 3.
|
129 |
* @since 2.6.0
|
130 |
*/
|
131 |
function wcj_get_exchange_rate( $currency_from, $currency_to ) {
|
@@ -156,7 +156,7 @@ if ( ! function_exists( 'wcj_get_exchange_rate' ) ) {
|
|
156 |
break;
|
157 |
}
|
158 |
$return = apply_filters( 'wcj_currency_exchange_rate', $return, $exchange_rates_server, $currency_from, $currency_to );
|
159 |
-
return ( 'yes' === $calculate_by_invert ) ? round( ( 1 / $return ), 6 ) : $return;
|
160 |
}
|
161 |
}
|
162 |
|
@@ -378,13 +378,17 @@ if ( ! function_exists( 'wcj_ecb_get_exchange_rate' ) ) {
|
|
378 |
/*
|
379 |
* wcj_ecb_get_exchange_rate.
|
380 |
*
|
381 |
-
* @version
|
382 |
* @since 2.6.0
|
383 |
*/
|
384 |
function wcj_ecb_get_exchange_rate( $currency_from, $currency_to ) {
|
385 |
$final_rate = false;
|
386 |
if ( function_exists( 'simplexml_load_file' ) ) {
|
387 |
-
|
|
|
|
|
|
|
|
|
388 |
if ( isset( $xml->Cube->Cube->Cube ) ) {
|
389 |
if ( 'EUR' === $currency_from ) {
|
390 |
$EUR_currency_from_rate = 1;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Exchange Rates
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
125 |
/*
|
126 |
* wcj_get_exchange_rate.
|
127 |
*
|
128 |
+
* @version 4.3.0
|
129 |
* @since 2.6.0
|
130 |
*/
|
131 |
function wcj_get_exchange_rate( $currency_from, $currency_to ) {
|
156 |
break;
|
157 |
}
|
158 |
$return = apply_filters( 'wcj_currency_exchange_rate', $return, $exchange_rates_server, $currency_from, $currency_to );
|
159 |
+
return ( 'yes' === $calculate_by_invert && ! empty( $return ) ) ? round( ( 1 / $return ), 6 ) : $return;
|
160 |
}
|
161 |
}
|
162 |
|
378 |
/*
|
379 |
* wcj_ecb_get_exchange_rate.
|
380 |
*
|
381 |
+
* @version 4.3.0
|
382 |
* @since 2.6.0
|
383 |
*/
|
384 |
function wcj_ecb_get_exchange_rate( $currency_from, $currency_to ) {
|
385 |
$final_rate = false;
|
386 |
if ( function_exists( 'simplexml_load_file' ) ) {
|
387 |
+
if ( WP_DEBUG === true ) {
|
388 |
+
$xml = simplexml_load_file( 'http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml' );
|
389 |
+
} else {
|
390 |
+
$xml = @simplexml_load_file( 'http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml' );
|
391 |
+
}
|
392 |
if ( isset( $xml->Cube->Cube->Cube ) ) {
|
393 |
if ( 'EUR' === $currency_from ) {
|
394 |
$EUR_currency_from_rate = 1;
|
includes/functions/wcj-functions-general.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - General
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @author Algoritmika Ltd.
|
7 |
* @todo add `wcj_add_actions()` and `wcj_add_filters()`
|
8 |
*/
|
@@ -308,7 +308,7 @@ if ( ! function_exists( 'wcj_session_maybe_start' ) ) {
|
|
308 |
/**
|
309 |
* wcj_session_maybe_start.
|
310 |
*
|
311 |
-
* @version 3.
|
312 |
* @since 3.1.0
|
313 |
*/
|
314 |
function wcj_session_maybe_start() {
|
@@ -318,9 +318,10 @@ if ( ! function_exists( 'wcj_session_maybe_start' ) ) {
|
|
318 |
WC()->session->set_customer_session_cookie( true );
|
319 |
}
|
320 |
break;
|
321 |
-
default:
|
322 |
-
if ( !
|
323 |
-
|
|
|
324 |
}
|
325 |
break;
|
326 |
}
|
@@ -713,10 +714,10 @@ if ( ! function_exists( 'wcj_get_rates_for_tax_class' ) ) {
|
|
713 |
}
|
714 |
|
715 |
if ( ! function_exists( 'wcj_get_select_options' ) ) {
|
716 |
-
|
717 |
* wcj_get_select_options()
|
718 |
*
|
719 |
-
* @version 3.
|
720 |
* @since 2.3.0
|
721 |
* @return array
|
722 |
*/
|
@@ -727,7 +728,7 @@ if ( ! function_exists( 'wcj_get_select_options' ) ) {
|
|
727 |
$select_options_raw = array_map( 'trim', explode( PHP_EOL, $select_options_raw ) );
|
728 |
$select_options = array();
|
729 |
foreach ( $select_options_raw as $select_options_title ) {
|
730 |
-
$select_options_key = ( $do_sanitize ) ? sanitize_title( $select_options_title ) : $select_options_title;
|
731 |
$select_options[ $select_options_key ] = $select_options_title;
|
732 |
}
|
733 |
return $select_options;
|
@@ -735,7 +736,7 @@ if ( ! function_exists( 'wcj_get_select_options' ) ) {
|
|
735 |
}
|
736 |
|
737 |
if ( ! function_exists( 'wcj_is_frontend' ) ) {
|
738 |
-
|
739 |
* wcj_is_frontend()
|
740 |
*
|
741 |
* @since 4.0.0
|
@@ -795,16 +796,19 @@ if ( ! function_exists( 'wcj_get_the_ip' ) ) {
|
|
795 |
/**
|
796 |
* wcj_get_the_ip.
|
797 |
*
|
|
|
798 |
* @see http://stackoverflow.com/questions/3003145/how-to-get-the-client-ip-address-in-php
|
799 |
*/
|
800 |
-
function wcj_get_the_ip(
|
801 |
-
$ip
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
|
|
|
|
808 |
}
|
809 |
return $ip;
|
810 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - General
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
* @todo add `wcj_add_actions()` and `wcj_add_filters()`
|
8 |
*/
|
308 |
/**
|
309 |
* wcj_session_maybe_start.
|
310 |
*
|
311 |
+
* @version 4.3.0
|
312 |
* @since 3.1.0
|
313 |
*/
|
314 |
function wcj_session_maybe_start() {
|
318 |
WC()->session->set_customer_session_cookie( true );
|
319 |
}
|
320 |
break;
|
321 |
+
default:
|
322 |
+
if ( session_status() == PHP_SESSION_NONE && ! headers_sent() ) {
|
323 |
+
$read_and_close = ( 'yes' === get_option( 'wcj_general_advanced_session_read_and_close', 'no' ) ) && PHP_VERSION_ID > 70000 ? array( 'read_and_close' => true ) : array();
|
324 |
+
session_start( $read_and_close );
|
325 |
}
|
326 |
break;
|
327 |
}
|
714 |
}
|
715 |
|
716 |
if ( ! function_exists( 'wcj_get_select_options' ) ) {
|
717 |
+
/**
|
718 |
* wcj_get_select_options()
|
719 |
*
|
720 |
+
* @version 4.3.0
|
721 |
* @since 2.3.0
|
722 |
* @return array
|
723 |
*/
|
728 |
$select_options_raw = array_map( 'trim', explode( PHP_EOL, $select_options_raw ) );
|
729 |
$select_options = array();
|
730 |
foreach ( $select_options_raw as $select_options_title ) {
|
731 |
+
$select_options_key = ( $do_sanitize ) ? urldecode( sanitize_title( $select_options_title ) ) : $select_options_title;
|
732 |
$select_options[ $select_options_key ] = $select_options_title;
|
733 |
}
|
734 |
return $select_options;
|
736 |
}
|
737 |
|
738 |
if ( ! function_exists( 'wcj_is_frontend' ) ) {
|
739 |
+
/**
|
740 |
* wcj_is_frontend()
|
741 |
*
|
742 |
* @since 4.0.0
|
796 |
/**
|
797 |
* wcj_get_the_ip.
|
798 |
*
|
799 |
+
* @version 4.3.0
|
800 |
* @see http://stackoverflow.com/questions/3003145/how-to-get-the-client-ip-address-in-php
|
801 |
*/
|
802 |
+
function wcj_get_the_ip() {
|
803 |
+
$ip = null;
|
804 |
+
$ip_detection_methods = array( 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR' );
|
805 |
+
$ip_detection_methods = 'yes' === get_option( 'wcj_general_enabled', 'no' ) ? explode( PHP_EOL, get_option( 'wcj_general_advanced_ip_detection', implode( PHP_EOL, $ip_detection_methods ) ) ) : $ip_detection_methods;
|
806 |
+
foreach ( $ip_detection_methods as $method ) {
|
807 |
+
if ( empty( $_SERVER[ sanitize_text_field( $method ) ] ) ) {
|
808 |
+
continue;
|
809 |
+
}
|
810 |
+
$ip = sanitize_text_field( wp_unslash( $_SERVER[ sanitize_text_field( $method ) ] ) );
|
811 |
+
break;
|
812 |
}
|
813 |
return $ip;
|
814 |
}
|
includes/js/wcj-bookings.js
CHANGED
@@ -1,12 +1,20 @@
|
|
1 |
/**
|
2 |
* wcj-bookings.
|
3 |
*
|
4 |
-
* version
|
5 |
* since 2.5.0
|
6 |
*/
|
7 |
|
8 |
var _ajax_object = ajax_object;
|
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
function change_price() {
|
11 |
var date_from = jQuery("input[name='wcj_product_bookings_date_from']").val();
|
12 |
var date_to = jQuery("input[name='wcj_product_bookings_date_to']").val();
|
@@ -32,10 +40,12 @@ function change_price() {
|
|
32 |
'date_from': date_from,
|
33 |
'date_to': date_to
|
34 |
};
|
|
|
|
|
35 |
jQuery.post(_ajax_object.ajax_url, data, function(response) {
|
36 |
if ( '' != response ) {
|
37 |
-
jQuery(
|
38 |
-
|
39 |
}
|
40 |
});
|
41 |
jQuery("div[name='wcj_bookings_message']").css("display", "none");
|
@@ -43,12 +53,11 @@ function change_price() {
|
|
43 |
} else {
|
44 |
jQuery("div[name='wcj_bookings_message']").css("display", "block");
|
45 |
jQuery("div[name='wcj_bookings_message'] p").text(_ajax_object.wrong_dates_message);
|
46 |
-
jQuery(
|
47 |
-
jQuery("p[class='price']").css("display", "block");
|
48 |
}
|
49 |
} else {
|
|
|
50 |
jQuery("p[class='price wcj-price-bookings']").css("display", "none");
|
51 |
-
jQuery("p[class='price']").css("display", "block");
|
52 |
}
|
53 |
}
|
54 |
|
1 |
/**
|
2 |
* wcj-bookings.
|
3 |
*
|
4 |
+
* version 4.3.0
|
5 |
* since 2.5.0
|
6 |
*/
|
7 |
|
8 |
var _ajax_object = ajax_object;
|
9 |
|
10 |
+
function wcj_hide_loader(){
|
11 |
+
jQuery('.wcj-bookings-price-wrapper').removeClass('loading');
|
12 |
+
}
|
13 |
+
|
14 |
+
function wcj_show_loader(){
|
15 |
+
jQuery('.wcj-bookings-price-wrapper').addClass('loading');
|
16 |
+
}
|
17 |
+
|
18 |
function change_price() {
|
19 |
var date_from = jQuery("input[name='wcj_product_bookings_date_from']").val();
|
20 |
var date_to = jQuery("input[name='wcj_product_bookings_date_to']").val();
|
40 |
'date_from': date_from,
|
41 |
'date_to': date_to
|
42 |
};
|
43 |
+
wcj_show_loader();
|
44 |
+
jQuery('.wcj-bookings-price-wrapper .wcj-value').html('');
|
45 |
jQuery.post(_ajax_object.ajax_url, data, function(response) {
|
46 |
if ( '' != response ) {
|
47 |
+
jQuery('.wcj-bookings-price-wrapper .wcj-value').html('<p class="price wcj-price-bookings">'+response+'</p>');
|
48 |
+
wcj_hide_loader();
|
49 |
}
|
50 |
});
|
51 |
jQuery("div[name='wcj_bookings_message']").css("display", "none");
|
53 |
} else {
|
54 |
jQuery("div[name='wcj_bookings_message']").css("display", "block");
|
55 |
jQuery("div[name='wcj_bookings_message'] p").text(_ajax_object.wrong_dates_message);
|
56 |
+
jQuery('.wcj-bookings-price-wrapper .wcj-value').html('');
|
|
|
57 |
}
|
58 |
} else {
|
59 |
+
jQuery('.wcj-bookings-price-wrapper .wcj-value').html('');
|
60 |
jQuery("p[class='price wcj-price-bookings']").css("display", "none");
|
|
|
61 |
}
|
62 |
}
|
63 |
|
includes/js/wcj-variations-frontend.js
CHANGED
@@ -1,37 +1,52 @@
|
|
1 |
/**
|
2 |
* Booster for WooCommerce - Variations Radio Buttons
|
3 |
*
|
4 |
-
* @version
|
5 |
* @author Algoritmika Ltd.
|
6 |
*/
|
7 |
|
8 |
/**
|
9 |
-
*
|
|
|
10 |
*
|
11 |
-
* @version
|
12 |
-
* @since
|
|
|
13 |
*/
|
14 |
-
function
|
15 |
-
|
16 |
-
|
17 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
}
|
19 |
}
|
20 |
|
21 |
/**
|
22 |
* process_variations.
|
23 |
*
|
24 |
-
* @version
|
25 |
* @since 2.9.0
|
26 |
*/
|
27 |
function process_variations(variation_id) {
|
28 |
var data_product_variations = jQuery.parseJSON(jQuery("form.variations_form.cart").attr('data-product_variations'));
|
29 |
-
data_product_variations.forEach(function(variation){
|
30 |
-
if(variation_id == variation.variation_id){
|
31 |
-
|
32 |
-
jQuery("form.variations_form.cart").wc_variations_image_update(variation);
|
33 |
-
jQuery("div.woocommerce-variation-price").html(variation.price_html);
|
34 |
-
jQuery("div.woocommerce-variation-availability").html(variation.availability_html);
|
35 |
}
|
36 |
});
|
37 |
}
|
1 |
/**
|
2 |
* Booster for WooCommerce - Variations Radio Buttons
|
3 |
*
|
4 |
+
* @version 4.3.0
|
5 |
* @author Algoritmika Ltd.
|
6 |
*/
|
7 |
|
8 |
/**
|
9 |
+
* Finds correspondent WooCommerce dropdown and triggers the 'change' event manually.
|
10 |
+
* That will make WooCommerce itself do the rest, like update image, prices, and so on.
|
11 |
*
|
12 |
+
* @version 4.3.0
|
13 |
+
* @since 4.3.0
|
14 |
+
* @param variation_id
|
15 |
*/
|
16 |
+
function select_wc_dropdown_programmatically(variation_id) {
|
17 |
+
var variations = jQuery("form.variations_form.cart").data('product_variations');
|
18 |
+
var attributes = {};
|
19 |
+
variations.forEach(function (variation, index) {
|
20 |
+
if (variation.variation_id == variation_id) {
|
21 |
+
attributes = variation.attributes;
|
22 |
+
}
|
23 |
+
});
|
24 |
+
if (Object.keys(attributes).length !== 0) {
|
25 |
+
Object.keys(attributes).forEach(function (index) {
|
26 |
+
var select = jQuery("[name*='" + index + "']");
|
27 |
+
var value = attributes[index];
|
28 |
+
if (value != "") {
|
29 |
+
var opt = select.find('option[value="' + value + '"]');
|
30 |
+
} else {
|
31 |
+
var opt = select.find('option[value!=""]').eq(0);
|
32 |
+
}
|
33 |
+
opt.prop('selected', true);
|
34 |
+
select.trigger('change');
|
35 |
+
});
|
36 |
}
|
37 |
}
|
38 |
|
39 |
/**
|
40 |
* process_variations.
|
41 |
*
|
42 |
+
* @version 4.3.0
|
43 |
* @since 2.9.0
|
44 |
*/
|
45 |
function process_variations(variation_id) {
|
46 |
var data_product_variations = jQuery.parseJSON(jQuery("form.variations_form.cart").attr('data-product_variations'));
|
47 |
+
data_product_variations.forEach(function (variation) {
|
48 |
+
if (variation_id == variation.variation_id) {
|
49 |
+
select_wc_dropdown_programmatically(variation_id);
|
|
|
|
|
|
|
50 |
}
|
51 |
});
|
52 |
}
|
includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - PDF Invoicing - Report Tool
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.2.1
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -310,7 +310,7 @@ class WCJ_PDF_Invoicing_Report_Tool {
|
|
310 |
/**
|
311 |
* Invoices Report Data function.
|
312 |
*
|
313 |
-
* @version 3.
|
314 |
* @since 2.5.7
|
315 |
*/
|
316 |
function get_invoices_report_data( $year, $month, $invoice_type_id ) {
|
@@ -447,7 +447,7 @@ class WCJ_PDF_Invoicing_Report_Tool {
|
|
447 |
break;
|
448 |
}
|
449 |
}
|
450 |
-
$data[] = $row;
|
451 |
}
|
452 |
}
|
453 |
$offset += $block_size;
|
2 |
/**
|
3 |
* Booster for WooCommerce - PDF Invoicing - Report Tool
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.2.1
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
310 |
/**
|
311 |
* Invoices Report Data function.
|
312 |
*
|
313 |
+
* @version 4.3.0
|
314 |
* @since 2.5.7
|
315 |
*/
|
316 |
function get_invoices_report_data( $year, $month, $invoice_type_id ) {
|
447 |
break;
|
448 |
}
|
449 |
}
|
450 |
+
$data[] = apply_filters( 'wcj_pdf_invoicing_report_tool_row', $row );
|
451 |
}
|
452 |
}
|
453 |
$offset += $block_size;
|
includes/settings/wcj-settings-general.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - General
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -60,6 +60,22 @@ $settings = array(
|
|
60 |
'wc' => __( 'WC sessions', 'woocommerce-jetpack' ),
|
61 |
),
|
62 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
array(
|
64 |
'title' => __( 'Datepicker/Weekpicker CSS Loading', 'woocommerce-jetpack' ),
|
65 |
'desc_tip' => __( 'Disables datepicker/weekpicker CSS loading.', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - General
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
60 |
'wc' => __( 'WC sessions', 'woocommerce-jetpack' ),
|
61 |
),
|
62 |
),
|
63 |
+
array(
|
64 |
+
'title' => __( 'Read and Close', 'woocommerce-jetpack' ),
|
65 |
+
'desc' => __( 'Enable <strong>Read and Close</strong> parameter on <strong>session_start()</strong>.', 'woocommerce-jetpack' ),
|
66 |
+
'desc_tip' => __( 'Requires Session Type option set as Standard PHP Sessions and PHP version >= 7.0', 'woocommerce-jetpack' ),
|
67 |
+
'id' => 'wcj_general_advanced_session_read_and_close',
|
68 |
+
'default' => 'no',
|
69 |
+
'type' => 'checkbox',
|
70 |
+
),
|
71 |
+
array(
|
72 |
+
'title' => __( 'IP Detection', 'woocommerce-jetpack' ),
|
73 |
+
'desc' => __( 'IP Detection Methods used by some Booster modules when not using IP detection from WooCommerce. Change order for different results.', 'woocommerce-jetpack' ),
|
74 |
+
'desc_tip' => __( 'Default values are:', 'woocommerce-jetpack' ).'<br />'.implode( PHP_EOL, array( 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR' ) ),
|
75 |
+
'id' => 'wcj_general_advanced_ip_detection',
|
76 |
+
'default' => implode( PHP_EOL, array( 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'REMOTE_ADDR' ) ),
|
77 |
+
'type' => 'textarea',
|
78 |
+
),
|
79 |
array(
|
80 |
'title' => __( 'Datepicker/Weekpicker CSS Loading', 'woocommerce-jetpack' ),
|
81 |
'desc_tip' => __( 'Disables datepicker/weekpicker CSS loading.', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-left-to-free-shipping.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Left to Free Shipping
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -116,6 +116,8 @@ return array(
|
|
116 |
'woocommerce_checkout_after_customer_details' => __( 'After customer details', 'woocommerce-jetpack' ),
|
117 |
'woocommerce_checkout_before_order_review' => __( 'Before order review', 'woocommerce-jetpack' ),
|
118 |
'woocommerce_checkout_order_review' => __( 'Order review', 'woocommerce-jetpack' ),
|
|
|
|
|
119 |
'woocommerce_review_order_before_submit' => __( 'Order review: Payment: Before submit button', 'woocommerce-jetpack' ),
|
120 |
'woocommerce_review_order_after_submit' => __( 'Order review: Payment: After submit button', 'woocommerce-jetpack' ),
|
121 |
'woocommerce_checkout_after_order_review' => __( 'After order review', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Left to Free Shipping
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
116 |
'woocommerce_checkout_after_customer_details' => __( 'After customer details', 'woocommerce-jetpack' ),
|
117 |
'woocommerce_checkout_before_order_review' => __( 'Before order review', 'woocommerce-jetpack' ),
|
118 |
'woocommerce_checkout_order_review' => __( 'Order review', 'woocommerce-jetpack' ),
|
119 |
+
'woocommerce_review_order_before_shipping' => __( 'Order review: Before shipping', 'woocommerce-jetpack' ),
|
120 |
+
'woocommerce_review_order_after_shipping' => __( 'Order review: After shipping', 'woocommerce-jetpack' ),
|
121 |
'woocommerce_review_order_before_submit' => __( 'Order review: Payment: Before submit button', 'woocommerce-jetpack' ),
|
122 |
'woocommerce_review_order_after_submit' => __( 'Order review: Payment: After submit button', 'woocommerce-jetpack' ),
|
123 |
'woocommerce_checkout_after_order_review' => __( 'After order review', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-my-account.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - My Account
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -124,6 +124,57 @@ $settings = array_merge( $settings, array(
|
|
124 |
'id' => 'wcj_my_account_menu_options',
|
125 |
),
|
126 |
) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
127 |
$settings = array_merge( $settings, array(
|
128 |
array(
|
129 |
'title' => __( 'Dashboard Customization', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - My Account
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
124 |
'id' => 'wcj_my_account_menu_options',
|
125 |
),
|
126 |
) );
|
127 |
+
$settings = array_merge( $settings, array(
|
128 |
+
array(
|
129 |
+
'title' => __( 'Custom Pages', 'woocommerce-jetpack' ),
|
130 |
+
'type' => 'title',
|
131 |
+
'id' => 'wcj_my_account_custom_pages_main_options',
|
132 |
+
),
|
133 |
+
array(
|
134 |
+
'title' => __( 'Custom Pages', 'woocommerce-jetpack' ),
|
135 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
136 |
+
'id' => 'wcj_my_account_custom_pages_enabled',
|
137 |
+
'default' => 'no',
|
138 |
+
'type' => 'checkbox',
|
139 |
+
),
|
140 |
+
array(
|
141 |
+
'title' => __( 'Total Pages', 'woocommerce-jetpack' ),
|
142 |
+
'id' => 'wcj_my_account_custom_pages_total_number',
|
143 |
+
'default' => 1,
|
144 |
+
'type' => 'custom_number',
|
145 |
+
'desc' => apply_filters( 'booster_message', '', 'desc' ),
|
146 |
+
'custom_attributes' => apply_filters( 'booster_message', '', 'readonly' ),
|
147 |
+
),
|
148 |
+
array(
|
149 |
+
'type' => 'sectionend',
|
150 |
+
'id' => 'wcj_my_account_custom_pages_main_options',
|
151 |
+
),
|
152 |
+
) );
|
153 |
+
for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_my_account_custom_pages_total_number', 1 ) ); $i++ ) {
|
154 |
+
$settings = array_merge( $settings, array(
|
155 |
+
array(
|
156 |
+
'title' => __( 'Custom Page', 'woocommerce-jetpack' ) . ' #' . $i,
|
157 |
+
'type' => 'title',
|
158 |
+
'id' => "wcj_my_account_custom_pages_options[{$i}]",
|
159 |
+
),
|
160 |
+
array(
|
161 |
+
'title' => __( 'Title', 'woocommerce-jetpack' ),
|
162 |
+
'type' => 'text',
|
163 |
+
'id' => "wcj_my_account_custom_pages_title[{$i}]",
|
164 |
+
),
|
165 |
+
array(
|
166 |
+
'title' => __( 'Content', 'woocommerce-jetpack' ),
|
167 |
+
'desc_tip' => __( 'You can use HTML and/or shortcodes here.', 'woocommerce-jetpack' ),
|
168 |
+
'type' => 'textarea',
|
169 |
+
'id' => "wcj_my_account_custom_pages_content[{$i}]",
|
170 |
+
'css' => 'width:100%;height:100px;',
|
171 |
+
),
|
172 |
+
array(
|
173 |
+
'type' => 'sectionend',
|
174 |
+
'id' => "wcj_my_account_custom_pages_options[{$i}]",
|
175 |
+
),
|
176 |
+
) );
|
177 |
+
}
|
178 |
$settings = array_merge( $settings, array(
|
179 |
array(
|
180 |
'title' => __( 'Dashboard Customization', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-product-bookings.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Bookings
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -87,6 +87,14 @@ return array(
|
|
87 |
'type' => 'title',
|
88 |
'id' => 'wcj_product_bookings_options',
|
89 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
array(
|
91 |
'title' => __( 'Hide Quantity Selector for Bookings Products', 'woocommerce-jetpack' ),
|
92 |
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Bookings
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
87 |
'type' => 'title',
|
88 |
'id' => 'wcj_product_bookings_options',
|
89 |
),
|
90 |
+
array(
|
91 |
+
'title' => __( 'Price per Day on Variable Products', 'woocommerce-jetpack' ),
|
92 |
+
'desc' => __( 'Calculate Variable Products final price per day, according to calendar', 'woocommerce-jetpack' ),
|
93 |
+
'desc_tip' => __( 'Disable it will make the Variable Product final price be calculated regardless of the chosen days on the calendar', 'woocommerce-jetpack' ),
|
94 |
+
'id' => 'wcj_product_bookings_price_per_day_variable_products',
|
95 |
+
'default' => 'yes',
|
96 |
+
'type' => 'checkbox',
|
97 |
+
),
|
98 |
array(
|
99 |
'title' => __( 'Hide Quantity Selector for Bookings Products', 'woocommerce-jetpack' ),
|
100 |
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-product-custom-info.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Info
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -12,7 +12,6 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
|
12 |
$is_multiselect_products = ( 'yes' === get_option( 'wcj_list_for_products', 'yes' ) );
|
13 |
$is_multiselect_cats = ( 'yes' === get_option( 'wcj_list_for_products_cats', 'yes' ) );
|
14 |
$is_multiselect_tags = ( 'yes' === get_option( 'wcj_list_for_products_tags', 'yes' ) );
|
15 |
-
$products = ( $is_multiselect_products ? wcj_get_products() : false );
|
16 |
$product_cats = ( $is_multiselect_cats ? wcj_get_terms( 'product_cat' ) : false );
|
17 |
$product_tags = ( $is_multiselect_tags ? wcj_get_terms( 'product_tag' ) : false );
|
18 |
$settings = array();
|
@@ -164,7 +163,7 @@ foreach ( $single_or_archive_array as $single_or_archive ) {
|
|
164 |
'desc_tip' => __( 'Leave blank to disable the option.', 'woocommerce-jetpack' ),
|
165 |
'id' => 'wcj_product_custom_info_products_to_include_' . $single_or_archive . '_' . $i,
|
166 |
'default' => '' ),
|
167 |
-
|
168 |
$is_multiselect_products
|
169 |
),
|
170 |
wcj_get_settings_as_multiselect_or_text( array(
|
@@ -172,7 +171,7 @@ foreach ( $single_or_archive_array as $single_or_archive ) {
|
|
172 |
'desc_tip' => __( 'Leave blank to disable the option.', 'woocommerce-jetpack' ),
|
173 |
'id' => 'wcj_product_custom_info_products_to_exclude_' . $single_or_archive . '_' . $i,
|
174 |
'default' => '' ),
|
175 |
-
|
176 |
$is_multiselect_products
|
177 |
),
|
178 |
array(
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Info
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
12 |
$is_multiselect_products = ( 'yes' === get_option( 'wcj_list_for_products', 'yes' ) );
|
13 |
$is_multiselect_cats = ( 'yes' === get_option( 'wcj_list_for_products_cats', 'yes' ) );
|
14 |
$is_multiselect_tags = ( 'yes' === get_option( 'wcj_list_for_products_tags', 'yes' ) );
|
|
|
15 |
$product_cats = ( $is_multiselect_cats ? wcj_get_terms( 'product_cat' ) : false );
|
16 |
$product_tags = ( $is_multiselect_tags ? wcj_get_terms( 'product_tag' ) : false );
|
17 |
$settings = array();
|
163 |
'desc_tip' => __( 'Leave blank to disable the option.', 'woocommerce-jetpack' ),
|
164 |
'id' => 'wcj_product_custom_info_products_to_include_' . $single_or_archive . '_' . $i,
|
165 |
'default' => '' ),
|
166 |
+
'',
|
167 |
$is_multiselect_products
|
168 |
),
|
169 |
wcj_get_settings_as_multiselect_or_text( array(
|
171 |
'desc_tip' => __( 'Leave blank to disable the option.', 'woocommerce-jetpack' ),
|
172 |
'id' => 'wcj_product_custom_info_products_to_exclude_' . $single_or_archive . '_' . $i,
|
173 |
'default' => '' ),
|
174 |
+
'',
|
175 |
$is_multiselect_products
|
176 |
),
|
177 |
array(
|
includes/settings/wcj-settings-product-images.php
CHANGED
@@ -97,4 +97,40 @@ return array(
|
|
97 |
'type' => 'sectionend',
|
98 |
'id' => 'wcj_product_images_placeholder_options',
|
99 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
);
|
97 |
'type' => 'sectionend',
|
98 |
'id' => 'wcj_product_images_placeholder_options',
|
99 |
),
|
100 |
+
array(
|
101 |
+
'title' => __( 'Callbacks', 'woocommerce-jetpack' ),
|
102 |
+
'desc' => __( 'Callback functions used by WooCommerce and the current theme in order to customize images and thumbnails', 'woocommerce-jetpack' ),
|
103 |
+
'type' => 'title',
|
104 |
+
'id' => 'wcj_product_images_cb',
|
105 |
+
),
|
106 |
+
array(
|
107 |
+
'title' => __( 'Loop Thumbnail', 'woocommerce-jetpack' ),
|
108 |
+
'desc' => __( 'Used on hook <strong>woocommerce_before_shop_loop_item_title</strong>', 'woocommerce-jetpack' ),
|
109 |
+
'id' => 'wcj_product_images_cb_loop_product_thumbnail',
|
110 |
+
'default' => 'woocommerce_template_loop_product_thumbnail',
|
111 |
+
'type' => 'text',
|
112 |
+
),
|
113 |
+
array(
|
114 |
+
'title' => __( 'Loop Thumbnail Priority', 'woocommerce-jetpack' ),
|
115 |
+
'id' => 'wcj_product_images_cb_loop_product_thumbnail_priority',
|
116 |
+
'default' => 10,
|
117 |
+
'type' => 'text',
|
118 |
+
),
|
119 |
+
array(
|
120 |
+
'title' => __( 'Show Images', 'woocommerce-jetpack' ),
|
121 |
+
'desc' => __( 'Used on hook <strong>woocommerce_before_single_product_summary</strong>', 'woocommerce-jetpack' ),
|
122 |
+
'id' => 'wcj_product_images_cb_show_product_images',
|
123 |
+
'default' => 'woocommerce_show_product_images',
|
124 |
+
'type' => 'text',
|
125 |
+
),
|
126 |
+
array(
|
127 |
+
'title' => __( 'Show Images Priority', 'woocommerce-jetpack' ),
|
128 |
+
'id' => 'wcj_product_images_cb_show_product_images_priority',
|
129 |
+
'default' => 20,
|
130 |
+
'type' => 'text',
|
131 |
+
),
|
132 |
+
array(
|
133 |
+
'type' => 'sectionend',
|
134 |
+
'id' => 'wcj_product_images_cb',
|
135 |
+
),
|
136 |
);
|
includes/settings/wcj-settings-product-input-fields.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Input Fields
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo [dev] maybe set "Strip slashes" option to `yes` by default (or even remove the option completely and always strip slashes)
|
@@ -75,7 +75,6 @@ $settings = array(
|
|
75 |
),
|
76 |
);
|
77 |
$is_multiselect_products = ( 'yes' === get_option( 'wcj_list_for_products', 'yes' ) );
|
78 |
-
$products = ( $is_multiselect_products ? wcj_get_products() : false );
|
79 |
$product_cats = wcj_get_terms( 'product_cat' );
|
80 |
$product_tags = wcj_get_terms( 'product_tag' );
|
81 |
$options = $this->get_global_product_fields_options();
|
@@ -160,7 +159,7 @@ for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_product
|
|
160 |
'default' => '',
|
161 |
'css' => 'width: 450px;',
|
162 |
),
|
163 |
-
|
164 |
$is_multiselect_products
|
165 |
),
|
166 |
wcj_get_settings_as_multiselect_or_text(
|
@@ -172,7 +171,7 @@ for ( $i = 1; $i <= apply_filters( 'booster_option', 1, get_option( 'wcj_product
|
|
172 |
'default' => '',
|
173 |
'css' => 'width: 450px;',
|
174 |
),
|
175 |
-
|
176 |
$is_multiselect_products
|
177 |
),
|
178 |
array(
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Input Fields
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo [dev] maybe set "Strip slashes" option to `yes` by default (or even remove the option completely and always strip slashes)
|
75 |
),
|
76 |
);
|
77 |
$is_multiselect_products = ( 'yes' === get_option( 'wcj_list_for_products', 'yes' ) );
|
|
|
78 |
$product_cats = wcj_get_terms( 'product_cat' );
|
79 |
$product_tags = wcj_get_terms( 'product_tag' );
|
80 |
$options = $this->get_global_product_fields_options();
|
159 |
'default' => '',
|
160 |
'css' => 'width: 450px;',
|
161 |
),
|
162 |
+
'',
|
163 |
$is_multiselect_products
|
164 |
),
|
165 |
wcj_get_settings_as_multiselect_or_text(
|
171 |
'default' => '',
|
172 |
'css' => 'width: 450px;',
|
173 |
),
|
174 |
+
'',
|
175 |
$is_multiselect_products
|
176 |
),
|
177 |
array(
|
includes/settings/wcj-settings-shipping-by-order-qty.php
ADDED
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce Settings - Shipping Methods by Min/Max Order Quantity
|
4 |
+
*
|
5 |
+
* @version 4.3.0
|
6 |
+
* @since 4.3.0
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
$use_shipping_instances = ( 'yes' === get_option( 'wcj_shipping_by_order_qty_use_shipping_instance', 'no' ) );
|
13 |
+
$settings = array(
|
14 |
+
array(
|
15 |
+
'title' => __( 'General Options', 'woocommerce-jetpack' ),
|
16 |
+
'type' => 'title',
|
17 |
+
'id' => 'wcj_shipping_by_order_qty_general_options',
|
18 |
+
),
|
19 |
+
array(
|
20 |
+
'title' => __( 'Use Shipping Instances', 'woocommerce-jetpack' ),
|
21 |
+
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
22 |
+
'desc_tip' => __( 'Enable this if you want to use shipping methods instances instead of shipping methods.', 'woocommerce-jetpack' ) . ' ' .
|
23 |
+
__( 'Save changes after enabling this option.', 'woocommerce-jetpack' ),
|
24 |
+
'type' => 'checkbox',
|
25 |
+
'id' => 'wcj_shipping_by_order_qty_use_shipping_instance',
|
26 |
+
'default' => 'no',
|
27 |
+
),
|
28 |
+
array(
|
29 |
+
'type' => 'sectionend',
|
30 |
+
'id' => 'wcj_shipping_by_order_qty_general_options',
|
31 |
+
),
|
32 |
+
array(
|
33 |
+
'title' => __( 'Shipping Methods by Min/Max Order Quantity', 'woocommerce-jetpack' ),
|
34 |
+
'type' => 'title',
|
35 |
+
'desc' => __( 'Set to zero to disable.', 'woocommerce-jetpack' ),
|
36 |
+
'id' => 'wcj_shipping_by_order_qty_options',
|
37 |
+
),
|
38 |
+
);
|
39 |
+
$shipping_methods = ( $use_shipping_instances ? wcj_get_shipping_methods_instances( true ) : WC()->shipping()->load_shipping_methods() );
|
40 |
+
foreach ( $shipping_methods as $method ) {
|
41 |
+
$method_id = ( $use_shipping_instances ? $method['shipping_method_id'] : $method->id );
|
42 |
+
if ( ! in_array( $method_id, array( 'flat_rate', 'free_shipping' ) ) ) {
|
43 |
+
$custom_attributes = apply_filters( 'booster_message', '', 'disabled' );
|
44 |
+
if ( '' == $custom_attributes ) {
|
45 |
+
$custom_attributes = array();
|
46 |
+
}
|
47 |
+
$desc_tip = apply_filters( 'booster_message', '', 'desc_no_link' );
|
48 |
+
} else {
|
49 |
+
$custom_attributes = array();
|
50 |
+
$desc_tip = '';
|
51 |
+
}
|
52 |
+
$custom_attributes = array_merge( $custom_attributes, array( 'min' => 0 ) );
|
53 |
+
$settings = array_merge( $settings, array(
|
54 |
+
array(
|
55 |
+
'title' => ( $use_shipping_instances ? $method['zone_name'] . ': ' . $method['shipping_method_title']: $method->get_method_title() ),
|
56 |
+
'desc_tip' => $desc_tip,
|
57 |
+
'desc' => '<br>' . __( 'Minimum order quantity', 'woocommerce-jetpack' ),
|
58 |
+
'id' => 'wcj_shipping_by_order_qty_min' . ( $use_shipping_instances ? '_instance[' . $method['shipping_method_instance_id'] . ']' : '[' . $method->id . ']' ),
|
59 |
+
'default' => 0,
|
60 |
+
'type' => 'number',
|
61 |
+
'custom_attributes' => $custom_attributes,
|
62 |
+
),
|
63 |
+
array(
|
64 |
+
'desc_tip' => $desc_tip,
|
65 |
+
'desc' => '<br>' . __( 'Maximum order quantity', 'woocommerce-jetpack' ),
|
66 |
+
'id' => 'wcj_shipping_by_order_qty_max' . ( $use_shipping_instances ? '_instance[' . $method['shipping_method_instance_id'] . ']' : '[' . $method->id . ']' ),
|
67 |
+
'default' => 0,
|
68 |
+
'type' => 'number',
|
69 |
+
'custom_attributes' => $custom_attributes,
|
70 |
+
),
|
71 |
+
) );
|
72 |
+
}
|
73 |
+
$settings = array_merge( $settings, array(
|
74 |
+
array(
|
75 |
+
'type' => 'sectionend',
|
76 |
+
'id' => 'wcj_shipping_by_order_qty_options',
|
77 |
+
),
|
78 |
+
) );
|
79 |
+
return $settings;
|
includes/settings/wcj-settings-sorting.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Sorting
|
4 |
*
|
5 |
-
* @version
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -170,5 +170,32 @@ $settings = array_merge( $settings, array(
|
|
170 |
'type' => 'sectionend',
|
171 |
'id' => 'wcj_sorting_remove_all_options',
|
172 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
173 |
) );
|
174 |
return $settings;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Sorting
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
170 |
'type' => 'sectionend',
|
171 |
'id' => 'wcj_sorting_remove_all_options',
|
172 |
),
|
173 |
+
array(
|
174 |
+
'title' => __( 'Restore Default WooCommerce Sorting', 'woocommerce-jetpack' ),
|
175 |
+
'desc' => __( "Replaces theme's sorting by default WooCommerce sorting", 'woocommerce-jetpack' ),
|
176 |
+
'type' => 'title',
|
177 |
+
'default' => 'no',
|
178 |
+
'id' => 'wcj_sorting_restore_default_sorting_opt',
|
179 |
+
),
|
180 |
+
array(
|
181 |
+
'title' => __( 'Restore', 'woocommerce-jetpack' ),
|
182 |
+
'desc' => __( "Restore", 'woocommerce-jetpack' ),
|
183 |
+
'type' => 'checkbox',
|
184 |
+
'id' => 'wcj_sorting_restore_default_sorting',
|
185 |
+
),
|
186 |
+
array(
|
187 |
+
'title' => __( 'Theme', 'woocommerce-jetpack' ),
|
188 |
+
'desc_tip' => __( "Theme that will have its sorting replaced.", 'woocommerce-jetpack' ),
|
189 |
+
'type' => 'select',
|
190 |
+
'options' => array(
|
191 |
+
'avada' => __( 'Avada', 'woocommerce-jetpack' ),
|
192 |
+
),
|
193 |
+
'default'=>'avada',
|
194 |
+
'id' => 'wcj_sorting_restore_default_sorting_theme',
|
195 |
+
),
|
196 |
+
array(
|
197 |
+
'type' => 'sectionend',
|
198 |
+
'id' => 'wcj_sorting_restore_default_sorting_opt',
|
199 |
+
),
|
200 |
) );
|
201 |
return $settings;
|
includes/settings/wcj-settings-wholesale-price.php
CHANGED
@@ -2,14 +2,13 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Wholesale Price
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
12 |
-
$products = wcj_get_products();
|
13 |
$product_cats = wcj_get_terms( 'product_cat' );
|
14 |
$settings = array(
|
15 |
array(
|
@@ -79,22 +78,18 @@ $settings = array(
|
|
79 |
'fixed' => __( 'Fixed', 'woocommerce-jetpack' ),
|
80 |
),
|
81 |
),
|
82 |
-
array(
|
83 |
'title' => __( 'Products to Include', 'woocommerce-jetpack' ),
|
84 |
'desc' => __( 'Leave blank to include all products.', 'woocommerce-jetpack' ),
|
85 |
'id' => 'wcj_wholesale_price_products_to_include',
|
86 |
-
'default' => '',
|
87 |
-
|
88 |
-
'class' => 'chosen_select',
|
89 |
-
'options' => $products,
|
90 |
),
|
91 |
-
array(
|
92 |
'title' => __( 'Products to Exclude', 'woocommerce-jetpack' ),
|
93 |
'id' => 'wcj_wholesale_price_products_to_exclude',
|
94 |
-
'default' => '',
|
95 |
-
|
96 |
-
'class' => 'chosen_select',
|
97 |
-
'options' => $products,
|
98 |
),
|
99 |
array(
|
100 |
'title' => __( 'Product Categories to Include', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Wholesale Price
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
|
|
12 |
$product_cats = wcj_get_terms( 'product_cat' );
|
13 |
$settings = array(
|
14 |
array(
|
78 |
'fixed' => __( 'Fixed', 'woocommerce-jetpack' ),
|
79 |
),
|
80 |
),
|
81 |
+
wcj_get_ajax_settings( array(
|
82 |
'title' => __( 'Products to Include', 'woocommerce-jetpack' ),
|
83 |
'desc' => __( 'Leave blank to include all products.', 'woocommerce-jetpack' ),
|
84 |
'id' => 'wcj_wholesale_price_products_to_include',
|
85 |
+
'default' => '' ),
|
86 |
+
true
|
|
|
|
|
87 |
),
|
88 |
+
wcj_get_ajax_settings( array(
|
89 |
'title' => __( 'Products to Exclude', 'woocommerce-jetpack' ),
|
90 |
'id' => 'wcj_wholesale_price_products_to_exclude',
|
91 |
+
'default' => '' ),
|
92 |
+
true
|
|
|
|
|
93 |
),
|
94 |
array(
|
95 |
'title' => __( 'Product Categories to Include', 'woocommerce-jetpack' ),
|
includes/shortcodes/class-wcj-shortcodes-general.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - General
|
4 |
*
|
5 |
-
* @version 4.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -886,12 +886,18 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
886 |
/**
|
887 |
* wcj_country_select_drop_down_list.
|
888 |
*
|
889 |
-
* @version 4.
|
890 |
*/
|
891 |
function wcj_country_select_drop_down_list( $atts, $content ) {
|
892 |
$form_method = $atts['form_method'];
|
893 |
$select_class = $atts['class'];
|
894 |
$select_style = $atts['style'];
|
|
|
|
|
|
|
|
|
|
|
|
|
895 |
$countries = wcj_get_countries();
|
896 |
$shortcode_countries = ( empty( $atts['countries'] ) ? array() : array_map( 'trim', explode( ',', $atts['countries'] ) ) );
|
897 |
$selected_country = ( null !== ( $session_value = wcj_session_get( 'wcj-country' ) ) ? $session_value : '' );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - General
|
4 |
*
|
5 |
+
* @version 4.3.0
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
886 |
/**
|
887 |
* wcj_country_select_drop_down_list.
|
888 |
*
|
889 |
+
* @version 4.3.0
|
890 |
*/
|
891 |
function wcj_country_select_drop_down_list( $atts, $content ) {
|
892 |
$form_method = $atts['form_method'];
|
893 |
$select_class = $atts['class'];
|
894 |
$select_style = $atts['style'];
|
895 |
+
if ( ! isset( $atts['force_display'] ) || ! filter_var( $atts['force_display'], FILTER_VALIDATE_BOOLEAN ) ) {
|
896 |
+
if ( ! wcj_is_module_enabled( 'price_by_country' ) ) {
|
897 |
+
return;
|
898 |
+
}
|
899 |
+
}
|
900 |
+
|
901 |
$countries = wcj_get_countries();
|
902 |
$shortcode_countries = ( empty( $atts['countries'] ) ? array() : array_map( 'trim', explode( ',', $atts['countries'] ) ) );
|
903 |
$selected_country = ( null !== ( $session_value = wcj_session_get( 'wcj-country' ) ) ? $session_value : '' );
|
includes/templates/wcj-add-to-cart-variable.php
DELETED
@@ -1,69 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Variable product add to cart - radio inputs
|
4 |
-
*
|
5 |
-
* Original WC template version: 3.4.1
|
6 |
-
*
|
7 |
-
* @version 3.7.0
|
8 |
-
* @since 2.4.8
|
9 |
-
* @author Algoritmika Ltd.
|
10 |
-
*/
|
11 |
-
|
12 |
-
defined( 'ABSPATH' ) || exit;
|
13 |
-
|
14 |
-
global $product;
|
15 |
-
|
16 |
-
$attribute_keys = array_keys( $attributes );
|
17 |
-
|
18 |
-
do_action( 'woocommerce_before_add_to_cart_form' ); ?>
|
19 |
-
|
20 |
-
<form class="variations_form cart" action="<?php echo esc_url( apply_filters( 'woocommerce_add_to_cart_form_action', $product->get_permalink() ) ); ?>" method="post" enctype='multipart/form-data' data-product_id="<?php echo absint( wcj_get_product_id( $product ) ); ?>" data-product_variations="<?php echo htmlspecialchars( wp_json_encode( $available_variations ) ); // WPCS: XSS ok. ?>">
|
21 |
-
<?php do_action( 'woocommerce_before_variations_form' ); ?>
|
22 |
-
|
23 |
-
<?php if ( empty( $available_variations ) && false !== $available_variations ) : ?>
|
24 |
-
<p class="stock out-of-stock"><?php esc_html_e( 'This product is currently out of stock and unavailable.', 'woocommerce' ); ?></p>
|
25 |
-
<?php else : ?>
|
26 |
-
<table class="" cellspacing="0">
|
27 |
-
<tbody>
|
28 |
-
<?php foreach ( $available_variations as $variation ) : ?>
|
29 |
-
<tr>
|
30 |
-
<?php wcj_variation_radio_button( $product, $variation ); ?>
|
31 |
-
</tr>
|
32 |
-
<?php endforeach; ?>
|
33 |
-
</tbody>
|
34 |
-
</table>
|
35 |
-
<?php
|
36 |
-
foreach ( $product->get_attributes() as $attribute_name => $options ) {
|
37 |
-
echo '<input type="hidden" name="attribute_' . $attribute_name . '" value="">';
|
38 |
-
}
|
39 |
-
?>
|
40 |
-
|
41 |
-
<div class="single_variation_wrap">
|
42 |
-
<?php
|
43 |
-
/**
|
44 |
-
* Hook: woocommerce_before_single_variation.
|
45 |
-
*/
|
46 |
-
do_action( 'woocommerce_before_single_variation' );
|
47 |
-
|
48 |
-
/**
|
49 |
-
* Hook: woocommerce_single_variation. Used to output the cart button and placeholder for variation data.
|
50 |
-
*
|
51 |
-
* @since 2.4.0
|
52 |
-
* @hooked woocommerce_single_variation - 10 Empty div for variation data.
|
53 |
-
* @hooked woocommerce_single_variation_add_to_cart_button - 20 Qty and cart button.
|
54 |
-
*/
|
55 |
-
do_action( 'woocommerce_single_variation' );
|
56 |
-
|
57 |
-
/**
|
58 |
-
* Hook: woocommerce_after_single_variation.
|
59 |
-
*/
|
60 |
-
do_action( 'woocommerce_after_single_variation' );
|
61 |
-
?>
|
62 |
-
</div>
|
63 |
-
<?php endif; ?>
|
64 |
-
|
65 |
-
<?php do_action( 'woocommerce_after_variations_form' ); ?>
|
66 |
-
</form>
|
67 |
-
|
68 |
-
<?php
|
69 |
-
do_action( 'woocommerce_after_add_to_cart_form' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/templates/wcj-radio-for-variations.php
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Variable product add to cart - radio inputs
|
4 |
+
*
|
5 |
+
* @version 4.3.0
|
6 |
+
* @since 2.4.8
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
global $product;
|
11 |
+
$attribute_keys = array_keys( $attributes );
|
12 |
+
|
13 |
+
?>
|
14 |
+
|
15 |
+
<?php if ( empty( $available_variations ) && false !== $available_variations ) : ?>
|
16 |
+
<p class="stock out-of-stock"><?php esc_html_e( 'This product is currently out of stock and unavailable.', 'woocommerce' ); ?></p>
|
17 |
+
<?php else : ?>
|
18 |
+
<table class="" cellspacing="0">
|
19 |
+
<tbody>
|
20 |
+
<tr>
|
21 |
+
<th colspan="2">
|
22 |
+
<?php $attribute_labels = array_map( 'wc_attribute_label', array_keys( $attributes ) ); ?>
|
23 |
+
<?php echo implode( ' X ', $attribute_labels ); ?>
|
24 |
+
<?php echo wp_kses_post( apply_filters( 'woocommerce_reset_variations_link', '<a style="float:right" class="reset_variations" href="#">' . esc_html__( 'Clear', 'woocommerce' ) . '</a>' ) ); ?>
|
25 |
+
</th>
|
26 |
+
</tr>
|
27 |
+
<?php foreach ( $available_variations as $variation ) : ?>
|
28 |
+
<tr>
|
29 |
+
<?php wcj_variation_radio_button( $product, $variation ); ?>
|
30 |
+
</tr>
|
31 |
+
<?php endforeach; ?>
|
32 |
+
</tbody>
|
33 |
+
</table>
|
34 |
+
<?php
|
35 |
+
foreach ( $product->get_attributes() as $attribute_name => $options ) {
|
36 |
+
echo '<input type="hidden" name="attribute_' . $attribute_name . '" value="">';
|
37 |
+
}
|
38 |
+
?>
|
39 |
+
<?php endif; ?>
|
langs/woocommerce-jetpack.pot
CHANGED
@@ -77,11 +77,11 @@ msgstr ""
|
|
77 |
|
78 |
#: includes/class-wcj-admin-bar.php:172
|
79 |
#: includes/admin/class-wc-settings-jetpack.php:416
|
80 |
-
#: includes/classes/class-wcj-module.php:
|
81 |
msgid "Documentation"
|
82 |
msgstr ""
|
83 |
|
84 |
-
#: includes/class-wcj-admin-bar.php:214 includes/class-wcj-my-account.php:
|
85 |
#: includes/admin/class-wc-settings-jetpack.php:146
|
86 |
#: includes/admin/wcj-modules-cats.php:14
|
87 |
msgid "Dashboard"
|
@@ -96,7 +96,7 @@ msgstr ""
|
|
96 |
|
97 |
#: includes/class-wcj-admin-bar.php:245 includes/class-wcj-admin-bar.php:288
|
98 |
#: includes/class-wcj-admin-bar.php:632
|
99 |
-
#: includes/classes/class-wcj-module.php:
|
100 |
#: includes/settings/wcj-settings-wpml.php:74
|
101 |
msgid "Tools"
|
102 |
msgstr ""
|
@@ -119,8 +119,8 @@ msgstr ""
|
|
119 |
#: includes/class-wcj-track-users.php:251
|
120 |
#: includes/admin/class-wc-settings-jetpack.php:24
|
121 |
#: includes/admin/class-wc-settings-jetpack.php:221
|
122 |
-
#: includes/classes/class-wcj-module.php:
|
123 |
-
#: includes/classes/class-wcj-module.php:
|
124 |
#: includes/settings/wcj-settings-price-by-country.php:169
|
125 |
msgid "Booster"
|
126 |
msgstr ""
|
@@ -182,8 +182,8 @@ msgid "WooCommerce settings"
|
|
182 |
msgstr ""
|
183 |
|
184 |
#: includes/class-wcj-admin-bar.php:391 includes/class-wcj-admin-bar.php:395
|
185 |
-
#: includes/class-wcj-admin-bar.php:413 includes/class-wcj-my-account.php:
|
186 |
-
#: includes/class-wcj-my-account.php:
|
187 |
#: includes/reports/wcj-class-reports-sales-gateways.php:153
|
188 |
#: includes/settings/wcj-settings-reports.php:21
|
189 |
#: includes/settings/wcj-settings-reports.php:59
|
@@ -1724,54 +1724,54 @@ msgstr ""
|
|
1724 |
msgid "<strong>PHP code:</strong> by using %s function, e.g.: %s"
|
1725 |
msgstr ""
|
1726 |
|
1727 |
-
#: includes/class-wcj-my-account.php:
|
1728 |
msgid "My Account"
|
1729 |
msgstr ""
|
1730 |
|
1731 |
-
#: includes/class-wcj-my-account.php:
|
1732 |
msgid "WooCommerce \"My Account\" page customization."
|
1733 |
msgstr ""
|
1734 |
|
1735 |
-
#: includes/class-wcj-my-account.php:
|
1736 |
msgid "Downloads"
|
1737 |
msgstr ""
|
1738 |
|
1739 |
-
#: includes/class-wcj-my-account.php:
|
1740 |
msgid "Addresses"
|
1741 |
msgstr ""
|
1742 |
|
1743 |
-
#: includes/class-wcj-my-account.php:
|
1744 |
#: includes/settings/wcj-settings-orders.php:112
|
1745 |
msgid "Payment methods"
|
1746 |
msgstr ""
|
1747 |
|
1748 |
-
#: includes/class-wcj-my-account.php:
|
1749 |
msgid "Account details"
|
1750 |
msgstr ""
|
1751 |
|
1752 |
-
#: includes/class-wcj-my-account.php:
|
1753 |
msgid "Logout"
|
1754 |
msgstr ""
|
1755 |
|
1756 |
-
#: includes/class-wcj-my-account.php:
|
1757 |
-
#: includes/settings/wcj-settings-my-account.php:
|
1758 |
msgid "View order"
|
1759 |
msgstr ""
|
1760 |
|
1761 |
-
#: includes/class-wcj-my-account.php:
|
1762 |
msgid "Edit account"
|
1763 |
msgstr ""
|
1764 |
|
1765 |
-
#: includes/class-wcj-my-account.php:
|
1766 |
msgid "Lost password"
|
1767 |
msgstr ""
|
1768 |
|
1769 |
-
#: includes/class-wcj-my-account.php:
|
1770 |
#, php-format
|
1771 |
msgid "Hello %1$s (not %1$s? <a href=\"%2$s\">Log out</a>)"
|
1772 |
msgstr ""
|
1773 |
|
1774 |
-
#: includes/class-wcj-my-account.php:
|
1775 |
#, php-format
|
1776 |
msgid ""
|
1777 |
"From your account dashboard you can view your <a href=\"%1$s\">recent "
|
@@ -1779,16 +1779,16 @@ msgid ""
|
|
1779 |
"and <a href=\"%3$s\">edit your password and account details</a>."
|
1780 |
msgstr ""
|
1781 |
|
1782 |
-
#: includes/class-wcj-my-account.php:
|
1783 |
msgid "User role"
|
1784 |
msgstr ""
|
1785 |
|
1786 |
-
#: includes/class-wcj-my-account.php:
|
1787 |
#: includes/class-wcj-product-bulk-meta-editor.php:279
|
1788 |
#: includes/class-wcj-product-by-user.php:206
|
1789 |
#: includes/class-wcj-purchase-data.php:94
|
1790 |
#: includes/class-wcj-track-users.php:334
|
1791 |
-
#: includes/classes/class-wcj-module.php:
|
1792 |
#: includes/functions/wcj-functions-general.php:189
|
1793 |
#: includes/functions/wcj-functions-html.php:117
|
1794 |
#: includes/reports/wcj-class-reports-monthly-sales.php:351
|
@@ -1918,36 +1918,36 @@ msgstr ""
|
|
1918 |
msgid "Make an offer"
|
1919 |
msgstr ""
|
1920 |
|
1921 |
-
#: includes/class-wcj-offer-price.php:
|
1922 |
#: includes/settings/wcj-settings-offer-price.php:332
|
1923 |
#, php-format
|
1924 |
msgid "Product: %s"
|
1925 |
msgstr ""
|
1926 |
|
1927 |
-
#: includes/class-wcj-offer-price.php:
|
1928 |
#: includes/settings/wcj-settings-offer-price.php:333
|
1929 |
#, php-format
|
1930 |
msgid "Offered price: %s"
|
1931 |
msgstr ""
|
1932 |
|
1933 |
-
#: includes/class-wcj-offer-price.php:
|
1934 |
#: includes/settings/wcj-settings-offer-price.php:334
|
1935 |
#, php-format
|
1936 |
msgid "From: %s %s"
|
1937 |
msgstr ""
|
1938 |
|
1939 |
-
#: includes/class-wcj-offer-price.php:
|
1940 |
#: includes/settings/wcj-settings-offer-price.php:335
|
1941 |
#, php-format
|
1942 |
msgid "Message: %s"
|
1943 |
msgstr ""
|
1944 |
|
1945 |
-
#: includes/class-wcj-offer-price.php:
|
1946 |
#: includes/settings/wcj-settings-offer-price.php:323
|
1947 |
msgid "Price Offer"
|
1948 |
msgstr ""
|
1949 |
|
1950 |
-
#: includes/class-wcj-offer-price.php:
|
1951 |
#: includes/settings/wcj-settings-offer-price.php:254
|
1952 |
msgid "Your price offer has been sent."
|
1953 |
msgstr ""
|
@@ -2331,26 +2331,26 @@ msgstr ""
|
|
2331 |
msgid "Invoices Monthly Reports."
|
2332 |
msgstr ""
|
2333 |
|
2334 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2335 |
msgid "Generate"
|
2336 |
msgstr ""
|
2337 |
|
2338 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2339 |
msgid "Download (Zip)"
|
2340 |
msgstr ""
|
2341 |
|
2342 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2343 |
msgid "Merge (Print)"
|
2344 |
msgstr ""
|
2345 |
|
2346 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2347 |
#, php-format
|
2348 |
msgid "Document generated."
|
2349 |
msgid_plural "%s documents generated."
|
2350 |
msgstr[0] ""
|
2351 |
msgstr[1] ""
|
2352 |
|
2353 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2354 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:172
|
2355 |
#, php-format
|
2356 |
msgid ""
|
@@ -2358,27 +2358,27 @@ msgid ""
|
|
2358 |
"hosting provider."
|
2359 |
msgstr ""
|
2360 |
|
2361 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2362 |
msgid "Booster: ZipArchive error."
|
2363 |
msgstr ""
|
2364 |
|
2365 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2366 |
msgid "Booster: Merge PDFs: No files."
|
2367 |
msgstr ""
|
2368 |
|
2369 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2370 |
#, php-format
|
2371 |
msgid ""
|
2372 |
"Booster: Merge PDFs: Command requires PHP version 5.3.0 at least. You have "
|
2373 |
"PHP version %s installed."
|
2374 |
msgstr ""
|
2375 |
|
2376 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2377 |
#, php-format
|
2378 |
msgid "Booster: %s."
|
2379 |
msgstr ""
|
2380 |
|
2381 |
-
#: includes/class-wcj-pdf-invoicing.php:
|
2382 |
msgid "You are not allowed to view the invoice."
|
2383 |
msgstr ""
|
2384 |
|
@@ -2518,8 +2518,8 @@ msgstr ""
|
|
2518 |
#: includes/settings/wcj-settings-emails-verification.php:36
|
2519 |
#: includes/settings/wcj-settings-general.php:21
|
2520 |
#: includes/settings/wcj-settings-general.php:48
|
2521 |
-
#: includes/settings/wcj-settings-general.php:
|
2522 |
-
#: includes/settings/wcj-settings-general.php:
|
2523 |
#: includes/settings/wcj-settings-global-discount.php:52
|
2524 |
#: includes/settings/wcj-settings-global-discount.php:181
|
2525 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:28
|
@@ -2589,7 +2589,7 @@ msgstr ""
|
|
2589 |
#: includes/settings/wcj-settings-product-addons.php:74
|
2590 |
#: includes/settings/wcj-settings-product-addons.php:179
|
2591 |
#: includes/settings/wcj-settings-product-addons.php:249
|
2592 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
2593 |
#: includes/settings/wcj-settings-product-bulk-meta-editor.php:21
|
2594 |
#: includes/settings/wcj-settings-product-bulk-meta-editor.php:29
|
2595 |
#: includes/settings/wcj-settings-product-by-condition.php:21
|
@@ -2607,9 +2607,9 @@ msgstr ""
|
|
2607 |
#: includes/settings/wcj-settings-product-info.php:68
|
2608 |
#: includes/settings/wcj-settings-product-input-fields.php:24
|
2609 |
#: includes/settings/wcj-settings-product-input-fields.php:54
|
2610 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
2611 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
2612 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
2613 |
#: includes/settings/wcj-settings-product-open-pricing.php:102
|
2614 |
#: includes/settings/wcj-settings-product-open-pricing.php:109
|
2615 |
#: includes/settings/wcj-settings-product-open-pricing.php:140
|
@@ -2631,6 +2631,7 @@ msgstr ""
|
|
2631 |
#: includes/settings/wcj-settings-related-products.php:149
|
2632 |
#: includes/settings/wcj-settings-shipping-by-condition.php:26
|
2633 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:21
|
|
|
2634 |
#: includes/settings/wcj-settings-shipping-calculator.php:20
|
2635 |
#: includes/settings/wcj-settings-shipping-calculator.php:27
|
2636 |
#: includes/settings/wcj-settings-shipping-calculator.php:34
|
@@ -2654,9 +2655,9 @@ msgstr ""
|
|
2654 |
#: includes/settings/wcj-settings-stock.php:154
|
2655 |
#: includes/settings/wcj-settings-track-users.php:47
|
2656 |
#: includes/settings/wcj-settings-upsells.php:81
|
2657 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
2658 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
2659 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
2660 |
#: includes/settings/wcj-settings-wpml.php:28
|
2661 |
#: includes/settings/wcj-settings-wpml.php:45
|
2662 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-add-to-cart.php:68
|
@@ -2789,13 +2790,13 @@ msgid ""
|
|
2789 |
"product's edit page."
|
2790 |
msgstr ""
|
2791 |
|
2792 |
-
#: includes/class-wcj-product-bookings.php:
|
2793 |
-
#: includes/class-wcj-product-bookings.php:
|
2794 |
#: includes/settings/wcj-settings-product-bookings.php:77
|
2795 |
msgid "\"Date to\" must be after \"Date from\""
|
2796 |
msgstr ""
|
2797 |
|
2798 |
-
#: includes/class-wcj-product-bookings.php:
|
2799 |
#: includes/class-wcj-product-open-pricing.php:253
|
2800 |
#: includes/settings/wcj-settings-add-to-cart.php:140
|
2801 |
#: includes/settings/wcj-settings-add-to-cart.php:167
|
@@ -2803,37 +2804,37 @@ msgstr ""
|
|
2803 |
msgid "Read more"
|
2804 |
msgstr ""
|
2805 |
|
2806 |
-
#: includes/class-wcj-product-bookings.php:
|
2807 |
#: includes/settings/wcj-settings-product-bookings.php:49
|
2808 |
msgid "Period"
|
2809 |
msgstr ""
|
2810 |
|
2811 |
-
#: includes/class-wcj-product-bookings.php:
|
2812 |
#: includes/settings/wcj-settings-product-bookings.php:63
|
2813 |
msgid "\"Date from\" must be set"
|
2814 |
msgstr ""
|
2815 |
|
2816 |
-
#: includes/class-wcj-product-bookings.php:
|
2817 |
#: includes/settings/wcj-settings-product-bookings.php:70
|
2818 |
msgid "\"Date to\" must be set"
|
2819 |
msgstr ""
|
2820 |
|
2821 |
-
#: includes/class-wcj-product-bookings.php:
|
2822 |
#: includes/settings/wcj-settings-product-bookings.php:35
|
2823 |
msgid "Date from"
|
2824 |
msgstr ""
|
2825 |
|
2826 |
-
#: includes/class-wcj-product-bookings.php:
|
2827 |
#: includes/settings/wcj-settings-product-bookings.php:42
|
2828 |
msgid "Date to"
|
2829 |
msgstr ""
|
2830 |
|
2831 |
-
#: includes/class-wcj-product-bookings.php:
|
2832 |
#: includes/settings/wcj-settings-product-bookings.php:56
|
2833 |
msgid "/ day"
|
2834 |
msgstr ""
|
2835 |
|
2836 |
-
#: includes/class-wcj-product-bookings.php:
|
2837 |
msgid ""
|
2838 |
"Booster: Free plugin's version is limited to only one bookings product "
|
2839 |
"enabled at a time. You will need to get <a href=\"https://booster.io/plus/\" "
|
@@ -2879,7 +2880,7 @@ msgstr ""
|
|
2879 |
|
2880 |
#: includes/class-wcj-product-bulk-meta-editor.php:232
|
2881 |
#: includes/settings/wcj-settings-product-msrp.php:31
|
2882 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
2883 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:19
|
2884 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:38
|
2885 |
msgid "Show"
|
@@ -3233,6 +3234,7 @@ msgstr ""
|
|
3233 |
#: includes/settings/wcj-settings-export.php:75
|
3234 |
#: includes/settings/wcj-settings-export.php:143
|
3235 |
#: includes/settings/wcj-settings-export.php:225
|
|
|
3236 |
#: includes/settings/wcj-settings-product-add-to-cart.php:300
|
3237 |
#: includes/settings/wcj-settings-product-addons.php:92
|
3238 |
#: includes/settings/wcj-settings-product-by-user.php:167
|
@@ -3266,7 +3268,7 @@ msgstr ""
|
|
3266 |
#: includes/admin/class-wc-settings-jetpack.php:480
|
3267 |
#: includes/admin/class-wc-settings-jetpack.php:492
|
3268 |
#: includes/admin/class-wc-settings-jetpack.php:501
|
3269 |
-
#: includes/functions/wcj-functions-general.php:
|
3270 |
msgid "Product Info"
|
3271 |
msgstr ""
|
3272 |
|
@@ -3333,7 +3335,7 @@ msgstr ""
|
|
3333 |
#: includes/settings/wcj-settings-track-users.php:14
|
3334 |
#: includes/settings/wcj-settings-upsells.php:14
|
3335 |
#: includes/settings/wcj-settings-url-coupons.php:14
|
3336 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
3337 |
msgid "Options"
|
3338 |
msgstr ""
|
3339 |
|
@@ -3362,33 +3364,33 @@ msgstr ""
|
|
3362 |
#: includes/class-wcj-product-info.php:123
|
3363 |
#: includes/settings/wcj-settings-offer-price.php:108
|
3364 |
#: includes/settings/wcj-settings-product-add-to-cart.php:326
|
3365 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3366 |
msgid "Before product"
|
3367 |
msgstr ""
|
3368 |
|
3369 |
#: includes/class-wcj-product-info.php:124
|
3370 |
#: includes/settings/wcj-settings-product-add-to-cart.php:327
|
3371 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3372 |
msgid "Before product title"
|
3373 |
msgstr ""
|
3374 |
|
3375 |
#: includes/class-wcj-product-info.php:125
|
3376 |
#: includes/settings/wcj-settings-offer-price.php:109
|
3377 |
#: includes/settings/wcj-settings-product-add-to-cart.php:328
|
3378 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3379 |
msgid "After product"
|
3380 |
msgstr ""
|
3381 |
|
3382 |
#: includes/class-wcj-product-info.php:126
|
3383 |
#: includes/settings/wcj-settings-product-add-to-cart.php:329
|
3384 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3385 |
msgid "After product title"
|
3386 |
msgstr ""
|
3387 |
|
3388 |
#: includes/class-wcj-product-info.php:138
|
3389 |
#: includes/settings/wcj-settings-offer-price.php:87
|
3390 |
#: includes/settings/wcj-settings-product-add-to-cart.php:292
|
3391 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3392 |
#: includes/settings/wcj-settings-upsells.php:60
|
3393 |
msgid "Inside single product summary"
|
3394 |
msgstr ""
|
@@ -3396,7 +3398,7 @@ msgstr ""
|
|
3396 |
#: includes/class-wcj-product-info.php:139
|
3397 |
#: includes/settings/wcj-settings-offer-price.php:86
|
3398 |
#: includes/settings/wcj-settings-product-add-to-cart.php:291
|
3399 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3400 |
#: includes/settings/wcj-settings-upsells.php:59
|
3401 |
msgid "Before single product summary"
|
3402 |
msgstr ""
|
@@ -3404,7 +3406,7 @@ msgstr ""
|
|
3404 |
#: includes/class-wcj-product-info.php:140
|
3405 |
#: includes/settings/wcj-settings-offer-price.php:90
|
3406 |
#: includes/settings/wcj-settings-product-add-to-cart.php:293
|
3407 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3408 |
#: includes/settings/wcj-settings-upsells.php:61
|
3409 |
msgid "After single product summary"
|
3410 |
msgstr ""
|
@@ -3417,10 +3419,10 @@ msgstr ""
|
|
3417 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:73
|
3418 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:107
|
3419 |
#: includes/settings/wcj-settings-mini-cart.php:46
|
3420 |
-
#: includes/settings/wcj-settings-my-account.php:
|
3421 |
#: includes/settings/wcj-settings-product-add-to-cart.php:286
|
3422 |
#: includes/settings/wcj-settings-product-add-to-cart.php:321
|
3423 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
3424 |
#: includes/settings/wcj-settings-product-info.php:50
|
3425 |
#: includes/settings/wcj-settings-product-info.php:83
|
3426 |
#: includes/settings/wcj-settings-product-msrp.php:37
|
@@ -3616,8 +3618,9 @@ msgstr ""
|
|
3616 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:65
|
3617 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:99
|
3618 |
#: includes/settings/wcj-settings-mini-cart.php:39
|
3619 |
-
#: includes/settings/wcj-settings-my-account.php:
|
3620 |
-
#: includes/settings/wcj-settings-
|
|
|
3621 |
#: includes/settings/wcj-settings-product-tabs.php:92
|
3622 |
#: includes/widgets/class-wcj-widget-left-to-free-shipping.php:59
|
3623 |
msgid "Content"
|
@@ -3968,6 +3971,16 @@ msgid ""
|
|
3968 |
"Set minimum and/or maximum order amount for shipping methods to show up."
|
3969 |
msgstr ""
|
3970 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3971 |
#: includes/class-wcj-shipping-by-products.php:26
|
3972 |
#: includes/settings/wcj-settings-shipping-options.php:57
|
3973 |
msgid "Shipping Methods by Products"
|
@@ -4048,6 +4061,7 @@ msgstr ""
|
|
4048 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:25
|
4049 |
#: includes/settings/wcj-settings-shipping-by-condition.php:28
|
4050 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:23
|
|
|
4051 |
#: includes/settings/wcj-settings-shipping-description.php:61
|
4052 |
#: includes/settings/wcj-settings-shipping-icons.php:63
|
4053 |
#: includes/settings/wcj-settings-shipping-time.php:33
|
@@ -4286,27 +4300,27 @@ msgid ""
|
|
4286 |
"rearrange sorting options on frontend."
|
4287 |
msgstr ""
|
4288 |
|
4289 |
-
#: includes/class-wcj-sorting.php:
|
4290 |
msgid "Default sorting"
|
4291 |
msgstr ""
|
4292 |
|
4293 |
-
#: includes/class-wcj-sorting.php:
|
4294 |
msgid "Sort by popularity"
|
4295 |
msgstr ""
|
4296 |
|
4297 |
-
#: includes/class-wcj-sorting.php:
|
4298 |
msgid "Sort by average rating"
|
4299 |
msgstr ""
|
4300 |
|
4301 |
-
#: includes/class-wcj-sorting.php:
|
4302 |
msgid "Sort by newness"
|
4303 |
msgstr ""
|
4304 |
|
4305 |
-
#: includes/class-wcj-sorting.php:
|
4306 |
msgid "Sort by price: low to high"
|
4307 |
msgstr ""
|
4308 |
|
4309 |
-
#: includes/class-wcj-sorting.php:
|
4310 |
msgid "Sort by price: high to low"
|
4311 |
msgstr ""
|
4312 |
|
@@ -4731,19 +4745,19 @@ msgid ""
|
|
4731 |
"Methods and more."
|
4732 |
msgstr ""
|
4733 |
|
4734 |
-
#: includes/admin/wcj-modules-cats.php:
|
4735 |
msgid "PDF Invoicing & Packing Slips"
|
4736 |
msgstr ""
|
4737 |
|
4738 |
-
#: includes/admin/wcj-modules-cats.php:
|
4739 |
msgid "PDF Documents"
|
4740 |
msgstr ""
|
4741 |
|
4742 |
-
#: includes/admin/wcj-modules-cats.php:
|
4743 |
msgid "Emails & Misc."
|
4744 |
msgstr ""
|
4745 |
|
4746 |
-
#: includes/admin/wcj-modules-cats.php:
|
4747 |
msgid "Emails, Reports, Export, Admin Tools, General Options and more."
|
4748 |
msgstr ""
|
4749 |
|
@@ -4770,30 +4784,30 @@ msgid ""
|
|
4770 |
"\"%1$s\" products."
|
4771 |
msgstr ""
|
4772 |
|
4773 |
-
#: includes/classes/class-wcj-module.php:
|
4774 |
#, php-format
|
4775 |
msgid "Selected: %s."
|
4776 |
msgstr ""
|
4777 |
|
4778 |
-
#: includes/classes/class-wcj-module.php:
|
4779 |
msgid "Back to Module Settings"
|
4780 |
msgstr ""
|
4781 |
|
4782 |
-
#: includes/classes/class-wcj-module.php:
|
4783 |
#: includes/settings/wcj-settings-wpml.php:79
|
4784 |
msgid "Module Tools"
|
4785 |
msgstr ""
|
4786 |
|
4787 |
-
#: includes/classes/class-wcj-module.php:
|
4788 |
#: includes/settings/wcj-settings-checkout-core-fields.php:64
|
4789 |
msgid "enabled"
|
4790 |
msgstr ""
|
4791 |
|
4792 |
-
#: includes/classes/class-wcj-module.php:
|
4793 |
msgid "disabled"
|
4794 |
msgstr ""
|
4795 |
|
4796 |
-
#: includes/classes/class-wcj-module.php:
|
4797 |
#: includes/settings/wcj-settings-product-tabs.php:172
|
4798 |
#: includes/settings/wcj-settings-product-tabs.php:184
|
4799 |
#: includes/settings/wcj-settings-product-tabs.php:196
|
@@ -4801,27 +4815,27 @@ msgstr ""
|
|
4801 |
msgid "Deprecated"
|
4802 |
msgstr ""
|
4803 |
|
4804 |
-
#: includes/classes/class-wcj-module.php:
|
4805 |
msgid "Reset Settings"
|
4806 |
msgstr ""
|
4807 |
|
4808 |
-
#: includes/classes/class-wcj-module.php:
|
4809 |
msgid "Reset Module to Default Settings"
|
4810 |
msgstr ""
|
4811 |
|
4812 |
-
#: includes/classes/class-wcj-module.php:
|
4813 |
msgid "Reset Submodule to Default Settings"
|
4814 |
msgstr ""
|
4815 |
|
4816 |
-
#: includes/classes/class-wcj-module.php:
|
4817 |
msgid "Reset settings"
|
4818 |
msgstr ""
|
4819 |
|
4820 |
-
#: includes/classes/class-wcj-module.php:
|
4821 |
msgid "Module Options"
|
4822 |
msgstr ""
|
4823 |
|
4824 |
-
#: includes/classes/class-wcj-module.php:
|
4825 |
msgid "Enable Module"
|
4826 |
msgstr ""
|
4827 |
|
@@ -4842,7 +4856,7 @@ msgstr ""
|
|
4842 |
msgid "\"%s\" module is not enabled!"
|
4843 |
msgstr ""
|
4844 |
|
4845 |
-
#: includes/classes/class-wcj-tcpdf.php:
|
4846 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:31
|
4847 |
msgid "Page %page_number% / %total_pages%"
|
4848 |
msgstr ""
|
@@ -5526,11 +5540,15 @@ msgid ""
|
|
5526 |
"version <strong>%s</strong>."
|
5527 |
msgstr ""
|
5528 |
|
5529 |
-
#: includes/functions/wcj-functions-admin.php:
|
|
|
|
|
|
|
|
|
5530 |
msgid "Enter comma separated list of IDs."
|
5531 |
msgstr ""
|
5532 |
|
5533 |
-
#: includes/functions/wcj-functions-admin.php:
|
5534 |
#: includes/settings/wcj-settings-emails-verification.php:67
|
5535 |
#: includes/settings/wcj-settings-emails-verification.php:75
|
5536 |
#: includes/settings/wcj-settings-emails-verification.php:122
|
@@ -5538,60 +5556,60 @@ msgstr ""
|
|
5538 |
msgid "Replaced value: %s"
|
5539 |
msgstr ""
|
5540 |
|
5541 |
-
#: includes/functions/wcj-functions-admin.php:
|
5542 |
#, php-format
|
5543 |
msgid "Replaced values: %s"
|
5544 |
msgstr ""
|
5545 |
|
5546 |
-
#: includes/functions/wcj-functions-admin.php:
|
5547 |
msgid "Install Booster Plus to unlock all features"
|
5548 |
msgstr ""
|
5549 |
|
5550 |
-
#: includes/functions/wcj-functions-admin.php:
|
5551 |
#, php-format
|
5552 |
msgid ""
|
5553 |
"Some settings fields are locked and you will need %s to modify all locked "
|
5554 |
"fields."
|
5555 |
msgstr ""
|
5556 |
|
5557 |
-
#: includes/functions/wcj-functions-admin.php:
|
5558 |
msgid "Buy now"
|
5559 |
msgstr ""
|
5560 |
|
5561 |
-
#: includes/functions/wcj-functions-admin.php:
|
5562 |
msgid "Visit Booster Site"
|
5563 |
msgstr ""
|
5564 |
|
5565 |
-
#: includes/functions/wcj-functions-admin.php:
|
5566 |
#, php-format
|
5567 |
msgid "Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change value."
|
5568 |
msgstr ""
|
5569 |
|
5570 |
-
#: includes/functions/wcj-functions-admin.php:
|
5571 |
#, php-format
|
5572 |
msgid ""
|
5573 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to enable \"%s\" "
|
5574 |
"option."
|
5575 |
msgstr ""
|
5576 |
|
5577 |
-
#: includes/functions/wcj-functions-admin.php:
|
5578 |
#, php-format
|
5579 |
msgid "Get Booster Plus to enable \"%s\" option."
|
5580 |
msgstr ""
|
5581 |
|
5582 |
-
#: includes/functions/wcj-functions-admin.php:
|
5583 |
#, php-format
|
5584 |
msgid ""
|
5585 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values below."
|
5586 |
msgstr ""
|
5587 |
|
5588 |
-
#: includes/functions/wcj-functions-admin.php:
|
5589 |
#, php-format
|
5590 |
msgid ""
|
5591 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values above."
|
5592 |
msgstr ""
|
5593 |
|
5594 |
-
#: includes/functions/wcj-functions-admin.php:
|
5595 |
msgid "Get Booster Plus to change value."
|
5596 |
msgstr ""
|
5597 |
|
@@ -6677,92 +6695,92 @@ msgstr ""
|
|
6677 |
msgid "CoinMarketCap"
|
6678 |
msgstr ""
|
6679 |
|
6680 |
-
#: includes/functions/wcj-functions-general.php:
|
6681 |
#: includes/settings/wcj-settings-cross-sells.php:73
|
6682 |
#: includes/settings/wcj-settings-empty-cart.php:47
|
6683 |
msgid "Before cart"
|
6684 |
msgstr ""
|
6685 |
|
6686 |
-
#: includes/functions/wcj-functions-general.php:
|
6687 |
msgid "Before cart table"
|
6688 |
msgstr ""
|
6689 |
|
6690 |
-
#: includes/functions/wcj-functions-general.php:
|
6691 |
msgid "Before cart contents"
|
6692 |
msgstr ""
|
6693 |
|
6694 |
-
#: includes/functions/wcj-functions-general.php:
|
6695 |
msgid "Cart contents"
|
6696 |
msgstr ""
|
6697 |
|
6698 |
-
#: includes/functions/wcj-functions-general.php:
|
6699 |
msgid "Cart coupon"
|
6700 |
msgstr ""
|
6701 |
|
6702 |
-
#: includes/functions/wcj-functions-general.php:
|
6703 |
msgid "Cart actions"
|
6704 |
msgstr ""
|
6705 |
|
6706 |
-
#: includes/functions/wcj-functions-general.php:
|
6707 |
msgid "After cart contents"
|
6708 |
msgstr ""
|
6709 |
|
6710 |
-
#: includes/functions/wcj-functions-general.php:
|
6711 |
msgid "After cart table"
|
6712 |
msgstr ""
|
6713 |
|
6714 |
-
#: includes/functions/wcj-functions-general.php:
|
6715 |
#: includes/settings/wcj-settings-cross-sells.php:74
|
6716 |
msgid "Cart collaterals"
|
6717 |
msgstr ""
|
6718 |
|
6719 |
-
#: includes/functions/wcj-functions-general.php:
|
6720 |
#: includes/settings/wcj-settings-cross-sells.php:75
|
6721 |
#: includes/settings/wcj-settings-empty-cart.php:56
|
6722 |
msgid "After cart"
|
6723 |
msgstr ""
|
6724 |
|
6725 |
-
#: includes/functions/wcj-functions-general.php:
|
6726 |
msgid "Before cart totals"
|
6727 |
msgstr ""
|
6728 |
|
6729 |
-
#: includes/functions/wcj-functions-general.php:
|
6730 |
#: includes/settings/wcj-settings-empty-cart.php:49
|
6731 |
msgid "Cart totals: Before shipping"
|
6732 |
msgstr ""
|
6733 |
|
6734 |
-
#: includes/functions/wcj-functions-general.php:
|
6735 |
#: includes/settings/wcj-settings-empty-cart.php:50
|
6736 |
msgid "Cart totals: After shipping"
|
6737 |
msgstr ""
|
6738 |
|
6739 |
-
#: includes/functions/wcj-functions-general.php:
|
6740 |
#: includes/settings/wcj-settings-empty-cart.php:51
|
6741 |
msgid "Cart totals: Before order total"
|
6742 |
msgstr ""
|
6743 |
|
6744 |
-
#: includes/functions/wcj-functions-general.php:
|
6745 |
#: includes/settings/wcj-settings-empty-cart.php:52
|
6746 |
msgid "Cart totals: After order total"
|
6747 |
msgstr ""
|
6748 |
|
6749 |
-
#: includes/functions/wcj-functions-general.php:
|
6750 |
msgid "Proceed to checkout"
|
6751 |
msgstr ""
|
6752 |
|
6753 |
-
#: includes/functions/wcj-functions-general.php:
|
6754 |
msgid "After cart totals"
|
6755 |
msgstr ""
|
6756 |
|
6757 |
-
#: includes/functions/wcj-functions-general.php:
|
6758 |
msgid "Before shipping calculator"
|
6759 |
msgstr ""
|
6760 |
|
6761 |
-
#: includes/functions/wcj-functions-general.php:
|
6762 |
msgid "After shipping calculator"
|
6763 |
msgstr ""
|
6764 |
|
6765 |
-
#: includes/functions/wcj-functions-general.php:
|
6766 |
msgid "If cart is empty"
|
6767 |
msgstr ""
|
6768 |
|
@@ -6880,7 +6898,7 @@ msgstr ""
|
|
6880 |
|
6881 |
#: includes/functions/wcj-functions-shipping.php:222
|
6882 |
#: includes/functions/wcj-functions-shipping.php:279
|
6883 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
6884 |
msgid "You have Free delivery"
|
6885 |
msgstr ""
|
6886 |
|
@@ -7030,7 +7048,7 @@ msgstr ""
|
|
7030 |
|
7031 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:223
|
7032 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:394
|
7033 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
7034 |
msgid "Product Input Field"
|
7035 |
msgstr ""
|
7036 |
|
@@ -7979,7 +7997,8 @@ msgstr ""
|
|
7979 |
#: includes/settings/wcj-settings-max-products-per-user.php:43
|
7980 |
#: includes/settings/wcj-settings-my-account.php:67
|
7981 |
#: includes/settings/wcj-settings-my-account.php:135
|
7982 |
-
#: includes/settings/wcj-settings-my-account.php:
|
|
|
7983 |
#: includes/settings/wcj-settings-order-quantities.php:85
|
7984 |
#: includes/settings/wcj-settings-order-quantities.php:143
|
7985 |
#: includes/settings/wcj-settings-order-quantities.php:201
|
@@ -8011,10 +8030,10 @@ msgstr ""
|
|
8011 |
#: includes/settings/wcj-settings-add-to-cart-button-visibility.php:30
|
8012 |
#: includes/settings/wcj-settings-add-to-cart-button-visibility.php:56
|
8013 |
#: includes/settings/wcj-settings-general.php:30
|
8014 |
-
#: includes/settings/wcj-settings-general.php:
|
8015 |
-
#: includes/settings/wcj-settings-general.php:81
|
8016 |
-
#: includes/settings/wcj-settings-general.php:89
|
8017 |
#: includes/settings/wcj-settings-general.php:97
|
|
|
|
|
8018 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:84
|
8019 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:109
|
8020 |
#: includes/settings/wcj-settings-price-by-user-role.php:56
|
@@ -8114,7 +8133,7 @@ msgstr ""
|
|
8114 |
#: includes/settings/wcj-settings-add-to-cart.php:21
|
8115 |
#: includes/settings/wcj-settings-add-to-cart.php:92
|
8116 |
#: includes/settings/wcj-settings-add-to-cart.php:110
|
8117 |
-
#: includes/settings/wcj-settings-general.php:
|
8118 |
#: includes/settings/wcj-settings-shipping-calculator.php:69
|
8119 |
#: includes/settings/wcj-settings-sorting.php:20
|
8120 |
#: includes/settings/wcj-settings-sorting.php:99
|
@@ -8228,7 +8247,7 @@ msgstr ""
|
|
8228 |
#: includes/settings/wcj-settings-add-to-cart.php:213
|
8229 |
#: includes/settings/wcj-settings-add-to-cart.php:222
|
8230 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:24
|
8231 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
8232 |
msgid "Leave blank to disable."
|
8233 |
msgstr ""
|
8234 |
|
@@ -8436,11 +8455,11 @@ msgstr ""
|
|
8436 |
#: includes/settings/wcj-settings-checkout-customization.php:68
|
8437 |
#: includes/settings/wcj-settings-cross-sells.php:87
|
8438 |
#: includes/settings/wcj-settings-currency.php:22
|
8439 |
-
#: includes/settings/wcj-settings-my-account.php:
|
8440 |
-
#: includes/settings/wcj-settings-my-account.php:
|
8441 |
#: includes/settings/wcj-settings-order-custom-statuses.php:63
|
8442 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:48
|
8443 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
8444 |
#: includes/settings/wcj-settings-product-images.php:20
|
8445 |
#: includes/settings/wcj-settings-product-images.php:27
|
8446 |
#: includes/settings/wcj-settings-product-images.php:34
|
@@ -8733,23 +8752,23 @@ msgstr ""
|
|
8733 |
#: includes/settings/wcj-settings-cart.php:24
|
8734 |
#: includes/settings/wcj-settings-checkout-custom-info.php:20
|
8735 |
#: includes/settings/wcj-settings-mini-cart.php:19
|
8736 |
-
#: includes/settings/wcj-settings-my-account.php:
|
8737 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
8738 |
msgid "Total Blocks"
|
8739 |
msgstr ""
|
8740 |
|
8741 |
#: includes/settings/wcj-settings-cart.php:39
|
8742 |
#: includes/settings/wcj-settings-checkout-custom-info.php:36
|
8743 |
#: includes/settings/wcj-settings-mini-cart.php:34
|
8744 |
-
#: includes/settings/wcj-settings-my-account.php:
|
8745 |
msgid "Info Block"
|
8746 |
msgstr ""
|
8747 |
|
8748 |
#: includes/settings/wcj-settings-cart.php:58
|
8749 |
#: includes/settings/wcj-settings-checkout-custom-info.php:85
|
8750 |
#: includes/settings/wcj-settings-mini-cart.php:57
|
8751 |
-
#: includes/settings/wcj-settings-my-account.php:
|
8752 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
8753 |
msgid "Position Order (i.e. Priority)"
|
8754 |
msgstr ""
|
8755 |
|
@@ -8783,6 +8802,7 @@ msgstr ""
|
|
8783 |
#: includes/settings/wcj-settings-product-tabs.php:15
|
8784 |
#: includes/settings/wcj-settings-shipping-by-condition.php:20
|
8785 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:15
|
|
|
8786 |
#: includes/settings/wcj-settings-shipping-time.php:25
|
8787 |
#: includes/settings/wcj-settings-wpml.php:22
|
8788 |
msgid "General Options"
|
@@ -9017,6 +9037,7 @@ msgstr ""
|
|
9017 |
|
9018 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:210
|
9019 |
#: includes/settings/wcj-settings-eu-vat-number.php:56
|
|
|
9020 |
#: includes/tools/class-wcj-order-statuses-tool.php:213
|
9021 |
msgid "Clear"
|
9022 |
msgstr ""
|
@@ -9212,14 +9233,14 @@ msgid "Order review"
|
|
9212 |
msgstr ""
|
9213 |
|
9214 |
#: includes/settings/wcj-settings-checkout-custom-info.php:61
|
9215 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
9216 |
msgid "After order review"
|
9217 |
msgstr ""
|
9218 |
|
9219 |
#: includes/settings/wcj-settings-checkout-custom-info.php:62
|
9220 |
#: includes/settings/wcj-settings-checkout-files-upload.php:57
|
9221 |
#: includes/settings/wcj-settings-empty-cart.php:69
|
9222 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
9223 |
msgid "After checkout form"
|
9224 |
msgstr ""
|
9225 |
|
@@ -9406,8 +9427,9 @@ msgid "Customize Message"
|
|
9406 |
msgstr ""
|
9407 |
|
9408 |
#: includes/settings/wcj-settings-checkout-customization.php:157
|
9409 |
-
#: includes/settings/wcj-settings-my-account.php:
|
9410 |
-
#: includes/settings/wcj-settings-my-account.php:
|
|
|
9411 |
#: includes/settings/wcj-settings-sale-flash.php:27
|
9412 |
#: includes/settings/wcj-settings-sale-flash.php:111
|
9413 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:30
|
@@ -9470,7 +9492,7 @@ msgstr ""
|
|
9470 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:37
|
9471 |
#: includes/settings/wcj-settings-price-by-user-role.php:32
|
9472 |
#: includes/settings/wcj-settings-purchase-data.php:77
|
9473 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
9474 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:19
|
9475 |
msgid "Fixed"
|
9476 |
msgstr ""
|
@@ -9479,7 +9501,7 @@ msgstr ""
|
|
9479 |
#: includes/settings/wcj-settings-global-discount.php:64
|
9480 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:38
|
9481 |
#: includes/settings/wcj-settings-purchase-data.php:78
|
9482 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
9483 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:18
|
9484 |
msgid "Percent"
|
9485 |
msgstr ""
|
@@ -9663,24 +9685,24 @@ msgid "Add notice"
|
|
9663 |
msgstr ""
|
9664 |
|
9665 |
#: includes/settings/wcj-settings-checkout-files-upload.php:250
|
9666 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9667 |
msgid "Emails Options"
|
9668 |
msgstr ""
|
9669 |
|
9670 |
#: includes/settings/wcj-settings-checkout-files-upload.php:255
|
9671 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9672 |
msgid "Attach Files to Admin's New Order Emails"
|
9673 |
msgstr ""
|
9674 |
|
9675 |
#: includes/settings/wcj-settings-checkout-files-upload.php:256
|
9676 |
#: includes/settings/wcj-settings-checkout-files-upload.php:263
|
9677 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9678 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9679 |
msgid "Attach"
|
9680 |
msgstr ""
|
9681 |
|
9682 |
#: includes/settings/wcj-settings-checkout-files-upload.php:262
|
9683 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9684 |
msgid "Attach Files to Customer's Processing Order Emails"
|
9685 |
msgstr ""
|
9686 |
|
@@ -9775,8 +9797,8 @@ msgstr ""
|
|
9775 |
#: includes/settings/wcj-settings-payment-gateways.php:49
|
9776 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:43
|
9777 |
#: includes/settings/wcj-settings-product-by-date.php:117
|
9778 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
9779 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9780 |
#: includes/settings/wcj-settings-shipping-by-condition.php:108
|
9781 |
msgid "Advanced Options"
|
9782 |
msgstr ""
|
@@ -9989,7 +10011,7 @@ msgid "No changes (default)"
|
|
9989 |
msgstr ""
|
9990 |
|
9991 |
#: includes/settings/wcj-settings-cross-sells.php:79
|
9992 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
9993 |
#: includes/settings/wcj-settings-upsells.php:66
|
9994 |
msgid "Position priority"
|
9995 |
msgstr ""
|
@@ -10953,108 +10975,138 @@ msgid "WC sessions"
|
|
10953 |
msgstr ""
|
10954 |
|
10955 |
#: includes/settings/wcj-settings-general.php:64
|
10956 |
-
msgid "
|
10957 |
msgstr ""
|
10958 |
|
10959 |
#: includes/settings/wcj-settings-general.php:65
|
10960 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10961 |
msgstr ""
|
10962 |
|
10963 |
#: includes/settings/wcj-settings-general.php:72
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10964 |
msgid "Datepicker/Weekpicker CSS Source"
|
10965 |
msgstr ""
|
10966 |
|
10967 |
-
#: includes/settings/wcj-settings-general.php:
|
10968 |
msgid "Datepicker/Weekpicker JavaScript Loading"
|
10969 |
msgstr ""
|
10970 |
|
10971 |
-
#: includes/settings/wcj-settings-general.php:
|
10972 |
msgid "Disables datepicker/weekpicker JavaScript loading."
|
10973 |
msgstr ""
|
10974 |
|
10975 |
-
#: includes/settings/wcj-settings-general.php:
|
10976 |
msgid "Timepicker CSS Loading"
|
10977 |
msgstr ""
|
10978 |
|
10979 |
-
#: includes/settings/wcj-settings-general.php:
|
10980 |
msgid "Disables timepicker CSS loading."
|
10981 |
msgstr ""
|
10982 |
|
10983 |
-
#: includes/settings/wcj-settings-general.php:
|
10984 |
msgid "Timepicker JavaScript Loading"
|
10985 |
msgstr ""
|
10986 |
|
10987 |
-
#: includes/settings/wcj-settings-general.php:
|
10988 |
msgid "Disables timepicker JavaScript loading."
|
10989 |
msgstr ""
|
10990 |
|
10991 |
-
#: includes/settings/wcj-settings-general.php:
|
10992 |
msgid "PayPal Email per Product Options"
|
10993 |
msgstr ""
|
10994 |
|
10995 |
-
#: includes/settings/wcj-settings-general.php:
|
10996 |
msgid "PayPal Email per Product"
|
10997 |
msgstr ""
|
10998 |
|
10999 |
-
#: includes/settings/wcj-settings-general.php:
|
11000 |
#: includes/settings/wcj-settings-max-products-per-user.php:44
|
11001 |
#: includes/settings/wcj-settings-product-by-date.php:54
|
11002 |
#: includes/settings/wcj-settings-product-by-time.php:54
|
11003 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
11004 |
msgid "This will add new meta box to each product's edit page."
|
11005 |
msgstr ""
|
11006 |
|
11007 |
-
#: includes/settings/wcj-settings-general.php:
|
11008 |
msgid "Session Expiration Options"
|
11009 |
msgstr ""
|
11010 |
|
11011 |
-
#: includes/settings/wcj-settings-general.php:
|
11012 |
-
#: includes/settings/wcj-settings-general.php:
|
11013 |
msgid "Session Expiration"
|
11014 |
msgstr ""
|
11015 |
|
11016 |
-
#: includes/settings/wcj-settings-general.php:
|
11017 |
msgid "Session Expiring"
|
11018 |
msgstr ""
|
11019 |
|
11020 |
-
#: includes/settings/wcj-settings-general.php:
|
11021 |
msgid "In seconds. Default: 47 hours (60 * 60 * 47)"
|
11022 |
msgstr ""
|
11023 |
|
11024 |
-
#: includes/settings/wcj-settings-general.php:
|
11025 |
msgid "In seconds. Default: 48 hours (60 * 60 * 48)"
|
11026 |
msgstr ""
|
11027 |
|
11028 |
-
#: includes/settings/wcj-settings-general.php:
|
11029 |
msgid "Booster User Roles Changer Options"
|
11030 |
msgstr ""
|
11031 |
|
11032 |
-
#: includes/settings/wcj-settings-general.php:
|
11033 |
msgid "This will add user roles changer tool to admin bar."
|
11034 |
msgstr ""
|
11035 |
|
11036 |
-
#: includes/settings/wcj-settings-general.php:
|
11037 |
msgid "Booster User Roles Changer"
|
11038 |
msgstr ""
|
11039 |
|
11040 |
-
#: includes/settings/wcj-settings-general.php:
|
11041 |
msgid "Enabled for"
|
11042 |
msgstr ""
|
11043 |
|
11044 |
-
#: includes/settings/wcj-settings-general.php:
|
11045 |
msgid "PHP Options"
|
11046 |
msgstr ""
|
11047 |
|
11048 |
-
#: includes/settings/wcj-settings-general.php:
|
11049 |
msgid "PHP Memory Limit"
|
11050 |
msgstr ""
|
11051 |
|
11052 |
-
#: includes/settings/wcj-settings-general.php:
|
11053 |
msgid "megabytes."
|
11054 |
msgstr ""
|
11055 |
|
11056 |
-
#: includes/settings/wcj-settings-general.php:
|
11057 |
-
#: includes/settings/wcj-settings-general.php:
|
11058 |
#: includes/settings/wcj-settings-offer-price.php:175
|
11059 |
#: includes/settings/wcj-settings-offer-price.php:183
|
11060 |
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:43
|
@@ -11062,11 +11114,11 @@ msgstr ""
|
|
11062 |
msgid "Set zero to disable."
|
11063 |
msgstr ""
|
11064 |
|
11065 |
-
#: includes/settings/wcj-settings-general.php:
|
11066 |
msgid "PHP Time Limit"
|
11067 |
msgstr ""
|
11068 |
|
11069 |
-
#: includes/settings/wcj-settings-general.php:
|
11070 |
msgid "seconds."
|
11071 |
msgstr ""
|
11072 |
|
@@ -11234,7 +11286,7 @@ msgstr ""
|
|
11234 |
#: includes/settings/wcj-settings-price-by-user-role.php:70
|
11235 |
#: includes/settings/wcj-settings-product-addons.php:242
|
11236 |
#: includes/settings/wcj-settings-product-price-by-formula.php:101
|
11237 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
11238 |
msgid ""
|
11239 |
"Priority for all module's price filters. Set to zero to use default priority."
|
11240 |
msgstr ""
|
@@ -11267,7 +11319,7 @@ msgstr ""
|
|
11267 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:35
|
11268 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:66
|
11269 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:100
|
11270 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
11271 |
msgid "You can use HTML and/or shortcodes (e.g. [wcj_wpml]) here."
|
11272 |
msgstr ""
|
11273 |
|
@@ -11285,7 +11337,7 @@ msgstr ""
|
|
11285 |
|
11286 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:50
|
11287 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:84
|
11288 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
11289 |
msgid "Position Order (Priority)"
|
11290 |
msgstr ""
|
11291 |
|
@@ -11313,18 +11365,26 @@ msgid "Info on Checkout"
|
|
11313 |
msgstr ""
|
11314 |
|
11315 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:119
|
11316 |
-
msgid "Order review:
|
11317 |
msgstr ""
|
11318 |
|
11319 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:120
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11320 |
msgid "Order review: Payment: After submit button"
|
11321 |
msgstr ""
|
11322 |
|
11323 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
11324 |
msgid "Message on Free Shipping Reached"
|
11325 |
msgstr ""
|
11326 |
|
11327 |
-
#: includes/settings/wcj-settings-left-to-free-shipping.php:
|
11328 |
msgid "Set empty to disable."
|
11329 |
msgstr ""
|
11330 |
|
@@ -11445,7 +11505,7 @@ msgstr ""
|
|
11445 |
#: includes/settings/wcj-settings-price-by-country.php:156
|
11446 |
#: includes/settings/wcj-settings-price-by-user-role.php:69
|
11447 |
#: includes/settings/wcj-settings-product-addons.php:241
|
11448 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
11449 |
msgid "Advanced: Price Filters Priority"
|
11450 |
msgstr ""
|
11451 |
|
@@ -11580,7 +11640,7 @@ msgid "Roles"
|
|
11580 |
msgstr ""
|
11581 |
|
11582 |
#: includes/settings/wcj-settings-multicurrency.php:186
|
11583 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
11584 |
msgid "Save settings after you change this option. Leave blank to disable."
|
11585 |
msgstr ""
|
11586 |
|
@@ -11665,21 +11725,34 @@ msgstr ""
|
|
11665 |
|
11666 |
#: includes/settings/wcj-settings-my-account.php:129
|
11667 |
#: includes/settings/wcj-settings-my-account.php:134
|
11668 |
-
msgid "
|
11669 |
msgstr ""
|
11670 |
|
11671 |
#: includes/settings/wcj-settings-my-account.php:141
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11672 |
msgid "Custom Dashboard Content"
|
11673 |
msgstr ""
|
11674 |
|
11675 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11676 |
msgid ""
|
11677 |
"This will add content at the beginning of dashboard. If you need to add "
|
11678 |
"custom content to the end of the dashboard, use <strong>Custom Info Blocks</"
|
11679 |
"strong> section and select <strong>Account dashboard</strong> position."
|
11680 |
msgstr ""
|
11681 |
|
11682 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11683 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:115
|
11684 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:127
|
11685 |
#: includes/settings/wcj-settings-stock.php:42
|
@@ -11687,160 +11760,160 @@ msgstr ""
|
|
11687 |
msgid "Ignored if empty."
|
11688 |
msgstr ""
|
11689 |
|
11690 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11691 |
msgid "Hide \"Hello ...\" Message"
|
11692 |
msgstr ""
|
11693 |
|
11694 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11695 |
msgid "Hide \"From your account dashboard ...\" Message"
|
11696 |
msgstr ""
|
11697 |
|
11698 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11699 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11700 |
msgid "Custom Info Blocks"
|
11701 |
msgstr ""
|
11702 |
|
11703 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11704 |
msgid "Account content"
|
11705 |
msgstr ""
|
11706 |
|
11707 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11708 |
msgid "Account dashboard"
|
11709 |
msgstr ""
|
11710 |
|
11711 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11712 |
msgid "Account navigation"
|
11713 |
msgstr ""
|
11714 |
|
11715 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11716 |
msgid "After account downloads"
|
11717 |
msgstr ""
|
11718 |
|
11719 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11720 |
msgid "After account navigation"
|
11721 |
msgstr ""
|
11722 |
|
11723 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11724 |
msgid "After account orders"
|
11725 |
msgstr ""
|
11726 |
|
11727 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11728 |
msgid "After account payment methods"
|
11729 |
msgstr ""
|
11730 |
|
11731 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11732 |
msgid "After available downloads"
|
11733 |
msgstr ""
|
11734 |
|
11735 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11736 |
msgid "After customer login form"
|
11737 |
msgstr ""
|
11738 |
|
11739 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11740 |
msgid "After edit account address form"
|
11741 |
msgstr ""
|
11742 |
|
11743 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11744 |
msgid "After edit account form"
|
11745 |
msgstr ""
|
11746 |
|
11747 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11748 |
msgid "After my account"
|
11749 |
msgstr ""
|
11750 |
|
11751 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11752 |
msgid "Available download end"
|
11753 |
msgstr ""
|
11754 |
|
11755 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11756 |
msgid "Available download start"
|
11757 |
msgstr ""
|
11758 |
|
11759 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11760 |
msgid "Available downloads"
|
11761 |
msgstr ""
|
11762 |
|
11763 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11764 |
msgid "Before account downloads"
|
11765 |
msgstr ""
|
11766 |
|
11767 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11768 |
msgid "Before account navigation"
|
11769 |
msgstr ""
|
11770 |
|
11771 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11772 |
msgid "Before account orders"
|
11773 |
msgstr ""
|
11774 |
|
11775 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11776 |
msgid "Before account orders pagination"
|
11777 |
msgstr ""
|
11778 |
|
11779 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11780 |
msgid "Before account payment methods"
|
11781 |
msgstr ""
|
11782 |
|
11783 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11784 |
msgid "Before Available downloads"
|
11785 |
msgstr ""
|
11786 |
|
11787 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11788 |
msgid "Before customer login form"
|
11789 |
msgstr ""
|
11790 |
|
11791 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11792 |
msgid "Before edit account address form"
|
11793 |
msgstr ""
|
11794 |
|
11795 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11796 |
msgid "Before edit account form"
|
11797 |
msgstr ""
|
11798 |
|
11799 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11800 |
msgid "Before my account"
|
11801 |
msgstr ""
|
11802 |
|
11803 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11804 |
msgid "Edit account form"
|
11805 |
msgstr ""
|
11806 |
|
11807 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11808 |
msgid "Edit account form end"
|
11809 |
msgstr ""
|
11810 |
|
11811 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11812 |
msgid "Edit account form start"
|
11813 |
msgstr ""
|
11814 |
|
11815 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11816 |
msgid "Login form"
|
11817 |
msgstr ""
|
11818 |
|
11819 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11820 |
msgid "Login form end"
|
11821 |
msgstr ""
|
11822 |
|
11823 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11824 |
msgid "Login form start"
|
11825 |
msgstr ""
|
11826 |
|
11827 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11828 |
msgid "Lost password form"
|
11829 |
msgstr ""
|
11830 |
|
11831 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11832 |
msgid "Register form"
|
11833 |
msgstr ""
|
11834 |
|
11835 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11836 |
msgid "Register form end"
|
11837 |
msgstr ""
|
11838 |
|
11839 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11840 |
msgid "Register form start"
|
11841 |
msgstr ""
|
11842 |
|
11843 |
-
#: includes/settings/wcj-settings-my-account.php:
|
11844 |
msgid "Reset password form"
|
11845 |
msgstr ""
|
11846 |
|
@@ -11900,23 +11973,23 @@ msgid "Position On Single Product Page"
|
|
11900 |
msgstr ""
|
11901 |
|
11902 |
#: includes/settings/wcj-settings-offer-price.php:85
|
11903 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
11904 |
#: includes/settings/wcj-settings-upsells.php:58
|
11905 |
msgid "Before single product"
|
11906 |
msgstr ""
|
11907 |
|
11908 |
#: includes/settings/wcj-settings-offer-price.php:88
|
11909 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
11910 |
msgid "Before add to cart form"
|
11911 |
msgstr ""
|
11912 |
|
11913 |
#: includes/settings/wcj-settings-offer-price.php:89
|
11914 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
11915 |
msgid "After add to cart form"
|
11916 |
msgstr ""
|
11917 |
|
11918 |
#: includes/settings/wcj-settings-offer-price.php:91
|
11919 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
11920 |
#: includes/settings/wcj-settings-upsells.php:62
|
11921 |
msgid "After single product"
|
11922 |
msgstr ""
|
@@ -12482,6 +12555,7 @@ msgstr ""
|
|
12482 |
#: includes/settings/wcj-settings-order-quantities.php:150
|
12483 |
#: includes/settings/wcj-settings-order-quantities.php:166
|
12484 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:35
|
|
|
12485 |
msgid "Set to zero to disable."
|
12486 |
msgstr ""
|
12487 |
|
@@ -12740,6 +12814,7 @@ msgstr ""
|
|
12740 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:22
|
12741 |
#: includes/settings/wcj-settings-shipping-by-condition.php:25
|
12742 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:20
|
|
|
12743 |
#: includes/settings/wcj-settings-shipping-description.php:58
|
12744 |
#: includes/settings/wcj-settings-shipping-icons.php:60
|
12745 |
#: includes/settings/wcj-settings-shipping-time.php:30
|
@@ -12749,6 +12824,7 @@ msgstr ""
|
|
12749 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:24
|
12750 |
#: includes/settings/wcj-settings-shipping-by-condition.php:27
|
12751 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:22
|
|
|
12752 |
#: includes/settings/wcj-settings-shipping-description.php:60
|
12753 |
#: includes/settings/wcj-settings-shipping-icons.php:62
|
12754 |
#: includes/settings/wcj-settings-shipping-time.php:32
|
@@ -12980,7 +13056,7 @@ msgstr ""
|
|
12980 |
|
12981 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:49
|
12982 |
#: includes/settings/wcj-settings-price-labels.php:125
|
12983 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12984 |
msgid "Product Categories - Include"
|
12985 |
msgstr ""
|
12986 |
|
@@ -12992,7 +13068,7 @@ msgstr ""
|
|
12992 |
|
12993 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:60
|
12994 |
#: includes/settings/wcj-settings-price-labels.php:134
|
12995 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12996 |
msgid "Product Categories - Exclude"
|
12997 |
msgstr ""
|
12998 |
|
@@ -13004,7 +13080,7 @@ msgstr ""
|
|
13004 |
|
13005 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:72
|
13006 |
#: includes/settings/wcj-settings-price-labels.php:107
|
13007 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
13008 |
msgid "Products - Include"
|
13009 |
msgstr ""
|
13010 |
|
@@ -13016,7 +13092,7 @@ msgstr ""
|
|
13016 |
|
13017 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:85
|
13018 |
#: includes/settings/wcj-settings-price-labels.php:116
|
13019 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
13020 |
msgid "Products - Exclude"
|
13021 |
msgstr ""
|
13022 |
|
@@ -13801,7 +13877,7 @@ msgid "Disable Price based on User Role for Bots"
|
|
13801 |
msgstr ""
|
13802 |
|
13803 |
#: includes/settings/wcj-settings-price-by-user-role.php:76
|
13804 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
13805 |
msgid "Advanced: Price Changes"
|
13806 |
msgstr ""
|
13807 |
|
@@ -13810,7 +13886,7 @@ msgid "Disable price based on user role for products with \"Price Changes\""
|
|
13810 |
msgstr ""
|
13811 |
|
13812 |
#: includes/settings/wcj-settings-price-by-user-role.php:78
|
13813 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
13814 |
msgid ""
|
13815 |
"Try enabling this checkbox, if you are having compatibility issues with "
|
13816 |
"other plugins."
|
@@ -14354,15 +14430,15 @@ msgid "Position on Frontend"
|
|
14354 |
msgstr ""
|
14355 |
|
14356 |
#: includes/settings/wcj-settings-product-addons.php:206
|
14357 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14358 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
14359 |
#: includes/settings/wcj-settings-product-open-pricing.php:17
|
14360 |
msgid "Before add to cart button"
|
14361 |
msgstr ""
|
14362 |
|
14363 |
#: includes/settings/wcj-settings-product-addons.php:207
|
14364 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14365 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
14366 |
#: includes/settings/wcj-settings-product-open-pricing.php:18
|
14367 |
msgid "After add to cart button"
|
14368 |
msgstr ""
|
@@ -14393,14 +14469,14 @@ msgid ""
|
|
14393 |
msgstr ""
|
14394 |
|
14395 |
#: includes/settings/wcj-settings-product-addons.php:248
|
14396 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14397 |
#: includes/settings/wcj-settings-product-open-pricing.php:139
|
14398 |
msgid "Advanced: Check for Outputted Data"
|
14399 |
msgstr ""
|
14400 |
|
14401 |
#: includes/settings/wcj-settings-product-addons.php:250
|
14402 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14403 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
14404 |
#: includes/settings/wcj-settings-product-open-pricing.php:141
|
14405 |
msgid ""
|
14406 |
"Ensures that data outputted only once. Enable this if you see data outputted "
|
@@ -14482,40 +14558,54 @@ msgid "Message: \"Date to\" is missing"
|
|
14482 |
msgstr ""
|
14483 |
|
14484 |
#: includes/settings/wcj-settings-product-bookings.php:91
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14485 |
msgid "Hide Quantity Selector for Bookings Products"
|
14486 |
msgstr ""
|
14487 |
|
14488 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14489 |
msgid "Datepicker Options"
|
14490 |
msgstr ""
|
14491 |
|
14492 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14493 |
msgid "This settings will be applied to all your bookings products."
|
14494 |
msgstr ""
|
14495 |
|
14496 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14497 |
msgid "Date from: Exclude Days"
|
14498 |
msgstr ""
|
14499 |
|
14500 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14501 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14502 |
msgid "Leave blank to include all days."
|
14503 |
msgstr ""
|
14504 |
|
14505 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14506 |
msgid "Date to: Exclude Days"
|
14507 |
msgstr ""
|
14508 |
|
14509 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14510 |
msgid "Date from: Exclude Months"
|
14511 |
msgstr ""
|
14512 |
|
14513 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14514 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14515 |
msgid "Leave blank to include all months."
|
14516 |
msgstr ""
|
14517 |
|
14518 |
-
#: includes/settings/wcj-settings-product-bookings.php:
|
14519 |
msgid "Date to: Exclude Months"
|
14520 |
msgstr ""
|
14521 |
|
@@ -14838,21 +14928,21 @@ msgstr ""
|
|
14838 |
msgid "Custom Taxonomy"
|
14839 |
msgstr ""
|
14840 |
|
14841 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14842 |
msgid "Single Product Pages"
|
14843 |
msgstr ""
|
14844 |
|
14845 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14846 |
#: includes/settings/wcj-settings-product-msrp.php:14
|
14847 |
msgid "Archives"
|
14848 |
msgstr ""
|
14849 |
|
14850 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14851 |
#, php-format
|
14852 |
msgid "Block #%s"
|
14853 |
msgstr ""
|
14854 |
|
14855 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14856 |
#: includes/settings/wcj-settings-product-images.php:49
|
14857 |
#: includes/settings/wcj-settings-product-images.php:58
|
14858 |
#: includes/settings/wcj-settings-product-images.php:67
|
@@ -14862,66 +14952,66 @@ msgstr ""
|
|
14862 |
msgid "You can use shortcodes here."
|
14863 |
msgstr ""
|
14864 |
|
14865 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14866 |
msgid "Product meta start"
|
14867 |
msgstr ""
|
14868 |
|
14869 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14870 |
msgid "Product meta end"
|
14871 |
msgstr ""
|
14872 |
|
14873 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14874 |
msgid "Inside product title"
|
14875 |
msgstr ""
|
14876 |
|
14877 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14878 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
14879 |
msgid "Product Categories to Include"
|
14880 |
msgstr ""
|
14881 |
|
14882 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14883 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14884 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14885 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14886 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14887 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14888 |
msgid "Leave blank to disable the option."
|
14889 |
msgstr ""
|
14890 |
|
14891 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14892 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
14893 |
msgid "Product Categories to Exclude"
|
14894 |
msgstr ""
|
14895 |
|
14896 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14897 |
msgid "Product Tags to Include"
|
14898 |
msgstr ""
|
14899 |
|
14900 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14901 |
msgid "Product Tags to Exclude"
|
14902 |
msgstr ""
|
14903 |
|
14904 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14905 |
#: includes/settings/wcj-settings-products-xml.php:147
|
14906 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
14907 |
msgid "Products to Include"
|
14908 |
msgstr ""
|
14909 |
|
14910 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14911 |
#: includes/settings/wcj-settings-products-xml.php:157
|
14912 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
14913 |
msgid "Products to Exclude"
|
14914 |
msgstr ""
|
14915 |
|
14916 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14917 |
msgid "Extra Filters"
|
14918 |
msgstr ""
|
14919 |
|
14920 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14921 |
msgid "You can add custom filters here (one per line, in filter|title format)."
|
14922 |
msgstr ""
|
14923 |
|
14924 |
-
#: includes/settings/wcj-settings-product-custom-info.php:
|
14925 |
#, php-format
|
14926 |
msgid "E.g.: %s."
|
14927 |
msgstr ""
|
@@ -14991,6 +15081,40 @@ msgstr ""
|
|
14991 |
msgid "Leave blank to use the default placeholder image."
|
14992 |
msgstr ""
|
14993 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14994 |
#: includes/settings/wcj-settings-product-info.php:14
|
14995 |
msgid "Products Info"
|
14996 |
msgstr ""
|
@@ -15090,142 +15214,142 @@ msgstr ""
|
|
15090 |
msgid "Product Input Fields Number"
|
15091 |
msgstr ""
|
15092 |
|
15093 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15094 |
msgid "Product categories to include."
|
15095 |
msgstr ""
|
15096 |
|
15097 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15098 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15099 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15100 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15101 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15102 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15103 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
15104 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
15105 |
msgid "Leave blank to include all products."
|
15106 |
msgstr ""
|
15107 |
|
15108 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15109 |
msgid "Product categories to exclude."
|
15110 |
msgstr ""
|
15111 |
|
15112 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15113 |
msgid "Product Tags - Include"
|
15114 |
msgstr ""
|
15115 |
|
15116 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15117 |
msgid "Product tags to include."
|
15118 |
msgstr ""
|
15119 |
|
15120 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15121 |
msgid "Product Tags - Exclude"
|
15122 |
msgstr ""
|
15123 |
|
15124 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15125 |
msgid "Product tags to exclude."
|
15126 |
msgstr ""
|
15127 |
|
15128 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15129 |
msgid "Products to include."
|
15130 |
msgstr ""
|
15131 |
|
15132 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15133 |
msgid "Products to exclude."
|
15134 |
msgstr ""
|
15135 |
|
15136 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15137 |
msgid "Frontend View Options"
|
15138 |
msgstr ""
|
15139 |
|
15140 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15141 |
msgid "Position on Single Product Page"
|
15142 |
msgstr ""
|
15143 |
|
15144 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15145 |
msgid "HTML Template - Start"
|
15146 |
msgstr ""
|
15147 |
|
15148 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15149 |
msgid "HTML Template - Each Field"
|
15150 |
msgstr ""
|
15151 |
|
15152 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15153 |
msgid "HTML Template - End"
|
15154 |
msgstr ""
|
15155 |
|
15156 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15157 |
msgid "HTML Template - Radio Field"
|
15158 |
msgstr ""
|
15159 |
|
15160 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15161 |
msgid "HTML to add after required field title"
|
15162 |
msgstr ""
|
15163 |
|
15164 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15165 |
msgid "Cart Display Options"
|
15166 |
msgstr ""
|
15167 |
|
15168 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15169 |
msgid ""
|
15170 |
"When \"Add to cart item data\" is selected, \"Cart HTML Template\" options "
|
15171 |
"below will be ignored."
|
15172 |
msgstr ""
|
15173 |
|
15174 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15175 |
msgid "Add to cart item name"
|
15176 |
msgstr ""
|
15177 |
|
15178 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15179 |
msgid "Add to cart item data"
|
15180 |
msgstr ""
|
15181 |
|
15182 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15183 |
msgid "Cart HTML Template - Start"
|
15184 |
msgstr ""
|
15185 |
|
15186 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15187 |
msgid "Cart HTML Template - Each Field"
|
15188 |
msgstr ""
|
15189 |
|
15190 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15191 |
msgid "Cart HTML Template - End"
|
15192 |
msgstr ""
|
15193 |
|
15194 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15195 |
msgid "Order Table Template - Each Field"
|
15196 |
msgstr ""
|
15197 |
|
15198 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15199 |
msgid "Affects Order received page, Emails and Admin Orders View"
|
15200 |
msgstr ""
|
15201 |
|
15202 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15203 |
msgid "Admin Order View Options"
|
15204 |
msgstr ""
|
15205 |
|
15206 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15207 |
msgid "Replace Field ID with Field Label"
|
15208 |
msgstr ""
|
15209 |
|
15210 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15211 |
#, php-format
|
15212 |
msgid "Please note: %s"
|
15213 |
msgstr ""
|
15214 |
|
15215 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15216 |
msgid ""
|
15217 |
"When checked - will disable input fields editing on admin order edit page."
|
15218 |
msgstr ""
|
15219 |
|
15220 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15221 |
msgid "Check for Outputted Data"
|
15222 |
msgstr ""
|
15223 |
|
15224 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15225 |
msgid "Strip Slashes"
|
15226 |
msgstr ""
|
15227 |
|
15228 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
15229 |
#, php-format
|
15230 |
msgid "Enable this if you have single quotes %s converted to %s."
|
15231 |
msgstr ""
|
@@ -16366,6 +16490,14 @@ msgstr ""
|
|
16366 |
msgid "Maximum order amount"
|
16367 |
msgstr ""
|
16368 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16369 |
#: includes/settings/wcj-settings-shipping-calculator.php:14
|
16370 |
msgid "Shipping Calculator Options"
|
16371 |
msgstr ""
|
@@ -16944,6 +17076,31 @@ msgstr ""
|
|
16944 |
msgid "Remove all sorting (including WooCommerce default) from shop's frontend"
|
16945 |
msgstr ""
|
16946 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16947 |
#: includes/settings/wcj-settings-stock.php:14
|
16948 |
msgid "Custom \"In Stock\" Options"
|
16949 |
msgstr ""
|
@@ -17356,106 +17513,106 @@ msgstr ""
|
|
17356 |
msgid "Automatically add coupon's products to the cart"
|
17357 |
msgstr ""
|
17358 |
|
17359 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17360 |
#, php-format
|
17361 |
msgid "If you want to display prices table on frontend, use %s shortcode."
|
17362 |
msgstr ""
|
17363 |
|
17364 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17365 |
msgid "Enable per Product"
|
17366 |
msgstr ""
|
17367 |
|
17368 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17369 |
msgid "Quantity Calculation"
|
17370 |
msgstr ""
|
17371 |
|
17372 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17373 |
msgid "Product quantity"
|
17374 |
msgstr ""
|
17375 |
|
17376 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17377 |
msgid "Total cart quantity (wholesale products only)"
|
17378 |
msgstr ""
|
17379 |
|
17380 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17381 |
msgid "Total cart quantity"
|
17382 |
msgstr ""
|
17383 |
|
17384 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17385 |
msgid "Exclusive Use Only"
|
17386 |
msgstr ""
|
17387 |
|
17388 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17389 |
msgid "Apply wholesale discount only if no other cart discounts were applied."
|
17390 |
msgstr ""
|
17391 |
|
17392 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17393 |
msgid "Round Single Product Price"
|
17394 |
msgstr ""
|
17395 |
|
17396 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17397 |
msgid ""
|
17398 |
"If enabled will round single product price with precision set in WooCommerce "
|
17399 |
"> Settings > General > Number of decimals."
|
17400 |
msgstr ""
|
17401 |
|
17402 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17403 |
msgid "Discount Info on Cart Page"
|
17404 |
msgstr ""
|
17405 |
|
17406 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17407 |
msgid "If show discount info on cart page is enabled, set format here."
|
17408 |
msgstr ""
|
17409 |
|
17410 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17411 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:41
|
17412 |
msgid "Discount Type"
|
17413 |
msgstr ""
|
17414 |
|
17415 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17416 |
msgid "Disable wholesale pricing for products with \"Price Changes\""
|
17417 |
msgstr ""
|
17418 |
|
17419 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17420 |
msgid "Wholesale Levels Options"
|
17421 |
msgstr ""
|
17422 |
|
17423 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17424 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17425 |
msgid "Number of Levels"
|
17426 |
msgstr ""
|
17427 |
|
17428 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17429 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17430 |
msgid "Min Quantity"
|
17431 |
msgstr ""
|
17432 |
|
17433 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17434 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17435 |
msgid "Minimum quantity to apply discount"
|
17436 |
msgstr ""
|
17437 |
|
17438 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17439 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17440 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17441 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17442 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:72
|
17443 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:108
|
17444 |
msgid "Discount"
|
17445 |
msgstr ""
|
17446 |
|
17447 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17448 |
msgid "Additional User Roles Options"
|
17449 |
msgstr ""
|
17450 |
|
17451 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17452 |
msgid ""
|
17453 |
"If you want to set different wholesale pricing options for different user "
|
17454 |
"roles, fill this section. Please note that you can also use Booster's "
|
17455 |
"\"Price based on User Role\" module without filling this section."
|
17456 |
msgstr ""
|
17457 |
|
17458 |
-
#: includes/settings/wcj-settings-wholesale-price.php:
|
17459 |
msgid "User Roles Settings"
|
17460 |
msgstr ""
|
17461 |
|
@@ -17930,7 +18087,7 @@ msgstr ""
|
|
17930 |
msgid "In stock"
|
17931 |
msgstr ""
|
17932 |
|
17933 |
-
#: includes/templates/wcj-
|
17934 |
msgid "This product is currently out of stock and unavailable."
|
17935 |
msgstr ""
|
17936 |
|
77 |
|
78 |
#: includes/class-wcj-admin-bar.php:172
|
79 |
#: includes/admin/class-wc-settings-jetpack.php:416
|
80 |
+
#: includes/classes/class-wcj-module.php:694
|
81 |
msgid "Documentation"
|
82 |
msgstr ""
|
83 |
|
84 |
+
#: includes/class-wcj-admin-bar.php:214 includes/class-wcj-my-account.php:33
|
85 |
#: includes/admin/class-wc-settings-jetpack.php:146
|
86 |
#: includes/admin/wcj-modules-cats.php:14
|
87 |
msgid "Dashboard"
|
96 |
|
97 |
#: includes/class-wcj-admin-bar.php:245 includes/class-wcj-admin-bar.php:288
|
98 |
#: includes/class-wcj-admin-bar.php:632
|
99 |
+
#: includes/classes/class-wcj-module.php:527
|
100 |
#: includes/settings/wcj-settings-wpml.php:74
|
101 |
msgid "Tools"
|
102 |
msgstr ""
|
119 |
#: includes/class-wcj-track-users.php:251
|
120 |
#: includes/admin/class-wc-settings-jetpack.php:24
|
121 |
#: includes/admin/class-wc-settings-jetpack.php:221
|
122 |
+
#: includes/classes/class-wcj-module.php:354
|
123 |
+
#: includes/classes/class-wcj-module.php:554
|
124 |
#: includes/settings/wcj-settings-price-by-country.php:169
|
125 |
msgid "Booster"
|
126 |
msgstr ""
|
182 |
msgstr ""
|
183 |
|
184 |
#: includes/class-wcj-admin-bar.php:391 includes/class-wcj-admin-bar.php:395
|
185 |
+
#: includes/class-wcj-admin-bar.php:413 includes/class-wcj-my-account.php:34
|
186 |
+
#: includes/class-wcj-my-account.php:42 includes/class-wcj-orders.php:26
|
187 |
#: includes/reports/wcj-class-reports-sales-gateways.php:153
|
188 |
#: includes/settings/wcj-settings-reports.php:21
|
189 |
#: includes/settings/wcj-settings-reports.php:59
|
1724 |
msgid "<strong>PHP code:</strong> by using %s function, e.g.: %s"
|
1725 |
msgstr ""
|
1726 |
|
1727 |
+
#: includes/class-wcj-my-account.php:27
|
1728 |
msgid "My Account"
|
1729 |
msgstr ""
|
1730 |
|
1731 |
+
#: includes/class-wcj-my-account.php:28
|
1732 |
msgid "WooCommerce \"My Account\" page customization."
|
1733 |
msgstr ""
|
1734 |
|
1735 |
+
#: includes/class-wcj-my-account.php:35 includes/class-wcj-my-account.php:44
|
1736 |
msgid "Downloads"
|
1737 |
msgstr ""
|
1738 |
|
1739 |
+
#: includes/class-wcj-my-account.php:36 includes/class-wcj-my-account.php:46
|
1740 |
msgid "Addresses"
|
1741 |
msgstr ""
|
1742 |
|
1743 |
+
#: includes/class-wcj-my-account.php:37 includes/class-wcj-my-account.php:47
|
1744 |
#: includes/settings/wcj-settings-orders.php:112
|
1745 |
msgid "Payment methods"
|
1746 |
msgstr ""
|
1747 |
|
1748 |
+
#: includes/class-wcj-my-account.php:38 includes/class-wcj-my-account.php:45
|
1749 |
msgid "Account details"
|
1750 |
msgstr ""
|
1751 |
|
1752 |
+
#: includes/class-wcj-my-account.php:39 includes/class-wcj-my-account.php:49
|
1753 |
msgid "Logout"
|
1754 |
msgstr ""
|
1755 |
|
1756 |
+
#: includes/class-wcj-my-account.php:43
|
1757 |
+
#: includes/settings/wcj-settings-my-account.php:302
|
1758 |
msgid "View order"
|
1759 |
msgstr ""
|
1760 |
|
1761 |
+
#: includes/class-wcj-my-account.php:45
|
1762 |
msgid "Edit account"
|
1763 |
msgstr ""
|
1764 |
|
1765 |
+
#: includes/class-wcj-my-account.php:48
|
1766 |
msgid "Lost password"
|
1767 |
msgstr ""
|
1768 |
|
1769 |
+
#: includes/class-wcj-my-account.php:220
|
1770 |
#, php-format
|
1771 |
msgid "Hello %1$s (not %1$s? <a href=\"%2$s\">Log out</a>)"
|
1772 |
msgstr ""
|
1773 |
|
1774 |
+
#: includes/class-wcj-my-account.php:230
|
1775 |
#, php-format
|
1776 |
msgid ""
|
1777 |
"From your account dashboard you can view your <a href=\"%1$s\">recent "
|
1779 |
"and <a href=\"%3$s\">edit your password and account details</a>."
|
1780 |
msgstr ""
|
1781 |
|
1782 |
+
#: includes/class-wcj-my-account.php:336
|
1783 |
msgid "User role"
|
1784 |
msgstr ""
|
1785 |
|
1786 |
+
#: includes/class-wcj-my-account.php:416
|
1787 |
#: includes/class-wcj-product-bulk-meta-editor.php:279
|
1788 |
#: includes/class-wcj-product-by-user.php:206
|
1789 |
#: includes/class-wcj-purchase-data.php:94
|
1790 |
#: includes/class-wcj-track-users.php:334
|
1791 |
+
#: includes/classes/class-wcj-module.php:663
|
1792 |
#: includes/functions/wcj-functions-general.php:189
|
1793 |
#: includes/functions/wcj-functions-html.php:117
|
1794 |
#: includes/reports/wcj-class-reports-monthly-sales.php:351
|
1918 |
msgid "Make an offer"
|
1919 |
msgstr ""
|
1920 |
|
1921 |
+
#: includes/class-wcj-offer-price.php:460
|
1922 |
#: includes/settings/wcj-settings-offer-price.php:332
|
1923 |
#, php-format
|
1924 |
msgid "Product: %s"
|
1925 |
msgstr ""
|
1926 |
|
1927 |
+
#: includes/class-wcj-offer-price.php:461
|
1928 |
#: includes/settings/wcj-settings-offer-price.php:333
|
1929 |
#, php-format
|
1930 |
msgid "Offered price: %s"
|
1931 |
msgstr ""
|
1932 |
|
1933 |
+
#: includes/class-wcj-offer-price.php:462
|
1934 |
#: includes/settings/wcj-settings-offer-price.php:334
|
1935 |
#, php-format
|
1936 |
msgid "From: %s %s"
|
1937 |
msgstr ""
|
1938 |
|
1939 |
+
#: includes/class-wcj-offer-price.php:463
|
1940 |
#: includes/settings/wcj-settings-offer-price.php:335
|
1941 |
#, php-format
|
1942 |
msgid "Message: %s"
|
1943 |
msgstr ""
|
1944 |
|
1945 |
+
#: includes/class-wcj-offer-price.php:474
|
1946 |
#: includes/settings/wcj-settings-offer-price.php:323
|
1947 |
msgid "Price Offer"
|
1948 |
msgstr ""
|
1949 |
|
1950 |
+
#: includes/class-wcj-offer-price.php:484
|
1951 |
#: includes/settings/wcj-settings-offer-price.php:254
|
1952 |
msgid "Your price offer has been sent."
|
1953 |
msgstr ""
|
2331 |
msgid "Invoices Monthly Reports."
|
2332 |
msgstr ""
|
2333 |
|
2334 |
+
#: includes/class-wcj-pdf-invoicing.php:89
|
2335 |
msgid "Generate"
|
2336 |
msgstr ""
|
2337 |
|
2338 |
+
#: includes/class-wcj-pdf-invoicing.php:90
|
2339 |
msgid "Download (Zip)"
|
2340 |
msgstr ""
|
2341 |
|
2342 |
+
#: includes/class-wcj-pdf-invoicing.php:91
|
2343 |
msgid "Merge (Print)"
|
2344 |
msgstr ""
|
2345 |
|
2346 |
+
#: includes/class-wcj-pdf-invoicing.php:113
|
2347 |
#, php-format
|
2348 |
msgid "Document generated."
|
2349 |
msgid_plural "%s documents generated."
|
2350 |
msgstr[0] ""
|
2351 |
msgstr[1] ""
|
2352 |
|
2353 |
+
#: includes/class-wcj-pdf-invoicing.php:120
|
2354 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:172
|
2355 |
#, php-format
|
2356 |
msgid ""
|
2358 |
"hosting provider."
|
2359 |
msgstr ""
|
2360 |
|
2361 |
+
#: includes/class-wcj-pdf-invoicing.php:126
|
2362 |
msgid "Booster: ZipArchive error."
|
2363 |
msgstr ""
|
2364 |
|
2365 |
+
#: includes/class-wcj-pdf-invoicing.php:131
|
2366 |
msgid "Booster: Merge PDFs: No files."
|
2367 |
msgstr ""
|
2368 |
|
2369 |
+
#: includes/class-wcj-pdf-invoicing.php:136
|
2370 |
#, php-format
|
2371 |
msgid ""
|
2372 |
"Booster: Merge PDFs: Command requires PHP version 5.3.0 at least. You have "
|
2373 |
"PHP version %s installed."
|
2374 |
msgstr ""
|
2375 |
|
2376 |
+
#: includes/class-wcj-pdf-invoicing.php:141
|
2377 |
#, php-format
|
2378 |
msgid "Booster: %s."
|
2379 |
msgstr ""
|
2380 |
|
2381 |
+
#: includes/class-wcj-pdf-invoicing.php:434
|
2382 |
msgid "You are not allowed to view the invoice."
|
2383 |
msgstr ""
|
2384 |
|
2518 |
#: includes/settings/wcj-settings-emails-verification.php:36
|
2519 |
#: includes/settings/wcj-settings-general.php:21
|
2520 |
#: includes/settings/wcj-settings-general.php:48
|
2521 |
+
#: includes/settings/wcj-settings-general.php:129
|
2522 |
+
#: includes/settings/wcj-settings-general.php:180
|
2523 |
#: includes/settings/wcj-settings-global-discount.php:52
|
2524 |
#: includes/settings/wcj-settings-global-discount.php:181
|
2525 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:28
|
2589 |
#: includes/settings/wcj-settings-product-addons.php:74
|
2590 |
#: includes/settings/wcj-settings-product-addons.php:179
|
2591 |
#: includes/settings/wcj-settings-product-addons.php:249
|
2592 |
+
#: includes/settings/wcj-settings-product-bookings.php:107
|
2593 |
#: includes/settings/wcj-settings-product-bulk-meta-editor.php:21
|
2594 |
#: includes/settings/wcj-settings-product-bulk-meta-editor.php:29
|
2595 |
#: includes/settings/wcj-settings-product-by-condition.php:21
|
2607 |
#: includes/settings/wcj-settings-product-info.php:68
|
2608 |
#: includes/settings/wcj-settings-product-input-fields.php:24
|
2609 |
#: includes/settings/wcj-settings-product-input-fields.php:54
|
2610 |
+
#: includes/settings/wcj-settings-product-input-fields.php:318
|
2611 |
+
#: includes/settings/wcj-settings-product-input-fields.php:338
|
2612 |
+
#: includes/settings/wcj-settings-product-input-fields.php:346
|
2613 |
#: includes/settings/wcj-settings-product-open-pricing.php:102
|
2614 |
#: includes/settings/wcj-settings-product-open-pricing.php:109
|
2615 |
#: includes/settings/wcj-settings-product-open-pricing.php:140
|
2631 |
#: includes/settings/wcj-settings-related-products.php:149
|
2632 |
#: includes/settings/wcj-settings-shipping-by-condition.php:26
|
2633 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:21
|
2634 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:21
|
2635 |
#: includes/settings/wcj-settings-shipping-calculator.php:20
|
2636 |
#: includes/settings/wcj-settings-shipping-calculator.php:27
|
2637 |
#: includes/settings/wcj-settings-shipping-calculator.php:34
|
2655 |
#: includes/settings/wcj-settings-stock.php:154
|
2656 |
#: includes/settings/wcj-settings-track-users.php:47
|
2657 |
#: includes/settings/wcj-settings-upsells.php:81
|
2658 |
+
#: includes/settings/wcj-settings-wholesale-price.php:24
|
2659 |
+
#: includes/settings/wcj-settings-wholesale-price.php:42
|
2660 |
+
#: includes/settings/wcj-settings-wholesale-price.php:51
|
2661 |
#: includes/settings/wcj-settings-wpml.php:28
|
2662 |
#: includes/settings/wcj-settings-wpml.php:45
|
2663 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-add-to-cart.php:68
|
2790 |
"product's edit page."
|
2791 |
msgstr ""
|
2792 |
|
2793 |
+
#: includes/class-wcj-product-bookings.php:140
|
2794 |
+
#: includes/class-wcj-product-bookings.php:247
|
2795 |
#: includes/settings/wcj-settings-product-bookings.php:77
|
2796 |
msgid "\"Date to\" must be after \"Date from\""
|
2797 |
msgstr ""
|
2798 |
|
2799 |
+
#: includes/class-wcj-product-bookings.php:151
|
2800 |
#: includes/class-wcj-product-open-pricing.php:253
|
2801 |
#: includes/settings/wcj-settings-add-to-cart.php:140
|
2802 |
#: includes/settings/wcj-settings-add-to-cart.php:167
|
2804 |
msgid "Read more"
|
2805 |
msgstr ""
|
2806 |
|
2807 |
+
#: includes/class-wcj-product-bookings.php:205
|
2808 |
#: includes/settings/wcj-settings-product-bookings.php:49
|
2809 |
msgid "Period"
|
2810 |
msgstr ""
|
2811 |
|
2812 |
+
#: includes/class-wcj-product-bookings.php:237
|
2813 |
#: includes/settings/wcj-settings-product-bookings.php:63
|
2814 |
msgid "\"Date from\" must be set"
|
2815 |
msgstr ""
|
2816 |
|
2817 |
+
#: includes/class-wcj-product-bookings.php:241
|
2818 |
#: includes/settings/wcj-settings-product-bookings.php:70
|
2819 |
msgid "\"Date to\" must be set"
|
2820 |
msgstr ""
|
2821 |
|
2822 |
+
#: includes/class-wcj-product-bookings.php:369
|
2823 |
#: includes/settings/wcj-settings-product-bookings.php:35
|
2824 |
msgid "Date from"
|
2825 |
msgstr ""
|
2826 |
|
2827 |
+
#: includes/class-wcj-product-bookings.php:373
|
2828 |
#: includes/settings/wcj-settings-product-bookings.php:42
|
2829 |
msgid "Date to"
|
2830 |
msgstr ""
|
2831 |
|
2832 |
+
#: includes/class-wcj-product-bookings.php:396
|
2833 |
#: includes/settings/wcj-settings-product-bookings.php:56
|
2834 |
msgid "/ day"
|
2835 |
msgstr ""
|
2836 |
|
2837 |
+
#: includes/class-wcj-product-bookings.php:470
|
2838 |
msgid ""
|
2839 |
"Booster: Free plugin's version is limited to only one bookings product "
|
2840 |
"enabled at a time. You will need to get <a href=\"https://booster.io/plus/\" "
|
2880 |
|
2881 |
#: includes/class-wcj-product-bulk-meta-editor.php:232
|
2882 |
#: includes/settings/wcj-settings-product-msrp.php:31
|
2883 |
+
#: includes/settings/wcj-settings-wholesale-price.php:58
|
2884 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:19
|
2885 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:38
|
2886 |
msgid "Show"
|
3234 |
#: includes/settings/wcj-settings-export.php:75
|
3235 |
#: includes/settings/wcj-settings-export.php:143
|
3236 |
#: includes/settings/wcj-settings-export.php:225
|
3237 |
+
#: includes/settings/wcj-settings-my-account.php:161
|
3238 |
#: includes/settings/wcj-settings-product-add-to-cart.php:300
|
3239 |
#: includes/settings/wcj-settings-product-addons.php:92
|
3240 |
#: includes/settings/wcj-settings-product-by-user.php:167
|
3268 |
#: includes/admin/class-wc-settings-jetpack.php:480
|
3269 |
#: includes/admin/class-wc-settings-jetpack.php:492
|
3270 |
#: includes/admin/class-wc-settings-jetpack.php:501
|
3271 |
+
#: includes/functions/wcj-functions-general.php:449
|
3272 |
msgid "Product Info"
|
3273 |
msgstr ""
|
3274 |
|
3335 |
#: includes/settings/wcj-settings-track-users.php:14
|
3336 |
#: includes/settings/wcj-settings-upsells.php:14
|
3337 |
#: includes/settings/wcj-settings-url-coupons.php:14
|
3338 |
+
#: includes/settings/wcj-settings-wholesale-price.php:15
|
3339 |
msgid "Options"
|
3340 |
msgstr ""
|
3341 |
|
3364 |
#: includes/class-wcj-product-info.php:123
|
3365 |
#: includes/settings/wcj-settings-offer-price.php:108
|
3366 |
#: includes/settings/wcj-settings-product-add-to-cart.php:326
|
3367 |
+
#: includes/settings/wcj-settings-product-custom-info.php:115
|
3368 |
msgid "Before product"
|
3369 |
msgstr ""
|
3370 |
|
3371 |
#: includes/class-wcj-product-info.php:124
|
3372 |
#: includes/settings/wcj-settings-product-add-to-cart.php:327
|
3373 |
+
#: includes/settings/wcj-settings-product-custom-info.php:116
|
3374 |
msgid "Before product title"
|
3375 |
msgstr ""
|
3376 |
|
3377 |
#: includes/class-wcj-product-info.php:125
|
3378 |
#: includes/settings/wcj-settings-offer-price.php:109
|
3379 |
#: includes/settings/wcj-settings-product-add-to-cart.php:328
|
3380 |
+
#: includes/settings/wcj-settings-product-custom-info.php:119
|
3381 |
msgid "After product"
|
3382 |
msgstr ""
|
3383 |
|
3384 |
#: includes/class-wcj-product-info.php:126
|
3385 |
#: includes/settings/wcj-settings-product-add-to-cart.php:329
|
3386 |
+
#: includes/settings/wcj-settings-product-custom-info.php:118
|
3387 |
msgid "After product title"
|
3388 |
msgstr ""
|
3389 |
|
3390 |
#: includes/class-wcj-product-info.php:138
|
3391 |
#: includes/settings/wcj-settings-offer-price.php:87
|
3392 |
#: includes/settings/wcj-settings-product-add-to-cart.php:292
|
3393 |
+
#: includes/settings/wcj-settings-product-custom-info.php:104
|
3394 |
#: includes/settings/wcj-settings-upsells.php:60
|
3395 |
msgid "Inside single product summary"
|
3396 |
msgstr ""
|
3398 |
#: includes/class-wcj-product-info.php:139
|
3399 |
#: includes/settings/wcj-settings-offer-price.php:86
|
3400 |
#: includes/settings/wcj-settings-product-add-to-cart.php:291
|
3401 |
+
#: includes/settings/wcj-settings-product-custom-info.php:103
|
3402 |
#: includes/settings/wcj-settings-upsells.php:59
|
3403 |
msgid "Before single product summary"
|
3404 |
msgstr ""
|
3406 |
#: includes/class-wcj-product-info.php:140
|
3407 |
#: includes/settings/wcj-settings-offer-price.php:90
|
3408 |
#: includes/settings/wcj-settings-product-add-to-cart.php:293
|
3409 |
+
#: includes/settings/wcj-settings-product-custom-info.php:105
|
3410 |
#: includes/settings/wcj-settings-upsells.php:61
|
3411 |
msgid "After single product summary"
|
3412 |
msgstr ""
|
3419 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:73
|
3420 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:107
|
3421 |
#: includes/settings/wcj-settings-mini-cart.php:46
|
3422 |
+
#: includes/settings/wcj-settings-my-account.php:261
|
3423 |
#: includes/settings/wcj-settings-product-add-to-cart.php:286
|
3424 |
#: includes/settings/wcj-settings-product-add-to-cart.php:321
|
3425 |
+
#: includes/settings/wcj-settings-product-custom-info.php:96
|
3426 |
#: includes/settings/wcj-settings-product-info.php:50
|
3427 |
#: includes/settings/wcj-settings-product-info.php:83
|
3428 |
#: includes/settings/wcj-settings-product-msrp.php:37
|
3618 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:65
|
3619 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:99
|
3620 |
#: includes/settings/wcj-settings-mini-cart.php:39
|
3621 |
+
#: includes/settings/wcj-settings-my-account.php:166
|
3622 |
+
#: includes/settings/wcj-settings-my-account.php:253
|
3623 |
+
#: includes/settings/wcj-settings-product-custom-info.php:88
|
3624 |
#: includes/settings/wcj-settings-product-tabs.php:92
|
3625 |
#: includes/widgets/class-wcj-widget-left-to-free-shipping.php:59
|
3626 |
msgid "Content"
|
3971 |
"Set minimum and/or maximum order amount for shipping methods to show up."
|
3972 |
msgstr ""
|
3973 |
|
3974 |
+
#: includes/class-wcj-shipping-by-order-qty.php:26
|
3975 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:33
|
3976 |
+
msgid "Shipping Methods by Min/Max Order Quantity"
|
3977 |
+
msgstr ""
|
3978 |
+
|
3979 |
+
#: includes/class-wcj-shipping-by-order-qty.php:27
|
3980 |
+
msgid ""
|
3981 |
+
"Set minimum and/or maximum order quantity for shipping methods to show up."
|
3982 |
+
msgstr ""
|
3983 |
+
|
3984 |
#: includes/class-wcj-shipping-by-products.php:26
|
3985 |
#: includes/settings/wcj-settings-shipping-options.php:57
|
3986 |
msgid "Shipping Methods by Products"
|
4061 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:25
|
4062 |
#: includes/settings/wcj-settings-shipping-by-condition.php:28
|
4063 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:23
|
4064 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:23
|
4065 |
#: includes/settings/wcj-settings-shipping-description.php:61
|
4066 |
#: includes/settings/wcj-settings-shipping-icons.php:63
|
4067 |
#: includes/settings/wcj-settings-shipping-time.php:33
|
4300 |
"rearrange sorting options on frontend."
|
4301 |
msgstr ""
|
4302 |
|
4303 |
+
#: includes/class-wcj-sorting.php:214
|
4304 |
msgid "Default sorting"
|
4305 |
msgstr ""
|
4306 |
|
4307 |
+
#: includes/class-wcj-sorting.php:215
|
4308 |
msgid "Sort by popularity"
|
4309 |
msgstr ""
|
4310 |
|
4311 |
+
#: includes/class-wcj-sorting.php:216
|
4312 |
msgid "Sort by average rating"
|
4313 |
msgstr ""
|
4314 |
|
4315 |
+
#: includes/class-wcj-sorting.php:217
|
4316 |
msgid "Sort by newness"
|
4317 |
msgstr ""
|
4318 |
|
4319 |
+
#: includes/class-wcj-sorting.php:218
|
4320 |
msgid "Sort by price: low to high"
|
4321 |
msgstr ""
|
4322 |
|
4323 |
+
#: includes/class-wcj-sorting.php:219
|
4324 |
msgid "Sort by price: high to low"
|
4325 |
msgstr ""
|
4326 |
|
4745 |
"Methods and more."
|
4746 |
msgstr ""
|
4747 |
|
4748 |
+
#: includes/admin/wcj-modules-cats.php:162
|
4749 |
msgid "PDF Invoicing & Packing Slips"
|
4750 |
msgstr ""
|
4751 |
|
4752 |
+
#: includes/admin/wcj-modules-cats.php:163
|
4753 |
msgid "PDF Documents"
|
4754 |
msgstr ""
|
4755 |
|
4756 |
+
#: includes/admin/wcj-modules-cats.php:179
|
4757 |
msgid "Emails & Misc."
|
4758 |
msgstr ""
|
4759 |
|
4760 |
+
#: includes/admin/wcj-modules-cats.php:180
|
4761 |
msgid "Emails, Reports, Export, Admin Tools, General Options and more."
|
4762 |
msgstr ""
|
4763 |
|
4784 |
"\"%1$s\" products."
|
4785 |
msgstr ""
|
4786 |
|
4787 |
+
#: includes/classes/class-wcj-module.php:446
|
4788 |
#, php-format
|
4789 |
msgid "Selected: %s."
|
4790 |
msgstr ""
|
4791 |
|
4792 |
+
#: includes/classes/class-wcj-module.php:515
|
4793 |
msgid "Back to Module Settings"
|
4794 |
msgstr ""
|
4795 |
|
4796 |
+
#: includes/classes/class-wcj-module.php:533
|
4797 |
#: includes/settings/wcj-settings-wpml.php:79
|
4798 |
msgid "Module Tools"
|
4799 |
msgstr ""
|
4800 |
|
4801 |
+
#: includes/classes/class-wcj-module.php:606
|
4802 |
#: includes/settings/wcj-settings-checkout-core-fields.php:64
|
4803 |
msgid "enabled"
|
4804 |
msgstr ""
|
4805 |
|
4806 |
+
#: includes/classes/class-wcj-module.php:607
|
4807 |
msgid "disabled"
|
4808 |
msgstr ""
|
4809 |
|
4810 |
+
#: includes/classes/class-wcj-module.php:615
|
4811 |
#: includes/settings/wcj-settings-product-tabs.php:172
|
4812 |
#: includes/settings/wcj-settings-product-tabs.php:184
|
4813 |
#: includes/settings/wcj-settings-product-tabs.php:196
|
4815 |
msgid "Deprecated"
|
4816 |
msgstr ""
|
4817 |
|
4818 |
+
#: includes/classes/class-wcj-module.php:653
|
4819 |
msgid "Reset Settings"
|
4820 |
msgstr ""
|
4821 |
|
4822 |
+
#: includes/classes/class-wcj-module.php:659
|
4823 |
msgid "Reset Module to Default Settings"
|
4824 |
msgstr ""
|
4825 |
|
4826 |
+
#: includes/classes/class-wcj-module.php:660
|
4827 |
msgid "Reset Submodule to Default Settings"
|
4828 |
msgstr ""
|
4829 |
|
4830 |
+
#: includes/classes/class-wcj-module.php:664
|
4831 |
msgid "Reset settings"
|
4832 |
msgstr ""
|
4833 |
|
4834 |
+
#: includes/classes/class-wcj-module.php:698
|
4835 |
msgid "Module Options"
|
4836 |
msgstr ""
|
4837 |
|
4838 |
+
#: includes/classes/class-wcj-module.php:705
|
4839 |
msgid "Enable Module"
|
4840 |
msgstr ""
|
4841 |
|
4856 |
msgid "\"%s\" module is not enabled!"
|
4857 |
msgstr ""
|
4858 |
|
4859 |
+
#: includes/classes/class-wcj-tcpdf.php:40
|
4860 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:31
|
4861 |
msgid "Page %page_number% / %total_pages%"
|
4862 |
msgstr ""
|
5540 |
"version <strong>%s</strong>."
|
5541 |
msgstr ""
|
5542 |
|
5543 |
+
#: includes/functions/wcj-functions-admin.php:150
|
5544 |
+
msgid "Search…"
|
5545 |
+
msgstr ""
|
5546 |
+
|
5547 |
+
#: includes/functions/wcj-functions-admin.php:190
|
5548 |
msgid "Enter comma separated list of IDs."
|
5549 |
msgstr ""
|
5550 |
|
5551 |
+
#: includes/functions/wcj-functions-admin.php:264
|
5552 |
#: includes/settings/wcj-settings-emails-verification.php:67
|
5553 |
#: includes/settings/wcj-settings-emails-verification.php:75
|
5554 |
#: includes/settings/wcj-settings-emails-verification.php:122
|
5556 |
msgid "Replaced value: %s"
|
5557 |
msgstr ""
|
5558 |
|
5559 |
+
#: includes/functions/wcj-functions-admin.php:264
|
5560 |
#, php-format
|
5561 |
msgid "Replaced values: %s"
|
5562 |
msgstr ""
|
5563 |
|
5564 |
+
#: includes/functions/wcj-functions-admin.php:293
|
5565 |
msgid "Install Booster Plus to unlock all features"
|
5566 |
msgstr ""
|
5567 |
|
5568 |
+
#: includes/functions/wcj-functions-admin.php:294
|
5569 |
#, php-format
|
5570 |
msgid ""
|
5571 |
"Some settings fields are locked and you will need %s to modify all locked "
|
5572 |
"fields."
|
5573 |
msgstr ""
|
5574 |
|
5575 |
+
#: includes/functions/wcj-functions-admin.php:297
|
5576 |
msgid "Buy now"
|
5577 |
msgstr ""
|
5578 |
|
5579 |
+
#: includes/functions/wcj-functions-admin.php:298
|
5580 |
msgid "Visit Booster Site"
|
5581 |
msgstr ""
|
5582 |
|
5583 |
+
#: includes/functions/wcj-functions-admin.php:303
|
5584 |
#, php-format
|
5585 |
msgid "Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change value."
|
5586 |
msgstr ""
|
5587 |
|
5588 |
+
#: includes/functions/wcj-functions-admin.php:306
|
5589 |
#, php-format
|
5590 |
msgid ""
|
5591 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to enable \"%s\" "
|
5592 |
"option."
|
5593 |
msgstr ""
|
5594 |
|
5595 |
+
#: includes/functions/wcj-functions-admin.php:309
|
5596 |
#, php-format
|
5597 |
msgid "Get Booster Plus to enable \"%s\" option."
|
5598 |
msgstr ""
|
5599 |
|
5600 |
+
#: includes/functions/wcj-functions-admin.php:312
|
5601 |
#, php-format
|
5602 |
msgid ""
|
5603 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values below."
|
5604 |
msgstr ""
|
5605 |
|
5606 |
+
#: includes/functions/wcj-functions-admin.php:315
|
5607 |
#, php-format
|
5608 |
msgid ""
|
5609 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values above."
|
5610 |
msgstr ""
|
5611 |
|
5612 |
+
#: includes/functions/wcj-functions-admin.php:318
|
5613 |
msgid "Get Booster Plus to change value."
|
5614 |
msgstr ""
|
5615 |
|
6695 |
msgid "CoinMarketCap"
|
6696 |
msgstr ""
|
6697 |
|
6698 |
+
#: includes/functions/wcj-functions-general.php:652
|
6699 |
#: includes/settings/wcj-settings-cross-sells.php:73
|
6700 |
#: includes/settings/wcj-settings-empty-cart.php:47
|
6701 |
msgid "Before cart"
|
6702 |
msgstr ""
|
6703 |
|
6704 |
+
#: includes/functions/wcj-functions-general.php:653
|
6705 |
msgid "Before cart table"
|
6706 |
msgstr ""
|
6707 |
|
6708 |
+
#: includes/functions/wcj-functions-general.php:654
|
6709 |
msgid "Before cart contents"
|
6710 |
msgstr ""
|
6711 |
|
6712 |
+
#: includes/functions/wcj-functions-general.php:655
|
6713 |
msgid "Cart contents"
|
6714 |
msgstr ""
|
6715 |
|
6716 |
+
#: includes/functions/wcj-functions-general.php:656
|
6717 |
msgid "Cart coupon"
|
6718 |
msgstr ""
|
6719 |
|
6720 |
+
#: includes/functions/wcj-functions-general.php:657
|
6721 |
msgid "Cart actions"
|
6722 |
msgstr ""
|
6723 |
|
6724 |
+
#: includes/functions/wcj-functions-general.php:658
|
6725 |
msgid "After cart contents"
|
6726 |
msgstr ""
|
6727 |
|
6728 |
+
#: includes/functions/wcj-functions-general.php:659
|
6729 |
msgid "After cart table"
|
6730 |
msgstr ""
|
6731 |
|
6732 |
+
#: includes/functions/wcj-functions-general.php:660
|
6733 |
#: includes/settings/wcj-settings-cross-sells.php:74
|
6734 |
msgid "Cart collaterals"
|
6735 |
msgstr ""
|
6736 |
|
6737 |
+
#: includes/functions/wcj-functions-general.php:661
|
6738 |
#: includes/settings/wcj-settings-cross-sells.php:75
|
6739 |
#: includes/settings/wcj-settings-empty-cart.php:56
|
6740 |
msgid "After cart"
|
6741 |
msgstr ""
|
6742 |
|
6743 |
+
#: includes/functions/wcj-functions-general.php:663
|
6744 |
msgid "Before cart totals"
|
6745 |
msgstr ""
|
6746 |
|
6747 |
+
#: includes/functions/wcj-functions-general.php:664
|
6748 |
#: includes/settings/wcj-settings-empty-cart.php:49
|
6749 |
msgid "Cart totals: Before shipping"
|
6750 |
msgstr ""
|
6751 |
|
6752 |
+
#: includes/functions/wcj-functions-general.php:665
|
6753 |
#: includes/settings/wcj-settings-empty-cart.php:50
|
6754 |
msgid "Cart totals: After shipping"
|
6755 |
msgstr ""
|
6756 |
|
6757 |
+
#: includes/functions/wcj-functions-general.php:666
|
6758 |
#: includes/settings/wcj-settings-empty-cart.php:51
|
6759 |
msgid "Cart totals: Before order total"
|
6760 |
msgstr ""
|
6761 |
|
6762 |
+
#: includes/functions/wcj-functions-general.php:667
|
6763 |
#: includes/settings/wcj-settings-empty-cart.php:52
|
6764 |
msgid "Cart totals: After order total"
|
6765 |
msgstr ""
|
6766 |
|
6767 |
+
#: includes/functions/wcj-functions-general.php:668
|
6768 |
msgid "Proceed to checkout"
|
6769 |
msgstr ""
|
6770 |
|
6771 |
+
#: includes/functions/wcj-functions-general.php:669
|
6772 |
msgid "After cart totals"
|
6773 |
msgstr ""
|
6774 |
|
6775 |
+
#: includes/functions/wcj-functions-general.php:671
|
6776 |
msgid "Before shipping calculator"
|
6777 |
msgstr ""
|
6778 |
|
6779 |
+
#: includes/functions/wcj-functions-general.php:672
|
6780 |
msgid "After shipping calculator"
|
6781 |
msgstr ""
|
6782 |
|
6783 |
+
#: includes/functions/wcj-functions-general.php:674
|
6784 |
msgid "If cart is empty"
|
6785 |
msgstr ""
|
6786 |
|
6898 |
|
6899 |
#: includes/functions/wcj-functions-shipping.php:222
|
6900 |
#: includes/functions/wcj-functions-shipping.php:279
|
6901 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:138
|
6902 |
msgid "You have Free delivery"
|
6903 |
msgstr ""
|
6904 |
|
7048 |
|
7049 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:223
|
7050 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:394
|
7051 |
+
#: includes/settings/wcj-settings-product-input-fields.php:84
|
7052 |
msgid "Product Input Field"
|
7053 |
msgstr ""
|
7054 |
|
7997 |
#: includes/settings/wcj-settings-max-products-per-user.php:43
|
7998 |
#: includes/settings/wcj-settings-my-account.php:67
|
7999 |
#: includes/settings/wcj-settings-my-account.php:135
|
8000 |
+
#: includes/settings/wcj-settings-my-account.php:186
|
8001 |
+
#: includes/settings/wcj-settings-my-account.php:227
|
8002 |
#: includes/settings/wcj-settings-order-quantities.php:85
|
8003 |
#: includes/settings/wcj-settings-order-quantities.php:143
|
8004 |
#: includes/settings/wcj-settings-order-quantities.php:201
|
8030 |
#: includes/settings/wcj-settings-add-to-cart-button-visibility.php:30
|
8031 |
#: includes/settings/wcj-settings-add-to-cart-button-visibility.php:56
|
8032 |
#: includes/settings/wcj-settings-general.php:30
|
8033 |
+
#: includes/settings/wcj-settings-general.php:82
|
|
|
|
|
8034 |
#: includes/settings/wcj-settings-general.php:97
|
8035 |
+
#: includes/settings/wcj-settings-general.php:105
|
8036 |
+
#: includes/settings/wcj-settings-general.php:113
|
8037 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:84
|
8038 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:109
|
8039 |
#: includes/settings/wcj-settings-price-by-user-role.php:56
|
8133 |
#: includes/settings/wcj-settings-add-to-cart.php:21
|
8134 |
#: includes/settings/wcj-settings-add-to-cart.php:92
|
8135 |
#: includes/settings/wcj-settings-add-to-cart.php:110
|
8136 |
+
#: includes/settings/wcj-settings-general.php:146
|
8137 |
#: includes/settings/wcj-settings-shipping-calculator.php:69
|
8138 |
#: includes/settings/wcj-settings-sorting.php:20
|
8139 |
#: includes/settings/wcj-settings-sorting.php:99
|
8247 |
#: includes/settings/wcj-settings-add-to-cart.php:213
|
8248 |
#: includes/settings/wcj-settings-add-to-cart.php:222
|
8249 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:24
|
8250 |
+
#: includes/settings/wcj-settings-product-custom-info.php:191
|
8251 |
msgid "Leave blank to disable."
|
8252 |
msgstr ""
|
8253 |
|
8455 |
#: includes/settings/wcj-settings-checkout-customization.php:68
|
8456 |
#: includes/settings/wcj-settings-cross-sells.php:87
|
8457 |
#: includes/settings/wcj-settings-currency.php:22
|
8458 |
+
#: includes/settings/wcj-settings-my-account.php:202
|
8459 |
+
#: includes/settings/wcj-settings-my-account.php:209
|
8460 |
#: includes/settings/wcj-settings-order-custom-statuses.php:63
|
8461 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:48
|
8462 |
+
#: includes/settings/wcj-settings-product-bookings.php:100
|
8463 |
#: includes/settings/wcj-settings-product-images.php:20
|
8464 |
#: includes/settings/wcj-settings-product-images.php:27
|
8465 |
#: includes/settings/wcj-settings-product-images.php:34
|
8752 |
#: includes/settings/wcj-settings-cart.php:24
|
8753 |
#: includes/settings/wcj-settings-checkout-custom-info.php:20
|
8754 |
#: includes/settings/wcj-settings-mini-cart.php:19
|
8755 |
+
#: includes/settings/wcj-settings-my-account.php:233
|
8756 |
+
#: includes/settings/wcj-settings-product-custom-info.php:52
|
8757 |
msgid "Total Blocks"
|
8758 |
msgstr ""
|
8759 |
|
8760 |
#: includes/settings/wcj-settings-cart.php:39
|
8761 |
#: includes/settings/wcj-settings-checkout-custom-info.php:36
|
8762 |
#: includes/settings/wcj-settings-mini-cart.php:34
|
8763 |
+
#: includes/settings/wcj-settings-my-account.php:248
|
8764 |
msgid "Info Block"
|
8765 |
msgstr ""
|
8766 |
|
8767 |
#: includes/settings/wcj-settings-cart.php:58
|
8768 |
#: includes/settings/wcj-settings-checkout-custom-info.php:85
|
8769 |
#: includes/settings/wcj-settings-mini-cart.php:57
|
8770 |
+
#: includes/settings/wcj-settings-my-account.php:306
|
8771 |
+
#: includes/settings/wcj-settings-product-custom-info.php:124
|
8772 |
msgid "Position Order (i.e. Priority)"
|
8773 |
msgstr ""
|
8774 |
|
8802 |
#: includes/settings/wcj-settings-product-tabs.php:15
|
8803 |
#: includes/settings/wcj-settings-shipping-by-condition.php:20
|
8804 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:15
|
8805 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:15
|
8806 |
#: includes/settings/wcj-settings-shipping-time.php:25
|
8807 |
#: includes/settings/wcj-settings-wpml.php:22
|
8808 |
msgid "General Options"
|
9037 |
|
9038 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:210
|
9039 |
#: includes/settings/wcj-settings-eu-vat-number.php:56
|
9040 |
+
#: includes/templates/wcj-radio-for-variations.php:24
|
9041 |
#: includes/tools/class-wcj-order-statuses-tool.php:213
|
9042 |
msgid "Clear"
|
9043 |
msgstr ""
|
9233 |
msgstr ""
|
9234 |
|
9235 |
#: includes/settings/wcj-settings-checkout-custom-info.php:61
|
9236 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:123
|
9237 |
msgid "After order review"
|
9238 |
msgstr ""
|
9239 |
|
9240 |
#: includes/settings/wcj-settings-checkout-custom-info.php:62
|
9241 |
#: includes/settings/wcj-settings-checkout-files-upload.php:57
|
9242 |
#: includes/settings/wcj-settings-empty-cart.php:69
|
9243 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:124
|
9244 |
msgid "After checkout form"
|
9245 |
msgstr ""
|
9246 |
|
9427 |
msgstr ""
|
9428 |
|
9429 |
#: includes/settings/wcj-settings-checkout-customization.php:157
|
9430 |
+
#: includes/settings/wcj-settings-my-account.php:167
|
9431 |
+
#: includes/settings/wcj-settings-my-account.php:194
|
9432 |
+
#: includes/settings/wcj-settings-my-account.php:254
|
9433 |
#: includes/settings/wcj-settings-sale-flash.php:27
|
9434 |
#: includes/settings/wcj-settings-sale-flash.php:111
|
9435 |
#: includes/settings/meta-box/wcj-settings-meta-box-add-to-cart-button-visibility.php:30
|
9492 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:37
|
9493 |
#: includes/settings/wcj-settings-price-by-user-role.php:32
|
9494 |
#: includes/settings/wcj-settings-purchase-data.php:77
|
9495 |
+
#: includes/settings/wcj-settings-wholesale-price.php:78
|
9496 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:19
|
9497 |
msgid "Fixed"
|
9498 |
msgstr ""
|
9501 |
#: includes/settings/wcj-settings-global-discount.php:64
|
9502 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:38
|
9503 |
#: includes/settings/wcj-settings-purchase-data.php:78
|
9504 |
+
#: includes/settings/wcj-settings-wholesale-price.php:77
|
9505 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:18
|
9506 |
msgid "Percent"
|
9507 |
msgstr ""
|
9685 |
msgstr ""
|
9686 |
|
9687 |
#: includes/settings/wcj-settings-checkout-files-upload.php:250
|
9688 |
+
#: includes/settings/wcj-settings-product-input-fields.php:287
|
9689 |
msgid "Emails Options"
|
9690 |
msgstr ""
|
9691 |
|
9692 |
#: includes/settings/wcj-settings-checkout-files-upload.php:255
|
9693 |
+
#: includes/settings/wcj-settings-product-input-fields.php:292
|
9694 |
msgid "Attach Files to Admin's New Order Emails"
|
9695 |
msgstr ""
|
9696 |
|
9697 |
#: includes/settings/wcj-settings-checkout-files-upload.php:256
|
9698 |
#: includes/settings/wcj-settings-checkout-files-upload.php:263
|
9699 |
+
#: includes/settings/wcj-settings-product-input-fields.php:293
|
9700 |
+
#: includes/settings/wcj-settings-product-input-fields.php:300
|
9701 |
msgid "Attach"
|
9702 |
msgstr ""
|
9703 |
|
9704 |
#: includes/settings/wcj-settings-checkout-files-upload.php:262
|
9705 |
+
#: includes/settings/wcj-settings-product-input-fields.php:299
|
9706 |
msgid "Attach Files to Customer's Processing Order Emails"
|
9707 |
msgstr ""
|
9708 |
|
9797 |
#: includes/settings/wcj-settings-payment-gateways.php:49
|
9798 |
#: includes/settings/wcj-settings-pdf-invoicing-advanced.php:43
|
9799 |
#: includes/settings/wcj-settings-product-by-date.php:117
|
9800 |
+
#: includes/settings/wcj-settings-product-custom-info.php:185
|
9801 |
+
#: includes/settings/wcj-settings-product-input-fields.php:332
|
9802 |
#: includes/settings/wcj-settings-shipping-by-condition.php:108
|
9803 |
msgid "Advanced Options"
|
9804 |
msgstr ""
|
10011 |
msgstr ""
|
10012 |
|
10013 |
#: includes/settings/wcj-settings-cross-sells.php:79
|
10014 |
+
#: includes/settings/wcj-settings-product-input-fields.php:200
|
10015 |
#: includes/settings/wcj-settings-upsells.php:66
|
10016 |
msgid "Position priority"
|
10017 |
msgstr ""
|
10975 |
msgstr ""
|
10976 |
|
10977 |
#: includes/settings/wcj-settings-general.php:64
|
10978 |
+
msgid "Read and Close"
|
10979 |
msgstr ""
|
10980 |
|
10981 |
#: includes/settings/wcj-settings-general.php:65
|
10982 |
+
msgid ""
|
10983 |
+
"Enable <strong>Read and Close</strong> parameter on <strong>session_start()</"
|
10984 |
+
"strong>."
|
10985 |
+
msgstr ""
|
10986 |
+
|
10987 |
+
#: includes/settings/wcj-settings-general.php:66
|
10988 |
+
msgid ""
|
10989 |
+
"Requires Session Type option set as Standard PHP Sessions and PHP version >= "
|
10990 |
+
"7.0"
|
10991 |
msgstr ""
|
10992 |
|
10993 |
#: includes/settings/wcj-settings-general.php:72
|
10994 |
+
msgid "IP Detection"
|
10995 |
+
msgstr ""
|
10996 |
+
|
10997 |
+
#: includes/settings/wcj-settings-general.php:73
|
10998 |
+
msgid ""
|
10999 |
+
"IP Detection Methods used by some Booster modules when not using IP "
|
11000 |
+
"detection from WooCommerce. Change order for different results."
|
11001 |
+
msgstr ""
|
11002 |
+
|
11003 |
+
#: includes/settings/wcj-settings-general.php:74
|
11004 |
+
msgid "Default values are:"
|
11005 |
+
msgstr ""
|
11006 |
+
|
11007 |
+
#: includes/settings/wcj-settings-general.php:80
|
11008 |
+
msgid "Datepicker/Weekpicker CSS Loading"
|
11009 |
+
msgstr ""
|
11010 |
+
|
11011 |
+
#: includes/settings/wcj-settings-general.php:81
|
11012 |
+
msgid "Disables datepicker/weekpicker CSS loading."
|
11013 |
+
msgstr ""
|
11014 |
+
|
11015 |
+
#: includes/settings/wcj-settings-general.php:88
|
11016 |
msgid "Datepicker/Weekpicker CSS Source"
|
11017 |
msgstr ""
|
11018 |
|
11019 |
+
#: includes/settings/wcj-settings-general.php:95
|
11020 |
msgid "Datepicker/Weekpicker JavaScript Loading"
|
11021 |
msgstr ""
|
11022 |
|
11023 |
+
#: includes/settings/wcj-settings-general.php:96
|
11024 |
msgid "Disables datepicker/weekpicker JavaScript loading."
|
11025 |
msgstr ""
|
11026 |
|
11027 |
+
#: includes/settings/wcj-settings-general.php:103
|
11028 |
msgid "Timepicker CSS Loading"
|
11029 |
msgstr ""
|
11030 |
|
11031 |
+
#: includes/settings/wcj-settings-general.php:104
|
11032 |
msgid "Disables timepicker CSS loading."
|
11033 |
msgstr ""
|
11034 |
|
11035 |
+
#: includes/settings/wcj-settings-general.php:111
|
11036 |
msgid "Timepicker JavaScript Loading"
|
11037 |
msgstr ""
|
11038 |
|
11039 |
+
#: includes/settings/wcj-settings-general.php:112
|
11040 |
msgid "Disables timepicker JavaScript loading."
|
11041 |
msgstr ""
|
11042 |
|
11043 |
+
#: includes/settings/wcj-settings-general.php:123
|
11044 |
msgid "PayPal Email per Product Options"
|
11045 |
msgstr ""
|
11046 |
|
11047 |
+
#: includes/settings/wcj-settings-general.php:128
|
11048 |
msgid "PayPal Email per Product"
|
11049 |
msgstr ""
|
11050 |
|
11051 |
+
#: includes/settings/wcj-settings-general.php:130
|
11052 |
#: includes/settings/wcj-settings-max-products-per-user.php:44
|
11053 |
#: includes/settings/wcj-settings-product-by-date.php:54
|
11054 |
#: includes/settings/wcj-settings-product-by-time.php:54
|
11055 |
+
#: includes/settings/wcj-settings-wholesale-price.php:23
|
11056 |
msgid "This will add new meta box to each product's edit page."
|
11057 |
msgstr ""
|
11058 |
|
11059 |
+
#: includes/settings/wcj-settings-general.php:140
|
11060 |
msgid "Session Expiration Options"
|
11061 |
msgstr ""
|
11062 |
|
11063 |
+
#: includes/settings/wcj-settings-general.php:145
|
11064 |
+
#: includes/settings/wcj-settings-general.php:160
|
11065 |
msgid "Session Expiration"
|
11066 |
msgstr ""
|
11067 |
|
11068 |
+
#: includes/settings/wcj-settings-general.php:152
|
11069 |
msgid "Session Expiring"
|
11070 |
msgstr ""
|
11071 |
|
11072 |
+
#: includes/settings/wcj-settings-general.php:153
|
11073 |
msgid "In seconds. Default: 47 hours (60 * 60 * 47)"
|
11074 |
msgstr ""
|
11075 |
|
11076 |
+
#: includes/settings/wcj-settings-general.php:161
|
11077 |
msgid "In seconds. Default: 48 hours (60 * 60 * 48)"
|
11078 |
msgstr ""
|
11079 |
|
11080 |
+
#: includes/settings/wcj-settings-general.php:172
|
11081 |
msgid "Booster User Roles Changer Options"
|
11082 |
msgstr ""
|
11083 |
|
11084 |
+
#: includes/settings/wcj-settings-general.php:173
|
11085 |
msgid "This will add user roles changer tool to admin bar."
|
11086 |
msgstr ""
|
11087 |
|
11088 |
+
#: includes/settings/wcj-settings-general.php:179
|
11089 |
msgid "Booster User Roles Changer"
|
11090 |
msgstr ""
|
11091 |
|
11092 |
+
#: includes/settings/wcj-settings-general.php:188
|
11093 |
msgid "Enabled for"
|
11094 |
msgstr ""
|
11095 |
|
11096 |
+
#: includes/settings/wcj-settings-general.php:200
|
11097 |
msgid "PHP Options"
|
11098 |
msgstr ""
|
11099 |
|
11100 |
+
#: includes/settings/wcj-settings-general.php:205
|
11101 |
msgid "PHP Memory Limit"
|
11102 |
msgstr ""
|
11103 |
|
11104 |
+
#: includes/settings/wcj-settings-general.php:206
|
11105 |
msgid "megabytes."
|
11106 |
msgstr ""
|
11107 |
|
11108 |
+
#: includes/settings/wcj-settings-general.php:207
|
11109 |
+
#: includes/settings/wcj-settings-general.php:216
|
11110 |
#: includes/settings/wcj-settings-offer-price.php:175
|
11111 |
#: includes/settings/wcj-settings-offer-price.php:183
|
11112 |
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:43
|
11114 |
msgid "Set zero to disable."
|
11115 |
msgstr ""
|
11116 |
|
11117 |
+
#: includes/settings/wcj-settings-general.php:214
|
11118 |
msgid "PHP Time Limit"
|
11119 |
msgstr ""
|
11120 |
|
11121 |
+
#: includes/settings/wcj-settings-general.php:215
|
11122 |
msgid "seconds."
|
11123 |
msgstr ""
|
11124 |
|
11286 |
#: includes/settings/wcj-settings-price-by-user-role.php:70
|
11287 |
#: includes/settings/wcj-settings-product-addons.php:242
|
11288 |
#: includes/settings/wcj-settings-product-price-by-formula.php:101
|
11289 |
+
#: includes/settings/wcj-settings-wholesale-price.php:121
|
11290 |
msgid ""
|
11291 |
"Priority for all module's price filters. Set to zero to use default priority."
|
11292 |
msgstr ""
|
11319 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:35
|
11320 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:66
|
11321 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:100
|
11322 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:135
|
11323 |
msgid "You can use HTML and/or shortcodes (e.g. [wcj_wpml]) here."
|
11324 |
msgstr ""
|
11325 |
|
11337 |
|
11338 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:50
|
11339 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:84
|
11340 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:128
|
11341 |
msgid "Position Order (Priority)"
|
11342 |
msgstr ""
|
11343 |
|
11365 |
msgstr ""
|
11366 |
|
11367 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:119
|
11368 |
+
msgid "Order review: Before shipping"
|
11369 |
msgstr ""
|
11370 |
|
11371 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:120
|
11372 |
+
msgid "Order review: After shipping"
|
11373 |
+
msgstr ""
|
11374 |
+
|
11375 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:121
|
11376 |
+
msgid "Order review: Payment: Before submit button"
|
11377 |
+
msgstr ""
|
11378 |
+
|
11379 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:122
|
11380 |
msgid "Order review: Payment: After submit button"
|
11381 |
msgstr ""
|
11382 |
|
11383 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:134
|
11384 |
msgid "Message on Free Shipping Reached"
|
11385 |
msgstr ""
|
11386 |
|
11387 |
+
#: includes/settings/wcj-settings-left-to-free-shipping.php:136
|
11388 |
msgid "Set empty to disable."
|
11389 |
msgstr ""
|
11390 |
|
11505 |
#: includes/settings/wcj-settings-price-by-country.php:156
|
11506 |
#: includes/settings/wcj-settings-price-by-user-role.php:69
|
11507 |
#: includes/settings/wcj-settings-product-addons.php:241
|
11508 |
+
#: includes/settings/wcj-settings-wholesale-price.php:120
|
11509 |
msgid "Advanced: Price Filters Priority"
|
11510 |
msgstr ""
|
11511 |
|
11640 |
msgstr ""
|
11641 |
|
11642 |
#: includes/settings/wcj-settings-multicurrency.php:186
|
11643 |
+
#: includes/settings/wcj-settings-wholesale-price.php:180
|
11644 |
msgid "Save settings after you change this option. Leave blank to disable."
|
11645 |
msgstr ""
|
11646 |
|
11725 |
|
11726 |
#: includes/settings/wcj-settings-my-account.php:129
|
11727 |
#: includes/settings/wcj-settings-my-account.php:134
|
11728 |
+
msgid "Custom Pages"
|
11729 |
msgstr ""
|
11730 |
|
11731 |
#: includes/settings/wcj-settings-my-account.php:141
|
11732 |
+
msgid "Total Pages"
|
11733 |
+
msgstr ""
|
11734 |
+
|
11735 |
+
#: includes/settings/wcj-settings-my-account.php:156
|
11736 |
+
msgid "Custom Page"
|
11737 |
+
msgstr ""
|
11738 |
+
|
11739 |
+
#: includes/settings/wcj-settings-my-account.php:180
|
11740 |
+
#: includes/settings/wcj-settings-my-account.php:185
|
11741 |
+
msgid "Dashboard Customization"
|
11742 |
+
msgstr ""
|
11743 |
+
|
11744 |
+
#: includes/settings/wcj-settings-my-account.php:192
|
11745 |
msgid "Custom Dashboard Content"
|
11746 |
msgstr ""
|
11747 |
|
11748 |
+
#: includes/settings/wcj-settings-my-account.php:193
|
11749 |
msgid ""
|
11750 |
"This will add content at the beginning of dashboard. If you need to add "
|
11751 |
"custom content to the end of the dashboard, use <strong>Custom Info Blocks</"
|
11752 |
"strong> section and select <strong>Account dashboard</strong> position."
|
11753 |
msgstr ""
|
11754 |
|
11755 |
+
#: includes/settings/wcj-settings-my-account.php:194
|
11756 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:115
|
11757 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:127
|
11758 |
#: includes/settings/wcj-settings-stock.php:42
|
11760 |
msgid "Ignored if empty."
|
11761 |
msgstr ""
|
11762 |
|
11763 |
+
#: includes/settings/wcj-settings-my-account.php:201
|
11764 |
msgid "Hide \"Hello ...\" Message"
|
11765 |
msgstr ""
|
11766 |
|
11767 |
+
#: includes/settings/wcj-settings-my-account.php:208
|
11768 |
msgid "Hide \"From your account dashboard ...\" Message"
|
11769 |
msgstr ""
|
11770 |
|
11771 |
+
#: includes/settings/wcj-settings-my-account.php:221
|
11772 |
+
#: includes/settings/wcj-settings-my-account.php:226
|
11773 |
msgid "Custom Info Blocks"
|
11774 |
msgstr ""
|
11775 |
|
11776 |
+
#: includes/settings/wcj-settings-my-account.php:266
|
11777 |
msgid "Account content"
|
11778 |
msgstr ""
|
11779 |
|
11780 |
+
#: includes/settings/wcj-settings-my-account.php:267
|
11781 |
msgid "Account dashboard"
|
11782 |
msgstr ""
|
11783 |
|
11784 |
+
#: includes/settings/wcj-settings-my-account.php:268
|
11785 |
msgid "Account navigation"
|
11786 |
msgstr ""
|
11787 |
|
11788 |
+
#: includes/settings/wcj-settings-my-account.php:269
|
11789 |
msgid "After account downloads"
|
11790 |
msgstr ""
|
11791 |
|
11792 |
+
#: includes/settings/wcj-settings-my-account.php:270
|
11793 |
msgid "After account navigation"
|
11794 |
msgstr ""
|
11795 |
|
11796 |
+
#: includes/settings/wcj-settings-my-account.php:271
|
11797 |
msgid "After account orders"
|
11798 |
msgstr ""
|
11799 |
|
11800 |
+
#: includes/settings/wcj-settings-my-account.php:272
|
11801 |
msgid "After account payment methods"
|
11802 |
msgstr ""
|
11803 |
|
11804 |
+
#: includes/settings/wcj-settings-my-account.php:273
|
11805 |
msgid "After available downloads"
|
11806 |
msgstr ""
|
11807 |
|
11808 |
+
#: includes/settings/wcj-settings-my-account.php:274
|
11809 |
msgid "After customer login form"
|
11810 |
msgstr ""
|
11811 |
|
11812 |
+
#: includes/settings/wcj-settings-my-account.php:275
|
11813 |
msgid "After edit account address form"
|
11814 |
msgstr ""
|
11815 |
|
11816 |
+
#: includes/settings/wcj-settings-my-account.php:276
|
11817 |
msgid "After edit account form"
|
11818 |
msgstr ""
|
11819 |
|
11820 |
+
#: includes/settings/wcj-settings-my-account.php:277
|
11821 |
msgid "After my account"
|
11822 |
msgstr ""
|
11823 |
|
11824 |
+
#: includes/settings/wcj-settings-my-account.php:278
|
11825 |
msgid "Available download end"
|
11826 |
msgstr ""
|
11827 |
|
11828 |
+
#: includes/settings/wcj-settings-my-account.php:279
|
11829 |
msgid "Available download start"
|
11830 |
msgstr ""
|
11831 |
|
11832 |
+
#: includes/settings/wcj-settings-my-account.php:280
|
11833 |
msgid "Available downloads"
|
11834 |
msgstr ""
|
11835 |
|
11836 |
+
#: includes/settings/wcj-settings-my-account.php:281
|
11837 |
msgid "Before account downloads"
|
11838 |
msgstr ""
|
11839 |
|
11840 |
+
#: includes/settings/wcj-settings-my-account.php:282
|
11841 |
msgid "Before account navigation"
|
11842 |
msgstr ""
|
11843 |
|
11844 |
+
#: includes/settings/wcj-settings-my-account.php:283
|
11845 |
msgid "Before account orders"
|
11846 |
msgstr ""
|
11847 |
|
11848 |
+
#: includes/settings/wcj-settings-my-account.php:284
|
11849 |
msgid "Before account orders pagination"
|
11850 |
msgstr ""
|
11851 |
|
11852 |
+
#: includes/settings/wcj-settings-my-account.php:285
|
11853 |
msgid "Before account payment methods"
|
11854 |
msgstr ""
|
11855 |
|
11856 |
+
#: includes/settings/wcj-settings-my-account.php:286
|
11857 |
msgid "Before Available downloads"
|
11858 |
msgstr ""
|
11859 |
|
11860 |
+
#: includes/settings/wcj-settings-my-account.php:287
|
11861 |
msgid "Before customer login form"
|
11862 |
msgstr ""
|
11863 |
|
11864 |
+
#: includes/settings/wcj-settings-my-account.php:288
|
11865 |
msgid "Before edit account address form"
|
11866 |
msgstr ""
|
11867 |
|
11868 |
+
#: includes/settings/wcj-settings-my-account.php:289
|
11869 |
msgid "Before edit account form"
|
11870 |
msgstr ""
|
11871 |
|
11872 |
+
#: includes/settings/wcj-settings-my-account.php:290
|
11873 |
msgid "Before my account"
|
11874 |
msgstr ""
|
11875 |
|
11876 |
+
#: includes/settings/wcj-settings-my-account.php:291
|
11877 |
msgid "Edit account form"
|
11878 |
msgstr ""
|
11879 |
|
11880 |
+
#: includes/settings/wcj-settings-my-account.php:292
|
11881 |
msgid "Edit account form end"
|
11882 |
msgstr ""
|
11883 |
|
11884 |
+
#: includes/settings/wcj-settings-my-account.php:293
|
11885 |
msgid "Edit account form start"
|
11886 |
msgstr ""
|
11887 |
|
11888 |
+
#: includes/settings/wcj-settings-my-account.php:294
|
11889 |
msgid "Login form"
|
11890 |
msgstr ""
|
11891 |
|
11892 |
+
#: includes/settings/wcj-settings-my-account.php:295
|
11893 |
msgid "Login form end"
|
11894 |
msgstr ""
|
11895 |
|
11896 |
+
#: includes/settings/wcj-settings-my-account.php:296
|
11897 |
msgid "Login form start"
|
11898 |
msgstr ""
|
11899 |
|
11900 |
+
#: includes/settings/wcj-settings-my-account.php:297
|
11901 |
msgid "Lost password form"
|
11902 |
msgstr ""
|
11903 |
|
11904 |
+
#: includes/settings/wcj-settings-my-account.php:298
|
11905 |
msgid "Register form"
|
11906 |
msgstr ""
|
11907 |
|
11908 |
+
#: includes/settings/wcj-settings-my-account.php:299
|
11909 |
msgid "Register form end"
|
11910 |
msgstr ""
|
11911 |
|
11912 |
+
#: includes/settings/wcj-settings-my-account.php:300
|
11913 |
msgid "Register form start"
|
11914 |
msgstr ""
|
11915 |
|
11916 |
+
#: includes/settings/wcj-settings-my-account.php:301
|
11917 |
msgid "Reset password form"
|
11918 |
msgstr ""
|
11919 |
|
11973 |
msgstr ""
|
11974 |
|
11975 |
#: includes/settings/wcj-settings-offer-price.php:85
|
11976 |
+
#: includes/settings/wcj-settings-product-custom-info.php:102
|
11977 |
#: includes/settings/wcj-settings-upsells.php:58
|
11978 |
msgid "Before single product"
|
11979 |
msgstr ""
|
11980 |
|
11981 |
#: includes/settings/wcj-settings-offer-price.php:88
|
11982 |
+
#: includes/settings/wcj-settings-product-custom-info.php:107
|
11983 |
msgid "Before add to cart form"
|
11984 |
msgstr ""
|
11985 |
|
11986 |
#: includes/settings/wcj-settings-offer-price.php:89
|
11987 |
+
#: includes/settings/wcj-settings-product-custom-info.php:110
|
11988 |
msgid "After add to cart form"
|
11989 |
msgstr ""
|
11990 |
|
11991 |
#: includes/settings/wcj-settings-offer-price.php:91
|
11992 |
+
#: includes/settings/wcj-settings-product-custom-info.php:106
|
11993 |
#: includes/settings/wcj-settings-upsells.php:62
|
11994 |
msgid "After single product"
|
11995 |
msgstr ""
|
12555 |
#: includes/settings/wcj-settings-order-quantities.php:150
|
12556 |
#: includes/settings/wcj-settings-order-quantities.php:166
|
12557 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:35
|
12558 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:35
|
12559 |
msgid "Set to zero to disable."
|
12560 |
msgstr ""
|
12561 |
|
12814 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:22
|
12815 |
#: includes/settings/wcj-settings-shipping-by-condition.php:25
|
12816 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:20
|
12817 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:20
|
12818 |
#: includes/settings/wcj-settings-shipping-description.php:58
|
12819 |
#: includes/settings/wcj-settings-shipping-icons.php:60
|
12820 |
#: includes/settings/wcj-settings-shipping-time.php:30
|
12824 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:24
|
12825 |
#: includes/settings/wcj-settings-shipping-by-condition.php:27
|
12826 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:22
|
12827 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:22
|
12828 |
#: includes/settings/wcj-settings-shipping-description.php:60
|
12829 |
#: includes/settings/wcj-settings-shipping-icons.php:62
|
12830 |
#: includes/settings/wcj-settings-shipping-time.php:32
|
13056 |
|
13057 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:49
|
13058 |
#: includes/settings/wcj-settings-price-labels.php:125
|
13059 |
+
#: includes/settings/wcj-settings-product-input-fields.php:110
|
13060 |
msgid "Product Categories - Include"
|
13061 |
msgstr ""
|
13062 |
|
13068 |
|
13069 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:60
|
13070 |
#: includes/settings/wcj-settings-price-labels.php:134
|
13071 |
+
#: includes/settings/wcj-settings-product-input-fields.php:121
|
13072 |
msgid "Product Categories - Exclude"
|
13073 |
msgstr ""
|
13074 |
|
13080 |
|
13081 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:72
|
13082 |
#: includes/settings/wcj-settings-price-labels.php:107
|
13083 |
+
#: includes/settings/wcj-settings-product-input-fields.php:155
|
13084 |
msgid "Products - Include"
|
13085 |
msgstr ""
|
13086 |
|
13092 |
|
13093 |
#: includes/settings/wcj-settings-payment-gateways-per-category.php:85
|
13094 |
#: includes/settings/wcj-settings-price-labels.php:116
|
13095 |
+
#: includes/settings/wcj-settings-product-input-fields.php:167
|
13096 |
msgid "Products - Exclude"
|
13097 |
msgstr ""
|
13098 |
|
13877 |
msgstr ""
|
13878 |
|
13879 |
#: includes/settings/wcj-settings-price-by-user-role.php:76
|
13880 |
+
#: includes/settings/wcj-settings-wholesale-price.php:112
|
13881 |
msgid "Advanced: Price Changes"
|
13882 |
msgstr ""
|
13883 |
|
13886 |
msgstr ""
|
13887 |
|
13888 |
#: includes/settings/wcj-settings-price-by-user-role.php:78
|
13889 |
+
#: includes/settings/wcj-settings-wholesale-price.php:114
|
13890 |
msgid ""
|
13891 |
"Try enabling this checkbox, if you are having compatibility issues with "
|
13892 |
"other plugins."
|
14430 |
msgstr ""
|
14431 |
|
14432 |
#: includes/settings/wcj-settings-product-addons.php:206
|
14433 |
+
#: includes/settings/wcj-settings-product-custom-info.php:108
|
14434 |
+
#: includes/settings/wcj-settings-product-input-fields.php:195
|
14435 |
#: includes/settings/wcj-settings-product-open-pricing.php:17
|
14436 |
msgid "Before add to cart button"
|
14437 |
msgstr ""
|
14438 |
|
14439 |
#: includes/settings/wcj-settings-product-addons.php:207
|
14440 |
+
#: includes/settings/wcj-settings-product-custom-info.php:109
|
14441 |
+
#: includes/settings/wcj-settings-product-input-fields.php:196
|
14442 |
#: includes/settings/wcj-settings-product-open-pricing.php:18
|
14443 |
msgid "After add to cart button"
|
14444 |
msgstr ""
|
14469 |
msgstr ""
|
14470 |
|
14471 |
#: includes/settings/wcj-settings-product-addons.php:248
|
14472 |
+
#: includes/settings/wcj-settings-product-bookings.php:106
|
14473 |
#: includes/settings/wcj-settings-product-open-pricing.php:139
|
14474 |
msgid "Advanced: Check for Outputted Data"
|
14475 |
msgstr ""
|
14476 |
|
14477 |
#: includes/settings/wcj-settings-product-addons.php:250
|
14478 |
+
#: includes/settings/wcj-settings-product-bookings.php:108
|
14479 |
+
#: includes/settings/wcj-settings-product-input-fields.php:339
|
14480 |
#: includes/settings/wcj-settings-product-open-pricing.php:141
|
14481 |
msgid ""
|
14482 |
"Ensures that data outputted only once. Enable this if you see data outputted "
|
14558 |
msgstr ""
|
14559 |
|
14560 |
#: includes/settings/wcj-settings-product-bookings.php:91
|
14561 |
+
msgid "Price per Day on Variable Products"
|
14562 |
+
msgstr ""
|
14563 |
+
|
14564 |
+
#: includes/settings/wcj-settings-product-bookings.php:92
|
14565 |
+
msgid "Calculate Variable Products final price per day, according to calendar"
|
14566 |
+
msgstr ""
|
14567 |
+
|
14568 |
+
#: includes/settings/wcj-settings-product-bookings.php:93
|
14569 |
+
msgid ""
|
14570 |
+
"Disable it will make the Variable Product final price be calculated "
|
14571 |
+
"regardless of the chosen days on the calendar"
|
14572 |
+
msgstr ""
|
14573 |
+
|
14574 |
+
#: includes/settings/wcj-settings-product-bookings.php:99
|
14575 |
msgid "Hide Quantity Selector for Bookings Products"
|
14576 |
msgstr ""
|
14577 |
|
14578 |
+
#: includes/settings/wcj-settings-product-bookings.php:118
|
14579 |
msgid "Datepicker Options"
|
14580 |
msgstr ""
|
14581 |
|
14582 |
+
#: includes/settings/wcj-settings-product-bookings.php:119
|
14583 |
msgid "This settings will be applied to all your bookings products."
|
14584 |
msgstr ""
|
14585 |
|
14586 |
+
#: includes/settings/wcj-settings-product-bookings.php:124
|
14587 |
msgid "Date from: Exclude Days"
|
14588 |
msgstr ""
|
14589 |
|
14590 |
+
#: includes/settings/wcj-settings-product-bookings.php:125
|
14591 |
+
#: includes/settings/wcj-settings-product-bookings.php:134
|
14592 |
msgid "Leave blank to include all days."
|
14593 |
msgstr ""
|
14594 |
|
14595 |
+
#: includes/settings/wcj-settings-product-bookings.php:133
|
14596 |
msgid "Date to: Exclude Days"
|
14597 |
msgstr ""
|
14598 |
|
14599 |
+
#: includes/settings/wcj-settings-product-bookings.php:142
|
14600 |
msgid "Date from: Exclude Months"
|
14601 |
msgstr ""
|
14602 |
|
14603 |
+
#: includes/settings/wcj-settings-product-bookings.php:143
|
14604 |
+
#: includes/settings/wcj-settings-product-bookings.php:152
|
14605 |
msgid "Leave blank to include all months."
|
14606 |
msgstr ""
|
14607 |
|
14608 |
+
#: includes/settings/wcj-settings-product-bookings.php:151
|
14609 |
msgid "Date to: Exclude Months"
|
14610 |
msgstr ""
|
14611 |
|
14928 |
msgid "Custom Taxonomy"
|
14929 |
msgstr ""
|
14930 |
|
14931 |
+
#: includes/settings/wcj-settings-product-custom-info.php:44
|
14932 |
msgid "Single Product Pages"
|
14933 |
msgstr ""
|
14934 |
|
14935 |
+
#: includes/settings/wcj-settings-product-custom-info.php:44
|
14936 |
#: includes/settings/wcj-settings-product-msrp.php:14
|
14937 |
msgid "Archives"
|
14938 |
msgstr ""
|
14939 |
|
14940 |
+
#: includes/settings/wcj-settings-product-custom-info.php:83
|
14941 |
#, php-format
|
14942 |
msgid "Block #%s"
|
14943 |
msgstr ""
|
14944 |
|
14945 |
+
#: includes/settings/wcj-settings-product-custom-info.php:92
|
14946 |
#: includes/settings/wcj-settings-product-images.php:49
|
14947 |
#: includes/settings/wcj-settings-product-images.php:58
|
14948 |
#: includes/settings/wcj-settings-product-images.php:67
|
14952 |
msgid "You can use shortcodes here."
|
14953 |
msgstr ""
|
14954 |
|
14955 |
+
#: includes/settings/wcj-settings-product-custom-info.php:111
|
14956 |
msgid "Product meta start"
|
14957 |
msgstr ""
|
14958 |
|
14959 |
+
#: includes/settings/wcj-settings-product-custom-info.php:112
|
14960 |
msgid "Product meta end"
|
14961 |
msgstr ""
|
14962 |
|
14963 |
+
#: includes/settings/wcj-settings-product-custom-info.php:117
|
14964 |
msgid "Inside product title"
|
14965 |
msgstr ""
|
14966 |
|
14967 |
+
#: includes/settings/wcj-settings-product-custom-info.php:130
|
14968 |
+
#: includes/settings/wcj-settings-wholesale-price.php:95
|
14969 |
msgid "Product Categories to Include"
|
14970 |
msgstr ""
|
14971 |
|
14972 |
+
#: includes/settings/wcj-settings-product-custom-info.php:131
|
14973 |
+
#: includes/settings/wcj-settings-product-custom-info.php:139
|
14974 |
+
#: includes/settings/wcj-settings-product-custom-info.php:147
|
14975 |
+
#: includes/settings/wcj-settings-product-custom-info.php:155
|
14976 |
+
#: includes/settings/wcj-settings-product-custom-info.php:163
|
14977 |
+
#: includes/settings/wcj-settings-product-custom-info.php:171
|
14978 |
msgid "Leave blank to disable the option."
|
14979 |
msgstr ""
|
14980 |
|
14981 |
+
#: includes/settings/wcj-settings-product-custom-info.php:138
|
14982 |
+
#: includes/settings/wcj-settings-wholesale-price.php:104
|
14983 |
msgid "Product Categories to Exclude"
|
14984 |
msgstr ""
|
14985 |
|
14986 |
+
#: includes/settings/wcj-settings-product-custom-info.php:146
|
14987 |
msgid "Product Tags to Include"
|
14988 |
msgstr ""
|
14989 |
|
14990 |
+
#: includes/settings/wcj-settings-product-custom-info.php:154
|
14991 |
msgid "Product Tags to Exclude"
|
14992 |
msgstr ""
|
14993 |
|
14994 |
+
#: includes/settings/wcj-settings-product-custom-info.php:162
|
14995 |
#: includes/settings/wcj-settings-products-xml.php:147
|
14996 |
+
#: includes/settings/wcj-settings-wholesale-price.php:82
|
14997 |
msgid "Products to Include"
|
14998 |
msgstr ""
|
14999 |
|
15000 |
+
#: includes/settings/wcj-settings-product-custom-info.php:170
|
15001 |
#: includes/settings/wcj-settings-products-xml.php:157
|
15002 |
+
#: includes/settings/wcj-settings-wholesale-price.php:89
|
15003 |
msgid "Products to Exclude"
|
15004 |
msgstr ""
|
15005 |
|
15006 |
+
#: includes/settings/wcj-settings-product-custom-info.php:190
|
15007 |
msgid "Extra Filters"
|
15008 |
msgstr ""
|
15009 |
|
15010 |
+
#: includes/settings/wcj-settings-product-custom-info.php:192
|
15011 |
msgid "You can add custom filters here (one per line, in filter|title format)."
|
15012 |
msgstr ""
|
15013 |
|
15014 |
+
#: includes/settings/wcj-settings-product-custom-info.php:193
|
15015 |
#, php-format
|
15016 |
msgid "E.g.: %s."
|
15017 |
msgstr ""
|
15081 |
msgid "Leave blank to use the default placeholder image."
|
15082 |
msgstr ""
|
15083 |
|
15084 |
+
#: includes/settings/wcj-settings-product-images.php:101
|
15085 |
+
msgid "Callbacks"
|
15086 |
+
msgstr ""
|
15087 |
+
|
15088 |
+
#: includes/settings/wcj-settings-product-images.php:102
|
15089 |
+
msgid ""
|
15090 |
+
"Callback functions used by WooCommerce and the current theme in order to "
|
15091 |
+
"customize images and thumbnails"
|
15092 |
+
msgstr ""
|
15093 |
+
|
15094 |
+
#: includes/settings/wcj-settings-product-images.php:107
|
15095 |
+
msgid "Loop Thumbnail"
|
15096 |
+
msgstr ""
|
15097 |
+
|
15098 |
+
#: includes/settings/wcj-settings-product-images.php:108
|
15099 |
+
msgid "Used on hook <strong>woocommerce_before_shop_loop_item_title</strong>"
|
15100 |
+
msgstr ""
|
15101 |
+
|
15102 |
+
#: includes/settings/wcj-settings-product-images.php:114
|
15103 |
+
msgid "Loop Thumbnail Priority"
|
15104 |
+
msgstr ""
|
15105 |
+
|
15106 |
+
#: includes/settings/wcj-settings-product-images.php:120
|
15107 |
+
msgid "Show Images"
|
15108 |
+
msgstr ""
|
15109 |
+
|
15110 |
+
#: includes/settings/wcj-settings-product-images.php:121
|
15111 |
+
msgid "Used on hook <strong>woocommerce_before_single_product_summary</strong>"
|
15112 |
+
msgstr ""
|
15113 |
+
|
15114 |
+
#: includes/settings/wcj-settings-product-images.php:127
|
15115 |
+
msgid "Show Images Priority"
|
15116 |
+
msgstr ""
|
15117 |
+
|
15118 |
#: includes/settings/wcj-settings-product-info.php:14
|
15119 |
msgid "Products Info"
|
15120 |
msgstr ""
|
15214 |
msgid "Product Input Fields Number"
|
15215 |
msgstr ""
|
15216 |
|
15217 |
+
#: includes/settings/wcj-settings-product-input-fields.php:111
|
15218 |
msgid "Product categories to include."
|
15219 |
msgstr ""
|
15220 |
|
15221 |
+
#: includes/settings/wcj-settings-product-input-fields.php:112
|
15222 |
+
#: includes/settings/wcj-settings-product-input-fields.php:123
|
15223 |
+
#: includes/settings/wcj-settings-product-input-fields.php:134
|
15224 |
+
#: includes/settings/wcj-settings-product-input-fields.php:145
|
15225 |
+
#: includes/settings/wcj-settings-product-input-fields.php:157
|
15226 |
+
#: includes/settings/wcj-settings-product-input-fields.php:169
|
15227 |
+
#: includes/settings/wcj-settings-wholesale-price.php:83
|
15228 |
+
#: includes/settings/wcj-settings-wholesale-price.php:96
|
15229 |
msgid "Leave blank to include all products."
|
15230 |
msgstr ""
|
15231 |
|
15232 |
+
#: includes/settings/wcj-settings-product-input-fields.php:122
|
15233 |
msgid "Product categories to exclude."
|
15234 |
msgstr ""
|
15235 |
|
15236 |
+
#: includes/settings/wcj-settings-product-input-fields.php:132
|
15237 |
msgid "Product Tags - Include"
|
15238 |
msgstr ""
|
15239 |
|
15240 |
+
#: includes/settings/wcj-settings-product-input-fields.php:133
|
15241 |
msgid "Product tags to include."
|
15242 |
msgstr ""
|
15243 |
|
15244 |
+
#: includes/settings/wcj-settings-product-input-fields.php:143
|
15245 |
msgid "Product Tags - Exclude"
|
15246 |
msgstr ""
|
15247 |
|
15248 |
+
#: includes/settings/wcj-settings-product-input-fields.php:144
|
15249 |
msgid "Product tags to exclude."
|
15250 |
msgstr ""
|
15251 |
|
15252 |
+
#: includes/settings/wcj-settings-product-input-fields.php:156
|
15253 |
msgid "Products to include."
|
15254 |
msgstr ""
|
15255 |
|
15256 |
+
#: includes/settings/wcj-settings-product-input-fields.php:168
|
15257 |
msgid "Products to exclude."
|
15258 |
msgstr ""
|
15259 |
|
15260 |
+
#: includes/settings/wcj-settings-product-input-fields.php:185
|
15261 |
msgid "Frontend View Options"
|
15262 |
msgstr ""
|
15263 |
|
15264 |
+
#: includes/settings/wcj-settings-product-input-fields.php:190
|
15265 |
msgid "Position on Single Product Page"
|
15266 |
msgstr ""
|
15267 |
|
15268 |
+
#: includes/settings/wcj-settings-product-input-fields.php:206
|
15269 |
msgid "HTML Template - Start"
|
15270 |
msgstr ""
|
15271 |
|
15272 |
+
#: includes/settings/wcj-settings-product-input-fields.php:213
|
15273 |
msgid "HTML Template - Each Field"
|
15274 |
msgstr ""
|
15275 |
|
15276 |
+
#: includes/settings/wcj-settings-product-input-fields.php:220
|
15277 |
msgid "HTML Template - End"
|
15278 |
msgstr ""
|
15279 |
|
15280 |
+
#: includes/settings/wcj-settings-product-input-fields.php:227
|
15281 |
msgid "HTML Template - Radio Field"
|
15282 |
msgstr ""
|
15283 |
|
15284 |
+
#: includes/settings/wcj-settings-product-input-fields.php:234
|
15285 |
msgid "HTML to add after required field title"
|
15286 |
msgstr ""
|
15287 |
|
15288 |
+
#: includes/settings/wcj-settings-product-input-fields.php:241
|
15289 |
msgid "Cart Display Options"
|
15290 |
msgstr ""
|
15291 |
|
15292 |
+
#: includes/settings/wcj-settings-product-input-fields.php:242
|
15293 |
msgid ""
|
15294 |
"When \"Add to cart item data\" is selected, \"Cart HTML Template\" options "
|
15295 |
"below will be ignored."
|
15296 |
msgstr ""
|
15297 |
|
15298 |
+
#: includes/settings/wcj-settings-product-input-fields.php:247
|
15299 |
msgid "Add to cart item name"
|
15300 |
msgstr ""
|
15301 |
|
15302 |
+
#: includes/settings/wcj-settings-product-input-fields.php:248
|
15303 |
msgid "Add to cart item data"
|
15304 |
msgstr ""
|
15305 |
|
15306 |
+
#: includes/settings/wcj-settings-product-input-fields.php:252
|
15307 |
msgid "Cart HTML Template - Start"
|
15308 |
msgstr ""
|
15309 |
|
15310 |
+
#: includes/settings/wcj-settings-product-input-fields.php:259
|
15311 |
msgid "Cart HTML Template - Each Field"
|
15312 |
msgstr ""
|
15313 |
|
15314 |
+
#: includes/settings/wcj-settings-product-input-fields.php:266
|
15315 |
msgid "Cart HTML Template - End"
|
15316 |
msgstr ""
|
15317 |
|
15318 |
+
#: includes/settings/wcj-settings-product-input-fields.php:273
|
15319 |
msgid "Order Table Template - Each Field"
|
15320 |
msgstr ""
|
15321 |
|
15322 |
+
#: includes/settings/wcj-settings-product-input-fields.php:274
|
15323 |
msgid "Affects Order received page, Emails and Admin Orders View"
|
15324 |
msgstr ""
|
15325 |
|
15326 |
+
#: includes/settings/wcj-settings-product-input-fields.php:312
|
15327 |
msgid "Admin Order View Options"
|
15328 |
msgstr ""
|
15329 |
|
15330 |
+
#: includes/settings/wcj-settings-product-input-fields.php:317
|
15331 |
msgid "Replace Field ID with Field Label"
|
15332 |
msgstr ""
|
15333 |
|
15334 |
+
#: includes/settings/wcj-settings-product-input-fields.php:319
|
15335 |
#, php-format
|
15336 |
msgid "Please note: %s"
|
15337 |
msgstr ""
|
15338 |
|
15339 |
+
#: includes/settings/wcj-settings-product-input-fields.php:320
|
15340 |
msgid ""
|
15341 |
"When checked - will disable input fields editing on admin order edit page."
|
15342 |
msgstr ""
|
15343 |
|
15344 |
+
#: includes/settings/wcj-settings-product-input-fields.php:337
|
15345 |
msgid "Check for Outputted Data"
|
15346 |
msgstr ""
|
15347 |
|
15348 |
+
#: includes/settings/wcj-settings-product-input-fields.php:345
|
15349 |
msgid "Strip Slashes"
|
15350 |
msgstr ""
|
15351 |
|
15352 |
+
#: includes/settings/wcj-settings-product-input-fields.php:347
|
15353 |
#, php-format
|
15354 |
msgid "Enable this if you have single quotes %s converted to %s."
|
15355 |
msgstr ""
|
16490 |
msgid "Maximum order amount"
|
16491 |
msgstr ""
|
16492 |
|
16493 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:57
|
16494 |
+
msgid "Minimum order quantity"
|
16495 |
+
msgstr ""
|
16496 |
+
|
16497 |
+
#: includes/settings/wcj-settings-shipping-by-order-qty.php:65
|
16498 |
+
msgid "Maximum order quantity"
|
16499 |
+
msgstr ""
|
16500 |
+
|
16501 |
#: includes/settings/wcj-settings-shipping-calculator.php:14
|
16502 |
msgid "Shipping Calculator Options"
|
16503 |
msgstr ""
|
17076 |
msgid "Remove all sorting (including WooCommerce default) from shop's frontend"
|
17077 |
msgstr ""
|
17078 |
|
17079 |
+
#: includes/settings/wcj-settings-sorting.php:174
|
17080 |
+
msgid "Restore Default WooCommerce Sorting"
|
17081 |
+
msgstr ""
|
17082 |
+
|
17083 |
+
#: includes/settings/wcj-settings-sorting.php:175
|
17084 |
+
msgid "Replaces theme's sorting by default WooCommerce sorting"
|
17085 |
+
msgstr ""
|
17086 |
+
|
17087 |
+
#: includes/settings/wcj-settings-sorting.php:181
|
17088 |
+
#: includes/settings/wcj-settings-sorting.php:182
|
17089 |
+
msgid "Restore"
|
17090 |
+
msgstr ""
|
17091 |
+
|
17092 |
+
#: includes/settings/wcj-settings-sorting.php:187
|
17093 |
+
msgid "Theme"
|
17094 |
+
msgstr ""
|
17095 |
+
|
17096 |
+
#: includes/settings/wcj-settings-sorting.php:188
|
17097 |
+
msgid "Theme that will have its sorting replaced."
|
17098 |
+
msgstr ""
|
17099 |
+
|
17100 |
+
#: includes/settings/wcj-settings-sorting.php:191
|
17101 |
+
msgid "Avada"
|
17102 |
+
msgstr ""
|
17103 |
+
|
17104 |
#: includes/settings/wcj-settings-stock.php:14
|
17105 |
msgid "Custom \"In Stock\" Options"
|
17106 |
msgstr ""
|
17513 |
msgid "Automatically add coupon's products to the cart"
|
17514 |
msgstr ""
|
17515 |
|
17516 |
+
#: includes/settings/wcj-settings-wholesale-price.php:17
|
17517 |
#, php-format
|
17518 |
msgid "If you want to display prices table on frontend, use %s shortcode."
|
17519 |
msgstr ""
|
17520 |
|
17521 |
+
#: includes/settings/wcj-settings-wholesale-price.php:22
|
17522 |
msgid "Enable per Product"
|
17523 |
msgstr ""
|
17524 |
|
17525 |
+
#: includes/settings/wcj-settings-wholesale-price.php:30
|
17526 |
msgid "Quantity Calculation"
|
17527 |
msgstr ""
|
17528 |
|
17529 |
+
#: includes/settings/wcj-settings-wholesale-price.php:35
|
17530 |
msgid "Product quantity"
|
17531 |
msgstr ""
|
17532 |
|
17533 |
+
#: includes/settings/wcj-settings-wholesale-price.php:36
|
17534 |
msgid "Total cart quantity (wholesale products only)"
|
17535 |
msgstr ""
|
17536 |
|
17537 |
+
#: includes/settings/wcj-settings-wholesale-price.php:37
|
17538 |
msgid "Total cart quantity"
|
17539 |
msgstr ""
|
17540 |
|
17541 |
+
#: includes/settings/wcj-settings-wholesale-price.php:41
|
17542 |
msgid "Exclusive Use Only"
|
17543 |
msgstr ""
|
17544 |
|
17545 |
+
#: includes/settings/wcj-settings-wholesale-price.php:43
|
17546 |
msgid "Apply wholesale discount only if no other cart discounts were applied."
|
17547 |
msgstr ""
|
17548 |
|
17549 |
+
#: includes/settings/wcj-settings-wholesale-price.php:49
|
17550 |
msgid "Round Single Product Price"
|
17551 |
msgstr ""
|
17552 |
|
17553 |
+
#: includes/settings/wcj-settings-wholesale-price.php:50
|
17554 |
msgid ""
|
17555 |
"If enabled will round single product price with precision set in WooCommerce "
|
17556 |
"> Settings > General > Number of decimals."
|
17557 |
msgstr ""
|
17558 |
|
17559 |
+
#: includes/settings/wcj-settings-wholesale-price.php:57
|
17560 |
msgid "Discount Info on Cart Page"
|
17561 |
msgstr ""
|
17562 |
|
17563 |
+
#: includes/settings/wcj-settings-wholesale-price.php:64
|
17564 |
msgid "If show discount info on cart page is enabled, set format here."
|
17565 |
msgstr ""
|
17566 |
|
17567 |
+
#: includes/settings/wcj-settings-wholesale-price.php:72
|
17568 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:41
|
17569 |
msgid "Discount Type"
|
17570 |
msgstr ""
|
17571 |
|
17572 |
+
#: includes/settings/wcj-settings-wholesale-price.php:113
|
17573 |
msgid "Disable wholesale pricing for products with \"Price Changes\""
|
17574 |
msgstr ""
|
17575 |
|
17576 |
+
#: includes/settings/wcj-settings-wholesale-price.php:131
|
17577 |
msgid "Wholesale Levels Options"
|
17578 |
msgstr ""
|
17579 |
|
17580 |
+
#: includes/settings/wcj-settings-wholesale-price.php:136
|
17581 |
+
#: includes/settings/wcj-settings-wholesale-price.php:193
|
17582 |
msgid "Number of Levels"
|
17583 |
msgstr ""
|
17584 |
|
17585 |
+
#: includes/settings/wcj-settings-wholesale-price.php:150
|
17586 |
+
#: includes/settings/wcj-settings-wholesale-price.php:207
|
17587 |
msgid "Min Quantity"
|
17588 |
msgstr ""
|
17589 |
|
17590 |
+
#: includes/settings/wcj-settings-wholesale-price.php:151
|
17591 |
+
#: includes/settings/wcj-settings-wholesale-price.php:208
|
17592 |
msgid "Minimum quantity to apply discount"
|
17593 |
msgstr ""
|
17594 |
|
17595 |
+
#: includes/settings/wcj-settings-wholesale-price.php:158
|
17596 |
+
#: includes/settings/wcj-settings-wholesale-price.php:159
|
17597 |
+
#: includes/settings/wcj-settings-wholesale-price.php:215
|
17598 |
+
#: includes/settings/wcj-settings-wholesale-price.php:216
|
17599 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:72
|
17600 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:108
|
17601 |
msgid "Discount"
|
17602 |
msgstr ""
|
17603 |
|
17604 |
+
#: includes/settings/wcj-settings-wholesale-price.php:173
|
17605 |
msgid "Additional User Roles Options"
|
17606 |
msgstr ""
|
17607 |
|
17608 |
+
#: includes/settings/wcj-settings-wholesale-price.php:175
|
17609 |
msgid ""
|
17610 |
"If you want to set different wholesale pricing options for different user "
|
17611 |
"roles, fill this section. Please note that you can also use Booster's "
|
17612 |
"\"Price based on User Role\" module without filling this section."
|
17613 |
msgstr ""
|
17614 |
|
17615 |
+
#: includes/settings/wcj-settings-wholesale-price.php:179
|
17616 |
msgid "User Roles Settings"
|
17617 |
msgstr ""
|
17618 |
|
18087 |
msgid "In stock"
|
18088 |
msgstr ""
|
18089 |
|
18090 |
+
#: includes/templates/wcj-radio-for-variations.php:16
|
18091 |
msgid "This product is currently out of stock and unavailable."
|
18092 |
msgstr ""
|
18093 |
|
readme.txt
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
Contributors: algoritmika, anbinder, debugeris, karzin
|
3 |
Tags: woocommerce, booster for woocommerce, woocommerce jetpack
|
4 |
Requires at least: 4.4
|
5 |
-
Tested up to: 5.
|
6 |
-
Stable tag: 4.
|
7 |
License: GNU General Public License v3.0
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
@@ -122,6 +122,7 @@ Booster for WooCommerce is a WordPress WooCommerce plugin that supercharges your
|
|
122 |
* *Shipping Methods by City or Postcode* - Set shipping cities or postcodes to include/exclude for shipping methods to show up.
|
123 |
* *Shipping Methods by Current Date/Time* - Set date and/or time to include/exclude for shipping methods to show up.
|
124 |
* *Shipping Methods by Min/Max Order Amount* - Set minimum and/or maximum order amount for shipping methods to show up.
|
|
|
125 |
* *Shipping Methods by Products* - Set products, product categories, tags or shipping classes to include/exclude for shipping methods to show up.
|
126 |
* *Shipping Methods by Users* - Set user roles, users or membership plans to include/exclude for shipping methods to show up.
|
127 |
* *Shipping Options* - Hide shipping when free is available. Grant free shipping on per product basis.
|
@@ -192,6 +193,50 @@ You can see the differences between versions in this [table](https://booster.io/
|
|
192 |
|
193 |
== Changelog ==
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
= 4.2.0 - 06/02/2019 =
|
196 |
* Feature - PRICES & CURRENCIES - Offer Your Price - Enable - "Enable per product and per product category" option added.
|
197 |
* Feature - PRICES & CURRENCIES - Product Open Pricing (Name Your Price) - "Advanced: Multicurrency (Currency Switcher) Module" option added (i.e. "Allow price entering in switched currency").
|
2 |
Contributors: algoritmika, anbinder, debugeris, karzin
|
3 |
Tags: woocommerce, booster for woocommerce, woocommerce jetpack
|
4 |
Requires at least: 4.4
|
5 |
+
Tested up to: 5.1
|
6 |
+
Stable tag: 4.3.0
|
7 |
License: GNU General Public License v3.0
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
122 |
* *Shipping Methods by City or Postcode* - Set shipping cities or postcodes to include/exclude for shipping methods to show up.
|
123 |
* *Shipping Methods by Current Date/Time* - Set date and/or time to include/exclude for shipping methods to show up.
|
124 |
* *Shipping Methods by Min/Max Order Amount* - Set minimum and/or maximum order amount for shipping methods to show up.
|
125 |
+
* *Shipping Methods by Min/Max Order Quantity* - Set minimum and/or maximum order quantity for shipping methods to show up.
|
126 |
* *Shipping Methods by Products* - Set products, product categories, tags or shipping classes to include/exclude for shipping methods to show up.
|
127 |
* *Shipping Methods by Users* - Set user roles, users or membership plans to include/exclude for shipping methods to show up.
|
128 |
* *Shipping Options* - Hide shipping when free is available. Grant free shipping on per product basis.
|
193 |
|
194 |
== Changelog ==
|
195 |
|
196 |
+
= 4.3.0 - 16/04/2019 =
|
197 |
+
* Fix - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Fix PHP warning about headers already sent.
|
198 |
+
* Fix - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Improve compatibility with Add-ons plugin.
|
199 |
+
* Fix - PRICES & CURRENCIES - Offer Your Price - Check if `$_product` really exists on `offer_price()`.
|
200 |
+
* Fix - PRICES & CURRENCIES - Replace `woocommerce_before_main_content` hook by `wp_footer` for adding the form on frontend as some themes don't use the original hook.
|
201 |
+
* Fix - PRODUCTS - Add to Cart - Fix compatibility between Order Min/Max Quantities and radio buttons for variations.
|
202 |
+
* Fix - CART & CHECKOUT - Checkout Custom Fields - Fix some special characters (e.g Russian) being wiped out on checkout by using `urldecode()`.
|
203 |
+
* Fix - CART & CHECKOUT - Checkout Custom Fields - Display field value instead of key when using radio or select as fields.
|
204 |
+
* Fix - CART & CHECKOUT - EU VAT Number - Default EU VAT number value on the checkout page fixed.
|
205 |
+
* Fix - PAYMENT GATEWAYS - Gateways Currency Converter - Replace commas by periods on `change_price_by_gateway()` avoiding wrong calculations.
|
206 |
+
* Fix - PDF INVOICING & PACKING SLIPS - Check if TCPDF class exists before loading it, avoiding possible errors with other plugins.
|
207 |
+
* Fix - PDF INVOICING & PACKING SLIPS - Fix Too many redirects when using Generate Invoice from Bulk actions.
|
208 |
+
* Fix - PDF INVOICING & PACKING SLIPS - Fix "Failed to load PDF document" in some environments by putting the pdf inside buffer instead of displaying it directly.
|
209 |
+
* Fix - Functions - Admin - Make `wcj_get_settings_as_multiselect_or_text()` compatible with `wcj_get_ajax_settings()`.
|
210 |
+
* Fix - Functions - Booster Core - `wcj_is_module_enabled()` - Checking if it is a REST API call before requiring `pluggable.php`.
|
211 |
+
* Fix - Functions - Exchange Rates - Fix 'Division by zero' PHP warning.
|
212 |
+
* Fix - Functions - Exchange Rates - Ignore warnings from `simplexml_load_file()` depending on WP_DEBUG constant.
|
213 |
+
* Fix - Functions - General - `wcj_session_maybe_start()` Improve session detection method.
|
214 |
+
* Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Add compatibility with Smart Coupons plugin.
|
215 |
+
* Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - Add compatibility with WooCommerce Price Filter widget.
|
216 |
+
* Dev - PRICES & CURRENCIES - Wholesale Price - Add ajax search to Product fields.
|
217 |
+
* Dev - PRODUCTS - Add to Cart - Add radio inputs template using `woocommerce_before_variations_form` hook instead of replacing the entire add-to-cart/variable.php.
|
218 |
+
* Dev - PRODUCTS - Add to Cart - Change radio buttons for variations mechanism. Now the native WooCommerce dropdown for variations will be on DOM but hidden. That will make some js functions unnecessary like `maybe_hide_unavailable()`.
|
219 |
+
* Dev - PRODUCTS - Add to Cart - Add attributes label on top of the radio inputs table.
|
220 |
+
* Dev - PRODUCTS - Bookings - Add loader on frontend while ajax is loading.
|
221 |
+
* Dev - PRODUCTS - Bookings - Add bookings price beneath dates table instead of replacing prices avoiding possible duplicated prices.
|
222 |
+
* Dev - PRODUCTS - Bookings - Add new option to enable/disable the variable product calculation per day.
|
223 |
+
* Dev - PRODUCTS - Product Images - Add options to control the callback and priority from some hooks.
|
224 |
+
* Dev - PRODUCTS - Product Info Settings - Add ajax search to Product fields.
|
225 |
+
* Dev - PRODUCTS - Product Input Fields - Add ajax search to Product fields.
|
226 |
+
* Dev - PRODUCTS - Sorting - Add new option to restore default WooCommerce Sorting on Avada theme.
|
227 |
+
* Dev - SHIPPING & ORDERS - Left to Free Shipping - Info on Checkout - "Order review: Before shipping" and "Order review: After shipping" positions added.
|
228 |
+
* Dev - SHIPPING & ORDERS - Shipping Methods by Min/Max Order Quantity - Initial module release.
|
229 |
+
* Dev - PDF INVOICING & PACKING SLIPS - Update WordPress filters used to create bulk actions.
|
230 |
+
* Dev - PDF INVOICING & PACKING SLIPS - Add security check `check_admin_referer( 'bulk-posts' )` on `bulk_actions_handle()`.
|
231 |
+
* Dev - PDF INVOICING & PACKING SLIPS - Tools - Invoices Report - `wcj_pdf_invoicing_report_tool_row` filter added.
|
232 |
+
* Dev - EMAILS & MISC. - My Account - "Custom Menu Pages" section added.
|
233 |
+
* Dev - Functions - Admin - Add `wcj_get_ajax_settings()` making it possible to search products and categories by ajax.
|
234 |
+
* Dev - Functions - General - Add option to include `read_and_close` parameter to `session_start`.
|
235 |
+
* Dev - Functions - General - Sanitize IP Detection methods on `wcj_get_the_ip()`.
|
236 |
+
* Dev - Functions - General - Add option to increase control over IP Detection methods.
|
237 |
+
* Dev - Booster Module - `maybe_fix_settings()` adds 'wc-enhanced-select' class only if 'remove_class' parameter is not present.
|
238 |
+
* Dev - Shortcodes - General - `[wcj_country_select_drop_down_list]` shortcode will be hidden if Prices and Currencies by Country module is not enabled, unless parameter `force_display` have been passed as `true`.
|
239 |
+
|
240 |
= 4.2.0 - 06/02/2019 =
|
241 |
* Feature - PRICES & CURRENCIES - Offer Your Price - Enable - "Enable per product and per product category" option added.
|
242 |
* Feature - PRICES & CURRENCIES - Product Open Pricing (Name Your Price) - "Advanced: Multicurrency (Currency Switcher) Module" option added (i.e. "Allow price entering in switched currency").
|
woocommerce-jetpack.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Booster for WooCommerce
|
4 |
Plugin URI: https://booster.io
|
5 |
Description: Supercharge your WooCommerce site with these awesome powerful features. More than 100 modules. All in one WooCommerce plugin.
|
6 |
-
Version: 4.
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: https://booster.io
|
9 |
Text Domain: woocommerce-jetpack
|
@@ -57,7 +57,7 @@ final class WC_Jetpack {
|
|
57 |
* @var string
|
58 |
* @since 2.4.7
|
59 |
*/
|
60 |
-
public $version = '4.
|
61 |
|
62 |
/**
|
63 |
* @var WC_Jetpack The single instance of the class
|
3 |
Plugin Name: Booster for WooCommerce
|
4 |
Plugin URI: https://booster.io
|
5 |
Description: Supercharge your WooCommerce site with these awesome powerful features. More than 100 modules. All in one WooCommerce plugin.
|
6 |
+
Version: 4.3.0
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: https://booster.io
|
9 |
Text Domain: woocommerce-jetpack
|
57 |
* @var string
|
58 |
* @since 2.4.7
|
59 |
*/
|
60 |
+
public $version = '4.3.0';
|
61 |
|
62 |
/**
|
63 |
* @var WC_Jetpack The single instance of the class
|