Version Description
- 27/12/2017 =
- Dev - PRICES & CURRENCIES - Currencies - More cryptocurrencies added.
- Dev - PRICES & CURRENCIES - Currency Exchange Rates - Secondary "Exchange Rates Server" option added to each currency pair.
- Fix - PRICES & CURRENCIES - Currency per Product -
change_currency_symbol()
- Changing symbol for appropriate currency code only. - Dev - PRICES & CURRENCIES - Price Formats - "Additional Currency Code Position" option added.
- Dev - BUTTON & PRICE LABELS - Call for Price - Variable and grouped products support added.
- Dev - PRODUCTS - Admin Products List - Initial module release (moved from "Product Listings" module).
- Fix - PRODUCTS - Bookings -
wp_die()
replaced withdie()
inprice_change_ajax()
. - Dev - PRODUCTS - Product Add to Cart - "Set All Products to Sold individually" option added.
- Dev - PRODUCTS - Product Add to Cart - External Products - Open External Products on Add to Cart in New Window - on Category/Archive Pages - Additional themes compatibility added.
- Fix - PRODUCTS - Product Addons -
wp_die()
replaced withdie()
inprice_change_ajax()
. - Dev - PRODUCTS - Product Addons - "Position Priority on Frontend" option added.
- Dev - PRODUCTS - Product Custom Visibility - Initial module release.
- Dev - PRODUCTS - Product Images - "Enable Section" option removed. Minor setting restyling.
- Dev - PRODUCTS - Product Input Fields -
array_merge()
replaced witharray_replace()
forwcj_get_select_options()
results (with placeholder). - Dev - PRODUCTS - Product Input Fields - Frontend View Options - "HTML Template - Radio Field" option added.
- Dev - PRODUCTS - Product Tabs - "Add Per Product Tabs Content to Yoast SEO plugin analysis" option added.
- Fix - PRODUCTS - Product Visibility by Country - Session bug fixed.
- Dev - PRODUCTS - Products XML - "Products to Include/Exclude" options can now be set as comma separated text (optionally) (instead of list).
- Dev - PRODUCTS - Products XML - Renamed to "Products XML Feeds". Description and documentation URL updated.
- Dev - PRODUCTS - Sale Flash - "Per Product", "Per Category", "Per Tag" options added.
- Dev - PRODUCTS - Sale Flash - Initial module release (copied from "Product Images" module).
- Fix - PRODUCTS - Tax Display - by Product & by User Role -
wcj_is_frontend()
check added. - Dev - PRODUCTS - Tax Display - "TAX Display - Toggle Button" section added.
- Dev - PRODUCTS - Tax Display - Initial module release (moved from "Product Listings" module).
- Dev - CART & CHECKOUT - Checkout Custom Fields - "Customer Meta Fields" options added.
- Dev - CART & CHECKOUT - Checkout Custom Fields - "Min Cart Amount" and "Max Cart Amount" options added.
- Dev - CART & CHECKOUT - Checkout Custom Fields -
array_merge()
replaced witharray_replace()
forwcj_get_select_options()
results (with placeholder). - Fix - CART & CHECKOUT - EU VAT Number - Preserve VAT in Base Country - Issue with lowercase country code n VAT ID fixed.
- Dev - SHIPPING & ORDERS - Admin Orders List - Initial module release (moved from "Orders" module).
- Dev - SHIPPING & ORDERS - Order Minimum Amount - "Exclude Discounts from Cart Total" option added.
- Dev - SHIPPING & ORDERS - Orders - Bulk Regenerate Download Permissions for Orders - All Orders - "Periodically" option added.
- Dev - SHIPPING & ORDERS - Shipping Methods by Users / Shipping Methods by Products / Shipping Options (Hide if Free Shipping is Available) - "Filter Priority" options added.
- Dev - PDF INVOICING & PACKING SLIPS - General - "Advanced: Temp Directory" option added.
- Dev - PDF INVOICING & PACKING SLIPS - Page Settings - Page Format - "Custom" options added.
- Dev - EMAILS & MISC. - Custom Emails -
%customer%
can now be used in comma separated list for multiple recipients. - Dev - EMAILS & MISC. - Reports - Custom Ranges / Product Sales (Daily) / Reports functions (also affects Export module) -
time()
replaced withcurrent_time()
. - Dev - EMAILS & MISC. - Reports - Orders - Product Sales (Monthly) -
wcj_reports_products_sales_check_product
filter added. - Fix - EMAILS & MISC. - Reports - Orders - Product Sales (Monthly) - WooCommerce v3.0.0 compatibility - "Product
parent
property accessed directly" issue fixed. - Dev - Shortcodes - General -
[wcj_barcode]
shortcode added. - Dev - Shortcodes - General -
[wcj_tcpdf_barcode]
shortcode added. - Dev - Shortcodes - Orders -
[wcj_order_date]
-days
attribute added. - Fix - Shortcodes - Orders -
[wcj_order_items_table]
-item_meta
column -is_custom
meta excluded. - Dev - Shortcodes - Products -
[wcj_product_category_count]
shortcode added. - Dev - Shortcodes - Products -
[wcj_product_price]
-currency
attribute added. - Fix - Shortcodes - Products -
[wcj_product_purchase_price]
- Usingwcj_get_product_id()
instead ofwcj_get_product_id_or_variation_parent_id()
. - Dev - Shortcodes - Products -
[wcj_product_purchase_price]
-hide_currency
attribute added. - Dev - Shortcodes files renamed.
- Dev - Functions - "Crons" added.
- Dev - Functions - Debug -
wcj_log()
-esc_url()
added. - Dev - Functions - Exchange Rates -
wcj_get_saved_exchange_rate()
function added. - Dev - Functions - Exchange Rates - Code refactoring (
wcj_get_currency_exchange_rates_url_response()
function added). - Dev - Functions - Exchange Rates - Exchange Rates Server - "CoinMarketCap" server added.
- Dev - Functions - Exchange Rates - Exchange Rates Server - "Coinbase" server added.
- Dev - Functions - General -
wcj_get_select_options()
- Prefix (wcj-
) removed (was added in v3.2.3). - Dev - Functions - General -
wcj_get_select_options()
-trim()
added. - Fix - Functions - Price and Currency -
wc_get_product_purchase_price()
-int
replaced withfloat
- this fixes the issue with purchase price calculating incorrectly (cutting decimal part). - Dev - Settings Manager - Import - Checking for
wcj_
prefix, when importing plugin settings. - Dev - Settings Manager - Reset - Now deletes all options (also includes meta).
- Dev - Admin Settings - Custom Fields -
exchange_rate
field updated (12 decimals instep
and code refactoring). - Dev - Code refactoring.
core
directory added.
Download this release
Release Info
Developer | algoritmika |
Plugin | Booster for WooCommerce |
Version | 3.2.4 |
Comparing to | |
See all releases |
Code changes from version 3.2.3 to 3.2.4
- includes/admin/class-wc-settings-jetpack.php +8 -6
- includes/admin/class-wcj-settings-custom-fields.php +63 -2
- includes/admin/class-wcj-settings-manager.php +27 -5
- includes/admin/wcj-modules-cats.php +7 -1
- includes/class-wcj-admin-orders-list.php +374 -0
- includes/class-wcj-admin-products-list.php +127 -0
- includes/class-wcj-call-for-price.php +111 -33
- includes/class-wcj-checkout-custom-fields.php +29 -5
- includes/class-wcj-currencies.php +3 -3
- includes/class-wcj-currency-exchange-rates.php +40 -6
- includes/class-wcj-currency-per-product.php +8 -4
- includes/class-wcj-eu-vat-number.php +3 -3
- includes/class-wcj-multicurrency.php +1 -1
- includes/class-wcj-order-min-amount.php +8 -2
- includes/class-wcj-orders.php +26 -335
- includes/class-wcj-price-formats.php +25 -2
- includes/class-wcj-product-add-to-cart.php +12 -4
- includes/class-wcj-product-addons.php +7 -6
- includes/class-wcj-product-bookings.php +3 -3
- includes/class-wcj-product-by-country.php +4 -5
- includes/class-wcj-product-custom-visibility.php +144 -0
- includes/class-wcj-product-images.php +23 -51
- includes/class-wcj-product-listings.php +6 -170
- includes/class-wcj-product-tabs.php +23 -2
- includes/class-wcj-products-xml.php +8 -8
- includes/class-wcj-reports.php +8 -7
- includes/class-wcj-sale-flash.php +98 -0
- includes/class-wcj-shipping-options.php +4 -3
- includes/class-wcj-tax-display.php +162 -0
- includes/classes/class-wcj-module-shipping-by-condition.php +3 -3
- includes/classes/class-wcj-pdf-invoice.php +19 -65
- includes/{shortcodes → classes}/class-wcj-shortcodes.php +0 -0
- includes/{widgets → classes}/class-wcj-widget.php +0 -0
- includes/core/class-wcj-admin.php +154 -0
- includes/{classes → core}/class-wcj-scripts.php +0 -1
- includes/core/wcj-functions.php +38 -0
- includes/core/wcj-loader.php +75 -0
- includes/core/wcj-modules.php +127 -0
- includes/core/wcj-options.php +50 -0
- includes/core/wcj-shortcodes.php +32 -0
- includes/emails/class-wc-email-wcj-custom.php +8 -5
- includes/exchange-rates/class-wcj-exchange-rates-crons.php +2 -2
- includes/exchange-rates/class-wcj-exchange-rates.php +2 -66
- includes/functions/wcj-functions-admin.php +32 -1
- includes/functions/wcj-functions-core.php +1 -0
- includes/functions/wcj-functions-crons.php +119 -0
- includes/functions/wcj-functions-currencies.php +30 -1
- includes/functions/wcj-functions-debug.php +3 -3
- includes/functions/wcj-functions-exchange-rates.php +205 -34
- includes/functions/wcj-functions-general.php +27 -5
- includes/functions/wcj-functions-orders.php +7 -3
- includes/functions/wcj-functions-price-currency.php +6 -6
- includes/functions/wcj-functions-reports.php +40 -38
- includes/input-fields/class-wcj-product-input-fields-core.php +12 -7
- includes/js/wcj-custom-tabs-yoast-seo.js +34 -0
- includes/reports/wcj-class-reports-sales-daily.php +5 -4
- includes/reports/wcj-class-reports-sales.php +20 -19
- includes/settings/meta-box/wcj-settings-meta-box-product-custom-visibility.php +24 -0
- includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php +30 -0
- includes/settings/wcj-settings-admin-orders-list.php +165 -0
- includes/settings/wcj-settings-admin-products-list.php +93 -0
- includes/settings/wcj-settings-call-for-price.php +20 -10
- includes/settings/wcj-settings-checkout-custom-fields.php +25 -2
- includes/settings/wcj-settings-currency-exchange-rates.php +2 -2
- includes/settings/wcj-settings-currency-per-product.php +1 -3
- includes/settings/wcj-settings-general.php +1 -0
- includes/settings/wcj-settings-multicurrency-base-price.php +1 -3
- includes/settings/wcj-settings-multicurrency.php +1 -3
- includes/settings/wcj-settings-order-min-amount.php +8 -1
- includes/settings/wcj-settings-orders.php +21 -147
- includes/settings/wcj-settings-payment-gateways-currency.php +1 -3
- includes/settings/wcj-settings-pdf-invoicing-page.php +17 -3
- includes/settings/wcj-settings-pdf-invoicing.php +8 -1
- includes/settings/wcj-settings-price-by-country.php +1 -3
- includes/settings/wcj-settings-price-formats.php +14 -1
- includes/settings/wcj-settings-product-add-to-cart.php +8 -1
- includes/settings/wcj-settings-product-addons.php +8 -1
- includes/settings/wcj-settings-product-custom-visibility.php +54 -0
- includes/settings/wcj-settings-product-images.php +5 -51
- includes/settings/wcj-settings-product-input-fields.php +8 -1
- includes/settings/wcj-settings-product-listings.php +2 -184
- includes/settings/wcj-settings-product-tabs.php +8 -1
- includes/settings/wcj-settings-products-xml.php +27 -20
- includes/settings/wcj-settings-sale-flash.php +118 -0
- includes/settings/wcj-settings-shipping-by-condition.php +19 -1
- includes/settings/wcj-settings-shipping-options.php +8 -1
- includes/settings/wcj-settings-tax-display.php +141 -0
- includes/shortcodes/{class-wcj-general-shortcodes.php → class-wcj-shortcodes-general.php} +158 -3
- includes/shortcodes/{class-wcj-input-field-shortcodes.php → class-wcj-shortcodes-input-field.php} +0 -0
- includes/shortcodes/{class-wcj-invoices-shortcodes.php → class-wcj-shortcodes-invoices.php} +0 -0
- includes/shortcodes/{class-wcj-order-items-shortcodes.php → class-wcj-shortcodes-order-items.php} +3 -3
- includes/shortcodes/{class-wcj-orders-shortcodes.php → class-wcj-shortcodes-orders.php} +6 -4
- includes/shortcodes/{class-wcj-products-add-form-shortcodes.php → class-wcj-shortcodes-products-add-form.php} +0 -0
- includes/shortcodes/{class-wcj-products-crowdfunding-shortcodes.php → class-wcj-shortcodes-products-crowdfunding.php} +0 -0
- includes/shortcodes/{class-wcj-products-shortcodes.php → class-wcj-shortcodes-products.php} +30 -12
- includes/widgets/class-wcj-widget-selector.php +4 -3
- langs/woocommerce-jetpack.pot +1494 -1081
- readme.txt +73 -6
- woocommerce-jetpack.php +16 -436
includes/admin/class-wc-settings-jetpack.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 1.0.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -243,7 +243,8 @@ class WC_Settings_Jetpack extends WC_Settings_Page {
|
|
243 |
/**
|
244 |
* output_dashboard.
|
245 |
*
|
246 |
-
* @version 3.
|
|
|
247 |
*/
|
248 |
function output_dashboard( $current_section ) {
|
249 |
|
@@ -331,7 +332,7 @@ class WC_Settings_Jetpack extends WC_Settings_Page {
|
|
331 |
echo wcj_get_table_html( $table_data, array( 'table_class' => 'widefat striped', 'table_heading_type' => 'vertical' ) );
|
332 |
}
|
333 |
|
334 |
-
$plugin_data = get_plugin_data(
|
335 |
$plugin_title = ( isset( $plugin_data['Name'] ) ? '[' . $plugin_data['Name'] . '] ' : '' );
|
336 |
echo '<p style="text-align:right;color:gray;font-size:x-small;font-style:italic;">' . $plugin_title .
|
337 |
__( 'Version', 'woocommerce-jetpack' ) . ': ' . get_option( 'booster_for_woocommerce_version', 'N/A' ) . '</p>';
|
@@ -438,7 +439,7 @@ class WC_Settings_Jetpack extends WC_Settings_Page {
|
|
438 |
/**
|
439 |
* get_manager_settings.
|
440 |
*
|
441 |
-
* @version 3.
|
442 |
* @since 2.6.0
|
443 |
* @return array
|
444 |
*/
|
@@ -455,10 +456,11 @@ class WC_Settings_Jetpack extends WC_Settings_Page {
|
|
455 |
'title' => __( 'Use List Instead of Comma Separated Text for Products in Settings', 'woocommerce-jetpack' ),
|
456 |
'type' => 'checkbox',
|
457 |
'desc' => sprintf( __( 'Supported modules: %s.', 'woocommerce-jetpack' ), implode( ', ', array(
|
458 |
-
__( 'Product Info', 'woocommerce-jetpack' ),
|
459 |
__( 'Gateways per Product or Category', 'woocommerce-jetpack' ),
|
460 |
-
__( 'Product Input Fields', 'woocommerce-jetpack' ),
|
461 |
__( 'Global Discount', 'woocommerce-jetpack' ),
|
|
|
|
|
|
|
462 |
__( 'Related Products', 'woocommerce-jetpack' ),
|
463 |
) ) ),
|
464 |
'id' => 'wcj_list_for_products',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 1.0.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
243 |
/**
|
244 |
* output_dashboard.
|
245 |
*
|
246 |
+
* @version 3.2.4
|
247 |
+
* @todo (maybe) remove `woojetpack_readme`
|
248 |
*/
|
249 |
function output_dashboard( $current_section ) {
|
250 |
|
332 |
echo wcj_get_table_html( $table_data, array( 'table_class' => 'widefat striped', 'table_heading_type' => 'vertical' ) );
|
333 |
}
|
334 |
|
335 |
+
$plugin_data = get_plugin_data( WCJ_PLUGIN_FILE );
|
336 |
$plugin_title = ( isset( $plugin_data['Name'] ) ? '[' . $plugin_data['Name'] . '] ' : '' );
|
337 |
echo '<p style="text-align:right;color:gray;font-size:x-small;font-style:italic;">' . $plugin_title .
|
338 |
__( 'Version', 'woocommerce-jetpack' ) . ': ' . get_option( 'booster_for_woocommerce_version', 'N/A' ) . '</p>';
|
439 |
/**
|
440 |
* get_manager_settings.
|
441 |
*
|
442 |
+
* @version 3.2.4
|
443 |
* @since 2.6.0
|
444 |
* @return array
|
445 |
*/
|
456 |
'title' => __( 'Use List Instead of Comma Separated Text for Products in Settings', 'woocommerce-jetpack' ),
|
457 |
'type' => 'checkbox',
|
458 |
'desc' => sprintf( __( 'Supported modules: %s.', 'woocommerce-jetpack' ), implode( ', ', array(
|
|
|
459 |
__( 'Gateways per Product or Category', 'woocommerce-jetpack' ),
|
|
|
460 |
__( 'Global Discount', 'woocommerce-jetpack' ),
|
461 |
+
__( 'Product Info', 'woocommerce-jetpack' ),
|
462 |
+
__( 'Product Input Fields', 'woocommerce-jetpack' ),
|
463 |
+
__( 'Products XML', 'woocommerce-jetpack' ),
|
464 |
__( 'Related Products', 'woocommerce-jetpack' ),
|
465 |
) ) ),
|
466 |
'id' => 'wcj_list_for_products',
|
includes/admin/class-wcj-settings-custom-fields.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings Custom Fields
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Settings_Custom_Fields {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 3.
|
20 |
* @since 2.8.0
|
21 |
*/
|
22 |
function __construct() {
|
@@ -30,6 +30,67 @@ class WCJ_Settings_Custom_Fields {
|
|
30 |
add_action( 'woocommerce_admin_field_custom_link', array( $this, 'output_custom_link' ) );
|
31 |
add_action( 'woocommerce_admin_field_module_tools', array( $this, 'output_module_tools' ) );
|
32 |
add_filter( 'woocommerce_admin_settings_sanitize_option', array( $this, 'maybe_unclean_field' ), PHP_INT_MAX, 3 );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
}
|
34 |
|
35 |
/**
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings Custom Fields
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 3.2.4
|
20 |
* @since 2.8.0
|
21 |
*/
|
22 |
function __construct() {
|
30 |
add_action( 'woocommerce_admin_field_custom_link', array( $this, 'output_custom_link' ) );
|
31 |
add_action( 'woocommerce_admin_field_module_tools', array( $this, 'output_module_tools' ) );
|
32 |
add_filter( 'woocommerce_admin_settings_sanitize_option', array( $this, 'maybe_unclean_field' ), PHP_INT_MAX, 3 );
|
33 |
+
add_action( 'woocommerce_admin_field_exchange_rate', array( $this, 'output_exchange_rate_settings_button' ) );
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
* output_exchange_rate_settings_button.
|
38 |
+
*
|
39 |
+
* @version 3.2.4
|
40 |
+
*/
|
41 |
+
function output_exchange_rate_settings_button( $value ) {
|
42 |
+
|
43 |
+
$value['type'] = 'number';
|
44 |
+
|
45 |
+
$option_value = get_option( $value['id'], $value['default'] );
|
46 |
+
|
47 |
+
// Custom attribute handling
|
48 |
+
$custom_attributes = array();
|
49 |
+
if ( ! empty( $value['custom_attributes'] ) && is_array( $value['custom_attributes'] ) ) {
|
50 |
+
foreach ( $value['custom_attributes'] as $attribute => $attribute_value ) {
|
51 |
+
$custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
52 |
+
}
|
53 |
+
} else {
|
54 |
+
$custom_attributes = array( 'step="' . sprintf( "%.12f", 1 / pow( 10, 12 ) ) . '"', 'min="0"' );
|
55 |
+
}
|
56 |
+
$custom_attributes_button = array();
|
57 |
+
if ( ! empty( $value['custom_attributes_button'] ) && is_array( $value['custom_attributes_button'] ) ) {
|
58 |
+
foreach ( $value['custom_attributes_button'] as $attribute => $attribute_value ) {
|
59 |
+
$custom_attributes_button[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
60 |
+
}
|
61 |
+
}
|
62 |
+
$tip = '';
|
63 |
+
$description = '';
|
64 |
+
$exchange_rate_server = wcj_get_currency_exchange_rate_server_name( $value['custom_attributes_button']['currency_from'], $value['custom_attributes_button']['currency_to'] );
|
65 |
+
$value_title = sprintf( __( 'Grab %s rate from %s', 'woocommerce-jetpack' ), $value['value'], $exchange_rate_server );
|
66 |
+
?>
|
67 |
+
<tr valign="top">
|
68 |
+
<th scope="row" class="titledesc">
|
69 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>"><?php echo esc_html( $value['title'] ); ?></label>
|
70 |
+
<?php echo $tip; ?>
|
71 |
+
</th>
|
72 |
+
<td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
|
73 |
+
<input
|
74 |
+
name="<?php echo esc_attr( $value['id'] ); ?>"
|
75 |
+
id="<?php echo esc_attr( $value['id'] ); ?>"
|
76 |
+
type="<?php echo esc_attr( $value['type'] ); ?>"
|
77 |
+
style="<?php echo esc_attr( $value['css'] ); ?>"
|
78 |
+
value="<?php echo esc_attr( $option_value ); ?>"
|
79 |
+
class="<?php echo esc_attr( $value['class'] ); ?>"
|
80 |
+
<?php echo implode( ' ', $custom_attributes ); ?>
|
81 |
+
/>
|
82 |
+
<input
|
83 |
+
name="<?php echo esc_attr( $value['id'] . '_button' ); ?>"
|
84 |
+
id="<?php echo esc_attr( $value['id'] . '_button' ); ?>"
|
85 |
+
type="button"
|
86 |
+
value="<?php echo esc_attr( $value['value'] ); ?>"
|
87 |
+
title="<?php echo esc_attr( $value_title ); ?>"
|
88 |
+
class="exchage_rate_button"
|
89 |
+
<?php echo implode( ' ', $custom_attributes_button ); ?>
|
90 |
+
/>
|
91 |
+
</td>
|
92 |
+
</tr>
|
93 |
+
<?php
|
94 |
}
|
95 |
|
96 |
/**
|
includes/admin/class-wcj-settings-manager.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings Manager
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -50,7 +50,7 @@ class WCJ_Settings_Manager {
|
|
50 |
/**
|
51 |
* manage_options_import.
|
52 |
*
|
53 |
-
* @version 2.
|
54 |
* @since 2.5.2
|
55 |
*/
|
56 |
function manage_options_import() {
|
@@ -73,8 +73,10 @@ class WCJ_Settings_Manager {
|
|
73 |
} else {
|
74 |
$import_settings = json_decode( $import_settings[1], true );
|
75 |
foreach ( $import_settings as $import_key => $import_setting ) {
|
76 |
-
|
77 |
-
|
|
|
|
|
78 |
}
|
79 |
$wcj_notice .= sprintf( __( '%d options successfully imported.', 'woocommerce-jetpack' ), $import_counter );
|
80 |
}
|
@@ -120,11 +122,13 @@ class WCJ_Settings_Manager {
|
|
120 |
/**
|
121 |
* manage_options_reset.
|
122 |
*
|
123 |
-
* @version 2.
|
124 |
* @since 2.5.2
|
|
|
125 |
*/
|
126 |
function manage_options_reset() {
|
127 |
global $wcj_notice;
|
|
|
128 |
$delete_counter = 0;
|
129 |
foreach ( WCJ()->modules as $module ) {
|
130 |
$values = $module->get_settings();
|
@@ -143,6 +147,24 @@ class WCJ_Settings_Manager {
|
|
143 |
if ( $delete_counter > 0 ) {
|
144 |
$wcj_notice .= sprintf( __( '%d options successfully deleted.', 'woocommerce-jetpack' ), $delete_counter );
|
145 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
146 |
}
|
147 |
|
148 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings Manager
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
50 |
/**
|
51 |
* manage_options_import.
|
52 |
*
|
53 |
+
* @version 3.2.4
|
54 |
* @since 2.5.2
|
55 |
*/
|
56 |
function manage_options_import() {
|
73 |
} else {
|
74 |
$import_settings = json_decode( $import_settings[1], true );
|
75 |
foreach ( $import_settings as $import_key => $import_setting ) {
|
76 |
+
if ( strlen( $import_key ) > 4 && 'wcj_' === substr( $import_key, 0, 4 ) ) {
|
77 |
+
update_option( $import_key, $import_setting );
|
78 |
+
$import_counter++;
|
79 |
+
}
|
80 |
}
|
81 |
$wcj_notice .= sprintf( __( '%d options successfully imported.', 'woocommerce-jetpack' ), $import_counter );
|
82 |
}
|
122 |
/**
|
123 |
* manage_options_reset.
|
124 |
*
|
125 |
+
* @version 3.2.4
|
126 |
* @since 2.5.2
|
127 |
+
* @todo clean up
|
128 |
*/
|
129 |
function manage_options_reset() {
|
130 |
global $wcj_notice;
|
131 |
+
/*
|
132 |
$delete_counter = 0;
|
133 |
foreach ( WCJ()->modules as $module ) {
|
134 |
$values = $module->get_settings();
|
147 |
if ( $delete_counter > 0 ) {
|
148 |
$wcj_notice .= sprintf( __( '%d options successfully deleted.', 'woocommerce-jetpack' ), $delete_counter );
|
149 |
}
|
150 |
+
*/
|
151 |
+
global $wpdb;
|
152 |
+
$delete_counter_meta = 0;
|
153 |
+
$plugin_meta = $wpdb->get_results( "SELECT * FROM $wpdb->postmeta WHERE meta_key LIKE '_wcj_%'" );
|
154 |
+
foreach( $plugin_meta as $meta ) {
|
155 |
+
delete_post_meta( $meta->post_id, $meta->meta_key );
|
156 |
+
$delete_counter_meta++;
|
157 |
+
}
|
158 |
+
$delete_counter_options = 0;
|
159 |
+
$plugin_options = $wpdb->get_results( "SELECT option_name FROM $wpdb->options WHERE option_name LIKE 'wcj_%'" );
|
160 |
+
foreach( $plugin_options as $option ) {
|
161 |
+
delete_option( $option->option_name );
|
162 |
+
delete_site_option( $option->option_name );
|
163 |
+
$delete_counter_options++;
|
164 |
+
}
|
165 |
+
if ( $delete_counter_meta > 0 || $delete_counter_options > 0) {
|
166 |
+
$wcj_notice .= sprintf( __( '%d options and %d meta successfully deleted.', 'woocommerce-jetpack' ), $delete_counter_options, $delete_counter_meta );
|
167 |
+
}
|
168 |
}
|
169 |
|
170 |
}
|
includes/admin/wcj-modules-cats.php
CHANGED
@@ -2,9 +2,10 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules Array
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
|
|
8 |
*/
|
9 |
|
10 |
return apply_filters( 'wcj_modules', array(
|
@@ -59,6 +60,8 @@ return apply_filters( 'wcj_modules', array(
|
|
59 |
'desc' => __( 'Bookings, Crowdfunding Products, Product Addons and Input Fields, Product Listings, Product Tabs and more.', 'woocommerce-jetpack' ),
|
60 |
'all_cat_ids' => array(
|
61 |
'product_listings',
|
|
|
|
|
62 |
'products_per_page',
|
63 |
'product_tabs',
|
64 |
'product_custom_info',
|
@@ -73,8 +76,10 @@ return apply_filters( 'wcj_modules', array(
|
|
73 |
'crowdfunding',
|
74 |
'product_addons',
|
75 |
'product_images',
|
|
|
76 |
'product_by_country',
|
77 |
'product_by_user_role',
|
|
|
78 |
'product_by_time',
|
79 |
'product_by_date',
|
80 |
'product_by_user',
|
@@ -132,6 +137,7 @@ return apply_filters( 'wcj_modules', array(
|
|
132 |
'shipping_by_order_amount',
|
133 |
'address_formats',
|
134 |
'orders',
|
|
|
135 |
'order_min_amount',
|
136 |
'order_numbers',
|
137 |
'order_custom_statuses',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Modules Array
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
+
* @todo (maybe) split "Shipping & Orders", "Cart & Checkout", "Products", "Prices & Currencies" etc.
|
9 |
*/
|
10 |
|
11 |
return apply_filters( 'wcj_modules', array(
|
60 |
'desc' => __( 'Bookings, Crowdfunding Products, Product Addons and Input Fields, Product Listings, Product Tabs and more.', 'woocommerce-jetpack' ),
|
61 |
'all_cat_ids' => array(
|
62 |
'product_listings',
|
63 |
+
'tax_display',
|
64 |
+
'admin_products_list',
|
65 |
'products_per_page',
|
66 |
'product_tabs',
|
67 |
'product_custom_info',
|
76 |
'crowdfunding',
|
77 |
'product_addons',
|
78 |
'product_images',
|
79 |
+
'sale_flash',
|
80 |
'product_by_country',
|
81 |
'product_by_user_role',
|
82 |
+
'product_custom_visibility',
|
83 |
'product_by_time',
|
84 |
'product_by_date',
|
85 |
'product_by_user',
|
137 |
'shipping_by_order_amount',
|
138 |
'address_formats',
|
139 |
'orders',
|
140 |
+
'admin_orders_list',
|
141 |
'order_min_amount',
|
142 |
'order_numbers',
|
143 |
'order_custom_statuses',
|
includes/class-wcj-admin-orders-list.php
ADDED
@@ -0,0 +1,374 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Admin Orders List
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Admin_Orders_List' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Admin_Orders_List extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
*/
|
22 |
+
function __construct() {
|
23 |
+
|
24 |
+
$this->id = 'admin_orders_list';
|
25 |
+
$this->short_desc = __( 'Admin Orders List', 'woocommerce-jetpack' );
|
26 |
+
$this->desc = __( 'Customize WooCommerce admin orders list: add custom columns; add multiple status filtering.', 'woocommerce-jetpack' );
|
27 |
+
$this->link_slug = 'woocommerce-admin-orders-list';
|
28 |
+
parent::__construct();
|
29 |
+
|
30 |
+
if ( $this->is_enabled() ) {
|
31 |
+
|
32 |
+
// Custom columns
|
33 |
+
if ( 'yes' === get_option( 'wcj_order_admin_list_custom_columns_enabled', 'no' ) ) {
|
34 |
+
add_filter( 'manage_edit-shop_order_columns', array( $this, 'add_order_columns' ), PHP_INT_MAX - 1 );
|
35 |
+
add_action( 'manage_shop_order_posts_custom_column', array( $this, 'render_order_column' ), PHP_INT_MAX );
|
36 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) || 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
37 |
+
// Billing country or Currency filtering
|
38 |
+
add_action( 'restrict_manage_posts', array( $this, 'restrict_manage_posts' ) );
|
39 |
+
add_filter( 'parse_query', array( $this, 'parse_query' ) );
|
40 |
+
}
|
41 |
+
// Maybe make sortable custom columns
|
42 |
+
add_filter( 'manage_edit-shop_order_sortable_columns', array( $this, 'shop_order_sortable_columns' ) );
|
43 |
+
add_action( 'pre_get_posts', array( $this, 'shop_order_pre_get_posts_order_by_column' ), 1 );
|
44 |
+
}
|
45 |
+
|
46 |
+
// Multiple status
|
47 |
+
if ( 'yes' === get_option( 'wcj_order_admin_list_multiple_status_enabled', 'no' ) ) {
|
48 |
+
if ( 'yes' === get_option( 'wcj_order_admin_list_multiple_status_not_completed_link', 'no' ) ) {
|
49 |
+
add_filter( 'views_edit-shop_order', array( $this, 'add_shop_order_multiple_statuses_not_completed_link' ) );
|
50 |
+
add_action( 'pre_get_posts', array( $this, 'filter_shop_order_multiple_statuses_not_completed_link' ), PHP_INT_MAX, 1 );
|
51 |
+
}
|
52 |
+
if ( 'no' != get_option( 'wcj_order_admin_list_multiple_status_filter', 'no' ) ) {
|
53 |
+
add_action( 'restrict_manage_posts', array( $this, 'add_shop_order_multiple_statuses' ), PHP_INT_MAX, 2 );
|
54 |
+
add_action( 'pre_get_posts', array( $this, 'filter_shop_order_multiple_statuses' ), PHP_INT_MAX, 1 );
|
55 |
+
}
|
56 |
+
if ( 'yes' === get_option( 'wcj_order_admin_list_hide_default_statuses_menu', 'no' ) ) {
|
57 |
+
add_action( 'admin_head', array( $this, 'hide_default_statuses_menu' ), PHP_INT_MAX );
|
58 |
+
}
|
59 |
+
}
|
60 |
+
|
61 |
+
// Columns Order
|
62 |
+
if ( 'yes' === get_option( 'wcj_order_admin_list_columns_order_enabled', 'no' ) ) {
|
63 |
+
add_filter( 'manage_edit-shop_order_columns', array( $this, 'rearange_order_columns' ), PHP_INT_MAX - 1 );
|
64 |
+
}
|
65 |
+
|
66 |
+
}
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* shop_order_pre_get_posts_order_by_column.
|
71 |
+
*
|
72 |
+
* @version 2.9.0
|
73 |
+
* @since 2.9.0
|
74 |
+
* @todo add sortable to "Billing Country" and "Currency Code"
|
75 |
+
* @todo move custom columns section (probably with reordering and multiple status sections) to new module (e.g. (Admin) Order(s) List) - same with products custom columns
|
76 |
+
* @todo (maybe) add filtering to custom columns (as it's done for "Billing Country" and "Currency Code")
|
77 |
+
*/
|
78 |
+
function shop_order_pre_get_posts_order_by_column( $query ) {
|
79 |
+
if (
|
80 |
+
$query->is_main_query() &&
|
81 |
+
( $orderby = $query->get( 'orderby' ) ) &&
|
82 |
+
isset( $query->query['post_type'] ) && 'shop_order' === $query->query['post_type'] &&
|
83 |
+
isset( $query->is_admin ) && 1 == $query->is_admin
|
84 |
+
) {
|
85 |
+
if ( 'wcj_orders_custom_column_' === substr( $orderby, 0, 25 ) ) {
|
86 |
+
$index = substr( $orderby, 25 );
|
87 |
+
$query->set( 'orderby', get_option( 'wcj_orders_list_custom_columns_sortable_' . $index, 'no' ) ); // 'meta_value' or 'meta_value_num'
|
88 |
+
$query->set( 'meta_key', get_option( 'wcj_orders_list_custom_columns_sortable_key_' . $index, '' ) );
|
89 |
+
}
|
90 |
+
}
|
91 |
+
}
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Make columns sortable.
|
95 |
+
*
|
96 |
+
* @version 2.9.0
|
97 |
+
* @since 2.9.0
|
98 |
+
* @param array $columns
|
99 |
+
* @return array
|
100 |
+
*/
|
101 |
+
function shop_order_sortable_columns( $columns ) {
|
102 |
+
$custom = array();
|
103 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
104 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
105 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
106 |
+
if ( 'no' != get_option( 'wcj_orders_list_custom_columns_sortable_' . $i, 'no' ) && '' != get_option( 'wcj_orders_list_custom_columns_sortable_key_' . $i, '' ) ) {
|
107 |
+
$custom[ 'wcj_orders_custom_column_' . $i ] = 'wcj_orders_custom_column_' . $i;
|
108 |
+
}
|
109 |
+
}
|
110 |
+
}
|
111 |
+
return ( ! empty( $custom ) ? wp_parse_args( $custom, $columns ) : $columns );
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* hide_default_statuses_menu.
|
116 |
+
*
|
117 |
+
* @version 2.5.7
|
118 |
+
* @since 2.5.7
|
119 |
+
*/
|
120 |
+
function hide_default_statuses_menu() {
|
121 |
+
echo '<style>body.post-type-shop_order ul.subsubsub {display: none !important;}</style>';
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* get_orders_default_columns_in_order.
|
126 |
+
*
|
127 |
+
* @version 2.5.7
|
128 |
+
* @since 2.5.7
|
129 |
+
*/
|
130 |
+
function get_orders_default_columns_in_order() {
|
131 |
+
$columns = array(
|
132 |
+
'cb',
|
133 |
+
'order_status',
|
134 |
+
'order_title',
|
135 |
+
'order_items',
|
136 |
+
'billing_address',
|
137 |
+
'shipping_address',
|
138 |
+
'customer_message',
|
139 |
+
'order_notes',
|
140 |
+
'order_date',
|
141 |
+
'order_total',
|
142 |
+
'order_actions',
|
143 |
+
);
|
144 |
+
return implode( PHP_EOL, $columns );
|
145 |
+
}
|
146 |
+
|
147 |
+
/**
|
148 |
+
* add_shop_order_multiple_statuses_not_completed_link.
|
149 |
+
*
|
150 |
+
* @version 2.5.7
|
151 |
+
* @since 2.5.7
|
152 |
+
*/
|
153 |
+
function add_shop_order_multiple_statuses_not_completed_link( $views ) {
|
154 |
+
global $wp_query;
|
155 |
+
if ( ! current_user_can( 'edit_others_pages' ) ) {
|
156 |
+
return $views;
|
157 |
+
}
|
158 |
+
$all_not_completed_statuses = wc_get_order_statuses();
|
159 |
+
unset( $all_not_completed_statuses['wc-completed'] );
|
160 |
+
$all_not_completed_statuses = array_keys( $all_not_completed_statuses );
|
161 |
+
$all_not_completed_statuses_param = urlencode( implode( ',', $all_not_completed_statuses ) );
|
162 |
+
$class = ( isset( $wp_query->query['post_status'] ) && is_array( $wp_query->query['post_status'] ) && $all_not_completed_statuses === $wp_query->query['post_status'] ) ? 'current' : '';
|
163 |
+
$query_string = remove_query_arg( array( 'post_status', 'wcj_admin_filter_statuses' ) );
|
164 |
+
$query_string = add_query_arg( 'post_status', $all_not_completed_statuses_param, $query_string );
|
165 |
+
$views['wcj_statuses_not_completed'] = '<a href="' . esc_url( $query_string ) . '" class="' . esc_attr( $class ) . '">' . __( 'Not Completed', 'woocommerce-jetpack' ) . '</a>';
|
166 |
+
return $views;
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* filter_shop_order_multiple_statuses_not_completed_link.
|
171 |
+
*
|
172 |
+
* @version 2.5.7
|
173 |
+
* @since 2.5.7
|
174 |
+
*/
|
175 |
+
function filter_shop_order_multiple_statuses_not_completed_link( $query ) {
|
176 |
+
if ( false !== strpos( $_SERVER['REQUEST_URI'], '/wp-admin/edit.php' ) && isset( $_GET['post_type'] ) && 'shop_order' === $_GET['post_type'] ) {
|
177 |
+
if ( current_user_can( 'edit_others_pages' ) ) {
|
178 |
+
if ( isset( $_GET['post_status'] ) && false !== strpos( $_GET['post_status'], ',' ) ) {
|
179 |
+
$post_statuses = explode( ',', $_GET['post_status'] );
|
180 |
+
$query->query['post_status'] = $post_statuses;
|
181 |
+
$query->query_vars['post_status'] = $post_statuses;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
}
|
185 |
+
}
|
186 |
+
|
187 |
+
/**
|
188 |
+
* multiple_shop_order_statuses.
|
189 |
+
*
|
190 |
+
* @version 2.5.7
|
191 |
+
* @since 2.5.7
|
192 |
+
*/
|
193 |
+
function multiple_shop_order_statuses( $type ) {
|
194 |
+
$checked_post_statuses = isset( $_GET['wcj_admin_filter_statuses'] ) ? $_GET['wcj_admin_filter_statuses'] : array();
|
195 |
+
$html = '';
|
196 |
+
$html .= ( 'checkboxes' === $type ) ?
|
197 |
+
'<span id="wcj_admin_filter_shop_order_statuses">' :
|
198 |
+
'<select multiple name="wcj_admin_filter_statuses[]" id="wcj_admin_filter_shop_order_statuses">';
|
199 |
+
$num_posts = wp_count_posts( 'shop_order', 'readable' );
|
200 |
+
foreach ( wc_get_order_statuses() as $status_id => $status_title ) {
|
201 |
+
$total_number = ( isset( $num_posts->{$status_id} ) ) ? $num_posts->{$status_id} : 0;
|
202 |
+
if ( $total_number > 0 ) {
|
203 |
+
$html .= ( 'checkboxes' === $type ) ?
|
204 |
+
'<input type="checkbox" name="wcj_admin_filter_statuses[]" value="' . $status_id . '"' . checked( in_array( $status_id, $checked_post_statuses ), true, false ) . '>' . $status_title . ' (' . $total_number . ') ' :
|
205 |
+
'<option value="' . $status_id . '"' . selected( in_array( $status_id, $checked_post_statuses ), true, false ) . '>' . $status_title . ' (' . $total_number . ') ' . '</option>';
|
206 |
+
}
|
207 |
+
}
|
208 |
+
$html .= ( 'checkboxes' === $type ) ?
|
209 |
+
'</span>' :
|
210 |
+
'</select>';
|
211 |
+
return $html;
|
212 |
+
}
|
213 |
+
|
214 |
+
/**
|
215 |
+
* add_shop_order_multiple_statuses.
|
216 |
+
*
|
217 |
+
* @version 2.5.7
|
218 |
+
* @since 2.5.7
|
219 |
+
*/
|
220 |
+
function add_shop_order_multiple_statuses( $post_type, $which ) {
|
221 |
+
if ( 'shop_order' === $post_type ) {
|
222 |
+
echo $this->multiple_shop_order_statuses( get_option( 'wcj_order_admin_list_multiple_status_filter', 'no' ) );
|
223 |
+
}
|
224 |
+
}
|
225 |
+
|
226 |
+
/**
|
227 |
+
* filter_shop_order_multiple_statuses.
|
228 |
+
*
|
229 |
+
* @version 2.5.7
|
230 |
+
* @since 2.5.7
|
231 |
+
*/
|
232 |
+
function filter_shop_order_multiple_statuses( $query ) {
|
233 |
+
if ( false !== strpos( $_SERVER['REQUEST_URI'], '/wp-admin/edit.php' ) && isset( $_GET['post_type'] ) && 'shop_order' === $_GET['post_type'] ) {
|
234 |
+
if ( current_user_can( 'edit_others_pages' ) ) {
|
235 |
+
if ( isset( $_GET['wcj_admin_filter_statuses'] ) ) {
|
236 |
+
$post_statuses = $_GET['wcj_admin_filter_statuses'];
|
237 |
+
$query->query['post_status'] = $post_statuses;
|
238 |
+
$query->query_vars['post_status'] = $post_statuses;
|
239 |
+
}
|
240 |
+
}
|
241 |
+
}
|
242 |
+
}
|
243 |
+
|
244 |
+
/**
|
245 |
+
* Filter the orders in admin based on options.
|
246 |
+
*
|
247 |
+
* @version 2.8.0
|
248 |
+
* @access public
|
249 |
+
* @param mixed $query
|
250 |
+
* @return void
|
251 |
+
*/
|
252 |
+
function parse_query( $query ) {
|
253 |
+
global $typenow, $wp_query;
|
254 |
+
if ( $typenow != 'shop_order' ) {
|
255 |
+
return;
|
256 |
+
}
|
257 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) && isset( $_GET['country'] ) && 'all' != $_GET['country'] ) {
|
258 |
+
$query->query_vars['meta_query'][] = array(
|
259 |
+
'key' => '_billing_country',
|
260 |
+
'value' => $_GET['country'],
|
261 |
+
);
|
262 |
+
}
|
263 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) && isset( $_GET['currency'] ) && 'all' != $_GET['currency'] ) {
|
264 |
+
$query->query_vars['meta_query'][] = array(
|
265 |
+
'key' => '_order_currency',
|
266 |
+
'value' => $_GET['currency'],
|
267 |
+
);
|
268 |
+
}
|
269 |
+
}
|
270 |
+
|
271 |
+
/**
|
272 |
+
* Filters for post types.
|
273 |
+
*
|
274 |
+
* @version 2.8.0
|
275 |
+
*/
|
276 |
+
function restrict_manage_posts() {
|
277 |
+
global $typenow, $wp_query;
|
278 |
+
if ( in_array( $typenow, wc_get_order_types( 'order-meta-boxes' ) ) ) {
|
279 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
280 |
+
$selected_coutry = isset( $_GET['country'] ) ? $_GET['country'] : 'all';
|
281 |
+
$countries = array_merge( array( 'all' => __( 'All countries', 'woocommerce-jetpack' ) ), wcj_get_countries() );
|
282 |
+
echo '<select id="country" name="country">';
|
283 |
+
foreach ( $countries as $code => $name ) {
|
284 |
+
echo '<option value="' . $code . '" ' . selected( $code, $selected_coutry, false ) . '>' . $name . '</option>';
|
285 |
+
}
|
286 |
+
echo '</select>';
|
287 |
+
}
|
288 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
289 |
+
$selected_currency = isset( $_GET['currency'] ) ? $_GET['currency'] : 'all';
|
290 |
+
$currencies = array_merge( array( 'all' => __( 'All currencies', 'woocommerce-jetpack' ) ), wcj_get_currencies_names_and_symbols() );
|
291 |
+
echo '<select id="currency" name="currency">';
|
292 |
+
foreach ( $currencies as $code => $name ) {
|
293 |
+
echo '<option value="' . $code . '" ' . selected( $code, $selected_currency, false ) . '>' . $name . '</option>';
|
294 |
+
}
|
295 |
+
echo '</select>';
|
296 |
+
}
|
297 |
+
}
|
298 |
+
}
|
299 |
+
|
300 |
+
/**
|
301 |
+
* rearange_order_columns.
|
302 |
+
*
|
303 |
+
* @version 2.5.7
|
304 |
+
* @version 2.5.7
|
305 |
+
*/
|
306 |
+
function rearange_order_columns( $columns ) {
|
307 |
+
$reordered_columns = get_option( 'wcj_order_admin_list_columns_order', $this->get_orders_default_columns_in_order() );
|
308 |
+
$reordered_columns = explode( PHP_EOL, $reordered_columns );
|
309 |
+
$reordered_columns_result = array();
|
310 |
+
if ( ! empty( $reordered_columns ) ) {
|
311 |
+
foreach ( $reordered_columns as $column_id ) {
|
312 |
+
$column_id = str_replace( "\n", '', $column_id );
|
313 |
+
$column_id = str_replace( "\r", '', $column_id );
|
314 |
+
if ( '' != $column_id && isset( $columns[ $column_id ] ) ) {
|
315 |
+
$reordered_columns_result[ $column_id ] = $columns[ $column_id ];
|
316 |
+
unset( $columns[ $column_id ] );
|
317 |
+
}
|
318 |
+
}
|
319 |
+
}
|
320 |
+
return array_merge( $reordered_columns_result, $columns );
|
321 |
+
}
|
322 |
+
|
323 |
+
/**
|
324 |
+
* add_order_columns.
|
325 |
+
*
|
326 |
+
* @version 2.8.0
|
327 |
+
*/
|
328 |
+
function add_order_columns( $columns ) {
|
329 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
330 |
+
$columns['country'] = __( 'Billing Country', 'woocommerce-jetpack' );
|
331 |
+
}
|
332 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
333 |
+
$columns['currency'] = __( 'Currency Code', 'woocommerce-jetpack' );
|
334 |
+
}
|
335 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
336 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
337 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
338 |
+
$columns[ 'wcj_orders_custom_column_' . $i ] = get_option( 'wcj_orders_list_custom_columns_label_' . $i, '' );
|
339 |
+
}
|
340 |
+
}
|
341 |
+
return $columns;
|
342 |
+
}
|
343 |
+
|
344 |
+
/**
|
345 |
+
* Output custom columns for orders
|
346 |
+
*
|
347 |
+
* @version 2.8.0
|
348 |
+
* @param string $column
|
349 |
+
*/
|
350 |
+
function render_order_column( $column ) {
|
351 |
+
if ( 'country' === $column && 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
352 |
+
$country_code = do_shortcode( '[wcj_order_checkout_field field_id="billing_country"]' );
|
353 |
+
echo ( 2 == strlen( $country_code ) )
|
354 |
+
? wcj_get_country_flag_by_code( $country_code ) . ' ' . wcj_get_country_name_by_code( $country_code )
|
355 |
+
: wcj_get_country_name_by_code( $country_code );
|
356 |
+
} elseif ( 'currency' === $column && 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
357 |
+
echo do_shortcode( '[wcj_order_currency]' );
|
358 |
+
} else {
|
359 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
360 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
361 |
+
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
362 |
+
if ( 'wcj_orders_custom_column_' . $i === $column ) {
|
363 |
+
echo do_shortcode( get_option( 'wcj_orders_list_custom_columns_value_' . $i, '' ) );
|
364 |
+
}
|
365 |
+
}
|
366 |
+
}
|
367 |
+
}
|
368 |
+
}
|
369 |
+
|
370 |
+
}
|
371 |
+
|
372 |
+
endif;
|
373 |
+
|
374 |
+
return new WCJ_Admin_Orders_List();
|
includes/class-wcj-admin-products-list.php
ADDED
@@ -0,0 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Admin Products List
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Admin_Products_List' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Admin_Products_List extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
*/
|
22 |
+
function __construct() {
|
23 |
+
|
24 |
+
$this->id = 'admin_products_list';
|
25 |
+
$this->short_desc = __( 'Admin Products List', 'woocommerce-jetpack' );
|
26 |
+
$this->desc = __( 'Customize WooCommerce admin products list.', 'woocommerce-jetpack' );
|
27 |
+
$this->link_slug = 'woocommerce-admin-products-list';
|
28 |
+
parent::__construct();
|
29 |
+
|
30 |
+
if ( $this->is_enabled() ) {
|
31 |
+
// Admin list - custom columns
|
32 |
+
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled', 'no' ) ) {
|
33 |
+
add_filter( 'manage_edit-product_columns', array( $this, 'add_product_columns' ), PHP_INT_MAX );
|
34 |
+
add_action( 'manage_product_posts_custom_column', array( $this, 'render_product_column' ), PHP_INT_MAX );
|
35 |
+
}
|
36 |
+
|
37 |
+
// Admin list - columns order
|
38 |
+
if ( 'yes' === get_option( 'wcj_products_admin_list_columns_order_enabled', 'no' ) ) {
|
39 |
+
add_filter( 'manage_edit-product_columns', array( $this, 'rearange_product_columns' ), PHP_INT_MAX );
|
40 |
+
}
|
41 |
+
}
|
42 |
+
}
|
43 |
+
|
44 |
+
/**
|
45 |
+
* rearange_product_columns.
|
46 |
+
*
|
47 |
+
* @version 2.9.0
|
48 |
+
* @since 2.9.0
|
49 |
+
*/
|
50 |
+
function rearange_product_columns( $columns ) {
|
51 |
+
$reordered_columns = get_option( 'wcj_products_admin_list_columns_order', $this->get_products_default_columns_in_order() );
|
52 |
+
$reordered_columns = explode( PHP_EOL, $reordered_columns );
|
53 |
+
$reordered_columns_result = array();
|
54 |
+
if ( ! empty( $reordered_columns ) ) {
|
55 |
+
foreach ( $reordered_columns as $column_id ) {
|
56 |
+
$column_id = str_replace( "\n", '', $column_id );
|
57 |
+
$column_id = str_replace( "\r", '', $column_id );
|
58 |
+
if ( '' != $column_id && isset( $columns[ $column_id ] ) ) {
|
59 |
+
$reordered_columns_result[ $column_id ] = $columns[ $column_id ];
|
60 |
+
unset( $columns[ $column_id ] );
|
61 |
+
}
|
62 |
+
}
|
63 |
+
}
|
64 |
+
return array_merge( $reordered_columns_result, $columns );
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* get_products_default_columns_in_order.
|
69 |
+
*
|
70 |
+
* @version 2.9.0
|
71 |
+
* @since 2.9.0
|
72 |
+
*/
|
73 |
+
function get_products_default_columns_in_order() {
|
74 |
+
$columns = array(
|
75 |
+
'cb',
|
76 |
+
'thumb',
|
77 |
+
'name',
|
78 |
+
'sku',
|
79 |
+
'is_in_stock',
|
80 |
+
'price',
|
81 |
+
'product_cat',
|
82 |
+
'product_tag',
|
83 |
+
'featured',
|
84 |
+
'product_type',
|
85 |
+
'date',
|
86 |
+
);
|
87 |
+
return implode( PHP_EOL, $columns );
|
88 |
+
}
|
89 |
+
|
90 |
+
/**
|
91 |
+
* add_product_columns.
|
92 |
+
*
|
93 |
+
* @version 2.9.0
|
94 |
+
* @since 2.9.0
|
95 |
+
*/
|
96 |
+
function add_product_columns( $columns ) {
|
97 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
98 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
99 |
+
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
100 |
+
$columns[ 'wcj_products_custom_column_' . $i ] = get_option( 'wcj_products_admin_list_custom_columns_label_' . $i, '' );
|
101 |
+
}
|
102 |
+
}
|
103 |
+
return $columns;
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* render_product_column.
|
108 |
+
*
|
109 |
+
* @version 2.9.0
|
110 |
+
* @since 2.9.0
|
111 |
+
*/
|
112 |
+
function render_product_column( $column ) {
|
113 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
114 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
115 |
+
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
116 |
+
if ( 'wcj_products_custom_column_' . $i === $column ) {
|
117 |
+
echo do_shortcode( get_option( 'wcj_products_admin_list_custom_columns_value_' . $i, '' ) );
|
118 |
+
}
|
119 |
+
}
|
120 |
+
}
|
121 |
+
}
|
122 |
+
|
123 |
+
}
|
124 |
+
|
125 |
+
endif;
|
126 |
+
|
127 |
+
return new WCJ_Admin_Products_List();
|
includes/class-wcj-call-for-price.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Call for Price
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,7 +15,9 @@ class WCJ_Call_For_Price extends WCJ_module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 2.
|
|
|
|
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
@@ -25,67 +27,143 @@ class WCJ_Call_For_Price extends WCJ_module {
|
|
25 |
$this->link_slug = 'woocommerce-call-for-price';
|
26 |
parent::__construct();
|
27 |
|
28 |
-
// Defaults
|
29 |
-
$this->default_empty_price_text = '<strong>Call for price</strong>';
|
30 |
-
|
31 |
if ( $this->is_enabled() ) {
|
32 |
-
|
33 |
-
|
34 |
-
|
|
|
|
|
|
|
35 |
if ( 'yes' === get_option( 'wcj_call_for_price_make_all_empty', 'no' ) ) {
|
36 |
-
add_filter( WCJ_PRODUCT_GET_PRICE_FILTER,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
}
|
38 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
}
|
40 |
|
41 |
/**
|
42 |
* make_empty_price.
|
43 |
*
|
44 |
-
* @version 2.
|
45 |
* @since 2.5.7
|
46 |
*/
|
47 |
function make_empty_price( $price, $_product ) {
|
48 |
-
return
|
49 |
}
|
50 |
|
51 |
/**
|
52 |
-
*
|
|
|
|
|
53 |
*/
|
54 |
-
function
|
55 |
-
add_filter( 'woocommerce_empty_price_html',
|
|
|
|
|
|
|
56 |
}
|
57 |
|
58 |
/**
|
59 |
* Hide "sales" icon for empty price products.
|
|
|
|
|
|
|
60 |
*/
|
61 |
function hide_sales_flash( $onsale_html, $post, $product ) {
|
62 |
-
if ( get_option('wcj_call_for_price_hide_sale_sign')
|
63 |
-
|
64 |
-
return '';
|
65 |
-
}
|
66 |
}
|
67 |
return $onsale_html;
|
68 |
}
|
69 |
|
70 |
/**
|
71 |
* On empty price filter - return the label.
|
|
|
|
|
|
|
72 |
*/
|
73 |
-
function on_empty_price( $price ) {
|
74 |
-
if (
|
75 |
-
return do_shortcode( apply_filters( 'booster_get_option',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
}
|
77 |
-
if ( ( get_option( 'wcj_call_for_price_text_on_related' ) !== '' ) && ( is_single() ) && ( ! is_single( get_the_ID() ) ) ) {
|
78 |
-
return do_shortcode( apply_filters( 'booster_get_option', $this->default_empty_price_text, get_option( 'wcj_call_for_price_text_on_related' ) ) );
|
79 |
-
}
|
80 |
-
if ( ( get_option( 'wcj_call_for_price_text_on_archive' ) !== '' ) && is_archive() ) {
|
81 |
-
return do_shortcode( apply_filters( 'booster_get_option', $this->default_empty_price_text, get_option( 'wcj_call_for_price_text_on_archive' ) ) );
|
82 |
-
}
|
83 |
-
if ( ( get_option( 'wcj_call_for_price_text_on_home' ) !== '' ) && is_front_page() ) {
|
84 |
-
return do_shortcode( apply_filters( 'booster_get_option', $this->default_empty_price_text, get_option( 'wcj_call_for_price_text_on_home' ) ) );
|
85 |
-
}
|
86 |
-
|
87 |
-
// No changes
|
88 |
-
return $price;
|
89 |
}
|
90 |
|
91 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Call for Price
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
+
* @todo add "per product type" labels
|
20 |
+
* @todo add "per product" labels
|
21 |
*/
|
22 |
function __construct() {
|
23 |
|
27 |
$this->link_slug = 'woocommerce-call-for-price';
|
28 |
parent::__construct();
|
29 |
|
|
|
|
|
|
|
30 |
if ( $this->is_enabled() ) {
|
31 |
+
add_filter( 'woocommerce_get_variation_prices_hash', array( $this, 'get_variation_prices_hash' ), PHP_INT_MAX, 3 );
|
32 |
+
add_action( 'init', array( $this, 'add_empty_price_hooks' ), PHP_INT_MAX );
|
33 |
+
add_filter( 'woocommerce_sale_flash', array( $this, 'hide_sales_flash' ), PHP_INT_MAX, 3 );
|
34 |
+
add_action( 'admin_head', array( $this, 'hide_variation_price_required_placeholder' ), PHP_INT_MAX );
|
35 |
+
add_filter( 'woocommerce_variation_is_visible', array( $this, 'make_variation_visible_with_empty_price' ), PHP_INT_MAX, 4 );
|
36 |
+
add_action( 'wp_head', array( $this, 'hide_disabled_variation_add_to_cart_button' ) );
|
37 |
if ( 'yes' === get_option( 'wcj_call_for_price_make_all_empty', 'no' ) ) {
|
38 |
+
add_filter( WCJ_PRODUCT_GET_PRICE_FILTER, array( $this, 'make_empty_price' ), PHP_INT_MAX, 2 );
|
39 |
+
add_filter( 'woocommerce_variation_prices_price', array( $this, 'make_empty_price' ), PHP_INT_MAX, 2 );
|
40 |
+
if ( ! WCJ_IS_WC_VERSION_BELOW_3 ) {
|
41 |
+
add_filter( 'woocommerce_product_variation_get_price', array( $this, 'make_empty_price' ), PHP_INT_MAX, 2 );
|
42 |
+
}
|
43 |
+
}
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
* get_variation_prices_hash.
|
49 |
+
*
|
50 |
+
* @version 3.2.4
|
51 |
+
* @since 3.2.4
|
52 |
+
* @todo not sure if this is really needed
|
53 |
+
*/
|
54 |
+
function get_variation_prices_hash( $price_hash, $_product, $display ) {
|
55 |
+
$price_hash['wcj_call_for_price'] = array(
|
56 |
+
get_option( 'wcj_call_for_price_make_all_empty', 'no' ),
|
57 |
+
);
|
58 |
+
return $price_hash;
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* make_variation_visible_with_empty_price.
|
63 |
+
*
|
64 |
+
* @version 3.2.4
|
65 |
+
* @since 3.2.4
|
66 |
+
* @return bool
|
67 |
+
*/
|
68 |
+
function make_variation_visible_with_empty_price( $visible, $_variation_id, $_id, $_product ) {
|
69 |
+
if ( '' === $_product->get_price() ) {
|
70 |
+
$visible = true;
|
71 |
+
// Published == enabled checkbox
|
72 |
+
if ( get_post_status( $_variation_id ) != 'publish' ) {
|
73 |
+
$visible = false;
|
74 |
}
|
75 |
}
|
76 |
+
return $visible;
|
77 |
+
}
|
78 |
+
|
79 |
+
/**
|
80 |
+
* hide_disabled_variation_add_to_cart_button.
|
81 |
+
*
|
82 |
+
* @version 3.2.4
|
83 |
+
* @since 3.2.4
|
84 |
+
*/
|
85 |
+
function hide_disabled_variation_add_to_cart_button() {
|
86 |
+
echo '<style>div.woocommerce-variation-add-to-cart-disabled { display: none ! important; }</style>';
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* hide_variation_price_required_placeholder.
|
91 |
+
*
|
92 |
+
* @version 3.2.4
|
93 |
+
* @since 3.2.4
|
94 |
+
*/
|
95 |
+
function hide_variation_price_required_placeholder() {
|
96 |
+
echo '<style>
|
97 |
+
div.variable_pricing input.wc_input_price::-webkit-input-placeholder { /* WebKit browsers */
|
98 |
+
color: transparent;
|
99 |
+
}
|
100 |
+
div.variable_pricing input.wc_input_price:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
|
101 |
+
color: transparent;
|
102 |
+
}
|
103 |
+
div.variable_pricing input.wc_input_price::-moz-placeholder { /* Mozilla Firefox 19+ */
|
104 |
+
color: transparent;
|
105 |
+
}
|
106 |
+
div.variable_pricing input.wc_input_price:-ms-input-placeholder { /* Internet Explorer 10+ */
|
107 |
+
color: transparent;
|
108 |
+
}
|
109 |
+
</style>';
|
110 |
}
|
111 |
|
112 |
/**
|
113 |
* make_empty_price.
|
114 |
*
|
115 |
+
* @version 3.2.4
|
116 |
* @since 2.5.7
|
117 |
*/
|
118 |
function make_empty_price( $price, $_product ) {
|
119 |
+
return '';
|
120 |
}
|
121 |
|
122 |
/**
|
123 |
+
* add_empty_price_hooks.
|
124 |
+
*
|
125 |
+
* @version 3.2.4
|
126 |
*/
|
127 |
+
function add_empty_price_hooks() {
|
128 |
+
add_filter( 'woocommerce_empty_price_html', array( $this, 'on_empty_price' ), PHP_INT_MAX, 2 );
|
129 |
+
add_filter( 'woocommerce_variable_empty_price_html', array( $this, 'on_empty_price' ), PHP_INT_MAX, 2 );
|
130 |
+
add_filter( 'woocommerce_grouped_empty_price_html', array( $this, 'on_empty_price' ), PHP_INT_MAX, 2 );
|
131 |
+
add_filter( 'woocommerce_variation_empty_price_html', array( $this, 'on_empty_price' ), PHP_INT_MAX, 2 ); // Only in < WC3
|
132 |
}
|
133 |
|
134 |
/**
|
135 |
* Hide "sales" icon for empty price products.
|
136 |
+
*
|
137 |
+
* @version 3.2.4
|
138 |
+
* @todo recheck if we really need this
|
139 |
*/
|
140 |
function hide_sales_flash( $onsale_html, $post, $product ) {
|
141 |
+
if ( 'yes' === get_option( 'wcj_call_for_price_hide_sale_sign', 'yes' ) && '' === $product->get_price() ) {
|
142 |
+
return '';
|
|
|
|
|
143 |
}
|
144 |
return $onsale_html;
|
145 |
}
|
146 |
|
147 |
/**
|
148 |
* On empty price filter - return the label.
|
149 |
+
*
|
150 |
+
* @version 3.2.4
|
151 |
+
* @todo `is_page()`
|
152 |
*/
|
153 |
+
function on_empty_price( $price, $_product ) {
|
154 |
+
if ( '' !== get_option( 'wcj_call_for_price_text_variation' ) && $_product->is_type( 'variation' ) ) {
|
155 |
+
return do_shortcode( apply_filters( 'booster_get_option', '<strong>Call for price</strong>', get_option( 'wcj_call_for_price_text_variation' ) ) );
|
156 |
+
} elseif ( '' !== get_option( 'wcj_call_for_price_text' ) && is_single( get_the_ID() ) ) {
|
157 |
+
return do_shortcode( apply_filters( 'booster_get_option', '<strong>Call for price</strong>', get_option( 'wcj_call_for_price_text' ) ) );
|
158 |
+
} elseif ( '' !== get_option( 'wcj_call_for_price_text_on_related' ) && is_single() && ! is_single( get_the_ID() ) ) {
|
159 |
+
return do_shortcode( apply_filters( 'booster_get_option', '<strong>Call for price</strong>', get_option( 'wcj_call_for_price_text_on_related' ) ) );
|
160 |
+
} elseif ( '' !== get_option( 'wcj_call_for_price_text_on_archive' ) && is_archive() ) {
|
161 |
+
return do_shortcode( apply_filters( 'booster_get_option', '<strong>Call for price</strong>', get_option( 'wcj_call_for_price_text_on_archive' ) ) );
|
162 |
+
} elseif ( '' !== get_option( 'wcj_call_for_price_text_on_home' ) && is_front_page() ) {
|
163 |
+
return do_shortcode( apply_filters( 'booster_get_option', '<strong>Call for price</strong>', get_option( 'wcj_call_for_price_text_on_home' ) ) );
|
164 |
+
} else {
|
165 |
+
return $price;
|
166 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
}
|
168 |
|
169 |
}
|
includes/class-wcj-checkout-custom-fields.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Checkout Custom Fields
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -16,6 +16,7 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
16 |
* Constructor.
|
17 |
*
|
18 |
* @version 3.2.2
|
|
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
@@ -103,12 +104,15 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
103 |
/**
|
104 |
* add_checkout_custom_fields_customer_meta_fields.
|
105 |
*
|
106 |
-
* @version 2.4
|
107 |
* @since 2.4.5
|
108 |
*/
|
109 |
function add_checkout_custom_fields_customer_meta_fields( $fields ) {
|
110 |
for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_checkout_custom_fields_total_number', 1 ) ); $i++ ) {
|
111 |
if ( 'yes' === get_option( 'wcj_checkout_custom_field_enabled_' . $i ) ) {
|
|
|
|
|
|
|
112 |
$the_section = get_option( 'wcj_checkout_custom_field_section_' . $i );
|
113 |
$the_key = 'wcj_checkout_field_' . $i;
|
114 |
$the_name = $the_section . '_' . $the_key;
|
@@ -462,8 +466,9 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
462 |
/**
|
463 |
* is_visible.
|
464 |
*
|
465 |
-
* @version 2.
|
466 |
* @since 2.6.0
|
|
|
467 |
*/
|
468 |
function is_visible( $i ) {
|
469 |
|
@@ -522,6 +527,25 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
522 |
return false;
|
523 |
}
|
524 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
525 |
// All passed
|
526 |
return true;
|
527 |
}
|
@@ -529,7 +553,7 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
529 |
/**
|
530 |
* add_custom_checkout_fields.
|
531 |
*
|
532 |
-
* @version 2.
|
533 |
* @todo (maybe) fix - priority seems to not affect tab order (same in Checkout Core Fields module)
|
534 |
*/
|
535 |
function add_custom_checkout_fields( $fields ) {
|
@@ -593,7 +617,7 @@ class WCJ_Checkout_Custom_Fields extends WCJ_Module {
|
|
593 |
if ( 'select' === $the_type ) {
|
594 |
$placeholder = get_option( 'wcj_checkout_custom_field_placeholder_' . $i );
|
595 |
if ( '' != $placeholder ) {
|
596 |
-
$select_options =
|
597 |
}
|
598 |
}
|
599 |
$the_field['options'] = $select_options;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Checkout Custom Fields
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
16 |
* Constructor.
|
17 |
*
|
18 |
* @version 3.2.2
|
19 |
+
* @todo (maybe) check if `'wcj_checkout_custom_field_customer_meta_fields_' . $i` option should affect `add_default_checkout_custom_fields`
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
104 |
/**
|
105 |
* add_checkout_custom_fields_customer_meta_fields.
|
106 |
*
|
107 |
+
* @version 3.2.4
|
108 |
* @since 2.4.5
|
109 |
*/
|
110 |
function add_checkout_custom_fields_customer_meta_fields( $fields ) {
|
111 |
for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_checkout_custom_fields_total_number', 1 ) ); $i++ ) {
|
112 |
if ( 'yes' === get_option( 'wcj_checkout_custom_field_enabled_' . $i ) ) {
|
113 |
+
if ( 'no' === get_option( 'wcj_checkout_custom_field_customer_meta_fields_' . $i, 'yes' ) ) {
|
114 |
+
continue;
|
115 |
+
}
|
116 |
$the_section = get_option( 'wcj_checkout_custom_field_section_' . $i );
|
117 |
$the_key = 'wcj_checkout_field_' . $i;
|
118 |
$the_name = $the_section . '_' . $the_key;
|
466 |
/**
|
467 |
* is_visible.
|
468 |
*
|
469 |
+
* @version 3.2.4
|
470 |
* @since 2.6.0
|
471 |
+
* @todo add "user roles to include/exclude"
|
472 |
*/
|
473 |
function is_visible( $i ) {
|
474 |
|
527 |
return false;
|
528 |
}
|
529 |
|
530 |
+
// Checking min/max cart amount
|
531 |
+
$cart_total = false;
|
532 |
+
if ( ( $min_cart_amount = get_option( 'wcj_checkout_custom_field_min_cart_amount_' . $i, 0 ) ) > 0 ) {
|
533 |
+
WC()->cart->calculate_totals();
|
534 |
+
$cart_total = WC()->cart->total;
|
535 |
+
if ( $cart_total < $min_cart_amount ) {
|
536 |
+
return false;
|
537 |
+
}
|
538 |
+
}
|
539 |
+
if ( ( $max_cart_amount = get_option( 'wcj_checkout_custom_field_max_cart_amount_' . $i, 0 ) ) > 0 ) {
|
540 |
+
if ( false === $cart_total ) {
|
541 |
+
WC()->cart->calculate_totals();
|
542 |
+
$cart_total = WC()->cart->total;
|
543 |
+
}
|
544 |
+
if ( $cart_total > $max_cart_amount ) {
|
545 |
+
return false;
|
546 |
+
}
|
547 |
+
}
|
548 |
+
|
549 |
// All passed
|
550 |
return true;
|
551 |
}
|
553 |
/**
|
554 |
* add_custom_checkout_fields.
|
555 |
*
|
556 |
+
* @version 3.2.4
|
557 |
* @todo (maybe) fix - priority seems to not affect tab order (same in Checkout Core Fields module)
|
558 |
*/
|
559 |
function add_custom_checkout_fields( $fields ) {
|
617 |
if ( 'select' === $the_type ) {
|
618 |
$placeholder = get_option( 'wcj_checkout_custom_field_placeholder_' . $i );
|
619 |
if ( '' != $placeholder ) {
|
620 |
+
$select_options = array_replace( array( '' => $placeholder ), $select_options );
|
621 |
}
|
622 |
}
|
623 |
$the_field['options'] = $select_options;
|
includes/class-wcj-currencies.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currencies
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,13 +15,13 @@ class WCJ_Currencies extends WCJ_Module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 2.4
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
$this->id = 'currency';
|
23 |
$this->short_desc = __( 'Currencies', 'woocommerce-jetpack' );
|
24 |
-
$this->desc = __( 'Add all world currencies to your WooCommerce store; change currency symbol.', 'woocommerce-jetpack' );
|
25 |
$this->link_slug = 'woocommerce-all-currencies';
|
26 |
parent::__construct();
|
27 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currencies
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
$this->id = 'currency';
|
23 |
$this->short_desc = __( 'Currencies', 'woocommerce-jetpack' );
|
24 |
+
$this->desc = __( 'Add all world currencies and cryptocurrencies to your WooCommerce store; change currency symbol.', 'woocommerce-jetpack' );
|
25 |
$this->link_slug = 'woocommerce-all-currencies';
|
26 |
parent::__construct();
|
27 |
|
includes/class-wcj-currency-exchange-rates.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currency Exchange Rates
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.3.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -50,7 +50,7 @@ class WCJ_Currency_Exchange_Rates extends WCJ_Module {
|
|
50 |
/**
|
51 |
* add_currency_pair_setting.
|
52 |
*
|
53 |
-
* @version 2.
|
54 |
*/
|
55 |
function add_currency_pair_setting( $currency_from, $currency_to, $settings ) {
|
56 |
if ( $currency_from != $currency_to ) {
|
@@ -70,9 +70,7 @@ class WCJ_Currency_Exchange_Rates extends WCJ_Module {
|
|
70 |
'id' => $field_id,
|
71 |
'default' => 0,
|
72 |
'type' => 'exchange_rate',
|
73 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
74 |
'custom_attributes_button' => $custom_attributes,
|
75 |
-
'css' => 'width:100px;',
|
76 |
'value' => $currency_from . '/' . $currency_to,
|
77 |
);
|
78 |
}
|
@@ -151,18 +149,54 @@ class WCJ_Currency_Exchange_Rates extends WCJ_Module {
|
|
151 |
return $currencies;
|
152 |
}
|
153 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
/**
|
155 |
* get_all_currencies_exchange_rates_settings.
|
156 |
*
|
157 |
-
* @version 2.
|
158 |
* @since 2.9.0
|
159 |
*/
|
160 |
-
function get_all_currencies_exchange_rates_settings() {
|
|
|
|
|
|
|
|
|
|
|
161 |
$settings = array();
|
162 |
$currency_from = get_option( 'woocommerce_currency' );
|
163 |
$currencies = $this->get_all_currencies_exchange_rates_currencies();
|
164 |
foreach ( $currencies as $currency ) {
|
165 |
$settings = $this->add_currency_pair_setting( $currency_from, $currency, $settings );
|
|
|
|
|
|
|
166 |
}
|
167 |
return $settings;
|
168 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currency Exchange Rates
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.3.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
50 |
/**
|
51 |
* add_currency_pair_setting.
|
52 |
*
|
53 |
+
* @version 3.2.4
|
54 |
*/
|
55 |
function add_currency_pair_setting( $currency_from, $currency_to, $settings ) {
|
56 |
if ( $currency_from != $currency_to ) {
|
70 |
'id' => $field_id,
|
71 |
'default' => 0,
|
72 |
'type' => 'exchange_rate',
|
|
|
73 |
'custom_attributes_button' => $custom_attributes,
|
|
|
74 |
'value' => $currency_from . '/' . $currency_to,
|
75 |
);
|
76 |
}
|
149 |
return $currencies;
|
150 |
}
|
151 |
|
152 |
+
/**
|
153 |
+
* add_currency_pair_server_setting.
|
154 |
+
*
|
155 |
+
* @version 3.2.4
|
156 |
+
* @since 3.2.4
|
157 |
+
*/
|
158 |
+
function add_currency_pair_server_setting( $currency_from, $currency_to, $default_server, $settings ) {
|
159 |
+
if ( $currency_from != $currency_to ) {
|
160 |
+
$field_id = 'wcj_currency_exchange_rates_server_' . sanitize_title( $currency_from . $currency_to );
|
161 |
+
foreach ( $settings as $setting ) {
|
162 |
+
if ( $setting['id'] === $field_id ) {
|
163 |
+
return $settings;
|
164 |
+
}
|
165 |
+
}
|
166 |
+
$settings[] = array(
|
167 |
+
'desc' => __( 'Exchange Rates Server', 'woocommerce-jetpack' ),
|
168 |
+
'id' => $field_id,
|
169 |
+
'default' => 'default_server',
|
170 |
+
'type' => 'select',
|
171 |
+
'options' => array_merge(
|
172 |
+
array( 'default_server' => sprintf( __( 'Use default: %s', 'woocommerce-jetpack' ), $default_server ) ),
|
173 |
+
wcj_get_currency_exchange_rate_servers()
|
174 |
+
),
|
175 |
+
);
|
176 |
+
}
|
177 |
+
return $settings;
|
178 |
+
}
|
179 |
+
|
180 |
/**
|
181 |
* get_all_currencies_exchange_rates_settings.
|
182 |
*
|
183 |
+
* @version 3.2.4
|
184 |
* @since 2.9.0
|
185 |
*/
|
186 |
+
function get_all_currencies_exchange_rates_settings( $add_server = false ) {
|
187 |
+
if ( $add_server ) {
|
188 |
+
$exchange_rate_servers = wcj_get_currency_exchange_rate_servers();
|
189 |
+
$exchange_rate_server = get_option( 'wcj_currency_exchange_rates_server', 'ecb' );
|
190 |
+
$default_server = ( isset( $exchange_rate_servers[ $exchange_rate_server ] ) ? $exchange_rate_servers[ $exchange_rate_server ] : $exchange_rate_server );
|
191 |
+
}
|
192 |
$settings = array();
|
193 |
$currency_from = get_option( 'woocommerce_currency' );
|
194 |
$currencies = $this->get_all_currencies_exchange_rates_currencies();
|
195 |
foreach ( $currencies as $currency ) {
|
196 |
$settings = $this->add_currency_pair_setting( $currency_from, $currency, $settings );
|
197 |
+
if ( $add_server ) {
|
198 |
+
$settings = $this->add_currency_pair_server_setting( $currency_from, $currency, $default_server, $settings );
|
199 |
+
}
|
200 |
}
|
201 |
return $settings;
|
202 |
}
|
includes/class-wcj-currency-per-product.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currency per Product
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.5.2
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -18,6 +18,7 @@ class WCJ_Currency_Per_Product extends WCJ_Module {
|
|
18 |
*
|
19 |
* @version 2.8.0
|
20 |
* @since 2.5.2
|
|
|
21 |
*/
|
22 |
function __construct() {
|
23 |
|
@@ -420,14 +421,17 @@ class WCJ_Currency_Per_Product extends WCJ_Module {
|
|
420 |
/**
|
421 |
* change_currency_symbol.
|
422 |
*
|
423 |
-
* @version 2.
|
424 |
* @since 2.5.2
|
|
|
425 |
*/
|
426 |
function change_currency_symbol( $currency_symbol, $currency ) {
|
427 |
if ( false != ( $_currency = $this->get_current_product_id_and_currency() ) ) {
|
428 |
-
|
|
|
|
|
429 |
} elseif ( $this->is_cart_or_checkout_or_ajax() ) {
|
430 |
-
return ( false != ( $_currency = $this->get_cart_checkout_currency() ) ) ? wcj_get_currency_symbol( $_currency ) : $currency_symbol;
|
431 |
}
|
432 |
return $currency_symbol;
|
433 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Currency per Product
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.2
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
18 |
*
|
19 |
* @version 2.8.0
|
20 |
* @since 2.5.2
|
21 |
+
* @todo (maybe) add `$this->price_hooks_priority`
|
22 |
*/
|
23 |
function __construct() {
|
24 |
|
421 |
/**
|
422 |
* change_currency_symbol.
|
423 |
*
|
424 |
+
* @version 3.2.4
|
425 |
* @since 2.5.2
|
426 |
+
* @todo check do we really need this function? isn't `change_currency_code()` enough?
|
427 |
*/
|
428 |
function change_currency_symbol( $currency_symbol, $currency ) {
|
429 |
if ( false != ( $_currency = $this->get_current_product_id_and_currency() ) ) {
|
430 |
+
if ( $currency === $_currency ) {
|
431 |
+
return wcj_get_currency_symbol( $_currency );
|
432 |
+
}
|
433 |
} elseif ( $this->is_cart_or_checkout_or_ajax() ) {
|
434 |
+
return ( false != ( $_currency = $this->get_cart_checkout_currency() ) && $currency === $_currency ) ? wcj_get_currency_symbol( $_currency ) : $currency_symbol;
|
435 |
}
|
436 |
return $currency_symbol;
|
437 |
}
|
includes/class-wcj-eu-vat-number.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - EU VAT Number
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.3.9
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -343,7 +343,7 @@ class WCJ_EU_VAT_Number extends WCJ_Module {
|
|
343 |
/**
|
344 |
* maybe_exclude_vat.
|
345 |
*
|
346 |
-
* @version 2.
|
347 |
*/
|
348 |
// function maybe_exclude_vat( $matched_tax_rates, $args ) {
|
349 |
function maybe_exclude_vat() {
|
@@ -364,7 +364,7 @@ class WCJ_EU_VAT_Number extends WCJ_Module {
|
|
364 |
if ( 'EL' === $selected_country ) {
|
365 |
$selected_country = 'GR';
|
366 |
}
|
367 |
-
$preserve_base_country_check_passed = ( $location['country'] !== $selected_country )
|
368 |
}
|
369 |
if ( $preserve_base_country_check_passed ) {
|
370 |
/* $modified_matched_tax_rates = array();
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - EU VAT Number
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.3.9
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
343 |
/**
|
344 |
* maybe_exclude_vat.
|
345 |
*
|
346 |
+
* @version 3.2.4
|
347 |
*/
|
348 |
// function maybe_exclude_vat( $matched_tax_rates, $args ) {
|
349 |
function maybe_exclude_vat() {
|
364 |
if ( 'EL' === $selected_country ) {
|
365 |
$selected_country = 'GR';
|
366 |
}
|
367 |
+
$preserve_base_country_check_passed = ( strtoupper( $location['country'] ) !== strtoupper( $selected_country ) );
|
368 |
}
|
369 |
if ( $preserve_base_country_check_passed ) {
|
370 |
/* $modified_matched_tax_rates = array();
|
includes/class-wcj-multicurrency.php
CHANGED
@@ -52,7 +52,7 @@ class WCJ_Multicurrency extends WCJ_Module {
|
|
52 |
* add_hooks.
|
53 |
*
|
54 |
* @version 3.2.2
|
55 |
-
* @todo (maybe) replace all `PHP_INT_MAX - 1` with `$this->price_hooks_priority`
|
56 |
*/
|
57 |
function add_hooks() {
|
58 |
// Session
|
52 |
* add_hooks.
|
53 |
*
|
54 |
* @version 3.2.2
|
55 |
+
* @todo (maybe) replace all `PHP_INT_MAX - 1` with `$this->price_hooks_priority` (especially for `woocommerce_currency_symbol` and `woocommerce_currency`)
|
56 |
*/
|
57 |
function add_hooks() {
|
58 |
// Session
|
includes/class-wcj-order-min-amount.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Order Minimum Amount
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.5.7
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo order max amount
|
@@ -89,10 +89,13 @@ class WCJ_Order_Min_Amount extends WCJ_Module {
|
|
89 |
/**
|
90 |
* get_cart_total_for_minimal_order_amount.
|
91 |
*
|
92 |
-
* @version 2.
|
93 |
* @since 2.5.5
|
94 |
*/
|
95 |
function get_cart_total_for_minimal_order_amount() {
|
|
|
|
|
|
|
96 |
WC()->cart->calculate_totals();
|
97 |
$cart_total = WC()->cart->total;
|
98 |
if ( 'yes' === get_option( 'wcj_order_minimum_amount_exclude_shipping', 'no' ) ) {
|
@@ -100,6 +103,9 @@ class WCJ_Order_Min_Amount extends WCJ_Module {
|
|
100 |
$shipping_tax_total = isset( WC()->cart->shipping_tax_total ) ? WC()->cart->shipping_tax_total : 0;
|
101 |
$cart_total -= ( $shipping_total + $shipping_tax_total );
|
102 |
}
|
|
|
|
|
|
|
103 |
return $cart_total;
|
104 |
}
|
105 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Order Minimum Amount
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.7
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo order max amount
|
89 |
/**
|
90 |
* get_cart_total_for_minimal_order_amount.
|
91 |
*
|
92 |
+
* @version 3.2.4
|
93 |
* @since 2.5.5
|
94 |
*/
|
95 |
function get_cart_total_for_minimal_order_amount() {
|
96 |
+
if ( ! isset( WC()->cart ) ) {
|
97 |
+
return 0;
|
98 |
+
}
|
99 |
WC()->cart->calculate_totals();
|
100 |
$cart_total = WC()->cart->total;
|
101 |
if ( 'yes' === get_option( 'wcj_order_minimum_amount_exclude_shipping', 'no' ) ) {
|
103 |
$shipping_tax_total = isset( WC()->cart->shipping_tax_total ) ? WC()->cart->shipping_tax_total : 0;
|
104 |
$cart_total -= ( $shipping_total + $shipping_tax_total );
|
105 |
}
|
106 |
+
if ( 'yes' === get_option( 'wcj_order_minimum_amount_exclude_discounts', 'no' ) ) {
|
107 |
+
$cart_total += ( WC()->cart->get_cart_discount_total() + WC()->cart->get_cart_discount_tax_total() );
|
108 |
+
}
|
109 |
return $cart_total;
|
110 |
}
|
111 |
|
includes/class-wcj-orders.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Orders
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,13 +15,16 @@ class WCJ_Orders extends WCJ_Module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.2.
|
|
|
|
|
|
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
$this->id = 'orders';
|
23 |
$this->short_desc = __( 'Orders', 'woocommerce-jetpack' );
|
24 |
-
$this->desc = __( '
|
25 |
$this->link_slug = 'woocommerce-orders';
|
26 |
parent::__construct();
|
27 |
|
@@ -33,15 +36,6 @@ class WCJ_Orders extends WCJ_Module {
|
|
33 |
add_action( 'woocommerce_payment_complete', array( $this, 'auto_complete_order' ), PHP_INT_MAX );
|
34 |
}
|
35 |
|
36 |
-
// Custom columns
|
37 |
-
add_filter( 'manage_edit-shop_order_columns', array( $this, 'add_order_columns' ), PHP_INT_MAX - 1 );
|
38 |
-
add_action( 'manage_shop_order_posts_custom_column', array( $this, 'render_order_column' ), PHP_INT_MAX );
|
39 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) || 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
40 |
-
// Billing country or Currency filtering
|
41 |
-
add_action( 'restrict_manage_posts', array( $this, 'restrict_manage_posts' ) );
|
42 |
-
add_filter( 'parse_query', array( $this, 'parse_query' ) );
|
43 |
-
}
|
44 |
-
|
45 |
// Order currency
|
46 |
if ( 'yes' === get_option( 'wcj_order_admin_currency', 'no' ) ) {
|
47 |
$this->meta_box_screen = 'shop_order';
|
@@ -53,28 +47,6 @@ class WCJ_Orders extends WCJ_Module {
|
|
53 |
}
|
54 |
}
|
55 |
|
56 |
-
// Multiple status
|
57 |
-
if ( 'yes' === get_option( 'wcj_order_admin_list_multiple_status_not_completed_link', 'no' ) ) {
|
58 |
-
add_filter( 'views_edit-shop_order', array( $this, 'add_shop_order_multiple_statuses_not_completed_link' ) );
|
59 |
-
add_action( 'pre_get_posts', array( $this, 'filter_shop_order_multiple_statuses_not_completed_link' ), PHP_INT_MAX, 1 );
|
60 |
-
}
|
61 |
-
if ( 'no' != get_option( 'wcj_order_admin_list_multiple_status_filter', 'no' ) ) {
|
62 |
-
add_action( 'restrict_manage_posts', array( $this, 'add_shop_order_multiple_statuses' ), PHP_INT_MAX, 2 );
|
63 |
-
add_action( 'pre_get_posts', array( $this, 'filter_shop_order_multiple_statuses' ), PHP_INT_MAX, 1 );
|
64 |
-
}
|
65 |
-
if ( 'yes' === get_option( 'wcj_order_admin_list_hide_default_statuses_menu', 'no' ) ) {
|
66 |
-
add_action( 'admin_head', array( $this, 'hide_default_statuses_menu' ), PHP_INT_MAX );
|
67 |
-
}
|
68 |
-
|
69 |
-
// Columns Order
|
70 |
-
if ( 'yes' === get_option( 'wcj_order_admin_list_columns_order_enabled', 'no' ) ) {
|
71 |
-
add_filter( 'manage_edit-shop_order_columns', array( $this, 'rearange_order_columns' ), PHP_INT_MAX - 1 );
|
72 |
-
}
|
73 |
-
|
74 |
-
// Maybe make sortable custom columns
|
75 |
-
add_filter( 'manage_edit-shop_order_sortable_columns', array( $this, 'shop_order_sortable_columns' ) );
|
76 |
-
add_action( 'pre_get_posts', array( $this, 'shop_order_pre_get_posts_order_by_column' ), 1 );
|
77 |
-
|
78 |
// Bulk Regenerate Download Permissions
|
79 |
if ( 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_order_bulk_regenerate_download_permissions_enabled', 'no' ) ) ) {
|
80 |
// Actions
|
@@ -86,11 +58,31 @@ class WCJ_Orders extends WCJ_Module {
|
|
86 |
add_action( 'woojetpack_after_settings_save', array( $this, 'maybe_bulk_regenerate_download_permissions_all_orders' ) );
|
87 |
// Admin notices
|
88 |
add_filter( 'admin_notices', array( $this, 'admin_notice_regenerate_download_permissions' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
}
|
90 |
|
91 |
}
|
92 |
}
|
93 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
/**
|
95 |
* handle_bulk_actions_regenerate_download_permissions.
|
96 |
*
|
@@ -190,181 +182,6 @@ class WCJ_Orders extends WCJ_Module {
|
|
190 |
}
|
191 |
}
|
192 |
|
193 |
-
/**
|
194 |
-
* shop_order_pre_get_posts_order_by_column.
|
195 |
-
*
|
196 |
-
* @version 2.9.0
|
197 |
-
* @since 2.9.0
|
198 |
-
* @todo add sortable to "Billing Country" and "Currency Code"
|
199 |
-
* @todo move custom columns section (probably with reordering and multiple status sections) to new module (e.g. (Admin) Order(s) List) - same with products custom columns
|
200 |
-
* @todo (maybe) add filtering to custom columns (as it's done for "Billing Country" and "Currency Code")
|
201 |
-
*/
|
202 |
-
function shop_order_pre_get_posts_order_by_column( $query ) {
|
203 |
-
if (
|
204 |
-
$query->is_main_query() &&
|
205 |
-
( $orderby = $query->get( 'orderby' ) ) &&
|
206 |
-
isset( $query->query['post_type'] ) && 'shop_order' === $query->query['post_type'] &&
|
207 |
-
isset( $query->is_admin ) && 1 == $query->is_admin
|
208 |
-
) {
|
209 |
-
if ( 'wcj_orders_custom_column_' === substr( $orderby, 0, 25 ) ) {
|
210 |
-
$index = substr( $orderby, 25 );
|
211 |
-
$query->set( 'orderby', get_option( 'wcj_orders_list_custom_columns_sortable_' . $index, 'no' ) ); // 'meta_value' or 'meta_value_num'
|
212 |
-
$query->set( 'meta_key', get_option( 'wcj_orders_list_custom_columns_sortable_key_' . $index, '' ) );
|
213 |
-
}
|
214 |
-
}
|
215 |
-
}
|
216 |
-
|
217 |
-
/**
|
218 |
-
* Make columns sortable.
|
219 |
-
*
|
220 |
-
* @version 2.9.0
|
221 |
-
* @since 2.9.0
|
222 |
-
* @param array $columns
|
223 |
-
* @return array
|
224 |
-
*/
|
225 |
-
function shop_order_sortable_columns( $columns ) {
|
226 |
-
$custom = array();
|
227 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
228 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
229 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
230 |
-
if ( 'no' != get_option( 'wcj_orders_list_custom_columns_sortable_' . $i, 'no' ) && '' != get_option( 'wcj_orders_list_custom_columns_sortable_key_' . $i, '' ) ) {
|
231 |
-
$custom[ 'wcj_orders_custom_column_' . $i ] = 'wcj_orders_custom_column_' . $i;
|
232 |
-
}
|
233 |
-
}
|
234 |
-
}
|
235 |
-
return ( ! empty( $custom ) ? wp_parse_args( $custom, $columns ) : $columns );
|
236 |
-
}
|
237 |
-
|
238 |
-
/**
|
239 |
-
* hide_default_statuses_menu.
|
240 |
-
*
|
241 |
-
* @version 2.5.7
|
242 |
-
* @since 2.5.7
|
243 |
-
*/
|
244 |
-
function hide_default_statuses_menu() {
|
245 |
-
echo '<style>body.post-type-shop_order ul.subsubsub {display: none !important;}</style>';
|
246 |
-
}
|
247 |
-
|
248 |
-
/**
|
249 |
-
* get_orders_default_columns_in_order.
|
250 |
-
*
|
251 |
-
* @version 2.5.7
|
252 |
-
* @since 2.5.7
|
253 |
-
*/
|
254 |
-
function get_orders_default_columns_in_order() {
|
255 |
-
$columns = array(
|
256 |
-
'cb',
|
257 |
-
'order_status',
|
258 |
-
'order_title',
|
259 |
-
'order_items',
|
260 |
-
'billing_address',
|
261 |
-
'shipping_address',
|
262 |
-
'customer_message',
|
263 |
-
'order_notes',
|
264 |
-
'order_date',
|
265 |
-
'order_total',
|
266 |
-
'order_actions',
|
267 |
-
);
|
268 |
-
return implode( PHP_EOL, $columns );
|
269 |
-
}
|
270 |
-
|
271 |
-
/**
|
272 |
-
* add_shop_order_multiple_statuses_not_completed_link.
|
273 |
-
*
|
274 |
-
* @version 2.5.7
|
275 |
-
* @since 2.5.7
|
276 |
-
*/
|
277 |
-
function add_shop_order_multiple_statuses_not_completed_link( $views ) {
|
278 |
-
global $wp_query;
|
279 |
-
if ( ! current_user_can( 'edit_others_pages' ) ) {
|
280 |
-
return $views;
|
281 |
-
}
|
282 |
-
$all_not_completed_statuses = wc_get_order_statuses();
|
283 |
-
unset( $all_not_completed_statuses['wc-completed'] );
|
284 |
-
$all_not_completed_statuses = array_keys( $all_not_completed_statuses );
|
285 |
-
$all_not_completed_statuses_param = urlencode( implode( ',', $all_not_completed_statuses ) );
|
286 |
-
$class = ( isset( $wp_query->query['post_status'] ) && is_array( $wp_query->query['post_status'] ) && $all_not_completed_statuses === $wp_query->query['post_status'] ) ? 'current' : '';
|
287 |
-
$query_string = remove_query_arg( array( 'post_status', 'wcj_admin_filter_statuses' ) );
|
288 |
-
$query_string = add_query_arg( 'post_status', $all_not_completed_statuses_param, $query_string );
|
289 |
-
$views['wcj_statuses_not_completed'] = '<a href="' . esc_url( $query_string ) . '" class="' . esc_attr( $class ) . '">' . __( 'Not Completed', 'woocommerce-jetpack' ) . '</a>';
|
290 |
-
return $views;
|
291 |
-
}
|
292 |
-
|
293 |
-
/**
|
294 |
-
* filter_shop_order_multiple_statuses_not_completed_link.
|
295 |
-
*
|
296 |
-
* @version 2.5.7
|
297 |
-
* @since 2.5.7
|
298 |
-
*/
|
299 |
-
function filter_shop_order_multiple_statuses_not_completed_link( $query ) {
|
300 |
-
if ( false !== strpos( $_SERVER['REQUEST_URI'], '/wp-admin/edit.php' ) && isset( $_GET['post_type'] ) && 'shop_order' === $_GET['post_type'] ) {
|
301 |
-
if ( current_user_can( 'edit_others_pages' ) ) {
|
302 |
-
if ( isset( $_GET['post_status'] ) && false !== strpos( $_GET['post_status'], ',' ) ) {
|
303 |
-
$post_statuses = explode( ',', $_GET['post_status'] );
|
304 |
-
$query->query['post_status'] = $post_statuses;
|
305 |
-
$query->query_vars['post_status'] = $post_statuses;
|
306 |
-
}
|
307 |
-
}
|
308 |
-
}
|
309 |
-
}
|
310 |
-
|
311 |
-
/**
|
312 |
-
* multiple_shop_order_statuses.
|
313 |
-
*
|
314 |
-
* @version 2.5.7
|
315 |
-
* @since 2.5.7
|
316 |
-
*/
|
317 |
-
function multiple_shop_order_statuses( $type ) {
|
318 |
-
$checked_post_statuses = isset( $_GET['wcj_admin_filter_statuses'] ) ? $_GET['wcj_admin_filter_statuses'] : array();
|
319 |
-
$html = '';
|
320 |
-
$html .= ( 'checkboxes' === $type ) ?
|
321 |
-
'<span id="wcj_admin_filter_shop_order_statuses">' :
|
322 |
-
'<select multiple name="wcj_admin_filter_statuses[]" id="wcj_admin_filter_shop_order_statuses">';
|
323 |
-
$num_posts = wp_count_posts( 'shop_order', 'readable' );
|
324 |
-
foreach ( wc_get_order_statuses() as $status_id => $status_title ) {
|
325 |
-
$total_number = ( isset( $num_posts->{$status_id} ) ) ? $num_posts->{$status_id} : 0;
|
326 |
-
if ( $total_number > 0 ) {
|
327 |
-
$html .= ( 'checkboxes' === $type ) ?
|
328 |
-
'<input type="checkbox" name="wcj_admin_filter_statuses[]" value="' . $status_id . '"' . checked( in_array( $status_id, $checked_post_statuses ), true, false ) . '>' . $status_title . ' (' . $total_number . ') ' :
|
329 |
-
'<option value="' . $status_id . '"' . selected( in_array( $status_id, $checked_post_statuses ), true, false ) . '>' . $status_title . ' (' . $total_number . ') ' . '</option>';
|
330 |
-
}
|
331 |
-
}
|
332 |
-
$html .= ( 'checkboxes' === $type ) ?
|
333 |
-
'</span>' :
|
334 |
-
'</select>';
|
335 |
-
return $html;
|
336 |
-
}
|
337 |
-
|
338 |
-
/**
|
339 |
-
* add_shop_order_multiple_statuses.
|
340 |
-
*
|
341 |
-
* @version 2.5.7
|
342 |
-
* @since 2.5.7
|
343 |
-
*/
|
344 |
-
function add_shop_order_multiple_statuses( $post_type, $which ) {
|
345 |
-
if ( 'shop_order' === $post_type ) {
|
346 |
-
echo $this->multiple_shop_order_statuses( get_option( 'wcj_order_admin_list_multiple_status_filter', 'no' ) );
|
347 |
-
}
|
348 |
-
}
|
349 |
-
|
350 |
-
/**
|
351 |
-
* filter_shop_order_multiple_statuses.
|
352 |
-
*
|
353 |
-
* @version 2.5.7
|
354 |
-
* @since 2.5.7
|
355 |
-
*/
|
356 |
-
function filter_shop_order_multiple_statuses( $query ) {
|
357 |
-
if ( false !== strpos( $_SERVER['REQUEST_URI'], '/wp-admin/edit.php' ) && isset( $_GET['post_type'] ) && 'shop_order' === $_GET['post_type'] ) {
|
358 |
-
if ( current_user_can( 'edit_others_pages' ) ) {
|
359 |
-
if ( isset( $_GET['wcj_admin_filter_statuses'] ) ) {
|
360 |
-
$post_statuses = $_GET['wcj_admin_filter_statuses'];
|
361 |
-
$query->query['post_status'] = $post_statuses;
|
362 |
-
$query->query_vars['post_status'] = $post_statuses;
|
363 |
-
}
|
364 |
-
}
|
365 |
-
}
|
366 |
-
}
|
367 |
-
|
368 |
/**
|
369 |
* change_order_currency.
|
370 |
*
|
@@ -375,132 +192,6 @@ class WCJ_Orders extends WCJ_Module {
|
|
375 |
return ( '' != ( $wcj_order_currency = get_post_meta( wcj_get_order_id( $_order ), '_' . 'wcj_order_currency', true ) ) ) ? $wcj_order_currency : $order_currency;
|
376 |
}
|
377 |
|
378 |
-
/**
|
379 |
-
* Filter the orders in admin based on options.
|
380 |
-
*
|
381 |
-
* @version 2.8.0
|
382 |
-
* @access public
|
383 |
-
* @param mixed $query
|
384 |
-
* @return void
|
385 |
-
*/
|
386 |
-
function parse_query( $query ) {
|
387 |
-
global $typenow, $wp_query;
|
388 |
-
if ( $typenow != 'shop_order' ) {
|
389 |
-
return;
|
390 |
-
}
|
391 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) && isset( $_GET['country'] ) && 'all' != $_GET['country'] ) {
|
392 |
-
$query->query_vars['meta_query'][] = array(
|
393 |
-
'key' => '_billing_country',
|
394 |
-
'value' => $_GET['country'],
|
395 |
-
);
|
396 |
-
}
|
397 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) && isset( $_GET['currency'] ) && 'all' != $_GET['currency'] ) {
|
398 |
-
$query->query_vars['meta_query'][] = array(
|
399 |
-
'key' => '_order_currency',
|
400 |
-
'value' => $_GET['currency'],
|
401 |
-
);
|
402 |
-
}
|
403 |
-
}
|
404 |
-
|
405 |
-
/**
|
406 |
-
* Filters for post types.
|
407 |
-
*
|
408 |
-
* @version 2.8.0
|
409 |
-
*/
|
410 |
-
function restrict_manage_posts() {
|
411 |
-
global $typenow, $wp_query;
|
412 |
-
if ( in_array( $typenow, wc_get_order_types( 'order-meta-boxes' ) ) ) {
|
413 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
414 |
-
$selected_coutry = isset( $_GET['country'] ) ? $_GET['country'] : 'all';
|
415 |
-
$countries = array_merge( array( 'all' => __( 'All countries', 'woocommerce-jetpack' ) ), wcj_get_countries() );
|
416 |
-
echo '<select id="country" name="country">';
|
417 |
-
foreach ( $countries as $code => $name ) {
|
418 |
-
echo '<option value="' . $code . '" ' . selected( $code, $selected_coutry, false ) . '>' . $name . '</option>';
|
419 |
-
}
|
420 |
-
echo '</select>';
|
421 |
-
}
|
422 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
423 |
-
$selected_currency = isset( $_GET['currency'] ) ? $_GET['currency'] : 'all';
|
424 |
-
$currencies = array_merge( array( 'all' => __( 'All currencies', 'woocommerce-jetpack' ) ), wcj_get_currencies_names_and_symbols() );
|
425 |
-
echo '<select id="currency" name="currency">';
|
426 |
-
foreach ( $currencies as $code => $name ) {
|
427 |
-
echo '<option value="' . $code . '" ' . selected( $code, $selected_currency, false ) . '>' . $name . '</option>';
|
428 |
-
}
|
429 |
-
echo '</select>';
|
430 |
-
}
|
431 |
-
}
|
432 |
-
}
|
433 |
-
|
434 |
-
/**
|
435 |
-
* rearange_order_columns.
|
436 |
-
*
|
437 |
-
* @version 2.5.7
|
438 |
-
* @version 2.5.7
|
439 |
-
*/
|
440 |
-
function rearange_order_columns( $columns ) {
|
441 |
-
$reordered_columns = get_option( 'wcj_order_admin_list_columns_order', $this->get_orders_default_columns_in_order() );
|
442 |
-
$reordered_columns = explode( PHP_EOL, $reordered_columns );
|
443 |
-
$reordered_columns_result = array();
|
444 |
-
if ( ! empty( $reordered_columns ) ) {
|
445 |
-
foreach ( $reordered_columns as $column_id ) {
|
446 |
-
$column_id = str_replace( "\n", '', $column_id );
|
447 |
-
$column_id = str_replace( "\r", '', $column_id );
|
448 |
-
if ( '' != $column_id && isset( $columns[ $column_id ] ) ) {
|
449 |
-
$reordered_columns_result[ $column_id ] = $columns[ $column_id ];
|
450 |
-
unset( $columns[ $column_id ] );
|
451 |
-
}
|
452 |
-
}
|
453 |
-
}
|
454 |
-
return array_merge( $reordered_columns_result, $columns );
|
455 |
-
}
|
456 |
-
|
457 |
-
/**
|
458 |
-
* add_order_columns.
|
459 |
-
*
|
460 |
-
* @version 2.8.0
|
461 |
-
*/
|
462 |
-
function add_order_columns( $columns ) {
|
463 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
464 |
-
$columns['country'] = __( 'Billing Country', 'woocommerce-jetpack' );
|
465 |
-
}
|
466 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
467 |
-
$columns['currency'] = __( 'Currency Code', 'woocommerce-jetpack' );
|
468 |
-
}
|
469 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
470 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
471 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
472 |
-
$columns[ 'wcj_orders_custom_column_' . $i ] = get_option( 'wcj_orders_list_custom_columns_label_' . $i, '' );
|
473 |
-
}
|
474 |
-
}
|
475 |
-
return $columns;
|
476 |
-
}
|
477 |
-
|
478 |
-
/**
|
479 |
-
* Output custom columns for orders
|
480 |
-
*
|
481 |
-
* @version 2.8.0
|
482 |
-
* @param string $column
|
483 |
-
*/
|
484 |
-
function render_order_column( $column ) {
|
485 |
-
if ( 'country' === $column && 'yes' === get_option( 'wcj_orders_list_custom_columns_country', 'no' ) ) {
|
486 |
-
$country_code = do_shortcode( '[wcj_order_checkout_field field_id="billing_country"]' );
|
487 |
-
echo ( 2 == strlen( $country_code ) )
|
488 |
-
? wcj_get_country_flag_by_code( $country_code ) . ' ' . wcj_get_country_name_by_code( $country_code )
|
489 |
-
: wcj_get_country_name_by_code( $country_code );
|
490 |
-
} elseif ( 'currency' === $column && 'yes' === get_option( 'wcj_orders_list_custom_columns_currency', 'no' ) ) {
|
491 |
-
echo do_shortcode( '[wcj_order_currency]' );
|
492 |
-
} else {
|
493 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
494 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
495 |
-
if ( 'yes' === get_option( 'wcj_orders_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
496 |
-
if ( 'wcj_orders_custom_column_' . $i === $column ) {
|
497 |
-
echo do_shortcode( get_option( 'wcj_orders_list_custom_columns_value_' . $i, '' ) );
|
498 |
-
}
|
499 |
-
}
|
500 |
-
}
|
501 |
-
}
|
502 |
-
}
|
503 |
-
|
504 |
/**
|
505 |
* Auto Complete all WooCommerce orders.
|
506 |
*
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Orders
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
+
* @todo Bulk Regenerate Download Permissions - copy "cron" to plugin
|
20 |
+
* @todo Bulk Regenerate Download Permissions - maybe move "bulk actions" to free
|
21 |
+
* @todo Bulk Regenerate Download Permissions - maybe as new module
|
22 |
*/
|
23 |
function __construct() {
|
24 |
|
25 |
$this->id = 'orders';
|
26 |
$this->short_desc = __( 'Orders', 'woocommerce-jetpack' );
|
27 |
+
$this->desc = __( 'WooCommerce orders auto-complete; admin order currency; bulk regenerate download permissions for orders.', 'woocommerce-jetpack' );
|
28 |
$this->link_slug = 'woocommerce-orders';
|
29 |
parent::__construct();
|
30 |
|
36 |
add_action( 'woocommerce_payment_complete', array( $this, 'auto_complete_order' ), PHP_INT_MAX );
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
// Order currency
|
40 |
if ( 'yes' === get_option( 'wcj_order_admin_currency', 'no' ) ) {
|
41 |
$this->meta_box_screen = 'shop_order';
|
47 |
}
|
48 |
}
|
49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
// Bulk Regenerate Download Permissions
|
51 |
if ( 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_order_bulk_regenerate_download_permissions_enabled', 'no' ) ) ) {
|
52 |
// Actions
|
58 |
add_action( 'woojetpack_after_settings_save', array( $this, 'maybe_bulk_regenerate_download_permissions_all_orders' ) );
|
59 |
// Admin notices
|
60 |
add_filter( 'admin_notices', array( $this, 'admin_notice_regenerate_download_permissions' ) );
|
61 |
+
// All orders - Cron
|
62 |
+
if ( 'disabled' != apply_filters( 'booster_get_option', 'disabled', get_option( 'wcj_order_bulk_regenerate_download_permissions_all_orders_cron', 'disabled' ) ) ) {
|
63 |
+
add_action( 'init', array( $this, 'schedule_bulk_regenerate_download_permissions_all_orders_cron' ) );
|
64 |
+
add_action( 'admin_init', array( $this, 'schedule_bulk_regenerate_download_permissions_all_orders_cron' ) );
|
65 |
+
add_filter( 'cron_schedules', 'wcj_crons_add_custom_intervals' );
|
66 |
+
add_action( 'wcj_bulk_regenerate_download_permissions_all_orders_cron', array( $this, 'bulk_regenerate_download_permissions_all_orders' ) );
|
67 |
+
}
|
68 |
}
|
69 |
|
70 |
}
|
71 |
}
|
72 |
|
73 |
+
/**
|
74 |
+
* schedule_bulk_regenerate_download_permissions_all_orders_cron.
|
75 |
+
*
|
76 |
+
* @version 3.2.4
|
77 |
+
* @since 3.2.4
|
78 |
+
*/
|
79 |
+
function schedule_bulk_regenerate_download_permissions_all_orders_cron() {
|
80 |
+
wcj_crons_schedule_the_events(
|
81 |
+
'wcj_bulk_regenerate_download_permissions_all_orders_cron',
|
82 |
+
apply_filters( 'booster_get_option', 'disabled', get_option( 'wcj_order_bulk_regenerate_download_permissions_all_orders_cron', 'disabled' ) )
|
83 |
+
);
|
84 |
+
}
|
85 |
+
|
86 |
/**
|
87 |
* handle_bulk_actions_regenerate_download_permissions.
|
88 |
*
|
182 |
}
|
183 |
}
|
184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
/**
|
186 |
* change_order_currency.
|
187 |
*
|
192 |
return ( '' != ( $wcj_order_currency = get_post_meta( wcj_get_order_id( $_order ), '_' . 'wcj_order_currency', true ) ) ) ? $wcj_order_currency : $order_currency;
|
193 |
}
|
194 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
/**
|
196 |
* Auto Complete all WooCommerce orders.
|
197 |
*
|
includes/class-wcj-price-formats.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Price Formats
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.5.2
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -42,7 +42,7 @@ class WCJ_Price_Formats extends WCJ_Module {
|
|
42 |
/**
|
43 |
* price_format.
|
44 |
*
|
45 |
-
* @version 2.
|
46 |
* @since 2.5.2
|
47 |
*/
|
48 |
function price_format( $args ) {
|
@@ -55,6 +55,8 @@ class WCJ_Price_Formats extends WCJ_Module {
|
|
55 |
}
|
56 |
}
|
57 |
$args['price_format'] = $this->get_woocommerce_price_format( get_option( 'wcj_price_formats_currency_position_' . $i ) );
|
|
|
|
|
58 |
$args['decimal_separator'] = get_option( 'wcj_price_formats_decimal_separator_' . $i );
|
59 |
$args['thousand_separator'] = get_option( 'wcj_price_formats_thousand_separator_' . $i );
|
60 |
$args['decimals'] = absint( get_option( 'wcj_price_formats_number_of_decimals_' . $i ) );
|
@@ -64,6 +66,27 @@ class WCJ_Price_Formats extends WCJ_Module {
|
|
64 |
return $args;
|
65 |
}
|
66 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
/**
|
68 |
* get_woocommerce_price_format.
|
69 |
*
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Price Formats
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.2
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
42 |
/**
|
43 |
* price_format.
|
44 |
*
|
45 |
+
* @version 3.2.4
|
46 |
* @since 2.5.2
|
47 |
*/
|
48 |
function price_format( $args ) {
|
55 |
}
|
56 |
}
|
57 |
$args['price_format'] = $this->get_woocommerce_price_format( get_option( 'wcj_price_formats_currency_position_' . $i ) );
|
58 |
+
$args['price_format'] = $this->get_woocommerce_price_format_currency_code(
|
59 |
+
get_option( 'wcj_price_formats_currency_code_position_' . $i, 'none' ), get_option( 'wcj_price_formats_currency_' . $i ), $args['price_format'] );
|
60 |
$args['decimal_separator'] = get_option( 'wcj_price_formats_decimal_separator_' . $i );
|
61 |
$args['thousand_separator'] = get_option( 'wcj_price_formats_thousand_separator_' . $i );
|
62 |
$args['decimals'] = absint( get_option( 'wcj_price_formats_number_of_decimals_' . $i ) );
|
66 |
return $args;
|
67 |
}
|
68 |
|
69 |
+
/**
|
70 |
+
* get_woocommerce_price_format_currency_code.
|
71 |
+
*
|
72 |
+
* @version 3.2.4
|
73 |
+
* @since 3.2.4
|
74 |
+
*/
|
75 |
+
function get_woocommerce_price_format_currency_code( $currency_code_pos, $currency, $price_format ) {
|
76 |
+
switch ( $currency_code_pos ) {
|
77 |
+
case 'left' :
|
78 |
+
return $currency . $price_format;
|
79 |
+
case 'right' :
|
80 |
+
return $price_format . $currency;
|
81 |
+
case 'left_space' :
|
82 |
+
return $currency . ' ' . $price_format;
|
83 |
+
case 'right_space' :
|
84 |
+
return $price_format . ' ' . $currency;
|
85 |
+
default: // 'none'
|
86 |
+
return $price_format;
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
/**
|
91 |
* get_woocommerce_price_format.
|
92 |
*
|
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 2.
|
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 2.
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
@@ -82,6 +82,10 @@ class WCJ_Product_Add_To_Cart extends WCJ_Module {
|
|
82 |
if ( 'yes' === get_option( 'wcj_add_to_cart_quantity_disable', 'no' ) || 'yes' === get_option( 'wcj_add_to_cart_quantity_disable_cart', 'no' ) ) {
|
83 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_disable_quantity_add_to_cart_script' ) );
|
84 |
}
|
|
|
|
|
|
|
|
|
85 |
|
86 |
// Button - Disabling - Archives
|
87 |
if ( 'yes' === get_option( 'wcj_add_to_cart_button_disable_archives', 'no' ) ) {
|
@@ -233,13 +237,17 @@ class WCJ_Product_Add_To_Cart extends WCJ_Module {
|
|
233 |
/**
|
234 |
* replace_external_with_custom_add_to_cart_in_loop.
|
235 |
*
|
236 |
-
* @version 2.
|
237 |
* @since 2.5.3
|
238 |
*/
|
239 |
function replace_external_with_custom_add_to_cart_in_loop( $link_html ) {
|
240 |
global $product;
|
241 |
if ( $product->is_type( 'external' ) ) {
|
242 |
-
|
|
|
|
|
|
|
|
|
243 |
}
|
244 |
return $link_html;
|
245 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Add To Cart
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 3.2.4
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
82 |
if ( 'yes' === get_option( 'wcj_add_to_cart_quantity_disable', 'no' ) || 'yes' === get_option( 'wcj_add_to_cart_quantity_disable_cart', 'no' ) ) {
|
83 |
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_disable_quantity_add_to_cart_script' ) );
|
84 |
}
|
85 |
+
// Quantity - Sold individually
|
86 |
+
if ( 'yes' === get_option( 'wcj_add_to_cart_quantity_sold_individually_all', 'no' ) ) {
|
87 |
+
add_filter( 'woocommerce_is_sold_individually', '__return_true', PHP_INT_MAX );
|
88 |
+
}
|
89 |
|
90 |
// Button - Disabling - Archives
|
91 |
if ( 'yes' === get_option( 'wcj_add_to_cart_button_disable_archives', 'no' ) ) {
|
237 |
/**
|
238 |
* replace_external_with_custom_add_to_cart_in_loop.
|
239 |
*
|
240 |
+
* @version 3.2.4
|
241 |
* @since 2.5.3
|
242 |
*/
|
243 |
function replace_external_with_custom_add_to_cart_in_loop( $link_html ) {
|
244 |
global $product;
|
245 |
if ( $product->is_type( 'external' ) ) {
|
246 |
+
if ( false !== strpos( $link_html, '<a rel=' ) ) {
|
247 |
+
$link_html = str_replace( '<a rel=', '<a target="_blank" rel=', $link_html );
|
248 |
+
} else {
|
249 |
+
$link_html = str_replace( '<a href=', '<a target="_blank" href=', $link_html );
|
250 |
+
}
|
251 |
}
|
252 |
return $link_html;
|
253 |
}
|
includes/class-wcj-product-addons.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Addons
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.5.3
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo admin order view (names);
|
@@ -17,7 +17,7 @@ class WCJ_Product_Addons extends WCJ_Module {
|
|
17 |
/**
|
18 |
* Constructor.
|
19 |
*
|
20 |
-
* @version 2.
|
21 |
* @since 2.5.3
|
22 |
* @todo (maybe) add "in progress" ajax message
|
23 |
* @todo (maybe) for variable products - show addons only if variation is selected (e.g. move to addons from `woocommerce_before_add_to_cart_button` to variation description)
|
@@ -46,7 +46,8 @@ class WCJ_Product_Addons extends WCJ_Module {
|
|
46 |
add_action( 'wp_ajax_nopriv_product_addons_price_change', array( $this, 'price_change_ajax' ) );
|
47 |
}
|
48 |
// Single Page
|
49 |
-
add_action( 'woocommerce_before_add_to_cart_button', array( $this, 'add_addons_to_frontend' ),
|
|
|
50 |
// Add to cart
|
51 |
add_filter( 'woocommerce_add_cart_item_data', array( $this, 'add_addons_price_to_cart_item_data' ), PHP_INT_MAX, 3 );
|
52 |
add_filter( 'woocommerce_add_cart_item', array( $this, 'add_addons_price_to_cart_item' ), PHP_INT_MAX, 2 );
|
@@ -133,12 +134,12 @@ class WCJ_Product_Addons extends WCJ_Module {
|
|
133 |
/**
|
134 |
* price_change_ajax.
|
135 |
*
|
136 |
-
* @version 3.2.
|
137 |
* @since 2.5.3
|
138 |
*/
|
139 |
function price_change_ajax( $param ) {
|
140 |
if ( ! isset( $_POST['product_id'] ) || 0 == $_POST['product_id'] ) {
|
141 |
-
|
142 |
}
|
143 |
$the_product = wc_get_product( $_POST['product_id'] );
|
144 |
$parent_product_id = ( $the_product->is_type( 'variation' ) ) ? wp_get_post_parent_id( $_POST['product_id'] ) : $_POST['product_id'];
|
@@ -169,7 +170,7 @@ class WCJ_Product_Addons extends WCJ_Module {
|
|
169 |
} else {
|
170 |
echo $the_product->get_price_html();
|
171 |
}
|
172 |
-
|
173 |
}
|
174 |
|
175 |
/**
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Addons
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.3
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo admin order view (names);
|
17 |
/**
|
18 |
* Constructor.
|
19 |
*
|
20 |
+
* @version 3.2.4
|
21 |
* @since 2.5.3
|
22 |
* @todo (maybe) add "in progress" ajax message
|
23 |
* @todo (maybe) for variable products - show addons only if variation is selected (e.g. move to addons from `woocommerce_before_add_to_cart_button` to variation description)
|
46 |
add_action( 'wp_ajax_nopriv_product_addons_price_change', array( $this, 'price_change_ajax' ) );
|
47 |
}
|
48 |
// Single Page
|
49 |
+
add_action( 'woocommerce_before_add_to_cart_button', array( $this, 'add_addons_to_frontend' ),
|
50 |
+
( 0 == ( $position_priority = get_option( 'wcj_product_addons_position_priority', 0 ) ) ? PHP_INT_MAX : $position_priority ) );
|
51 |
// Add to cart
|
52 |
add_filter( 'woocommerce_add_cart_item_data', array( $this, 'add_addons_price_to_cart_item_data' ), PHP_INT_MAX, 3 );
|
53 |
add_filter( 'woocommerce_add_cart_item', array( $this, 'add_addons_price_to_cart_item' ), PHP_INT_MAX, 2 );
|
134 |
/**
|
135 |
* price_change_ajax.
|
136 |
*
|
137 |
+
* @version 3.2.4
|
138 |
* @since 2.5.3
|
139 |
*/
|
140 |
function price_change_ajax( $param ) {
|
141 |
if ( ! isset( $_POST['product_id'] ) || 0 == $_POST['product_id'] ) {
|
142 |
+
die();
|
143 |
}
|
144 |
$the_product = wc_get_product( $_POST['product_id'] );
|
145 |
$parent_product_id = ( $the_product->is_type( 'variation' ) ) ? wp_get_post_parent_id( $_POST['product_id'] ) : $_POST['product_id'];
|
170 |
} else {
|
171 |
echo $the_product->get_price_html();
|
172 |
}
|
173 |
+
die();
|
174 |
}
|
175 |
|
176 |
/**
|
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 |
*/
|
@@ -96,7 +96,7 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
96 |
/**
|
97 |
* price_change_ajax.
|
98 |
*
|
99 |
-
* @version 2.
|
100 |
* @since 2.5.0
|
101 |
*/
|
102 |
function price_change_ajax( $param ) {
|
@@ -110,7 +110,7 @@ class WCJ_Product_Bookings extends WCJ_Module {
|
|
110 |
$the_price = $days_diff * $price_per_day;
|
111 |
echo wc_price( $the_price );
|
112 |
}
|
113 |
-
|
114 |
}
|
115 |
|
116 |
/**
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Bookings
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
96 |
/**
|
97 |
* price_change_ajax.
|
98 |
*
|
99 |
+
* @version 3.2.4
|
100 |
* @since 2.5.0
|
101 |
*/
|
102 |
function price_change_ajax( $param ) {
|
110 |
$the_price = $days_diff * $price_per_day;
|
111 |
echo wc_price( $the_price );
|
112 |
}
|
113 |
+
die();
|
114 |
}
|
115 |
|
116 |
/**
|
includes/class-wcj-product-by-country.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Visibility by Country
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.5.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -176,12 +176,12 @@ class WCJ_Product_By_Country extends WCJ_Module {
|
|
176 |
/**
|
177 |
* save_country_in_session.
|
178 |
*
|
179 |
-
* @version 3.
|
180 |
* @since 3.1.0
|
181 |
*/
|
182 |
function save_country_in_session() {
|
|
|
183 |
if ( isset( $_REQUEST['wcj_country_selector'] ) ) {
|
184 |
-
wcj_session_maybe_start();
|
185 |
wcj_session_set( 'wcj_selected_country', $_REQUEST['wcj_country_selector'] );
|
186 |
}
|
187 |
}
|
@@ -189,14 +189,13 @@ class WCJ_Product_By_Country extends WCJ_Module {
|
|
189 |
/**
|
190 |
* get_country.
|
191 |
*
|
192 |
-
* @version 3.
|
193 |
* @since 3.1.0
|
194 |
*/
|
195 |
function get_country() {
|
196 |
if ( 'manual' === apply_filters( 'booster_get_option', 'by_ip', get_option( 'wcj_product_by_country_selection_method', 'by_ip' ) ) ) {
|
197 |
if ( '' == wcj_session_get( 'wcj_selected_country' ) ) {
|
198 |
$country = wcj_get_country_by_ip();
|
199 |
-
wcj_session_maybe_start();
|
200 |
wcj_session_set( 'wcj_selected_country', $country );
|
201 |
return $country;
|
202 |
} else {
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Visibility by Country
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
176 |
/**
|
177 |
* save_country_in_session.
|
178 |
*
|
179 |
+
* @version 3.2.4
|
180 |
* @since 3.1.0
|
181 |
*/
|
182 |
function save_country_in_session() {
|
183 |
+
wcj_session_maybe_start();
|
184 |
if ( isset( $_REQUEST['wcj_country_selector'] ) ) {
|
|
|
185 |
wcj_session_set( 'wcj_selected_country', $_REQUEST['wcj_country_selector'] );
|
186 |
}
|
187 |
}
|
189 |
/**
|
190 |
* get_country.
|
191 |
*
|
192 |
+
* @version 3.2.4
|
193 |
* @since 3.1.0
|
194 |
*/
|
195 |
function get_country() {
|
196 |
if ( 'manual' === apply_filters( 'booster_get_option', 'by_ip', get_option( 'wcj_product_by_country_selection_method', 'by_ip' ) ) ) {
|
197 |
if ( '' == wcj_session_get( 'wcj_selected_country' ) ) {
|
198 |
$country = wcj_get_country_by_ip();
|
|
|
199 |
wcj_session_set( 'wcj_selected_country', $country );
|
200 |
return $country;
|
201 |
} else {
|
includes/class-wcj-product-custom-visibility.php
ADDED
@@ -0,0 +1,144 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Product Custom Visibility
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Product_Custom_Visibility' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Product_Custom_Visibility extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
* @todo add "Admin Products List Column"
|
22 |
+
* @todo add `invisible` ("Visibility Method") ($)
|
23 |
+
* @todo (maybe) add filters
|
24 |
+
*/
|
25 |
+
function __construct() {
|
26 |
+
|
27 |
+
$this->id = 'product_custom_visibility';
|
28 |
+
$this->short_desc = __( 'Product Custom Visibility', 'woocommerce-jetpack' );
|
29 |
+
$this->desc = __( 'Display WooCommerce products by custom param.', 'woocommerce-jetpack' );
|
30 |
+
$this->link_slug = 'woocommerce-product-custom-visibility';
|
31 |
+
$this->extra_desc = __( 'When enabled, module will add new "Booster: Product Custom Visibility" meta box to each product\'s edit page.', 'woocommerce-jetpack' ) . '<br>' .
|
32 |
+
sprintf(
|
33 |
+
__( 'You can add selection drop box to frontend with "%s" widget (set "Product custom visibility" as "Selector Type") or %s shortcode.', 'woocommerce-jetpack' ),
|
34 |
+
__( 'Booster - Selector', 'woocommerce-jetpack' ),
|
35 |
+
'<code>' . '[wcj_selector selector_type="product_custom_visibility"]' . '</code>' );
|
36 |
+
parent::__construct();
|
37 |
+
|
38 |
+
if ( $this->is_enabled() ) {
|
39 |
+
// Product meta box
|
40 |
+
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
|
41 |
+
add_action( 'save_post_product', array( $this, 'save_meta_box' ), PHP_INT_MAX, 2 );
|
42 |
+
// Core
|
43 |
+
if ( ! is_admin() || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
|
44 |
+
if ( 'yes' === get_option( 'wcj_product_custom_visibility_visibility', 'yes' ) ) {
|
45 |
+
add_filter( 'woocommerce_product_is_visible', array( $this, 'product_custom_visibility_visibility' ), PHP_INT_MAX, 2 );
|
46 |
+
}
|
47 |
+
if ( 'yes' === get_option( 'wcj_product_custom_visibility_purchasable', 'no' ) ) {
|
48 |
+
add_filter( 'woocommerce_is_purchasable', array( $this, 'product_custom_visibility_purchasable' ), PHP_INT_MAX, 2 );
|
49 |
+
}
|
50 |
+
if ( 'yes' === get_option( 'wcj_product_custom_visibility_query', 'no' ) ) {
|
51 |
+
add_action( 'pre_get_posts', array( $this, 'product_custom_visibility_pre_get_posts' ) );
|
52 |
+
}
|
53 |
+
add_action( 'init', array( $this, 'save_selection_in_session' ), PHP_INT_MAX ) ;
|
54 |
+
}
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* product_custom_visibility_pre_get_posts.
|
60 |
+
*
|
61 |
+
* @version 3.2.4
|
62 |
+
* @since 3.2.4
|
63 |
+
*/
|
64 |
+
function product_custom_visibility_pre_get_posts( $query ) {
|
65 |
+
if ( is_admin() ) {
|
66 |
+
return;
|
67 |
+
}
|
68 |
+
remove_action( 'pre_get_posts', array( $this, 'product_custom_visibility_pre_get_posts' ) );
|
69 |
+
$selection = $this->get_selection();
|
70 |
+
$post__not_in = $query->get( 'post__not_in' );
|
71 |
+
$args = $query->query;
|
72 |
+
$args['fields'] = 'ids';
|
73 |
+
$loop = new WP_Query( $args );
|
74 |
+
foreach ( $loop->posts as $product_id ) {
|
75 |
+
if ( ! $this->is_product_visible( $product_id, $selection ) ) {
|
76 |
+
$post__not_in[] = $product_id;
|
77 |
+
}
|
78 |
+
}
|
79 |
+
$query->set( 'post__not_in', $post__not_in );
|
80 |
+
add_action( 'pre_get_posts', array( $this, 'product_custom_visibility_pre_get_posts' ) );
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* product_custom_visibility_purchasable.
|
85 |
+
*
|
86 |
+
* @version 3.2.4
|
87 |
+
* @since 3.2.4
|
88 |
+
*/
|
89 |
+
function product_custom_visibility_purchasable( $purchasable, $_product ) {
|
90 |
+
return ( ! $this->is_product_visible( wcj_get_product_id_or_variation_parent_id( $_product ), $this->get_selection() ) ? false : $purchasable );
|
91 |
+
}
|
92 |
+
|
93 |
+
/**
|
94 |
+
* product_custom_visibility_visibility.
|
95 |
+
*
|
96 |
+
* @version 3.2.4
|
97 |
+
* @since 3.2.4
|
98 |
+
*/
|
99 |
+
function product_custom_visibility_visibility( $visible, $product_id ) {
|
100 |
+
return ( ! $this->is_product_visible( $product_id, $this->get_selection() ) ? false : $visible );
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* is_product_visible.
|
105 |
+
*
|
106 |
+
* @version 3.2.4
|
107 |
+
* @since 3.2.4
|
108 |
+
*/
|
109 |
+
function is_product_visible( $product_id, $selection ) {
|
110 |
+
$selections = get_post_meta( $product_id, '_' . 'wcj_product_custom_visibility_visible', true );
|
111 |
+
if ( ! empty( $selections ) && is_array( $selections ) ) {
|
112 |
+
return in_array( $selection, $selections );
|
113 |
+
}
|
114 |
+
return true;
|
115 |
+
}
|
116 |
+
|
117 |
+
/**
|
118 |
+
* save_selection_in_session.
|
119 |
+
*
|
120 |
+
* @version 3.2.4
|
121 |
+
* @since 3.2.4
|
122 |
+
*/
|
123 |
+
function save_selection_in_session() {
|
124 |
+
wcj_session_maybe_start();
|
125 |
+
if ( isset( $_REQUEST['wcj_product_custom_visibility_selector'] ) ) {
|
126 |
+
wcj_session_set( 'wcj_selected_product_custom_visibility', $_REQUEST['wcj_product_custom_visibility_selector'] );
|
127 |
+
}
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* get_selection.
|
132 |
+
*
|
133 |
+
* @version 3.2.4
|
134 |
+
* @since 3.2.4
|
135 |
+
*/
|
136 |
+
function get_selection() {
|
137 |
+
return wcj_session_get( 'wcj_selected_product_custom_visibility' );
|
138 |
+
}
|
139 |
+
|
140 |
+
}
|
141 |
+
|
142 |
+
endif;
|
143 |
+
|
144 |
+
return new WCJ_Product_Custom_Visibility();
|
includes/class-wcj-product-images.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Images
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,52 +16,44 @@ class WCJ_Product_Images extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 2.
|
20 |
-
* @todo
|
21 |
*/
|
22 |
function __construct() {
|
23 |
|
24 |
$this->id = 'product_images';
|
25 |
$this->short_desc = __( 'Product Images', 'woocommerce-jetpack' );
|
26 |
-
$this->desc = __( 'Customize WooCommerce products images
|
27 |
$this->link_slug = 'woocommerce-product-images';
|
28 |
parent::__construct();
|
29 |
|
30 |
if ( $this->is_enabled() ) {
|
31 |
|
32 |
-
//
|
33 |
-
if ( 'yes' === get_option( '
|
34 |
-
|
35 |
-
|
36 |
-
if (
|
37 |
-
|
|
|
38 |
} else {
|
39 |
-
|
40 |
-
add_filter( 'woocommerce_single_product_image_html', array( $this, 'customize_single_product_image_html' ), PHP_INT_MAX, 2 ); // filter doesn't exist in WC3
|
41 |
-
add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'customize_single_product_image_thumbnail_html' ) );
|
42 |
-
} else {
|
43 |
-
add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'customize_single_product_image_or_thumbnail_html_wc3' ), PHP_INT_MAX, 2 );
|
44 |
-
}
|
45 |
}
|
|
|
46 |
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
|
53 |
-
|
54 |
-
|
55 |
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
}
|
60 |
|
61 |
-
// Sale flash
|
62 |
-
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_enabled', 'no' ) ) {
|
63 |
-
add_filter( 'woocommerce_sale_flash', array( $this, 'customize_sale_flash' ), PHP_INT_MAX, 3 );
|
64 |
-
}
|
65 |
}
|
66 |
}
|
67 |
|
@@ -184,26 +176,6 @@ class WCJ_Product_Images extends WCJ_Module {
|
|
184 |
return get_option( 'wcj_product_images_thumbnails_columns', 3 );
|
185 |
}
|
186 |
|
187 |
-
/**
|
188 |
-
* customize_sale_flash.
|
189 |
-
*
|
190 |
-
* @version 2.8.0
|
191 |
-
*/
|
192 |
-
function customize_sale_flash( $sale_flash_html, $post, $product ) {
|
193 |
-
// Hiding
|
194 |
-
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_everywhere', 'no' ) ) {
|
195 |
-
return '';
|
196 |
-
}
|
197 |
-
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_on_archives', 'no' ) && is_archive() ) {
|
198 |
-
return '';
|
199 |
-
}
|
200 |
-
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_on_single', 'no' ) && is_single() && get_the_ID() === wcj_get_product_id_or_variation_parent_id( $product ) ) {
|
201 |
-
return '';
|
202 |
-
}
|
203 |
-
// Content
|
204 |
-
return do_shortcode( get_option( 'wcj_product_images_sale_flash_html' , '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>' ) );
|
205 |
-
}
|
206 |
-
|
207 |
}
|
208 |
|
209 |
endif;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Images
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 3.2.4
|
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() {
|
23 |
|
24 |
$this->id = 'product_images';
|
25 |
$this->short_desc = __( 'Product Images', 'woocommerce-jetpack' );
|
26 |
+
$this->desc = __( 'Customize WooCommerce products images and thumbnails.', 'woocommerce-jetpack' );
|
27 |
$this->link_slug = 'woocommerce-product-images';
|
28 |
parent::__construct();
|
29 |
|
30 |
if ( $this->is_enabled() ) {
|
31 |
|
32 |
+
// Single
|
33 |
+
if ( 'yes' === get_option( 'wcj_product_images_and_thumbnails_hide_on_single', 'no' ) ) {
|
34 |
+
add_action( 'init', array( $this, 'product_images_and_thumbnails_hide_on_single' ), PHP_INT_MAX );
|
35 |
+
} else {
|
36 |
+
if ( WCJ_IS_WC_VERSION_BELOW_3 ) {
|
37 |
+
add_filter( 'woocommerce_single_product_image_html', array( $this, 'customize_single_product_image_html' ), PHP_INT_MAX, 2 ); // filter doesn't exist in WC3
|
38 |
+
add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'customize_single_product_image_thumbnail_html' ) );
|
39 |
} else {
|
40 |
+
add_filter( 'woocommerce_single_product_image_thumbnail_html', array( $this, 'customize_single_product_image_or_thumbnail_html_wc3' ), PHP_INT_MAX, 2 );
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
42 |
+
}
|
43 |
|
44 |
+
// Archives
|
45 |
+
add_action( 'woocommerce_before_shop_loop_item', array( $this, 'product_images_hide_on_archive' ) );
|
46 |
+
add_action( 'woocommerce_before_shop_loop_item_title', array( $this, 'customize_archive_product_image_html' ), 10 );
|
47 |
+
add_action( 'woocommerce_before_shop_loop_item_title', array( $this, 'hide_per_product_image_on_archives_start' ), 1 );
|
48 |
+
add_action( 'woocommerce_before_shop_loop_item_title', array( $this, 'hide_per_product_image_on_archives_end' ), PHP_INT_MAX );
|
49 |
|
50 |
+
// Single Product Thumbnails Columns Number
|
51 |
+
add_filter( 'woocommerce_product_thumbnails_columns', array( $this, 'change_product_thumbnails_columns_number' ), PHP_INT_MAX );
|
52 |
|
53 |
+
// Per product options
|
54 |
+
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
|
55 |
+
add_action( 'save_post_product', array( $this, 'save_meta_box' ), PHP_INT_MAX, 2 );
|
|
|
56 |
|
|
|
|
|
|
|
|
|
57 |
}
|
58 |
}
|
59 |
|
176 |
return get_option( 'wcj_product_images_thumbnails_columns', 3 );
|
177 |
}
|
178 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
}
|
180 |
|
181 |
endif;
|
includes/class-wcj-product-listings.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Listings
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,7 +15,7 @@ class WCJ_Product_Listings extends WCJ_Module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.2.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
$this->id = 'product_listings';
|
@@ -35,25 +35,6 @@ class WCJ_Product_Listings extends WCJ_Module {
|
|
35 |
add_filter( 'woocommerce_subcategory_count_html', array( $this, 'remove_subcategory_count' ), 100 );
|
36 |
}
|
37 |
|
38 |
-
// Tax Incl./Excl. by product/category
|
39 |
-
add_filter( 'option_woocommerce_tax_display_shop', array( $this, 'tax_display' ), PHP_INT_MAX );
|
40 |
-
|
41 |
-
// Tax Incl./Excl. by user role
|
42 |
-
if ( 'yes' === get_option( 'wcj_product_listings_display_taxes_by_user_role_enabled', 'no' ) ) {
|
43 |
-
add_filter( 'option_woocommerce_tax_display_shop', array( $this, 'tax_display_by_user_role' ), PHP_INT_MAX );
|
44 |
-
}
|
45 |
-
|
46 |
-
// Admin list - custom columns
|
47 |
-
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled', 'no' ) ) {
|
48 |
-
add_filter( 'manage_edit-product_columns', array( $this, 'add_product_columns' ), PHP_INT_MAX );
|
49 |
-
add_action( 'manage_product_posts_custom_column', array( $this, 'render_product_column' ), PHP_INT_MAX );
|
50 |
-
}
|
51 |
-
|
52 |
-
// Admin list - columns order
|
53 |
-
if ( 'yes' === get_option( 'wcj_products_admin_list_columns_order_enabled', 'no' ) ) {
|
54 |
-
add_filter( 'manage_edit-product_columns', array( $this, 'rearange_product_columns' ), PHP_INT_MAX );
|
55 |
-
}
|
56 |
-
|
57 |
// Product visibility by price
|
58 |
if ( 'yes' === get_option( 'wcj_product_listings_product_visibility_by_price_enabled', 'no' ) ) {
|
59 |
add_filter( 'woocommerce_product_is_visible', array( $this, 'product_visibility_by_price' ), PHP_INT_MAX, 2 );
|
@@ -65,9 +46,10 @@ class WCJ_Product_Listings extends WCJ_Module {
|
|
65 |
/**
|
66 |
* product_visibility_by_price.
|
67 |
*
|
68 |
-
* @version 3.2.
|
69 |
* @since 3.2.3
|
70 |
* @todo grouped products
|
|
|
71 |
*/
|
72 |
function product_visibility_by_price( $visible, $product_id ) {
|
73 |
$product = wc_get_product( $product_id );
|
@@ -75,160 +57,14 @@ class WCJ_Product_Listings extends WCJ_Module {
|
|
75 |
$min_price = $product->get_variation_price( 'min' );
|
76 |
$max_price = $product->get_variation_price( 'max' );
|
77 |
} else {
|
78 |
-
$min_price = $
|
|
|
79 |
}
|
80 |
$min_price_limit = get_option( 'wcj_product_listings_product_visibility_by_price_min', 0 );
|
81 |
$max_price_limit = get_option( 'wcj_product_listings_product_visibility_by_price_max', 0 );
|
82 |
return ( ( 0 != $min_price_limit && $min_price < $min_price_limit ) || ( 0 != $max_price_limit && $max_price > $max_price_limit ) ? false : $visible );
|
83 |
}
|
84 |
|
85 |
-
/**
|
86 |
-
* rearange_product_columns.
|
87 |
-
*
|
88 |
-
* @version 2.9.0
|
89 |
-
* @since 2.9.0
|
90 |
-
*/
|
91 |
-
function rearange_product_columns( $columns ) {
|
92 |
-
$reordered_columns = get_option( 'wcj_products_admin_list_columns_order', $this->get_products_default_columns_in_order() );
|
93 |
-
$reordered_columns = explode( PHP_EOL, $reordered_columns );
|
94 |
-
$reordered_columns_result = array();
|
95 |
-
if ( ! empty( $reordered_columns ) ) {
|
96 |
-
foreach ( $reordered_columns as $column_id ) {
|
97 |
-
$column_id = str_replace( "\n", '', $column_id );
|
98 |
-
$column_id = str_replace( "\r", '', $column_id );
|
99 |
-
if ( '' != $column_id && isset( $columns[ $column_id ] ) ) {
|
100 |
-
$reordered_columns_result[ $column_id ] = $columns[ $column_id ];
|
101 |
-
unset( $columns[ $column_id ] );
|
102 |
-
}
|
103 |
-
}
|
104 |
-
}
|
105 |
-
return array_merge( $reordered_columns_result, $columns );
|
106 |
-
}
|
107 |
-
|
108 |
-
/**
|
109 |
-
* get_products_default_columns_in_order.
|
110 |
-
*
|
111 |
-
* @version 2.9.0
|
112 |
-
* @since 2.9.0
|
113 |
-
*/
|
114 |
-
function get_products_default_columns_in_order() {
|
115 |
-
$columns = array(
|
116 |
-
'cb',
|
117 |
-
'thumb',
|
118 |
-
'name',
|
119 |
-
'sku',
|
120 |
-
'is_in_stock',
|
121 |
-
'price',
|
122 |
-
'product_cat',
|
123 |
-
'product_tag',
|
124 |
-
'featured',
|
125 |
-
'product_type',
|
126 |
-
'date',
|
127 |
-
);
|
128 |
-
return implode( PHP_EOL, $columns );
|
129 |
-
}
|
130 |
-
|
131 |
-
/**
|
132 |
-
* add_product_columns.
|
133 |
-
*
|
134 |
-
* @version 2.9.0
|
135 |
-
* @since 2.9.0
|
136 |
-
*/
|
137 |
-
function add_product_columns( $columns ) {
|
138 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
139 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
140 |
-
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
141 |
-
$columns[ 'wcj_products_custom_column_' . $i ] = get_option( 'wcj_products_admin_list_custom_columns_label_' . $i, '' );
|
142 |
-
}
|
143 |
-
}
|
144 |
-
return $columns;
|
145 |
-
}
|
146 |
-
|
147 |
-
/**
|
148 |
-
* render_product_column.
|
149 |
-
*
|
150 |
-
* @version 2.9.0
|
151 |
-
* @since 2.9.0
|
152 |
-
*/
|
153 |
-
function render_product_column( $column ) {
|
154 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
155 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
156 |
-
if ( 'yes' === get_option( 'wcj_products_admin_list_custom_columns_enabled_' . $i, 'no' ) ) {
|
157 |
-
if ( 'wcj_products_custom_column_' . $i === $column ) {
|
158 |
-
echo do_shortcode( get_option( 'wcj_products_admin_list_custom_columns_value_' . $i, '' ) );
|
159 |
-
}
|
160 |
-
}
|
161 |
-
}
|
162 |
-
}
|
163 |
-
|
164 |
-
/**
|
165 |
-
* tax_display_by_user_role.
|
166 |
-
*
|
167 |
-
* @version 3.2.0
|
168 |
-
* @since 3.2.0
|
169 |
-
*/
|
170 |
-
function tax_display_by_user_role( $value ) {
|
171 |
-
if ( '' != ( $display_taxes_by_user_role_roles = get_option( 'wcj_product_listings_display_taxes_by_user_role_roles', '' ) ) ) {
|
172 |
-
$current_user_first_role = wcj_get_current_user_first_role();
|
173 |
-
if ( in_array( $current_user_first_role, $display_taxes_by_user_role_roles ) ) {
|
174 |
-
if ( 'no_changes' != ( $tax_display = get_option( 'wcj_product_listings_display_taxes_by_user_role_' . $current_user_first_role, 'no_changes' ) ) ) {
|
175 |
-
return $tax_display;
|
176 |
-
}
|
177 |
-
}
|
178 |
-
}
|
179 |
-
return $value;
|
180 |
-
}
|
181 |
-
|
182 |
-
/**
|
183 |
-
* tax_display.
|
184 |
-
*
|
185 |
-
* @version 2.5.5
|
186 |
-
* @since 2.5.5
|
187 |
-
*/
|
188 |
-
function tax_display( $value ) {
|
189 |
-
$product_id = get_the_ID();
|
190 |
-
if ( 'product' === get_post_type( $product_id ) ) {
|
191 |
-
$products_incl_tax = get_option( 'wcj_product_listings_display_taxes_products_incl_tax', '' );
|
192 |
-
$products_excl_tax = get_option( 'wcj_product_listings_display_taxes_products_excl_tax', '' );
|
193 |
-
$product_cats_incl_tax = get_option( 'wcj_product_listings_display_taxes_product_cats_incl_tax', '' );
|
194 |
-
$product_cats_excl_tax = get_option( 'wcj_product_listings_display_taxes_product_cats_excl_tax', '' );
|
195 |
-
if ( '' != $products_incl_tax || '' != $products_incl_tax || '' != $products_incl_tax || '' != $products_incl_tax ) {
|
196 |
-
// Products
|
197 |
-
if ( ! empty( $products_incl_tax ) ) {
|
198 |
-
if ( in_array( $product_id, $products_incl_tax ) ) {
|
199 |
-
return 'incl';
|
200 |
-
}
|
201 |
-
}
|
202 |
-
if ( ! empty( $products_excl_tax ) ) {
|
203 |
-
if ( in_array( $product_id, $products_excl_tax ) ) {
|
204 |
-
return 'excl';
|
205 |
-
}
|
206 |
-
}
|
207 |
-
// Categories
|
208 |
-
$product_categories = get_the_terms( $product_id, 'product_cat' );
|
209 |
-
if ( ! empty( $product_cats_incl_tax ) ) {
|
210 |
-
if ( ! empty( $product_categories ) ) {
|
211 |
-
foreach ( $product_categories as $product_category ) {
|
212 |
-
if ( in_array( $product_category->term_id, $product_cats_incl_tax ) ) {
|
213 |
-
return 'incl';
|
214 |
-
}
|
215 |
-
}
|
216 |
-
}
|
217 |
-
}
|
218 |
-
if ( ! empty( $product_cats_excl_tax ) ) {
|
219 |
-
if ( ! empty( $product_categories ) ) {
|
220 |
-
foreach ( $product_categories as $product_category ) {
|
221 |
-
if ( in_array( $product_category->term_id, $product_cats_excl_tax ) ) {
|
222 |
-
return 'excl';
|
223 |
-
}
|
224 |
-
}
|
225 |
-
}
|
226 |
-
}
|
227 |
-
}
|
228 |
-
}
|
229 |
-
return $value;
|
230 |
-
}
|
231 |
-
|
232 |
/**
|
233 |
* remove_subcategory_count.
|
234 |
*/
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Listings
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
*/
|
20 |
function __construct() {
|
21 |
$this->id = 'product_listings';
|
35 |
add_filter( 'woocommerce_subcategory_count_html', array( $this, 'remove_subcategory_count' ), 100 );
|
36 |
}
|
37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
// Product visibility by price
|
39 |
if ( 'yes' === get_option( 'wcj_product_listings_product_visibility_by_price_enabled', 'no' ) ) {
|
40 |
add_filter( 'woocommerce_product_is_visible', array( $this, 'product_visibility_by_price' ), PHP_INT_MAX, 2 );
|
46 |
/**
|
47 |
* product_visibility_by_price.
|
48 |
*
|
49 |
+
* @version 3.2.4
|
50 |
* @since 3.2.3
|
51 |
* @todo grouped products
|
52 |
+
* @todo (maybe) as new "Product Visibility by Price" module
|
53 |
*/
|
54 |
function product_visibility_by_price( $visible, $product_id ) {
|
55 |
$product = wc_get_product( $product_id );
|
57 |
$min_price = $product->get_variation_price( 'min' );
|
58 |
$max_price = $product->get_variation_price( 'max' );
|
59 |
} else {
|
60 |
+
$min_price = $product->get_price();
|
61 |
+
$max_price = $product->get_price();
|
62 |
}
|
63 |
$min_price_limit = get_option( 'wcj_product_listings_product_visibility_by_price_min', 0 );
|
64 |
$max_price_limit = get_option( 'wcj_product_listings_product_visibility_by_price_max', 0 );
|
65 |
return ( ( 0 != $min_price_limit && $min_price < $min_price_limit ) || ( 0 != $max_price_limit && $max_price > $max_price_limit ) ? false : $visible );
|
66 |
}
|
67 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
68 |
/**
|
69 |
* remove_subcategory_count.
|
70 |
*/
|
includes/class-wcj-product-tabs.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Tabs
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,7 +15,7 @@ class WCJ_Product_Tabs extends WCJ_Module {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 2.
|
19 |
* @todo code refactoring and clean-up
|
20 |
*/
|
21 |
function __construct() {
|
@@ -32,10 +32,31 @@ class WCJ_Product_Tabs extends WCJ_Module {
|
|
32 |
if ( 'yes' === get_option( 'wcj_custom_product_tabs_local_enabled', 'yes' ) ) {
|
33 |
add_action( 'add_meta_boxes', array( $this, 'add_custom_tabs_meta_box' ) );
|
34 |
add_action( 'save_post_product', array( $this, 'save_custom_tabs_meta_box' ), 100, 2 );
|
|
|
|
|
|
|
35 |
}
|
36 |
}
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
/**
|
40 |
* get_tab_key.
|
41 |
*
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Product Tabs
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
* @todo code refactoring and clean-up
|
20 |
*/
|
21 |
function __construct() {
|
32 |
if ( 'yes' === get_option( 'wcj_custom_product_tabs_local_enabled', 'yes' ) ) {
|
33 |
add_action( 'add_meta_boxes', array( $this, 'add_custom_tabs_meta_box' ) );
|
34 |
add_action( 'save_post_product', array( $this, 'save_custom_tabs_meta_box' ), 100, 2 );
|
35 |
+
if ( 'yes' === get_option( 'wcj_custom_product_tabs_yoast_seo_enabled', 'no' ) ) {
|
36 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
|
37 |
+
}
|
38 |
}
|
39 |
}
|
40 |
}
|
41 |
|
42 |
+
/**
|
43 |
+
* enqueue_admin_scripts.
|
44 |
+
*
|
45 |
+
* @version 3.2.4
|
46 |
+
* @since 3.2.4
|
47 |
+
*/
|
48 |
+
function enqueue_admin_scripts() {
|
49 |
+
if ( wcj_is_admin_product_edit_page() ) {
|
50 |
+
wp_enqueue_script(
|
51 |
+
'wcj-custom-tabs-yoast-seo',
|
52 |
+
wcj_plugin_url() . '/includes/js/wcj-custom-tabs-yoast-seo.js',
|
53 |
+
array( 'jquery', 'yoast-seo-admin-script' ),
|
54 |
+
WCJ()->version,
|
55 |
+
false
|
56 |
+
);
|
57 |
+
}
|
58 |
+
}
|
59 |
+
|
60 |
/**
|
61 |
* get_tab_key.
|
62 |
*
|
includes/class-wcj-products-xml.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Products XML
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.5.7
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo create all files at once (manually and synchronize update)
|
@@ -17,15 +17,15 @@ class WCJ_Products_XML extends WCJ_Module {
|
|
17 |
/**
|
18 |
* Constructor.
|
19 |
*
|
20 |
-
* @version 2.
|
21 |
* @since 2.5.7
|
22 |
*/
|
23 |
function __construct() {
|
24 |
|
25 |
$this->id = 'products_xml';
|
26 |
-
$this->short_desc = __( 'Products XML', 'woocommerce-jetpack' );
|
27 |
-
$this->desc = __( 'WooCommerce products XML
|
28 |
-
$this->link_slug = 'woocommerce-products-xml-
|
29 |
parent::__construct();
|
30 |
|
31 |
if ( $this->is_enabled() ) {
|
@@ -154,7 +154,7 @@ class WCJ_Products_XML extends WCJ_Module {
|
|
154 |
/**
|
155 |
* create_products_xml.
|
156 |
*
|
157 |
-
* @version 2.
|
158 |
* @since 2.5.7
|
159 |
*/
|
160 |
function create_products_xml( $file_num ) {
|
@@ -162,8 +162,8 @@ class WCJ_Products_XML extends WCJ_Module {
|
|
162 |
$xml_header_template = get_option( 'wcj_products_xml_header_' . $file_num, '' );
|
163 |
$xml_footer_template = get_option( 'wcj_products_xml_footer_' . $file_num, '' );
|
164 |
$xml_item_template = get_option( 'wcj_products_xml_item_' . $file_num, '' );
|
165 |
-
$products_in_ids = get_option( 'wcj_products_xml_products_incl_' . $file_num, '' );
|
166 |
-
$products_ex_ids = get_option( 'wcj_products_xml_products_excl_' . $file_num, '' );
|
167 |
$products_cats_in_ids = get_option( 'wcj_products_xml_cats_incl_' . $file_num, '' );
|
168 |
$products_cats_ex_ids = get_option( 'wcj_products_xml_cats_excl_' . $file_num, '' );
|
169 |
$products_tags_in_ids = get_option( 'wcj_products_xml_tags_incl_' . $file_num, '' );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Products XML
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.5.7
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo create all files at once (manually and synchronize update)
|
17 |
/**
|
18 |
* Constructor.
|
19 |
*
|
20 |
+
* @version 3.2.4
|
21 |
* @since 2.5.7
|
22 |
*/
|
23 |
function __construct() {
|
24 |
|
25 |
$this->id = 'products_xml';
|
26 |
+
$this->short_desc = __( 'Products XML Feeds', 'woocommerce-jetpack' );
|
27 |
+
$this->desc = __( 'WooCommerce products XML feeds.', 'woocommerce-jetpack' );
|
28 |
+
$this->link_slug = 'woocommerce-products-xml-feeds';
|
29 |
parent::__construct();
|
30 |
|
31 |
if ( $this->is_enabled() ) {
|
154 |
/**
|
155 |
* create_products_xml.
|
156 |
*
|
157 |
+
* @version 3.2.4
|
158 |
* @since 2.5.7
|
159 |
*/
|
160 |
function create_products_xml( $file_num ) {
|
162 |
$xml_header_template = get_option( 'wcj_products_xml_header_' . $file_num, '' );
|
163 |
$xml_footer_template = get_option( 'wcj_products_xml_footer_' . $file_num, '' );
|
164 |
$xml_item_template = get_option( 'wcj_products_xml_item_' . $file_num, '' );
|
165 |
+
$products_in_ids = wcj_maybe_convert_string_to_array( get_option( 'wcj_products_xml_products_incl_' . $file_num, '' ) );
|
166 |
+
$products_ex_ids = wcj_maybe_convert_string_to_array( get_option( 'wcj_products_xml_products_excl_' . $file_num, '' ) );
|
167 |
$products_cats_in_ids = get_option( 'wcj_products_xml_cats_incl_' . $file_num, '' );
|
168 |
$products_cats_ex_ids = get_option( 'wcj_products_xml_cats_excl_' . $file_num, '' );
|
169 |
$products_tags_in_ids = get_option( 'wcj_products_xml_tags_incl_' . $file_num, '' );
|
includes/class-wcj-reports.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Reports
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -57,7 +57,7 @@ class WCJ_Reports extends WCJ_Module {
|
|
57 |
/**
|
58 |
* add_custom_order_reports_ranges_by_month_to_admin_bar.
|
59 |
*
|
60 |
-
* @version 2.
|
61 |
* @since 2.2.4
|
62 |
*/
|
63 |
function add_custom_order_reports_ranges_by_month_to_admin_bar( $wp_admin_bar ) {
|
@@ -76,12 +76,13 @@ class WCJ_Reports extends WCJ_Module {
|
|
76 |
$wp_admin_bar->add_node( $args );
|
77 |
|
78 |
$custom_range_nonce = wp_create_nonce( 'custom_range' );
|
|
|
79 |
for ( $i = 1; $i <= 12; $i++ ) {
|
80 |
-
$month_start_date = date( 'Y-m-01' ) . "-$i months";
|
81 |
-
$month_num = date( 'm',
|
82 |
-
$month_name = date( 'Y F',
|
83 |
-
$start_date = date( 'Y-m-01',
|
84 |
-
$end_date = date( 'Y-m-t',
|
85 |
$node = array(
|
86 |
'parent' => $parent,
|
87 |
'id' => $parent . '_' . $month_num,
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Reports
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
57 |
/**
|
58 |
* add_custom_order_reports_ranges_by_month_to_admin_bar.
|
59 |
*
|
60 |
+
* @version 3.2.4
|
61 |
* @since 2.2.4
|
62 |
*/
|
63 |
function add_custom_order_reports_ranges_by_month_to_admin_bar( $wp_admin_bar ) {
|
76 |
$wp_admin_bar->add_node( $args );
|
77 |
|
78 |
$custom_range_nonce = wp_create_nonce( 'custom_range' );
|
79 |
+
$current_time = (int) current_time( 'timestamp' );
|
80 |
for ( $i = 1; $i <= 12; $i++ ) {
|
81 |
+
$month_start_date = strtotime( date( 'Y-m-01', $current_time ) . " -$i months" );
|
82 |
+
$month_num = date( 'm', $month_start_date );
|
83 |
+
$month_name = date( 'Y F', $month_start_date );
|
84 |
+
$start_date = date( 'Y-m-01', $month_start_date );
|
85 |
+
$end_date = date( 'Y-m-t', $month_start_date );
|
86 |
$node = array(
|
87 |
'parent' => $parent,
|
88 |
'id' => $parent . '_' . $month_num,
|
includes/class-wcj-sale-flash.php
ADDED
@@ -0,0 +1,98 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Sale Flash
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Sale_Flash' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Sale_Flash extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
* @todo add predefined styles
|
22 |
+
* @todo (maybe) per product/category/tag: separate "loop" and "single" options
|
23 |
+
* @todo (maybe) related / homepage
|
24 |
+
*/
|
25 |
+
function __construct() {
|
26 |
+
|
27 |
+
$this->id = 'sale_flash';
|
28 |
+
$this->short_desc = __( 'Sale Flash', 'woocommerce-jetpack' );
|
29 |
+
$this->desc = __( 'Customize WooCommerce products sale flash.', 'woocommerce-jetpack' );
|
30 |
+
$this->link_slug = 'woocommerce-sale-flash';
|
31 |
+
parent::__construct();
|
32 |
+
|
33 |
+
if ( $this->is_enabled() ) {
|
34 |
+
$this->globally_enabled = ( 'yes' === get_option( 'wcj_product_images_sale_flash_enabled', 'no' ) );
|
35 |
+
$this->per_product_enabled = ( 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_sale_flash_per_product_enabled', 'no' ) ) );
|
36 |
+
$this->per_category_enabled = ( 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_sale_flash_per_' . 'product_cat' . '_enabled', 'no' ) ) );
|
37 |
+
$this->per_tag_enabled = ( 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_sale_flash_per_' . 'product_tag' . '_enabled', 'no' ) ) );
|
38 |
+
add_filter( 'woocommerce_sale_flash', array( $this, 'customize_sale_flash' ), PHP_INT_MAX, 3 );
|
39 |
+
if ( $this->per_product_enabled ) {
|
40 |
+
add_action( 'add_meta_boxes', array( $this, 'add_meta_box' ) );
|
41 |
+
add_action( 'save_post_product', array( $this, 'save_meta_box' ), PHP_INT_MAX, 2 );
|
42 |
+
}
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
* get_taxonomy_sale_flash.
|
48 |
+
*
|
49 |
+
* @version 3.2.4
|
50 |
+
*/
|
51 |
+
function get_taxonomy_sale_flash( $product_id, $taxonomy ) {
|
52 |
+
$product_terms = get_the_terms( $product_id, $taxonomy );
|
53 |
+
return ( ! empty( $product_terms ) && isset( $product_terms[0]->term_id ) ?
|
54 |
+
do_shortcode( get_option( 'wcj_sale_flash_per_' . $taxonomy . '_' . $product_terms[0]->term_id . '_html',
|
55 |
+
'<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>' ) ) :
|
56 |
+
false
|
57 |
+
);
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* customize_sale_flash.
|
62 |
+
*
|
63 |
+
* @version 3.2.4
|
64 |
+
*/
|
65 |
+
function customize_sale_flash( $sale_flash_html, $post, $product ) {
|
66 |
+
$product_id = wcj_get_product_id_or_variation_parent_id( $product );
|
67 |
+
if ( $this->per_product_enabled && 'yes' === get_post_meta( $product_id, '_' . 'wcj_sale_flash_enabled', true ) ) {
|
68 |
+
return do_shortcode( get_post_meta( $product_id, '_' . 'wcj_sale_flash', true ) );
|
69 |
+
} elseif ( $this->per_category_enabled ) {
|
70 |
+
if ( false !== ( $sale_flash = $this->get_taxonomy_sale_flash( $product_id, 'product_cat' ) ) ) {
|
71 |
+
return $sale_flash;
|
72 |
+
}
|
73 |
+
} elseif ( $this->per_tag_enabled ) {
|
74 |
+
if ( false !== ( $sale_flash = $this->get_taxonomy_sale_flash( $product_id, 'product_tag' ) ) ) {
|
75 |
+
return $sale_flash;
|
76 |
+
}
|
77 |
+
} elseif ( $this->globally_enabled ) {
|
78 |
+
// Hiding
|
79 |
+
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_everywhere', 'no' ) ) {
|
80 |
+
return '';
|
81 |
+
}
|
82 |
+
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_on_archives', 'no' ) && is_archive() ) {
|
83 |
+
return '';
|
84 |
+
}
|
85 |
+
if ( 'yes' === get_option( 'wcj_product_images_sale_flash_hide_on_single', 'no' ) && is_single() && get_the_ID() === $product_id ) {
|
86 |
+
return '';
|
87 |
+
}
|
88 |
+
// Content
|
89 |
+
return do_shortcode( get_option( 'wcj_product_images_sale_flash_html', '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>' ) );
|
90 |
+
}
|
91 |
+
return $sale_flash_html;
|
92 |
+
}
|
93 |
+
|
94 |
+
}
|
95 |
+
|
96 |
+
endif;
|
97 |
+
|
98 |
+
return new WCJ_Sale_Flash();
|
includes/class-wcj-shipping-options.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Shipping Options
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -16,7 +16,7 @@ class WCJ_Shipping_Options extends WCJ_Module {
|
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
-
* @version 2.
|
20 |
* @since 2.9.0
|
21 |
*/
|
22 |
function __construct() {
|
@@ -33,7 +33,8 @@ class WCJ_Shipping_Options extends WCJ_Module {
|
|
33 |
|
34 |
// Hide if free is available
|
35 |
if ( 'yes' === get_option( 'wcj_shipping_hide_if_free_available_all', 'no' ) ) {
|
36 |
-
add_filter( 'woocommerce_package_rates', array( $this, 'hide_shipping_when_free_is_available' ),
|
|
|
37 |
}
|
38 |
add_filter( 'woocommerce_shipping_settings', array( $this, 'add_hide_shipping_if_free_available_fields' ), PHP_INT_MAX );
|
39 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Shipping Options
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
16 |
/**
|
17 |
* Constructor.
|
18 |
*
|
19 |
+
* @version 3.2.4
|
20 |
* @since 2.9.0
|
21 |
*/
|
22 |
function __construct() {
|
33 |
|
34 |
// Hide if free is available
|
35 |
if ( 'yes' === get_option( 'wcj_shipping_hide_if_free_available_all', 'no' ) ) {
|
36 |
+
add_filter( 'woocommerce_package_rates', array( $this, 'hide_shipping_when_free_is_available' ),
|
37 |
+
wcj_get_woocommerce_package_rates_module_filter_priority( 'shipping_options_hide_free_shipping' ), 2 );
|
38 |
}
|
39 |
add_filter( 'woocommerce_shipping_settings', array( $this, 'add_hide_shipping_if_free_available_fields' ), PHP_INT_MAX );
|
40 |
|
includes/class-wcj-tax-display.php
ADDED
@@ -0,0 +1,162 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Module - Tax Display
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Tax_Display' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Tax_Display extends WCJ_Module {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
*/
|
22 |
+
function __construct() {
|
23 |
+
|
24 |
+
$this->id = 'tax_display';
|
25 |
+
$this->short_desc = __( 'Tax Display', 'woocommerce-jetpack' );
|
26 |
+
$this->desc = __( 'Customize WooCommerce tax display.', 'woocommerce-jetpack' );
|
27 |
+
$this->link_slug = 'woocommerce-tax-display';
|
28 |
+
parent::__construct();
|
29 |
+
|
30 |
+
if ( $this->is_enabled() ) {
|
31 |
+
|
32 |
+
// Tax Incl./Excl. by product/category
|
33 |
+
if ( 'yes' === get_option( 'wcj_product_listings_display_taxes_by_products_enabled', 'no' ) ) {
|
34 |
+
add_filter( 'option_woocommerce_tax_display_shop', array( $this, 'tax_display_by_product' ), PHP_INT_MAX );
|
35 |
+
}
|
36 |
+
|
37 |
+
// Tax Incl./Excl. by user role
|
38 |
+
if ( 'yes' === get_option( 'wcj_product_listings_display_taxes_by_user_role_enabled', 'no' ) ) {
|
39 |
+
add_filter( 'option_woocommerce_tax_display_shop', array( $this, 'tax_display_by_user_role' ), PHP_INT_MAX );
|
40 |
+
}
|
41 |
+
|
42 |
+
// Tax toggle
|
43 |
+
if ( 'yes' === get_option( 'wcj_tax_display_toggle_enabled', 'no' ) ) {
|
44 |
+
add_action( 'init', array( $this, 'tax_display_toggle_param' ), PHP_INT_MAX );
|
45 |
+
add_filter( 'option_woocommerce_tax_display_shop', array( $this, 'tax_display_toggle' ), PHP_INT_MAX );
|
46 |
+
}
|
47 |
+
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* tax_display_toggle_param.
|
53 |
+
*
|
54 |
+
* @version 3.2.4
|
55 |
+
* @since 3.2.4
|
56 |
+
*/
|
57 |
+
function tax_display_toggle_param() {
|
58 |
+
wcj_session_maybe_start();
|
59 |
+
if ( isset( $_REQUEST['wcj_button_toggle_tax_display'] ) ) {
|
60 |
+
$current_value = ( '' == ( $session_value = wcj_session_get( 'wcj_toggle_tax_display' ) ) ? get_option( 'woocommerce_tax_display_shop', 'excl' ) : $session_value );
|
61 |
+
wcj_session_set( 'wcj_toggle_tax_display', ( 'incl' === $current_value ? 'excl' : 'incl' ) );
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* tax_display_toggle.
|
67 |
+
*
|
68 |
+
* @version 3.2.4
|
69 |
+
* @since 3.2.4
|
70 |
+
* @todo widget
|
71 |
+
* @todo (maybe) floating button or at least give CSS instructions ($)
|
72 |
+
* @todo (maybe) position near the price or at least give "Product Info" instructions
|
73 |
+
*/
|
74 |
+
function tax_display_toggle( $value ) {
|
75 |
+
if ( ! wcj_is_frontend() ) {
|
76 |
+
return $value;
|
77 |
+
}
|
78 |
+
if ( '' != ( $session_value = wcj_session_get( 'wcj_toggle_tax_display' ) ) ) {
|
79 |
+
return $session_value;
|
80 |
+
}
|
81 |
+
return $value;
|
82 |
+
}
|
83 |
+
|
84 |
+
/**
|
85 |
+
* tax_display_by_user_role.
|
86 |
+
*
|
87 |
+
* @version 3.2.4
|
88 |
+
* @since 3.2.0
|
89 |
+
*/
|
90 |
+
function tax_display_by_user_role( $value ) {
|
91 |
+
if ( ! wcj_is_frontend() ) {
|
92 |
+
return $value;
|
93 |
+
}
|
94 |
+
if ( '' != ( $display_taxes_by_user_role_roles = get_option( 'wcj_product_listings_display_taxes_by_user_role_roles', '' ) ) ) {
|
95 |
+
$current_user_first_role = wcj_get_current_user_first_role();
|
96 |
+
if ( in_array( $current_user_first_role, $display_taxes_by_user_role_roles ) ) {
|
97 |
+
if ( 'no_changes' != ( $tax_display = get_option( 'wcj_product_listings_display_taxes_by_user_role_' . $current_user_first_role, 'no_changes' ) ) ) {
|
98 |
+
return $tax_display;
|
99 |
+
}
|
100 |
+
}
|
101 |
+
}
|
102 |
+
return $value;
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* tax_display_by_product.
|
107 |
+
*
|
108 |
+
* @version 3.2.4
|
109 |
+
* @since 2.5.5
|
110 |
+
*/
|
111 |
+
function tax_display_by_product( $value ) {
|
112 |
+
if ( ! wcj_is_frontend() ) {
|
113 |
+
return $value;
|
114 |
+
}
|
115 |
+
$product_id = get_the_ID();
|
116 |
+
if ( 'product' === get_post_type( $product_id ) ) {
|
117 |
+
$products_incl_tax = get_option( 'wcj_product_listings_display_taxes_products_incl_tax', '' );
|
118 |
+
$products_excl_tax = get_option( 'wcj_product_listings_display_taxes_products_excl_tax', '' );
|
119 |
+
$product_cats_incl_tax = get_option( 'wcj_product_listings_display_taxes_product_cats_incl_tax', '' );
|
120 |
+
$product_cats_excl_tax = get_option( 'wcj_product_listings_display_taxes_product_cats_excl_tax', '' );
|
121 |
+
if ( '' != $products_incl_tax || '' != $products_incl_tax || '' != $products_incl_tax || '' != $products_incl_tax ) {
|
122 |
+
// Products
|
123 |
+
if ( ! empty( $products_incl_tax ) ) {
|
124 |
+
if ( in_array( $product_id, $products_incl_tax ) ) {
|
125 |
+
return 'incl';
|
126 |
+
}
|
127 |
+
}
|
128 |
+
if ( ! empty( $products_excl_tax ) ) {
|
129 |
+
if ( in_array( $product_id, $products_excl_tax ) ) {
|
130 |
+
return 'excl';
|
131 |
+
}
|
132 |
+
}
|
133 |
+
// Categories
|
134 |
+
$product_categories = get_the_terms( $product_id, 'product_cat' );
|
135 |
+
if ( ! empty( $product_cats_incl_tax ) ) {
|
136 |
+
if ( ! empty( $product_categories ) ) {
|
137 |
+
foreach ( $product_categories as $product_category ) {
|
138 |
+
if ( in_array( $product_category->term_id, $product_cats_incl_tax ) ) {
|
139 |
+
return 'incl';
|
140 |
+
}
|
141 |
+
}
|
142 |
+
}
|
143 |
+
}
|
144 |
+
if ( ! empty( $product_cats_excl_tax ) ) {
|
145 |
+
if ( ! empty( $product_categories ) ) {
|
146 |
+
foreach ( $product_categories as $product_category ) {
|
147 |
+
if ( in_array( $product_category->term_id, $product_cats_excl_tax ) ) {
|
148 |
+
return 'excl';
|
149 |
+
}
|
150 |
+
}
|
151 |
+
}
|
152 |
+
}
|
153 |
+
}
|
154 |
+
}
|
155 |
+
return $value;
|
156 |
+
}
|
157 |
+
|
158 |
+
}
|
159 |
+
|
160 |
+
endif;
|
161 |
+
|
162 |
+
return new WCJ_Tax_Display();
|
includes/classes/class-wcj-module-shipping-by-condition.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Shipping by Condition
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 3.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) `abstract class WCJ_Module_Shipping_By_Condition`
|
@@ -18,13 +18,13 @@ class WCJ_Module_Shipping_By_Condition extends WCJ_Module {
|
|
18 |
/**
|
19 |
* Constructor.
|
20 |
*
|
21 |
-
* @version 3.2.
|
22 |
* @since 3.2.0
|
23 |
*/
|
24 |
function __construct( $type = 'module' ) {
|
25 |
parent::__construct( $type );
|
26 |
if ( $this->is_enabled() ) {
|
27 |
-
add_filter( 'woocommerce_package_rates', array( $this, 'available_shipping_methods' ),
|
28 |
}
|
29 |
}
|
30 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Module - Shipping by Condition
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 3.2.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) `abstract class WCJ_Module_Shipping_By_Condition`
|
18 |
/**
|
19 |
* Constructor.
|
20 |
*
|
21 |
+
* @version 3.2.4
|
22 |
* @since 3.2.0
|
23 |
*/
|
24 |
function __construct( $type = 'module' ) {
|
25 |
parent::__construct( $type );
|
26 |
if ( $this->is_enabled() ) {
|
27 |
+
add_filter( 'woocommerce_package_rates', array( $this, 'available_shipping_methods' ), wcj_get_woocommerce_package_rates_module_filter_priority( $this->id ) , 2 );
|
28 |
}
|
29 |
}
|
30 |
|
includes/classes/class-wcj-pdf-invoice.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce PDF Invoice
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -22,7 +22,7 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
22 |
/**
|
23 |
* prepare_pdf.
|
24 |
*
|
25 |
-
* @version 3.2.
|
26 |
*/
|
27 |
function prepare_pdf() {
|
28 |
|
@@ -30,13 +30,20 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
30 |
|
31 |
$invoice_type = $this->invoice_type;
|
32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
// Create new PDF document
|
34 |
require_once( wcj_plugin_path() . '/includes/classes/class-wcj-tcpdf.php' );
|
35 |
$pdf = new WCJ_TCPDF(
|
36 |
get_option( 'wcj_invoicing_' . $invoice_type . '_page_orientation', 'P' ),
|
37 |
PDF_UNIT,
|
38 |
-
|
39 |
-
get_option( 'wcj_invoicing_' . $invoice_type . '_page_format', 'A4' ),
|
40 |
true,
|
41 |
'UTF-8',
|
42 |
false
|
@@ -147,7 +154,7 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
147 |
/**
|
148 |
* get_pdf.
|
149 |
*
|
150 |
-
* @version 3.
|
151 |
* @todo pass other params (billing_country, payment_method) as global (same as user_id) instead of $_GET
|
152 |
*/
|
153 |
function get_pdf( $dest ) {
|
@@ -175,70 +182,17 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
175 |
// Print text using writeHTMLCell()
|
176 |
$pdf->writeHTMLCell( 0, 0, '', '', $styling . $html, 0, 1, 0, true, '', true );
|
177 |
|
178 |
-
/*
|
179 |
-
// set style for barcode
|
180 |
-
$style = array(
|
181 |
-
'border' => true,
|
182 |
-
'vpadding' => 'auto',
|
183 |
-
'hpadding' => 'auto',
|
184 |
-
'fgcolor' => array(0,0,0),
|
185 |
-
'bgcolor' => false, //array(255,255,255)
|
186 |
-
'module_width' => 1, // width of a single module in points
|
187 |
-
'module_height' => 1 // height of a single module in points
|
188 |
-
);
|
189 |
-
|
190 |
-
// -------------------------------------------------------------------
|
191 |
-
// PDF417 (ISO/IEC 15438:2006)
|
192 |
-
|
193 |
-
/*
|
194 |
-
|
195 |
-
The $type parameter can be simple 'PDF417' or 'PDF417' followed by a
|
196 |
-
number of comma-separated options:
|
197 |
-
|
198 |
-
'PDF417,a,e,t,s,f,o0,o1,o2,o3,o4,o5,o6'
|
199 |
-
|
200 |
-
Possible options are:
|
201 |
-
|
202 |
-
a = aspect ratio (width/height);
|
203 |
-
e = error correction level (0-8);
|
204 |
-
|
205 |
-
Macro Control Block options:
|
206 |
-
|
207 |
-
t = total number of macro segments;
|
208 |
-
s = macro segment index (0-99998);
|
209 |
-
f = file ID;
|
210 |
-
o0 = File Name (text);
|
211 |
-
o1 = Segment Count (numeric);
|
212 |
-
o2 = Time Stamp (numeric);
|
213 |
-
o3 = Sender (text);
|
214 |
-
o4 = Addressee (text);
|
215 |
-
o5 = File Size (numeric);
|
216 |
-
o6 = Checksum (numeric).
|
217 |
-
|
218 |
-
Parameters t, s and f are required for a Macro Control Block, all other parametrs are optional.
|
219 |
-
To use a comma character ',' on text options, replace it with the character 255: "\xff".
|
220 |
-
|
221 |
-
*//*
|
222 |
-
|
223 |
-
$pdf->write2DBarcode( 'www.woojetpack.com', 'PDF417', 0, 200, 0, 30, $style, 'T');
|
224 |
-
//$pdf->Text(80, 85, 'PDF417 (ISO/IEC 15438:2006)');
|
225 |
-
|
226 |
-
// -------------------------------------------------------------------
|
227 |
-
/**
|
228 |
-
require_once( wcj_plugin_path() .'/includes/lib/tcpdf_min/tcpdf_barcodes_2d.php');
|
229 |
-
$barcodeobj = new TCPDF2DBarcode('http://www.tcpdf.org', 'PDF417');
|
230 |
-
// output the barcode as PNG image
|
231 |
-
//$barcodeobj->getBarcodePNG(4, 4, array(0,0,0));
|
232 |
-
$html = $barcodeobj->getBarcodeHTML(4, 4, 'black');
|
233 |
-
//$pdf->writeHTMLCell( 0, 0, '', '', $html, 0, 1, 0, true, '', true );
|
234 |
-
/**/
|
235 |
-
|
236 |
// Close and output PDF document
|
237 |
$result_pdf = $pdf->Output( '', 'S' );
|
238 |
$file_name = $this->get_file_name();
|
239 |
|
|
|
|
|
|
|
|
|
|
|
240 |
if ( 'F' === $dest ) {
|
241 |
-
$file_path =
|
242 |
if ( ! file_put_contents( $file_path, $result_pdf ) ) {
|
243 |
return null;
|
244 |
}
|
@@ -261,7 +215,7 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
261 |
echo $result_pdf;
|
262 |
} else {
|
263 |
|
264 |
-
$file_path =
|
265 |
if ( ! file_put_contents( $file_path, $result_pdf ) ) {
|
266 |
return null;
|
267 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce PDF Invoice
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
22 |
/**
|
23 |
* prepare_pdf.
|
24 |
*
|
25 |
+
* @version 3.2.4
|
26 |
*/
|
27 |
function prepare_pdf() {
|
28 |
|
30 |
|
31 |
$invoice_type = $this->invoice_type;
|
32 |
|
33 |
+
$page_format = get_option( 'wcj_invoicing_' . $invoice_type . '_page_format', 'A4' );
|
34 |
+
if ( 'custom' === $page_format ) {
|
35 |
+
$page_format = array(
|
36 |
+
get_option( 'wcj_invoicing_' . $invoice_type . '_page_format_custom_width', 0 ),
|
37 |
+
get_option( 'wcj_invoicing_' . $invoice_type . '_page_format_custom_height', 0 )
|
38 |
+
);
|
39 |
+
}
|
40 |
+
|
41 |
// Create new PDF document
|
42 |
require_once( wcj_plugin_path() . '/includes/classes/class-wcj-tcpdf.php' );
|
43 |
$pdf = new WCJ_TCPDF(
|
44 |
get_option( 'wcj_invoicing_' . $invoice_type . '_page_orientation', 'P' ),
|
45 |
PDF_UNIT,
|
46 |
+
$page_format,
|
|
|
47 |
true,
|
48 |
'UTF-8',
|
49 |
false
|
154 |
/**
|
155 |
* get_pdf.
|
156 |
*
|
157 |
+
* @version 3.2.4
|
158 |
* @todo pass other params (billing_country, payment_method) as global (same as user_id) instead of $_GET
|
159 |
*/
|
160 |
function get_pdf( $dest ) {
|
182 |
// Print text using writeHTMLCell()
|
183 |
$pdf->writeHTMLCell( 0, 0, '', '', $styling . $html, 0, 1, 0, true, '', true );
|
184 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
// Close and output PDF document
|
186 |
$result_pdf = $pdf->Output( '', 'S' );
|
187 |
$file_name = $this->get_file_name();
|
188 |
|
189 |
+
$tmp_dir = get_option( 'wcj_invoicing_general_tmp_dir', '' );
|
190 |
+
if ( '' === $tmp_dir ) {
|
191 |
+
$tmp_dir = sys_get_temp_dir();
|
192 |
+
}
|
193 |
+
|
194 |
if ( 'F' === $dest ) {
|
195 |
+
$file_path = $tmp_dir . '/' . $file_name;
|
196 |
if ( ! file_put_contents( $file_path, $result_pdf ) ) {
|
197 |
return null;
|
198 |
}
|
215 |
echo $result_pdf;
|
216 |
} else {
|
217 |
|
218 |
+
$file_path = $tmp_dir . '/' . $file_name;
|
219 |
if ( ! file_put_contents( $file_path, $result_pdf ) ) {
|
220 |
return null;
|
221 |
}
|
includes/{shortcodes → classes}/class-wcj-shortcodes.php
RENAMED
File without changes
|
includes/{widgets → classes}/class-wcj-widget.php
RENAMED
File without changes
|
includes/core/class-wcj-admin.php
ADDED
@@ -0,0 +1,154 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Core - Admin
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! class_exists( 'WCJ_Admin' ) ) :
|
13 |
+
|
14 |
+
class WCJ_Admin {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Constructor.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
*/
|
22 |
+
function __construct() {
|
23 |
+
if ( is_admin() ) {
|
24 |
+
add_filter( 'booster_get_message', 'wcj_get_plus_message', 100, 3 );
|
25 |
+
add_filter( 'woocommerce_get_settings_pages', array( $this, 'add_wcj_settings_tab' ), 1 );
|
26 |
+
add_filter( 'plugin_action_links_' . plugin_basename( WCJ_PLUGIN_FILE ), array( $this, 'action_links' ) );
|
27 |
+
add_action( 'admin_menu', array( $this, 'booster_menu' ), 100 );
|
28 |
+
add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ), 2 );
|
29 |
+
if ( 'woocommerce-jetpack.php' === basename( WCJ_PLUGIN_FILE ) ) {
|
30 |
+
add_action( 'admin_notices', array( $this, 'check_plus_version' ) );
|
31 |
+
}
|
32 |
+
}
|
33 |
+
}
|
34 |
+
|
35 |
+
/**
|
36 |
+
* check_plus_version.
|
37 |
+
*
|
38 |
+
* @version 3.1.1
|
39 |
+
* @since 2.5.9
|
40 |
+
*/
|
41 |
+
function check_plus_version() {
|
42 |
+
if ( ! is_admin() ) {
|
43 |
+
return;
|
44 |
+
}
|
45 |
+
// Check if Plus is installed and activated
|
46 |
+
$is_plus_active = false;
|
47 |
+
$is_plus_v3_active = false;
|
48 |
+
$active_plugins = apply_filters( 'active_plugins', get_option( 'active_plugins', array() ) );
|
49 |
+
if ( is_multisite() ) {
|
50 |
+
$active_plugins = array_merge( $active_plugins, array_keys( get_site_option( 'active_sitewide_plugins', array() ) ) );
|
51 |
+
}
|
52 |
+
foreach ( $active_plugins as $active_plugin ) {
|
53 |
+
$active_plugin = explode( '/', $active_plugin );
|
54 |
+
if ( isset( $active_plugin[1] ) ) {
|
55 |
+
if ( 'booster-plus-for-woocommerce.php' === $active_plugin[1] ) {
|
56 |
+
$is_plus_v3_active = true;
|
57 |
+
break;
|
58 |
+
} elseif ( 'woocommerce-jetpack-plus.php' === $active_plugin[1] || 'woocommerce-booster-plus.php' === $active_plugin[1] ) {
|
59 |
+
$is_plus_active = true;
|
60 |
+
}
|
61 |
+
}
|
62 |
+
}
|
63 |
+
// Check Plus version
|
64 |
+
if ( ! $is_plus_v3_active && $is_plus_active ) {
|
65 |
+
$plus_version = get_option( 'booster_plus_version', false );
|
66 |
+
$required_plus_version = '1.1.0';
|
67 |
+
$notice_type = ( version_compare( $plus_version, $required_plus_version, '<' ) ? 'error' : 'warning' );
|
68 |
+
global $pagenow;
|
69 |
+
if ( 'error' === $notice_type || 'plugins.php' === $pagenow ) {
|
70 |
+
$class = 'notice notice-' . $notice_type;
|
71 |
+
$message = ( 'error' === $notice_type ?
|
72 |
+
sprintf(
|
73 |
+
__( 'Please upgrade <strong>Booster Plus for WooCommerce</strong> plugin. Visit <a target="_blank" href="%s">your account page</a> on booster.io to download the latest Booster Plus version.', 'woocommerce-jetpack' ),
|
74 |
+
'https://booster.io/my-account/?utm_source=plus_update'
|
75 |
+
) :
|
76 |
+
sprintf(
|
77 |
+
__( 'There is new version of <strong>Booster Plus for WooCommerce</strong> plugin available. We recommend upgrading. Please visit <a target="_blank" href="%s">your account page</a> on booster.io to download the latest Booster Plus version.', 'woocommerce-jetpack' ),
|
78 |
+
'https://booster.io/my-account/?utm_source=plus_update'
|
79 |
+
)
|
80 |
+
);
|
81 |
+
echo '<div class="' . $class . '"><p>' . $message . '</p></div>';
|
82 |
+
}
|
83 |
+
}
|
84 |
+
}
|
85 |
+
|
86 |
+
/**
|
87 |
+
* admin_footer_text
|
88 |
+
*
|
89 |
+
* @version 2.9.0
|
90 |
+
*/
|
91 |
+
function admin_footer_text( $footer_text ) {
|
92 |
+
if ( isset( $_GET['page'] ) ) {
|
93 |
+
if ( 'wcj-tools' === $_GET['page'] || ( 'wc-settings' === $_GET['page'] && isset( $_GET['tab'] ) && 'jetpack' === $_GET['tab'] ) ) {
|
94 |
+
$rocket_icons = wcj_get_5_rocket_image();
|
95 |
+
$rating_link = '<a href="https://wordpress.org/support/plugin/woocommerce-jetpack/reviews/?rate=5#new-post" target="_blank">' . $rocket_icons . '</a>';
|
96 |
+
return sprintf(
|
97 |
+
__( 'If you like <strong>Booster for WooCommerce</strong> please leave us a %s rating. Thank you, we couldn\'t have done it without you!', 'woocommerce-jetpack' ),
|
98 |
+
$rating_link
|
99 |
+
);
|
100 |
+
}
|
101 |
+
}
|
102 |
+
return $footer_text;
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* Add menu item
|
107 |
+
*
|
108 |
+
* @version 2.9.0
|
109 |
+
*/
|
110 |
+
function booster_menu() {
|
111 |
+
add_submenu_page(
|
112 |
+
'woocommerce',
|
113 |
+
__( 'Booster for WooCommerce', 'woocommerce-jetpack' ),
|
114 |
+
__( 'Booster Settings', 'woocommerce-jetpack' ) ,
|
115 |
+
'manage_woocommerce',
|
116 |
+
'admin.php?page=wc-settings&tab=jetpack'
|
117 |
+
);
|
118 |
+
}
|
119 |
+
|
120 |
+
/**
|
121 |
+
* Show action links on the plugin screen
|
122 |
+
*
|
123 |
+
* @version 3.2.4
|
124 |
+
* @param mixed $links
|
125 |
+
* @return array
|
126 |
+
*/
|
127 |
+
function action_links( $links ) {
|
128 |
+
$custom_links = array(
|
129 |
+
'<a href="' . admin_url( 'admin.php?page=wc-settings&tab=jetpack' ) . '">' . __( 'Settings', 'woocommerce' ) . '</a>',
|
130 |
+
'<a href="' . esc_url( 'https://booster.io/' ) . '">' . __( 'Docs', 'woocommerce-jetpack' ) . '</a>',
|
131 |
+
);
|
132 |
+
if ( 1 === apply_filters( 'booster_get_option', 1, '' ) ) {
|
133 |
+
$custom_links[] = '<a href="' . esc_url( 'https://booster.io/plus/' ) . '">' . __( 'Unlock all', 'woocommerce-jetpack' ) . '</a>';
|
134 |
+
}
|
135 |
+
return array_merge( $custom_links, $links );
|
136 |
+
}
|
137 |
+
|
138 |
+
/**
|
139 |
+
* Add Jetpack settings tab to WooCommerce settings.
|
140 |
+
*
|
141 |
+
* @version 3.2.4
|
142 |
+
*/
|
143 |
+
function add_wcj_settings_tab( $settings ) {
|
144 |
+
$_settings = include( WCJ_PLUGIN_PATH . '/includes/admin/class-wc-settings-jetpack.php' );
|
145 |
+
$_settings->add_module_statuses( WCJ()->module_statuses );
|
146 |
+
$settings[] = $_settings;
|
147 |
+
return $settings;
|
148 |
+
}
|
149 |
+
|
150 |
+
}
|
151 |
+
|
152 |
+
endif;
|
153 |
+
|
154 |
+
return new WCJ_Admin();
|
includes/{classes → core}/class-wcj-scripts.php
RENAMED
@@ -5,7 +5,6 @@
|
|
5 |
* @version 3.0.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
-
* @todo move this class to another directory
|
9 |
*/
|
10 |
|
11 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
5 |
* @version 3.0.0
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
|
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
includes/core/wcj-functions.php
ADDED
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Functions
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
$wcj_function_files = array(
|
13 |
+
'wcj-functions-core.php',
|
14 |
+
'wcj-functions-debug.php',
|
15 |
+
'wcj-functions-admin.php',
|
16 |
+
'wcj-functions-general.php',
|
17 |
+
'wcj-functions-date-time.php',
|
18 |
+
'wcj-functions-crons.php',
|
19 |
+
'wcj-functions-products.php',
|
20 |
+
'wcj-functions-orders.php',
|
21 |
+
'wcj-functions-eu-vat.php',
|
22 |
+
'wcj-functions-price-currency.php',
|
23 |
+
'wcj-functions-users.php',
|
24 |
+
'wcj-functions-exchange-rates.php',
|
25 |
+
'wcj-functions-number-to-words.php',
|
26 |
+
'wcj-functions-number-to-words-bg.php',
|
27 |
+
'wcj-functions-number-to-words-lt.php',
|
28 |
+
'wcj-functions-html.php',
|
29 |
+
'wcj-functions-country.php',
|
30 |
+
'wcj-functions-invoicing.php',
|
31 |
+
'wcj-functions-reports.php',
|
32 |
+
'wcj-functions-currencies.php',
|
33 |
+
);
|
34 |
+
|
35 |
+
$wcj_functions_dir = WCJ_PLUGIN_PATH . '/includes/functions/';
|
36 |
+
foreach ( $wcj_function_files as $wcj_function_file ) {
|
37 |
+
include_once( $wcj_functions_dir . $wcj_function_file );
|
38 |
+
}
|
includes/core/wcj-loader.php
ADDED
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Core - Loader
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
11 |
+
exit;
|
12 |
+
}
|
13 |
+
|
14 |
+
if ( ! defined( 'WCJ_PLUGIN_PATH' ) ) {
|
15 |
+
/**
|
16 |
+
* WCJ_PLUGIN_PATH.
|
17 |
+
*
|
18 |
+
* @version 3.2.4
|
19 |
+
* @since 3.2.4
|
20 |
+
*/
|
21 |
+
define( 'WCJ_PLUGIN_PATH', untrailingslashit( realpath( plugin_dir_path( WCJ_PLUGIN_FILE ) ) ) );
|
22 |
+
}
|
23 |
+
|
24 |
+
// Set up localisation
|
25 |
+
load_plugin_textdomain( 'woocommerce-jetpack', false, dirname( plugin_basename( WCJ_PLUGIN_FILE ) ) . '/langs/' );
|
26 |
+
|
27 |
+
// Include required core files used in admin and on the frontend
|
28 |
+
|
29 |
+
// Constants
|
30 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/constants/wcj-constants.php' );
|
31 |
+
|
32 |
+
// Functions
|
33 |
+
require_once( 'wcj-functions.php' );
|
34 |
+
|
35 |
+
// Classes
|
36 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-module.php' );
|
37 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-module-shipping-by-condition.php' );
|
38 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-invoice.php' );
|
39 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-pdf-invoice.php' );
|
40 |
+
|
41 |
+
// Plus
|
42 |
+
if ( 'booster-plus-for-woocommerce.php' === basename( WCJ_PLUGIN_FILE ) && apply_filters( 'wcj_full_pack', true ) ) {
|
43 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/plus/class-wcj-plus.php' );
|
44 |
+
}
|
45 |
+
|
46 |
+
// Tools
|
47 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/admin/class-wcj-tools.php' );
|
48 |
+
|
49 |
+
// Shortcodes
|
50 |
+
require_once( 'wcj-shortcodes.php' );
|
51 |
+
|
52 |
+
// Widgets
|
53 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-widget.php' );
|
54 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/widgets/class-wcj-widget-multicurrency.php' );
|
55 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/widgets/class-wcj-widget-country-switcher.php' );
|
56 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/widgets/class-wcj-widget-left-to-free-shipping.php' );
|
57 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/widgets/class-wcj-widget-selector.php' );
|
58 |
+
|
59 |
+
// Modules and Submodules
|
60 |
+
require_once( 'wcj-modules.php' );
|
61 |
+
|
62 |
+
// Add and Manage options
|
63 |
+
require_once( 'wcj-options.php' );
|
64 |
+
|
65 |
+
// Admin
|
66 |
+
require_once( 'class-wcj-admin.php' );
|
67 |
+
|
68 |
+
// Scripts
|
69 |
+
require_once( 'class-wcj-scripts.php' );
|
70 |
+
|
71 |
+
// Settings manager
|
72 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/admin/class-wcj-settings-manager.php' );
|
73 |
+
|
74 |
+
// Loaded action
|
75 |
+
do_action( 'wcj_loaded' );
|
includes/core/wcj-modules.php
ADDED
@@ -0,0 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Modules
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
$wcj_module_files = array(
|
13 |
+
'class-wcj-admin-tools.php',
|
14 |
+
'class-wcj-price-labels.php',
|
15 |
+
'class-wcj-call-for-price.php',
|
16 |
+
'class-wcj-free-price.php',
|
17 |
+
'class-wcj-product-listings.php',
|
18 |
+
'class-wcj-tax-display.php',
|
19 |
+
'class-wcj-admin-products-list.php',
|
20 |
+
'class-wcj-products-per-page.php',
|
21 |
+
'class-wcj-sorting.php',
|
22 |
+
'class-wcj-product-custom-info.php',
|
23 |
+
'class-wcj-product-info.php',
|
24 |
+
'class-wcj-product-add-to-cart.php',
|
25 |
+
'class-wcj-related-products.php',
|
26 |
+
'class-wcj-sku.php',
|
27 |
+
'class-wcj-stock.php',
|
28 |
+
'class-wcj-product-tabs.php',
|
29 |
+
'class-wcj-product-input-fields.php',
|
30 |
+
'class-wcj-product-bulk-price-converter.php',
|
31 |
+
'class-wcj-product-bulk-meta-editor.php',
|
32 |
+
'class-wcj-purchase-data.php',
|
33 |
+
'class-wcj-product-bookings.php',
|
34 |
+
'class-wcj-crowdfunding.php',
|
35 |
+
'class-wcj-product-addons.php',
|
36 |
+
'class-wcj-wholesale-price.php',
|
37 |
+
'class-wcj-product-open-pricing.php',
|
38 |
+
'class-wcj-offer-price.php',
|
39 |
+
'class-wcj-price-by-user-role.php',
|
40 |
+
'class-wcj-global-discount.php',
|
41 |
+
'class-wcj-product-price-by-formula.php',
|
42 |
+
'class-wcj-product-images.php',
|
43 |
+
'class-wcj-sale-flash.php',
|
44 |
+
'class-wcj-product-by-country.php',
|
45 |
+
'class-wcj-product-custom-visibility.php',
|
46 |
+
'class-wcj-product-by-time.php',
|
47 |
+
'class-wcj-product-by-date.php',
|
48 |
+
'class-wcj-product-by-user-role.php',
|
49 |
+
'class-wcj-product-by-user.php',
|
50 |
+
'class-wcj-add-to-cart.php',
|
51 |
+
'class-wcj-more-button-labels.php',
|
52 |
+
'class-wcj-cart.php',
|
53 |
+
'class-wcj-cart-customization.php',
|
54 |
+
'class-wcj-empty-cart-button.php',
|
55 |
+
'class-wcj-mini-cart.php',
|
56 |
+
'class-wcj-checkout-core-fields.php',
|
57 |
+
'class-wcj-checkout-custom-fields.php',
|
58 |
+
'class-wcj-checkout-files-upload.php',
|
59 |
+
'class-wcj-checkout-custom-info.php',
|
60 |
+
'class-wcj-checkout-customization.php',
|
61 |
+
'class-wcj-payment-gateways.php',
|
62 |
+
'class-wcj-payment-gateways-icons.php',
|
63 |
+
'class-wcj-payment-gateways-fees.php',
|
64 |
+
'class-wcj-payment-gateways-per-category.php',
|
65 |
+
'class-wcj-payment-gateways-currency.php',
|
66 |
+
'class-wcj-payment-gateways-by-currency.php',
|
67 |
+
'class-wcj-payment-gateways-min-max.php',
|
68 |
+
'class-wcj-payment-gateways-by-country.php',
|
69 |
+
'class-wcj-payment-gateways-by-user-role.php',
|
70 |
+
'class-wcj-payment-gateways-by-shipping.php',
|
71 |
+
'class-wcj-shipping.php',
|
72 |
+
'class-wcj-shipping-options.php',
|
73 |
+
'class-wcj-left-to-free-shipping.php',
|
74 |
+
'class-wcj-shipping-calculator.php',
|
75 |
+
'class-wcj-shipping-by-user-role.php',
|
76 |
+
'class-wcj-shipping-by-products.php',
|
77 |
+
'class-wcj-shipping-by-order-amount.php',
|
78 |
+
'class-wcj-address-formats.php',
|
79 |
+
'class-wcj-orders.php',
|
80 |
+
'class-wcj-admin-orders-list.php',
|
81 |
+
'class-wcj-order-min-amount.php',
|
82 |
+
'class-wcj-order-numbers.php',
|
83 |
+
'class-wcj-order-custom-statuses.php',
|
84 |
+
'class-wcj-order-quantities.php',
|
85 |
+
'class-wcj-pdf-invoicing.php',
|
86 |
+
'class-wcj-emails.php',
|
87 |
+
'class-wcj-email-options.php',
|
88 |
+
'class-wcj-emails-verification.php',
|
89 |
+
'class-wcj-currencies.php',
|
90 |
+
'class-wcj-multicurrency.php',
|
91 |
+
'class-wcj-multicurrency-product-base-price.php',
|
92 |
+
'class-wcj-currency-per-product.php',
|
93 |
+
'class-wcj-currency-external-products.php',
|
94 |
+
'class-wcj-price-by-country.php',
|
95 |
+
'class-wcj-currency-exchange-rates.php',
|
96 |
+
'class-wcj-price-formats.php',
|
97 |
+
'class-wcj-general.php',
|
98 |
+
'class-wcj-track-users.php',
|
99 |
+
'class-wcj-breadcrumbs.php',
|
100 |
+
'class-wcj-url-coupons.php',
|
101 |
+
'class-wcj-coupon-code-generator.php',
|
102 |
+
'class-wcj-admin-bar.php',
|
103 |
+
'class-wcj-my-account.php',
|
104 |
+
'class-wcj-custom-css.php',
|
105 |
+
'class-wcj-custom-js.php',
|
106 |
+
'class-wcj-products-xml.php',
|
107 |
+
'class-wcj-export-import.php',
|
108 |
+
'class-wcj-eu-vat-number.php',
|
109 |
+
'class-wcj-old-slugs.php',
|
110 |
+
'class-wcj-reports.php',
|
111 |
+
'class-wcj-wpml.php',
|
112 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-numbering.php',
|
113 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-templates.php',
|
114 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-styling.php',
|
115 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-header.php',
|
116 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-footer.php',
|
117 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-page.php',
|
118 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-emails.php',
|
119 |
+
'pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php',
|
120 |
+
);
|
121 |
+
|
122 |
+
$this->modules = array();
|
123 |
+
$wcj_modules_dir = WCJ_PLUGIN_PATH . '/includes/';
|
124 |
+
foreach ( $wcj_module_files as $wcj_module_file ) {
|
125 |
+
$module = include_once( $wcj_modules_dir . $wcj_module_file );
|
126 |
+
$this->modules[ $module->id ] = $module;
|
127 |
+
}
|
includes/core/wcj-options.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Core - Options
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
* @todo (maybe) this only loads Enable, Tools and Reset settings for each module
|
9 |
+
*/
|
10 |
+
|
11 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
12 |
+
|
13 |
+
if ( is_admin() ) {
|
14 |
+
// Modules statuses
|
15 |
+
$submodules_classes = array(
|
16 |
+
'WCJ_PDF_Invoicing_Display',
|
17 |
+
'WCJ_PDF_Invoicing_Emails',
|
18 |
+
'WCJ_PDF_Invoicing_Footer',
|
19 |
+
'WCJ_PDF_Invoicing_Header',
|
20 |
+
'WCJ_PDF_Invoicing_Numbering',
|
21 |
+
'WCJ_PDF_Invoicing_Page',
|
22 |
+
'WCJ_PDF_Invoicing_Styling',
|
23 |
+
'WCJ_PDF_Invoicing_Templates',
|
24 |
+
);
|
25 |
+
foreach ( $this->modules as $module ) {
|
26 |
+
if ( ! in_array( get_class( $module ), $submodules_classes ) ) {
|
27 |
+
$status_settings = $module->add_enable_module_setting( array() );
|
28 |
+
$this->module_statuses[] = $status_settings[1];
|
29 |
+
}
|
30 |
+
if ( get_option( 'booster_for_woocommerce_version' ) === $this->version ) {
|
31 |
+
continue;
|
32 |
+
}
|
33 |
+
$values = $module->get_settings();
|
34 |
+
// Adding options
|
35 |
+
foreach ( $values as $value ) {
|
36 |
+
if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
|
37 |
+
if ( 'yes' === get_option( 'wcj_autoload_options', 'yes' ) ) {
|
38 |
+
$autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
|
39 |
+
} else {
|
40 |
+
$autoload = false;
|
41 |
+
}
|
42 |
+
add_option( $value['id'], $value['default'], '', $autoload );
|
43 |
+
}
|
44 |
+
}
|
45 |
+
}
|
46 |
+
if ( get_option( 'booster_for_woocommerce_version' ) !== $this->version ) {
|
47 |
+
update_option( 'booster_for_woocommerce_version', $this->version );
|
48 |
+
add_action( 'admin_notices', 'wcj_admin_notices_version_updated' );
|
49 |
+
}
|
50 |
+
}
|
includes/core/wcj-shortcodes.php
ADDED
@@ -0,0 +1,32 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Shortcodes
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
+
|
12 |
+
if ( ! wcj_is_module_enabled( 'general' ) || ( wcj_is_module_enabled( 'general' ) && 'no' === get_option( 'wcj_general_shortcodes_disable_booster_shortcodes', 'no' ) ) ) {
|
13 |
+
|
14 |
+
include_once( WCJ_PLUGIN_PATH . '/includes/classes/class-wcj-shortcodes.php' );
|
15 |
+
|
16 |
+
$wcj_shortcodes_files = array(
|
17 |
+
'class-wcj-shortcodes-general.php',
|
18 |
+
'class-wcj-shortcodes-invoices.php',
|
19 |
+
'class-wcj-shortcodes-orders.php',
|
20 |
+
'class-wcj-shortcodes-order-items.php',
|
21 |
+
'class-wcj-shortcodes-products.php',
|
22 |
+
'class-wcj-shortcodes-products-crowdfunding.php',
|
23 |
+
'class-wcj-shortcodes-products-add-form.php',
|
24 |
+
'class-wcj-shortcodes-input-field.php',
|
25 |
+
);
|
26 |
+
|
27 |
+
$wcj_shortcodes_dir = WCJ_PLUGIN_PATH . '/includes/shortcodes/';
|
28 |
+
foreach ( $wcj_shortcodes_files as $wcj_shortcodes_file ) {
|
29 |
+
include_once( $wcj_shortcodes_dir . $wcj_shortcodes_file );
|
30 |
+
}
|
31 |
+
|
32 |
+
}
|
includes/emails/class-wc-email-wcj-custom.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
*
|
5 |
* An email sent to recipient list when selected triggers are called.
|
6 |
*
|
7 |
-
* @version 3.2.
|
8 |
* @since 2.3.9
|
9 |
* @author Algoritmika Ltd.
|
10 |
* @extends WC_Email
|
@@ -21,12 +21,12 @@ class WC_Email_WCJ_Custom extends WC_Email {
|
|
21 |
/**
|
22 |
* Constructor
|
23 |
*
|
24 |
-
* @version 2.
|
25 |
*/
|
26 |
function __construct( $id = 1 ) {
|
27 |
|
28 |
$this->id = 'wcj_custom' . '_' . $id;
|
29 |
-
$this->customer_email = ( '%customer%' === $this->get_option( 'recipient' ) )
|
30 |
$this->title = get_option( 'wcj_emails_custom_emails_admin_title_' . $id, __( 'Custom', 'woocommerce-jetpack' ) . ' #' . $id );
|
31 |
$this->description = __( 'Custom emails are sent to the recipient list when selected triggers are called.', 'woocommerce-jetpack' );
|
32 |
|
@@ -54,8 +54,9 @@ class WC_Email_WCJ_Custom extends WC_Email {
|
|
54 |
if ( ! $this->customer_email ) {
|
55 |
$this->recipient = $this->get_option( 'recipient' );
|
56 |
|
57 |
-
if ( ! $this->recipient )
|
58 |
$this->recipient = get_option( 'admin_email' );
|
|
|
59 |
}
|
60 |
}
|
61 |
|
@@ -104,7 +105,7 @@ class WC_Email_WCJ_Custom extends WC_Email {
|
|
104 |
/**
|
105 |
* trigger.
|
106 |
*
|
107 |
-
* @version 3.2.
|
108 |
*/
|
109 |
function trigger( $order_id ) {
|
110 |
|
@@ -118,6 +119,8 @@ class WC_Email_WCJ_Custom extends WC_Email {
|
|
118 |
|
119 |
if ( $this->customer_email ) {
|
120 |
$this->recipient = wcj_get_order_billing_email( $this->object );
|
|
|
|
|
121 |
}
|
122 |
|
123 |
$this->find['order-date'] = '{order_date}';
|
4 |
*
|
5 |
* An email sent to recipient list when selected triggers are called.
|
6 |
*
|
7 |
+
* @version 3.2.4
|
8 |
* @since 2.3.9
|
9 |
* @author Algoritmika Ltd.
|
10 |
* @extends WC_Email
|
21 |
/**
|
22 |
* Constructor
|
23 |
*
|
24 |
+
* @version 3.2.4
|
25 |
*/
|
26 |
function __construct( $id = 1 ) {
|
27 |
|
28 |
$this->id = 'wcj_custom' . '_' . $id;
|
29 |
+
$this->customer_email = ( '%customer%' === $this->get_option( 'recipient' ) );
|
30 |
$this->title = get_option( 'wcj_emails_custom_emails_admin_title_' . $id, __( 'Custom', 'woocommerce-jetpack' ) . ' #' . $id );
|
31 |
$this->description = __( 'Custom emails are sent to the recipient list when selected triggers are called.', 'woocommerce-jetpack' );
|
32 |
|
54 |
if ( ! $this->customer_email ) {
|
55 |
$this->recipient = $this->get_option( 'recipient' );
|
56 |
|
57 |
+
if ( ! $this->recipient ) {
|
58 |
$this->recipient = get_option( 'admin_email' );
|
59 |
+
}
|
60 |
}
|
61 |
}
|
62 |
|
105 |
/**
|
106 |
* trigger.
|
107 |
*
|
108 |
+
* @version 3.2.4
|
109 |
*/
|
110 |
function trigger( $order_id ) {
|
111 |
|
119 |
|
120 |
if ( $this->customer_email ) {
|
121 |
$this->recipient = wcj_get_order_billing_email( $this->object );
|
122 |
+
} elseif ( false !== strpos( $this->recipient, '%customer%' ) ) {
|
123 |
+
$this->recipient = str_replace( '%customer%', wcj_get_order_billing_email( $this->object ), $this->recipient );
|
124 |
}
|
125 |
|
126 |
$this->find['order-date'] = '{order_date}';
|
includes/exchange-rates/class-wcj-exchange-rates-crons.php
CHANGED
@@ -208,11 +208,11 @@ class WCJ_Exchange_Rates_Crons {
|
|
208 |
function cron_add_custom_intervals( $schedules ) {
|
209 |
$schedules['weekly'] = array(
|
210 |
'interval' => 604800,
|
211 |
-
'display'
|
212 |
);
|
213 |
$schedules['minutely'] = array(
|
214 |
'interval' => 60,
|
215 |
-
'display'
|
216 |
);
|
217 |
return $schedules;
|
218 |
}
|
208 |
function cron_add_custom_intervals( $schedules ) {
|
209 |
$schedules['weekly'] = array(
|
210 |
'interval' => 604800,
|
211 |
+
'display' => __( 'Once Weekly', 'woocommerce-jetpack' )
|
212 |
);
|
213 |
$schedules['minutely'] = array(
|
214 |
'interval' => 60,
|
215 |
+
'display' => __( 'Once a Minute', 'woocommerce-jetpack' )
|
216 |
);
|
217 |
return $schedules;
|
218 |
}
|
includes/exchange-rates/class-wcj-exchange-rates.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce Exchange Rates
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,15 +15,13 @@ class WCJ_Exchange_Rates {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.2.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_exchange_rates_script' ) );
|
23 |
add_action( 'admin_init', array( $this, 'register_script' ) );
|
24 |
|
25 |
-
add_action( 'woocommerce_admin_field_exchange_rate', array( $this, 'output_settings_button' ) );
|
26 |
-
|
27 |
add_action( 'wp_ajax_' . 'wcj_ajax_get_exchange_rates_average', array( $this, 'wcj_ajax_get_exchange_rates_average' ) );
|
28 |
add_action( 'wp_ajax_nopriv_' . 'wcj_ajax_get_exchange_rates_average', array( $this, 'wcj_ajax_get_exchange_rates_average' ) );
|
29 |
}
|
@@ -95,68 +93,6 @@ class WCJ_Exchange_Rates {
|
|
95 |
}
|
96 |
}
|
97 |
|
98 |
-
/**
|
99 |
-
* output_settings_button.
|
100 |
-
*
|
101 |
-
* @version 3.2.3
|
102 |
-
* @todo (maybe) wcj_currency_exchange_rates_precision
|
103 |
-
*/
|
104 |
-
function output_settings_button( $value ) {
|
105 |
-
|
106 |
-
$value['type'] = 'number';
|
107 |
-
|
108 |
-
$option_value = get_option( $value['id'], $value['default'] );
|
109 |
-
|
110 |
-
// Custom attribute handling
|
111 |
-
$custom_attributes = array();
|
112 |
-
// $step = sprintf( "%f", ( 1 / pow( 10, absint( get_option( 'wcj_currency_exchange_rates_precision', 6 ) ) ) ) );
|
113 |
-
// $value['custom_attributes'] = array( 'step' => $step, 'min' => '0' );
|
114 |
-
if ( ! empty( $value['custom_attributes'] ) && is_array( $value['custom_attributes'] ) ) {
|
115 |
-
foreach ( $value['custom_attributes'] as $attribute => $attribute_value ) {
|
116 |
-
$custom_attributes[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
117 |
-
}
|
118 |
-
}
|
119 |
-
$custom_attributes_button = array();
|
120 |
-
if ( ! empty( $value['custom_attributes_button'] ) && is_array( $value['custom_attributes_button'] ) ) {
|
121 |
-
foreach ( $value['custom_attributes_button'] as $attribute => $attribute_value ) {
|
122 |
-
$custom_attributes_button[] = esc_attr( $attribute ) . '="' . esc_attr( $attribute_value ) . '"';
|
123 |
-
}
|
124 |
-
}
|
125 |
-
$tip = '';
|
126 |
-
$description = '';
|
127 |
-
$exchange_rate_servers = wcj_get_currency_exchange_rate_servers();
|
128 |
-
$exchange_rate_server = $exchange_rate_servers[ get_option( 'wcj_currency_exchange_rates_server', 'ecb' ) ];
|
129 |
-
$value_title = sprintf( __( 'Grab %s rate from %s', 'woocommerce-jetpack' ), $value['value'], $exchange_rate_server );
|
130 |
-
?>
|
131 |
-
<tr valign="top">
|
132 |
-
<th scope="row" class="titledesc">
|
133 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"><?php echo esc_html( $value['title'] ); ?></label>
|
134 |
-
<?php echo $tip; ?>
|
135 |
-
</th>
|
136 |
-
<td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
|
137 |
-
<input
|
138 |
-
name="<?php echo esc_attr( $value['id'] ); ?>"
|
139 |
-
id="<?php echo esc_attr( $value['id'] ); ?>"
|
140 |
-
type="<?php echo esc_attr( $value['type'] ); ?>"
|
141 |
-
style="<?php echo esc_attr( $value['css'] ); ?>"
|
142 |
-
value="<?php echo esc_attr( $option_value ); ?>"
|
143 |
-
class="<?php echo esc_attr( $value['class'] ); ?>"
|
144 |
-
<?php echo implode( ' ', $custom_attributes ); ?>
|
145 |
-
/>
|
146 |
-
<input
|
147 |
-
name="<?php echo esc_attr( $value['id'] . '_button' ); ?>"
|
148 |
-
id="<?php echo esc_attr( $value['id'] . '_button' ); ?>"
|
149 |
-
type="button"
|
150 |
-
value="<?php echo esc_attr( $value['value'] ); ?>"
|
151 |
-
title="<?php echo esc_attr( $value_title ); ?>"
|
152 |
-
class="exchage_rate_button"
|
153 |
-
<?php echo implode( ' ', $custom_attributes_button ); ?>
|
154 |
-
/>
|
155 |
-
</td>
|
156 |
-
</tr>
|
157 |
-
<?php
|
158 |
-
}
|
159 |
-
|
160 |
}
|
161 |
|
162 |
endif;
|
2 |
/**
|
3 |
* Booster for WooCommerce Exchange Rates
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_exchange_rates_script' ) );
|
23 |
add_action( 'admin_init', array( $this, 'register_script' ) );
|
24 |
|
|
|
|
|
25 |
add_action( 'wp_ajax_' . 'wcj_ajax_get_exchange_rates_average', array( $this, 'wcj_ajax_get_exchange_rates_average' ) );
|
26 |
add_action( 'wp_ajax_nopriv_' . 'wcj_ajax_get_exchange_rates_average', array( $this, 'wcj_ajax_get_exchange_rates_average' ) );
|
27 |
}
|
93 |
}
|
94 |
}
|
95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
}
|
97 |
|
98 |
endif;
|
includes/functions/wcj-functions-admin.php
CHANGED
@@ -2,13 +2,44 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Admin
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
if ( ! function_exists( 'wcj_get_settings_as_multiselect_or_text' ) ) {
|
13 |
/**
|
14 |
* wcj_get_settings_as_multiselect_or_text.
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Admin
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
|
12 |
+
if ( ! function_exists( 'wcj_is_admin_product_edit_page' ) ) {
|
13 |
+
/**
|
14 |
+
* wcj_is_admin_product_edit_page.
|
15 |
+
*
|
16 |
+
* @version 3.2.4
|
17 |
+
* @since 3.2.4
|
18 |
+
* @todo use where appropriate
|
19 |
+
* @todo (maybe) move to `wcj-functions-conditional.php`
|
20 |
+
*/
|
21 |
+
function wcj_is_admin_product_edit_page() {
|
22 |
+
global $pagenow;
|
23 |
+
return ( is_admin() && 'post.php' === $pagenow && isset( $_GET['action'] ) && 'edit' === $_GET['action'] && 'product' === get_post_type() );
|
24 |
+
}
|
25 |
+
}
|
26 |
+
|
27 |
+
if ( ! function_exists( 'wcj_admin_notices_version_updated' ) ) {
|
28 |
+
/**
|
29 |
+
* wcj_admin_notices_version_updated.
|
30 |
+
*
|
31 |
+
* @version 3.2.4
|
32 |
+
* @since 2.8.0
|
33 |
+
*/
|
34 |
+
function wcj_admin_notices_version_updated() {
|
35 |
+
if ( get_option( 'booster_for_woocommerce_version' ) === WCJ()->version ) {
|
36 |
+
$class = 'notice notice-success is-dismissible';
|
37 |
+
$message = sprintf( __( '<strong>Booster for WooCommerce</strong> plugin was successfully updated to version <strong>%s</strong>.', 'woocommerce-jetpack' ), WCJ()->version );
|
38 |
+
echo sprintf( '<div class="%1$s"><p>%2$s</p></div>', $class, $message );
|
39 |
+
}
|
40 |
+
}
|
41 |
+
}
|
42 |
+
|
43 |
if ( ! function_exists( 'wcj_get_settings_as_multiselect_or_text' ) ) {
|
44 |
/**
|
45 |
* wcj_get_settings_as_multiselect_or_text.
|
includes/functions/wcj-functions-core.php
CHANGED
@@ -25,6 +25,7 @@ if ( ! function_exists( 'wcj_plugin_path' ) ) {
|
|
25 |
* Get the plugin path.
|
26 |
*
|
27 |
* @return string
|
|
|
28 |
*/
|
29 |
function wcj_plugin_path() {
|
30 |
return untrailingslashit( realpath( plugin_dir_path( __FILE__ ) . '/../..' ) );
|
25 |
* Get the plugin path.
|
26 |
*
|
27 |
* @return string
|
28 |
+
* @todo use `WCJ_PLUGIN_PATH` constant instead
|
29 |
*/
|
30 |
function wcj_plugin_path() {
|
31 |
return untrailingslashit( realpath( plugin_dir_path( __FILE__ ) . '/../..' ) );
|
includes/functions/wcj-functions-crons.php
ADDED
@@ -0,0 +1,119 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Functions - Crons
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
* @todo use all functions where applicable
|
9 |
+
*/
|
10 |
+
|
11 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
12 |
+
exit;
|
13 |
+
}
|
14 |
+
|
15 |
+
if ( ! function_exists( 'wcj_crons_get_all_intervals' ) ) {
|
16 |
+
/**
|
17 |
+
* wcj_crons_get_all_intervals.
|
18 |
+
*
|
19 |
+
* @version 3.2.4
|
20 |
+
* @since 3.2.4
|
21 |
+
*/
|
22 |
+
function wcj_crons_get_all_intervals( $action = '', $skip_intervals = array() ) {
|
23 |
+
if ( '' === $action ) {
|
24 |
+
$action = __( 'Update', 'woocommerce-jetpack' );
|
25 |
+
}
|
26 |
+
$return = array(
|
27 |
+
'minutely' => sprintf( __( '%s every minute', 'woocommerce-jetpack' ), $action ),
|
28 |
+
'minute_5' => sprintf( __( '%s every 5 minutes', 'woocommerce-jetpack' ), $action ),
|
29 |
+
'minute_15' => sprintf( __( '%s every 15 minutes', 'woocommerce-jetpack' ), $action ),
|
30 |
+
'minute_30' => sprintf( __( '%s every 30 minutes', 'woocommerce-jetpack' ), $action ),
|
31 |
+
'hourly' => sprintf( __( '%s hourly', 'woocommerce-jetpack' ), $action ),
|
32 |
+
'twicedaily' => sprintf( __( '%s twice daily', 'woocommerce-jetpack' ), $action ),
|
33 |
+
'daily' => sprintf( __( '%s daily', 'woocommerce-jetpack' ), $action ),
|
34 |
+
'weekly' => sprintf( __( '%s weekly', 'woocommerce-jetpack' ), $action ),
|
35 |
+
);
|
36 |
+
if ( ! empty( $skip_intervals ) ) {
|
37 |
+
foreach ( $skip_intervals as $skip_interval ) {
|
38 |
+
unset( $return[ $skip_interval ] );
|
39 |
+
}
|
40 |
+
}
|
41 |
+
return $return;
|
42 |
+
}
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( ! function_exists( 'wcj_crons_schedule_the_events' ) ) {
|
46 |
+
/**
|
47 |
+
* wcj_crons_schedule_the_events.
|
48 |
+
*
|
49 |
+
* @version 3.2.4
|
50 |
+
* @since 3.2.4
|
51 |
+
*/
|
52 |
+
function wcj_crons_schedule_the_events( $event_hook, $selected_interval ) {
|
53 |
+
$intervals = array_keys( wcj_crons_get_all_intervals() );
|
54 |
+
foreach ( $intervals as $interval ) {
|
55 |
+
$event_timestamp = wp_next_scheduled( $event_hook, array( $interval ) );
|
56 |
+
if ( $selected_interval === $interval ) {
|
57 |
+
update_option( $event_hook . '_time', $event_timestamp );
|
58 |
+
}
|
59 |
+
if ( ! $event_timestamp && $selected_interval === $interval ) {
|
60 |
+
wp_schedule_event( time(), $selected_interval, $event_hook, array( $selected_interval ) );
|
61 |
+
} elseif ( $event_timestamp && $selected_interval !== $interval ) {
|
62 |
+
wp_unschedule_event( $event_timestamp, $event_hook, array( $interval ) );
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
66 |
+
}
|
67 |
+
|
68 |
+
if ( ! function_exists( 'wcj_crons_get_next_event_time_message' ) ) {
|
69 |
+
/**
|
70 |
+
* wcj_crons_get_next_event_time_message.
|
71 |
+
*
|
72 |
+
* @version 3.2.4
|
73 |
+
* @since 3.2.4
|
74 |
+
* @todo (maybe) move to "date-time" functions
|
75 |
+
*/
|
76 |
+
function wcj_crons_get_next_event_time_message( $time_option_name ) {
|
77 |
+
if ( '' != get_option( $time_option_name, '' ) ) {
|
78 |
+
$scheduled_time_diff = get_option( $time_option_name, '' ) - time();
|
79 |
+
if ( $scheduled_time_diff > 60 ) {
|
80 |
+
return '<br><em>' . sprintf( __( '%s till next run.', 'woocommerce-jetpack' ), human_time_diff( 0, $scheduled_time_diff ) ) . '</em>';
|
81 |
+
} elseif ( $scheduled_time_diff > 0 ) {
|
82 |
+
return '<br><em>' . sprintf( __( '%s seconds till next run.', 'woocommerce-jetpack' ), $scheduled_time_diff ) . '</em>';
|
83 |
+
}
|
84 |
+
}
|
85 |
+
return '';
|
86 |
+
}
|
87 |
+
}
|
88 |
+
|
89 |
+
if ( ! function_exists( 'wcj_crons_add_custom_intervals' ) ) {
|
90 |
+
/**
|
91 |
+
* wcj_crons_add_custom_intervals.
|
92 |
+
*
|
93 |
+
* @version 3.2.4
|
94 |
+
* @since 3.2.4
|
95 |
+
*/
|
96 |
+
function wcj_crons_add_custom_intervals( $schedules ) {
|
97 |
+
$schedules['weekly'] = array(
|
98 |
+
'interval' => 604800,
|
99 |
+
'display' => __( 'Once weekly', 'woocommerce-jetpack' )
|
100 |
+
);
|
101 |
+
$schedules['minute_30'] = array(
|
102 |
+
'interval' => 1800,
|
103 |
+
'display' => __( 'Once every 30 minutes', 'woocommerce-jetpack' )
|
104 |
+
);
|
105 |
+
$schedules['minute_15'] = array(
|
106 |
+
'interval' => 900,
|
107 |
+
'display' => __( 'Once every 15 minutes', 'woocommerce-jetpack' )
|
108 |
+
);
|
109 |
+
$schedules['minute_5'] = array(
|
110 |
+
'interval' => 300,
|
111 |
+
'display' => __( 'Once every 5 minutes', 'woocommerce-jetpack' )
|
112 |
+
);
|
113 |
+
$schedules['minutely'] = array(
|
114 |
+
'interval' => 60,
|
115 |
+
'display' => __( 'Once a minute', 'woocommerce-jetpack' )
|
116 |
+
);
|
117 |
+
return $schedules;
|
118 |
+
}
|
119 |
+
}
|
includes/functions/wcj-functions-currencies.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Currencies
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -175,8 +175,37 @@ if ( ! function_exists( 'wcj_get_currencies_array' ) ) {
|
|
175 |
array( 'code' => 'ZAR', 'symbol' => 'R', 'name' => __( 'South African rand', 'woocommerce' ) ),
|
176 |
array( 'code' => 'ZMK', 'symbol' => 'ZMK', 'name' => __( 'Zambian kwacha', 'woocommerce-jetpack' ) ),
|
177 |
array( 'code' => 'ZWD', 'symbol' => 'ZWD', 'name' => __( 'Zimbabwean dollar', 'woocommerce-jetpack' ) ),
|
|
|
|
|
|
|
|
|
178 |
array( 'code' => 'BTC', 'symbol' => 'BTC', 'name' => __( 'Bitcoin', 'woocommerce-jetpack' ) ),
|
|
|
|
|
|
|
|
|
179 |
array( 'code' => 'ETH', 'symbol' => 'ETH', 'name' => __( 'Ethereum', 'woocommerce-jetpack' ) ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
180 |
array( 'code' => 'MYC', 'symbol' => 'MYC', 'name' => __( 'myCred', 'woocommerce-jetpack' ) ),
|
181 |
);
|
182 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Currencies
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
175 |
array( 'code' => 'ZAR', 'symbol' => 'R', 'name' => __( 'South African rand', 'woocommerce' ) ),
|
176 |
array( 'code' => 'ZMK', 'symbol' => 'ZMK', 'name' => __( 'Zambian kwacha', 'woocommerce-jetpack' ) ),
|
177 |
array( 'code' => 'ZWD', 'symbol' => 'ZWD', 'name' => __( 'Zimbabwean dollar', 'woocommerce-jetpack' ) ),
|
178 |
+
|
179 |
+
array( 'code' => 'AUR', 'symbol' => 'AUR', 'name' => __( 'Auroracoin', 'woocommerce-jetpack' ) ),
|
180 |
+
array( 'code' => 'BCC', 'symbol' => 'BCC', 'name' => __( 'BitConnect', 'woocommerce-jetpack' ) ),
|
181 |
+
array( 'code' => 'BCH', 'symbol' => 'BCH', 'name' => __( 'Bitcoin Cash', 'woocommerce-jetpack' ) ),
|
182 |
array( 'code' => 'BTC', 'symbol' => 'BTC', 'name' => __( 'Bitcoin', 'woocommerce-jetpack' ) ),
|
183 |
+
array( 'code' => 'KOI', 'symbol' => 'KOI', 'name' => __( 'Coinye', 'woocommerce-jetpack' ) ),
|
184 |
+
array( 'code' => 'XDN', 'symbol' => 'XDN', 'name' => __( 'DigitalNote', 'woocommerce-jetpack' ) ),
|
185 |
+
array( 'code' => 'EMC', 'symbol' => 'EMC', 'name' => __( 'Emercoin', 'woocommerce-jetpack' ) ),
|
186 |
+
array( 'code' => 'ETC', 'symbol' => 'ETC', 'name' => __( 'Ethereum Classic', 'woocommerce-jetpack' ) ),
|
187 |
array( 'code' => 'ETH', 'symbol' => 'ETH', 'name' => __( 'Ethereum', 'woocommerce-jetpack' ) ),
|
188 |
+
array( 'code' => 'FMC', 'symbol' => 'FMC', 'name' => __( 'Freemasoncoin', 'woocommerce-jetpack' ) ),
|
189 |
+
array( 'code' => 'GRC', 'symbol' => 'GRC', 'name' => __( 'Gridcoin', 'woocommerce-jetpack' ) ),
|
190 |
+
array( 'code' => 'IOT', 'symbol' => 'IOT', 'name' => __( 'IOTA', 'woocommerce-jetpack' ) ),
|
191 |
+
array( 'code' => 'LTC', 'symbol' => 'LTC', 'name' => __( 'Litecoin', 'woocommerce-jetpack' ) ),
|
192 |
+
array( 'code' => 'MZC', 'symbol' => 'MZC', 'name' => __( 'MazaCoin', 'woocommerce-jetpack' ) ),
|
193 |
+
array( 'code' => 'XMR', 'symbol' => 'XMR', 'name' => __( 'Monero', 'woocommerce-jetpack' ) ),
|
194 |
+
array( 'code' => 'NMC', 'symbol' => 'NMC', 'name' => __( 'Namecoin', 'woocommerce-jetpack' ) ),
|
195 |
+
array( 'code' => 'XEM', 'symbol' => 'XEM', 'name' => __( 'NEM', 'woocommerce-jetpack' ) ),
|
196 |
+
array( 'code' => 'NXT', 'symbol' => 'NXT', 'name' => __( 'Nxt', 'woocommerce-jetpack' ) ),
|
197 |
+
array( 'code' => 'MSC', 'symbol' => 'MSC', 'name' => __( 'Omni', 'woocommerce-jetpack' ) ),
|
198 |
+
array( 'code' => 'PPC', 'symbol' => 'PPC', 'name' => __( 'Peercoin', 'woocommerce-jetpack' ) ),
|
199 |
+
array( 'code' => 'POT', 'symbol' => 'POT', 'name' => __( 'PotCoin', 'woocommerce-jetpack' ) ),
|
200 |
+
array( 'code' => 'XPM', 'symbol' => 'XPM', 'name' => __( 'Primecoin', 'woocommerce-jetpack' ) ),
|
201 |
+
array( 'code' => 'XRP', 'symbol' => 'XRP', 'name' => __( 'Ripple', 'woocommerce-jetpack' ) ),
|
202 |
+
array( 'code' => 'SIL', 'symbol' => 'SIL', 'name' => __( 'SixEleven', 'woocommerce-jetpack' ) ),
|
203 |
+
array( 'code' => 'AMP', 'symbol' => 'AMP', 'name' => __( 'Synereo AMP', 'woocommerce-jetpack' ) ),
|
204 |
+
array( 'code' => 'TIT', 'symbol' => 'TIT', 'name' => __( 'Titcoin', 'woocommerce-jetpack' ) ),
|
205 |
+
array( 'code' => 'UBQ', 'symbol' => 'UBQ', 'name' => __( 'Ubiq', 'woocommerce-jetpack' ) ),
|
206 |
+
array( 'code' => 'VTC', 'symbol' => 'VTC', 'name' => __( 'Vertcoin', 'woocommerce-jetpack' ) ),
|
207 |
+
array( 'code' => 'ZEC', 'symbol' => 'ZEC', 'name' => __( 'Zcash', 'woocommerce-jetpack' ) ),
|
208 |
+
|
209 |
array( 'code' => 'MYC', 'symbol' => 'MYC', 'name' => __( 'myCred', 'woocommerce-jetpack' ) ),
|
210 |
);
|
211 |
}
|
includes/functions/wcj-functions-debug.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Debug
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -17,7 +17,7 @@ if ( ! function_exists( 'wcj_log' ) ) {
|
|
17 |
/**
|
18 |
* wcj_log.
|
19 |
*
|
20 |
-
* @version 2.
|
21 |
*/
|
22 |
function wcj_log( $message = '' ) {
|
23 |
if ( ! wcj_is_module_enabled( 'admin_tools' ) || ( 'no' === get_option( 'wcj_logging_enabled', 'no' ) && 'no' === get_option( 'wcj_wc_logging_enabled', 'no' ) ) ) {
|
@@ -30,7 +30,7 @@ if ( ! function_exists( 'wcj_log' ) ) {
|
|
30 |
$message = print_r( $message, true );
|
31 |
}
|
32 |
if ( 'yes' === get_option( 'wcj_logging_enabled', 'no' ) ) {
|
33 |
-
update_option( 'wcj_log', date( 'Y-m-d H:i:s' ) . ' ' . $_SERVER['REQUEST_URI'] . ' [' . $message . ']' . '<br>' . get_option( 'wcj_log', '' ) );
|
34 |
}
|
35 |
// WC log
|
36 |
if ( 'yes' === get_option( 'wcj_wc_logging_enabled', 'no' ) && function_exists( 'wc_get_logger' ) ) {
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Debug
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
17 |
/**
|
18 |
* wcj_log.
|
19 |
*
|
20 |
+
* @version 3.2.4
|
21 |
*/
|
22 |
function wcj_log( $message = '' ) {
|
23 |
if ( ! wcj_is_module_enabled( 'admin_tools' ) || ( 'no' === get_option( 'wcj_logging_enabled', 'no' ) && 'no' === get_option( 'wcj_wc_logging_enabled', 'no' ) ) ) {
|
30 |
$message = print_r( $message, true );
|
31 |
}
|
32 |
if ( 'yes' === get_option( 'wcj_logging_enabled', 'no' ) ) {
|
33 |
+
update_option( 'wcj_log', date( 'Y-m-d H:i:s' ) . ' ' . esc_url( $_SERVER['REQUEST_URI'] ) . ' [' . $message . ']' . '<br>' . get_option( 'wcj_log', '' ) );
|
34 |
}
|
35 |
// WC log
|
36 |
if ( 'yes' === get_option( 'wcj_wc_logging_enabled', 'no' ) && function_exists( 'wc_get_logger' ) ) {
|
includes/functions/wcj-functions-exchange-rates.php
CHANGED
@@ -2,44 +2,120 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Exchange Rates
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
if ( ! function_exists( 'wcj_get_currency_exchange_rate_servers' ) ) {
|
13 |
/**
|
14 |
* wcj_get_currency_exchange_rate_servers.
|
15 |
*
|
16 |
-
* @version 3.2.
|
17 |
* @since 2.6.0
|
18 |
*/
|
19 |
function wcj_get_currency_exchange_rate_servers() {
|
20 |
return array(
|
21 |
-
'yahoo'
|
22 |
-
'ecb'
|
23 |
-
'tcmb'
|
24 |
-
'fixer'
|
|
|
|
|
25 |
);
|
26 |
}
|
27 |
}
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
if ( ! function_exists( 'alg_get_exchange_rate' ) ) {
|
30 |
/*
|
31 |
* alg_get_exchange_rate.
|
32 |
*
|
33 |
-
* @version 3.2.
|
34 |
* @since 2.6.0
|
35 |
*/
|
36 |
function alg_get_exchange_rate( $currency_from, $currency_to ) {
|
|
|
37 |
if ( 'yes' === ( $calculate_by_invert = get_option( 'wcj_currency_exchange_rates_calculate_by_invert', 'no' ) ) ) {
|
38 |
$_currency_to = $currency_to;
|
39 |
$currency_to = $currency_from;
|
40 |
$currency_from = $_currency_to;
|
41 |
}
|
42 |
-
$exchange_rates_server = get_option( 'wcj_currency_exchange_rates_server', 'ecb' );
|
43 |
switch ( $exchange_rates_server ) {
|
44 |
case 'tcmb':
|
45 |
$return = alg_tcmb_get_exchange_rate( $currency_from, $currency_to );
|
@@ -50,6 +126,12 @@ if ( ! function_exists( 'alg_get_exchange_rate' ) ) {
|
|
50 |
case 'fixer':
|
51 |
$return = alg_fixer_io_get_exchange_rate( $currency_from, $currency_to );
|
52 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
53 |
default: // 'yahoo'
|
54 |
$return = alg_yahoo_get_exchange_rate( $currency_from, $currency_to );
|
55 |
break;
|
@@ -58,6 +140,117 @@ if ( ! function_exists( 'alg_get_exchange_rate' ) ) {
|
|
58 |
}
|
59 |
}
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
if ( ! function_exists( 'alg_ecb_get_exchange_rate' ) ) {
|
62 |
/*
|
63 |
* alg_ecb_get_exchange_rate.
|
@@ -171,23 +364,12 @@ if ( ! function_exists( 'alg_yahoo_get_exchange_rate' ) ) {
|
|
171 |
/*
|
172 |
* alg_yahoo_get_exchange_rate.
|
173 |
*
|
174 |
-
* @version 3.2.
|
175 |
* @return float rate on success, else 0
|
176 |
* @todo `alg_` to `wcj_`
|
177 |
*/
|
178 |
function alg_yahoo_get_exchange_rate( $currency_from, $currency_to ) {
|
179 |
-
$
|
180 |
-
$response = '';
|
181 |
-
if ( 'no' === get_option( 'wcj_currency_exchange_rates_always_curl', 'no' ) && ini_get( 'allow_url_fopen' ) ) {
|
182 |
-
$response = file_get_contents( $url );
|
183 |
-
} elseif ( function_exists( 'curl_version' ) ) {
|
184 |
-
$curl = curl_init( $url );
|
185 |
-
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
|
186 |
-
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false );
|
187 |
-
$response = curl_exec( $curl );
|
188 |
-
curl_close( $curl );
|
189 |
-
}
|
190 |
-
$response = json_decode( $response );
|
191 |
if ( ! isset( $response->list->resources ) ) {
|
192 |
return false;
|
193 |
}
|
@@ -234,23 +416,12 @@ if ( ! function_exists( 'wcj_fixer_io_get_exchange_rate_by_date' ) ) {
|
|
234 |
/*
|
235 |
* wcj_fixer_io_get_exchange_rate_by_date.
|
236 |
*
|
237 |
-
* @version 3.2.
|
238 |
* @since 3.2.2
|
239 |
* @return false or rate
|
240 |
*/
|
241 |
function wcj_fixer_io_get_exchange_rate_by_date( $currency_from, $currency_to, $date ) {
|
242 |
-
$
|
243 |
-
$response = '';
|
244 |
-
if ( 'no' === get_option( 'wcj_currency_exchange_rates_always_curl', 'no' ) && ini_get( 'allow_url_fopen' ) ) {
|
245 |
-
$response = file_get_contents( $url );
|
246 |
-
} elseif ( function_exists( 'curl_version' ) ) {
|
247 |
-
$curl = curl_init( $url );
|
248 |
-
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
|
249 |
-
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false );
|
250 |
-
$response = curl_exec( $curl );
|
251 |
-
curl_close( $curl );
|
252 |
-
}
|
253 |
-
$response = json_decode( $response );
|
254 |
return ( isset( $response->rates->{$currency_to} ) ? $response->rates->{$currency_to} : false );
|
255 |
}
|
256 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Exchange Rates
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
|
12 |
+
if ( ! function_exists( 'wcj_get_saved_exchange_rate' ) ) {
|
13 |
+
/**
|
14 |
+
* wcj_get_saved_exchange_rate.
|
15 |
+
*
|
16 |
+
* @version 3.2.4
|
17 |
+
* @since 3.2.4
|
18 |
+
* @todo `if ( $from == $to ) return 1`
|
19 |
+
*/
|
20 |
+
function wcj_get_saved_exchange_rate( $from, $to ) {
|
21 |
+
// Preparing `active_currencies` array
|
22 |
+
if ( ! isset( WCJ()->modules['currency_exchange_rates']->active_currencies ) ) {
|
23 |
+
$active_currencies_settings = WCJ()->modules['currency_exchange_rates']->get_all_currencies_exchange_rates_settings();
|
24 |
+
$active_currencies = array();
|
25 |
+
foreach ( $active_currencies_settings as $currency ) {
|
26 |
+
$active_currencies[ str_replace( 'wcj_currency_exchange_rates_', '', $currency['id'] ) ] = get_option( $currency['id'] );
|
27 |
+
}
|
28 |
+
WCJ()->modules['currency_exchange_rates']->active_currencies = $active_currencies;
|
29 |
+
} else {
|
30 |
+
$active_currencies = WCJ()->modules['currency_exchange_rates']->active_currencies;
|
31 |
+
}
|
32 |
+
if ( empty( $active_currencies ) ) {
|
33 |
+
return 0;
|
34 |
+
}
|
35 |
+
// Getting exchange rate - simple method
|
36 |
+
$exchange_rate = ( isset( $active_currencies[ sanitize_title( $from . $to ) ] ) ? $active_currencies[ sanitize_title( $from . $to ) ] : 0 );
|
37 |
+
// Getting exchange rate - invert method
|
38 |
+
if ( 0 == $exchange_rate ) {
|
39 |
+
$exchange_rate = ( isset( $active_currencies[ sanitize_title( $to . $from ) ] ) ? $active_currencies[ sanitize_title( $to . $from ) ] : 0 );
|
40 |
+
if ( 0 != $exchange_rate ) {
|
41 |
+
$exchange_rate = 1 / $exchange_rate;
|
42 |
+
}
|
43 |
+
}
|
44 |
+
// Getting exchange rate - shop base
|
45 |
+
if ( 0 == $exchange_rate ) {
|
46 |
+
$shop_currency = get_option( 'woocommerce_currency' );
|
47 |
+
$exchange_rate_from = ( isset( $active_currencies[ sanitize_title( $shop_currency . $from ) ] ) ? $active_currencies[ sanitize_title( $shop_currency . $from ) ] : 0 );
|
48 |
+
$exchange_rate_to = ( isset( $active_currencies[ sanitize_title( $shop_currency . $to ) ] ) ? $active_currencies[ sanitize_title( $shop_currency . $to ) ] : 0 );
|
49 |
+
if ( 0 != $exchange_rate_from ) {
|
50 |
+
$exchange_rate = $exchange_rate_to / $exchange_rate_from;
|
51 |
+
}
|
52 |
+
}
|
53 |
+
return $exchange_rate;
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
57 |
if ( ! function_exists( 'wcj_get_currency_exchange_rate_servers' ) ) {
|
58 |
/**
|
59 |
* wcj_get_currency_exchange_rate_servers.
|
60 |
*
|
61 |
+
* @version 3.2.4
|
62 |
* @since 2.6.0
|
63 |
*/
|
64 |
function wcj_get_currency_exchange_rate_servers() {
|
65 |
return array(
|
66 |
+
'yahoo' => __( 'Yahoo', 'woocommerce-jetpack' ),
|
67 |
+
'ecb' => __( 'European Central Bank (ECB)', 'woocommerce-jetpack' ),
|
68 |
+
'tcmb' => __( 'TCMB', 'woocommerce-jetpack' ),
|
69 |
+
'fixer' => __( 'Fixer.io', 'woocommerce-jetpack' ),
|
70 |
+
'coinbase' => __( 'Coinbase', 'woocommerce-jetpack' ),
|
71 |
+
'coinmarketcap' => __( 'CoinMarketCap', 'woocommerce-jetpack' ),
|
72 |
);
|
73 |
}
|
74 |
}
|
75 |
|
76 |
+
if ( ! function_exists( 'wcj_get_currency_exchange_rate_server' ) ) {
|
77 |
+
/*
|
78 |
+
* wcj_get_currency_exchange_rate_server.
|
79 |
+
*
|
80 |
+
* @version 3.2.4
|
81 |
+
* @since 3.2.4
|
82 |
+
*/
|
83 |
+
function wcj_get_currency_exchange_rate_server( $currency_from, $currency_to ) {
|
84 |
+
if ( 'default_server' === ( $server = get_option( 'wcj_currency_exchange_rates_server_' . sanitize_title( $currency_from . $currency_to ), 'default_server' ) ) ) {
|
85 |
+
return get_option( 'wcj_currency_exchange_rates_server', 'ecb' );
|
86 |
+
}
|
87 |
+
return $server;
|
88 |
+
}
|
89 |
+
}
|
90 |
+
|
91 |
+
if ( ! function_exists( 'wcj_get_currency_exchange_rate_server_name' ) ) {
|
92 |
+
/*
|
93 |
+
* wcj_get_currency_exchange_rate_server_name.
|
94 |
+
*
|
95 |
+
* @version 3.2.4
|
96 |
+
* @since 3.2.4
|
97 |
+
*/
|
98 |
+
function wcj_get_currency_exchange_rate_server_name( $currency_from, $currency_to ) {
|
99 |
+
$servers = wcj_get_currency_exchange_rate_servers();
|
100 |
+
$server = wcj_get_currency_exchange_rate_server( $currency_from, $currency_to );
|
101 |
+
return ( isset( $servers[ $server ] ) ? $servers[ $server ] : $server );
|
102 |
+
}
|
103 |
+
}
|
104 |
+
|
105 |
if ( ! function_exists( 'alg_get_exchange_rate' ) ) {
|
106 |
/*
|
107 |
* alg_get_exchange_rate.
|
108 |
*
|
109 |
+
* @version 3.2.4
|
110 |
* @since 2.6.0
|
111 |
*/
|
112 |
function alg_get_exchange_rate( $currency_from, $currency_to ) {
|
113 |
+
$exchange_rates_server = wcj_get_currency_exchange_rate_server( $currency_from, $currency_to );
|
114 |
if ( 'yes' === ( $calculate_by_invert = get_option( 'wcj_currency_exchange_rates_calculate_by_invert', 'no' ) ) ) {
|
115 |
$_currency_to = $currency_to;
|
116 |
$currency_to = $currency_from;
|
117 |
$currency_from = $_currency_to;
|
118 |
}
|
|
|
119 |
switch ( $exchange_rates_server ) {
|
120 |
case 'tcmb':
|
121 |
$return = alg_tcmb_get_exchange_rate( $currency_from, $currency_to );
|
126 |
case 'fixer':
|
127 |
$return = alg_fixer_io_get_exchange_rate( $currency_from, $currency_to );
|
128 |
break;
|
129 |
+
case 'coinbase':
|
130 |
+
$return = alg_coinbase_get_exchange_rate( $currency_from, $currency_to );
|
131 |
+
break;
|
132 |
+
case 'coinmarketcap':
|
133 |
+
$return = alg_coinmarketcap_get_exchange_rate( $currency_from, $currency_to );
|
134 |
+
break;
|
135 |
default: // 'yahoo'
|
136 |
$return = alg_yahoo_get_exchange_rate( $currency_from, $currency_to );
|
137 |
break;
|
140 |
}
|
141 |
}
|
142 |
|
143 |
+
if ( ! function_exists( 'wcj_get_currency_exchange_rates_url_response' ) ) {
|
144 |
+
/*
|
145 |
+
* wcj_get_currency_exchange_rates_url_response.
|
146 |
+
*
|
147 |
+
* @version 3.2.4
|
148 |
+
* @since 3.2.4
|
149 |
+
* @todo use where needed
|
150 |
+
*/
|
151 |
+
function wcj_get_currency_exchange_rates_url_response( $url ) {
|
152 |
+
$response = '';
|
153 |
+
if ( 'no' === get_option( 'wcj_currency_exchange_rates_always_curl', 'no' ) && ini_get( 'allow_url_fopen' ) ) {
|
154 |
+
$response = file_get_contents( $url );
|
155 |
+
} elseif ( function_exists( 'curl_version' ) ) {
|
156 |
+
$curl = curl_init( $url );
|
157 |
+
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
|
158 |
+
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false );
|
159 |
+
$response = curl_exec( $curl );
|
160 |
+
curl_close( $curl );
|
161 |
+
}
|
162 |
+
return ( '' != $response ? json_decode( $response ) : false );
|
163 |
+
}
|
164 |
+
}
|
165 |
+
|
166 |
+
if ( ! function_exists( 'alg_coinmarketcap_get_exchange_rate_specific' ) ) {
|
167 |
+
/*
|
168 |
+
* alg_coinmarketcap_get_exchange_rate_specific.
|
169 |
+
*
|
170 |
+
* @version 3.2.4
|
171 |
+
* @since 3.2.4
|
172 |
+
* @see https://coinmarketcap.com/api/
|
173 |
+
* @todo add more `$cryptocurrencies_ids`
|
174 |
+
* @todo (maybe) try reverse only if `! isset( $cryptocurrencies_ids[ $currency_from ] )`
|
175 |
+
*/
|
176 |
+
function alg_coinmarketcap_get_exchange_rate_specific( $currency_from, $currency_to, $try_reverse = true ) {
|
177 |
+
$return = false;
|
178 |
+
$cryptocurrencies_ids = array(
|
179 |
+
'BTC' => 'bitcoin',
|
180 |
+
'XRP' => 'ripple',
|
181 |
+
);
|
182 |
+
if ( isset( $cryptocurrencies_ids[ $currency_from ] ) ) {
|
183 |
+
$url = 'https://api.coinmarketcap.com/v1/ticker/' . $cryptocurrencies_ids[ $currency_from ] . '/?convert=' . $currency_to;
|
184 |
+
if ( false != ( $response = wcj_get_currency_exchange_rates_url_response( $url ) ) ) {
|
185 |
+
$att = 'price_' . strtolower( $currency_to );
|
186 |
+
$return = ( isset( $response[0]->{$att} ) ? $response[0]->{$att} : false );
|
187 |
+
}
|
188 |
+
}
|
189 |
+
if ( false === $return && $try_reverse ) {
|
190 |
+
$return = alg_coinmarketcap_get_exchange_rate_specific( $currency_to, $currency_from, false );
|
191 |
+
if ( 0 != $return ) {
|
192 |
+
$return = round( ( 1 / $return ), 12 );
|
193 |
+
}
|
194 |
+
}
|
195 |
+
return $return;
|
196 |
+
}
|
197 |
+
}
|
198 |
+
|
199 |
+
if ( ! function_exists( 'alg_coinmarketcap_get_exchange_rate' ) ) {
|
200 |
+
/*
|
201 |
+
* alg_coinmarketcap_get_exchange_rate.
|
202 |
+
*
|
203 |
+
* @version 3.2.4
|
204 |
+
* @since 3.2.4
|
205 |
+
* @see https://coinmarketcap.com/api/
|
206 |
+
* @todo `WCJ()->modules['currency_exchange_rates']->coinmarketcap_response`
|
207 |
+
* @todo `alg_coinmarketcap_get_exchange_rate_specific()`
|
208 |
+
* @todo (maybe) `limit=0`
|
209 |
+
*/
|
210 |
+
function alg_coinmarketcap_get_exchange_rate( $currency_from, $currency_to, $try_reverse = true ) {
|
211 |
+
$return = false;
|
212 |
+
/*
|
213 |
+
if ( ! isset( WCJ()->modules['currency_exchange_rates']->coinmarketcap_response ) ) {
|
214 |
+
$response = wcj_get_currency_exchange_rates_url_response( 'https://api.coinmarketcap.com/v1/ticker/?convert=' . $currency_to );
|
215 |
+
if ( false != $response ) {
|
216 |
+
WCJ()->modules['currency_exchange_rates']->coinmarketcap_response = $response;
|
217 |
+
}
|
218 |
+
} else {
|
219 |
+
$response = WCJ()->modules['currency_exchange_rates']->coinmarketcap_response;
|
220 |
+
}
|
221 |
+
*/
|
222 |
+
if ( false != ( $response = wcj_get_currency_exchange_rates_url_response( 'https://api.coinmarketcap.com/v1/ticker/?convert=' . $currency_to ) ) && is_array( $response ) ) {
|
223 |
+
foreach ( $response as $pair ) {
|
224 |
+
if ( isset( $pair->symbol ) && $currency_from === $pair->symbol ) {
|
225 |
+
$att = 'price_' . strtolower( $currency_to );
|
226 |
+
$return = ( isset( $pair->{$att} ) ? $pair->{$att} : false );
|
227 |
+
break;
|
228 |
+
}
|
229 |
+
}
|
230 |
+
}
|
231 |
+
if ( false === $return && $try_reverse ) {
|
232 |
+
$return = alg_coinmarketcap_get_exchange_rate( $currency_to, $currency_from, false );
|
233 |
+
if ( 0 != $return ) {
|
234 |
+
$return = round( ( 1 / $return ), 12 );
|
235 |
+
}
|
236 |
+
}
|
237 |
+
return $return;
|
238 |
+
}
|
239 |
+
}
|
240 |
+
|
241 |
+
if ( ! function_exists( 'alg_coinbase_get_exchange_rate' ) ) {
|
242 |
+
/*
|
243 |
+
* alg_coinbase_get_exchange_rate.
|
244 |
+
*
|
245 |
+
* @version 3.2.4
|
246 |
+
* @since 3.2.4
|
247 |
+
*/
|
248 |
+
function alg_coinbase_get_exchange_rate( $currency_from, $currency_to ) {
|
249 |
+
$response = wcj_get_currency_exchange_rates_url_response( "https://api.coinbase.com/v2/exchange-rates?currency=$currency_from" );
|
250 |
+
return ( isset( $response->data->rates->{$currency_to} ) ? $response->data->rates->{$currency_to} : false );
|
251 |
+
}
|
252 |
+
}
|
253 |
+
|
254 |
if ( ! function_exists( 'alg_ecb_get_exchange_rate' ) ) {
|
255 |
/*
|
256 |
* alg_ecb_get_exchange_rate.
|
364 |
/*
|
365 |
* alg_yahoo_get_exchange_rate.
|
366 |
*
|
367 |
+
* @version 3.2.4
|
368 |
* @return float rate on success, else 0
|
369 |
* @todo `alg_` to `wcj_`
|
370 |
*/
|
371 |
function alg_yahoo_get_exchange_rate( $currency_from, $currency_to ) {
|
372 |
+
$response = wcj_get_currency_exchange_rates_url_response( "https://finance.yahoo.com/webservice/v1/symbols/allcurrencies/quote?format=json" );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
373 |
if ( ! isset( $response->list->resources ) ) {
|
374 |
return false;
|
375 |
}
|
416 |
/*
|
417 |
* wcj_fixer_io_get_exchange_rate_by_date.
|
418 |
*
|
419 |
+
* @version 3.2.4
|
420 |
* @since 3.2.2
|
421 |
* @return false or rate
|
422 |
*/
|
423 |
function wcj_fixer_io_get_exchange_rate_by_date( $currency_from, $currency_to, $date ) {
|
424 |
+
$response = wcj_get_currency_exchange_rates_url_response( 'https://api.fixer.io/' . $date . '?base=' . $currency_from . '&symbols=' . $currency_to );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
425 |
return ( isset( $response->rates->{$currency_to} ) ? $response->rates->{$currency_to} : false );
|
426 |
}
|
427 |
}
|
includes/functions/wcj-functions-general.php
CHANGED
@@ -2,12 +2,34 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
|
|
7 |
*/
|
8 |
|
9 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
if ( ! function_exists( 'wcj_session_maybe_start' ) ) {
|
12 |
/**
|
13 |
* wcj_session_maybe_start.
|
@@ -463,16 +485,16 @@ if ( ! function_exists( 'wcj_get_select_options' ) ) {
|
|
463 |
/*
|
464 |
* wcj_get_select_options()
|
465 |
*
|
466 |
-
* @version 3.2.
|
467 |
* @since 2.3.0
|
468 |
* @return array
|
469 |
*/
|
470 |
function wcj_get_select_options( $select_options_raw, $do_sanitize = true ) {
|
471 |
-
$select_options_raw = explode( PHP_EOL, $select_options_raw );
|
472 |
$select_options = array();
|
473 |
foreach ( $select_options_raw as $select_options_title ) {
|
474 |
$select_options_key = ( $do_sanitize ) ? sanitize_title( $select_options_title ) : $select_options_title;
|
475 |
-
$select_options[
|
476 |
}
|
477 |
return $select_options;
|
478 |
}
|
@@ -486,7 +508,7 @@ if ( ! function_exists( 'wcj_is_frontend' ) ) {
|
|
486 |
* @return boolean
|
487 |
*/
|
488 |
function wcj_is_frontend() {
|
489 |
-
return ( ! is_admin() || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) )
|
490 |
}
|
491 |
}
|
492 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
+
* @todo add `wcj_add_actions()` and `wcj_add_filters()`
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
11 |
|
12 |
+
if ( ! function_exists( 'wcj_get_woocommerce_package_rates_module_filter_priority' ) ) {
|
13 |
+
/**
|
14 |
+
* wcj_get_woocommerce_package_rates_module_filter_priority.
|
15 |
+
*
|
16 |
+
* @version 3.2.4
|
17 |
+
* @since 3.2.4
|
18 |
+
* @todo add `shipping_by_order_amount` module
|
19 |
+
*/
|
20 |
+
function wcj_get_woocommerce_package_rates_module_filter_priority( $module_id ) {
|
21 |
+
$modules_priorities = array(
|
22 |
+
'shipping_options_hide_free_shipping' => PHP_INT_MAX,
|
23 |
+
'shipping_by_products' => PHP_INT_MAX - 100,
|
24 |
+
'shipping_by_user_role' => PHP_INT_MAX - 100,
|
25 |
+
);
|
26 |
+
return ( 0 != ( $priority = get_option( 'wcj_' . $module_id . '_filter_priority', 0 ) ) ?
|
27 |
+
$priority :
|
28 |
+
( isset( $modules_priorities[ $module_id ] ) ? $modules_priorities[ $module_id ] : PHP_INT_MAX )
|
29 |
+
);
|
30 |
+
}
|
31 |
+
}
|
32 |
+
|
33 |
if ( ! function_exists( 'wcj_session_maybe_start' ) ) {
|
34 |
/**
|
35 |
* wcj_session_maybe_start.
|
485 |
/*
|
486 |
* wcj_get_select_options()
|
487 |
*
|
488 |
+
* @version 3.2.4
|
489 |
* @since 2.3.0
|
490 |
* @return array
|
491 |
*/
|
492 |
function wcj_get_select_options( $select_options_raw, $do_sanitize = true ) {
|
493 |
+
$select_options_raw = array_map( 'trim', explode( PHP_EOL, $select_options_raw ) );
|
494 |
$select_options = array();
|
495 |
foreach ( $select_options_raw as $select_options_title ) {
|
496 |
$select_options_key = ( $do_sanitize ) ? sanitize_title( $select_options_title ) : $select_options_title;
|
497 |
+
$select_options[ $select_options_key ] = $select_options_title;
|
498 |
}
|
499 |
return $select_options;
|
500 |
}
|
508 |
* @return boolean
|
509 |
*/
|
510 |
function wcj_is_frontend() {
|
511 |
+
return ( ! is_admin() || ( defined( 'DOING_AJAX' ) && DOING_AJAX ) );
|
512 |
}
|
513 |
}
|
514 |
|
includes/functions/wcj-functions-orders.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Orders
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -78,10 +78,10 @@ if ( ! function_exists( 'wcj_get_order_item_meta_info' ) ) {
|
|
78 |
*
|
79 |
* from woocommerce\includes\admin\meta-boxes\views\html-order-item-meta.php
|
80 |
*
|
81 |
-
* @version 2.
|
82 |
* @since 2.5.9
|
83 |
*/
|
84 |
-
function wcj_get_order_item_meta_info( $item_id, $item, $_order, $exclude_wcj_meta = false, $_product = null ) {
|
85 |
$meta_info = '';
|
86 |
$metadata = ( WCJ_IS_WC_VERSION_BELOW_3 ? $_order->has_meta( $item_id ) : $item->get_meta_data() );
|
87 |
if ( $metadata ) {
|
@@ -107,6 +107,10 @@ if ( ! function_exists( 'wcj_get_order_item_meta_info' ) ) {
|
|
107 |
continue;
|
108 |
}
|
109 |
|
|
|
|
|
|
|
|
|
110 |
if ( $exclude_wcj_meta && ( 'wcj' === substr( $_meta_key, 0, 3 ) || '_wcj' === substr( $_meta_key, 0, 4 ) ) ) {
|
111 |
continue;
|
112 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Orders
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
78 |
*
|
79 |
* from woocommerce\includes\admin\meta-boxes\views\html-order-item-meta.php
|
80 |
*
|
81 |
+
* @version 3.2.4
|
82 |
* @since 2.5.9
|
83 |
*/
|
84 |
+
function wcj_get_order_item_meta_info( $item_id, $item, $_order, $exclude_wcj_meta = false, $_product = null, $exclude_meta = array() ) {
|
85 |
$meta_info = '';
|
86 |
$metadata = ( WCJ_IS_WC_VERSION_BELOW_3 ? $_order->has_meta( $item_id ) : $item->get_meta_data() );
|
87 |
if ( $metadata ) {
|
107 |
continue;
|
108 |
}
|
109 |
|
110 |
+
if ( ! empty( $exclude_meta ) && in_array( $_meta_key, $exclude_meta ) ) {
|
111 |
+
continue;
|
112 |
+
}
|
113 |
+
|
114 |
if ( $exclude_wcj_meta && ( 'wcj' === substr( $_meta_key, 0, 3 ) || '_wcj' === substr( $_meta_key, 0, 4 ) ) ) {
|
115 |
continue;
|
116 |
}
|
includes/functions/wcj-functions-price-currency.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Price and Currency
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -463,7 +463,7 @@ if ( ! function_exists( 'wc_get_product_purchase_price' ) ) {
|
|
463 |
/**
|
464 |
* wc_get_product_purchase_price.
|
465 |
*
|
466 |
-
* @version 3.2.
|
467 |
*/
|
468 |
function wc_get_product_purchase_price( $product_id = 0 ) {
|
469 |
if ( 0 == $product_id ) {
|
@@ -471,20 +471,20 @@ if ( ! function_exists( 'wc_get_product_purchase_price' ) ) {
|
|
471 |
}
|
472 |
$purchase_price = 0;
|
473 |
if ( 'yes' === get_option( 'wcj_purchase_price_enabled', 'yes' ) ) {
|
474 |
-
$purchase_price += (
|
475 |
}
|
476 |
if ( 'yes' === get_option( 'wcj_purchase_price_extra_enabled', 'yes' ) ) {
|
477 |
-
$purchase_price += (
|
478 |
}
|
479 |
if ( 'yes' === get_option( 'wcj_purchase_price_affiliate_commission_enabled', 'no' ) ) {
|
480 |
-
$purchase_price += (
|
481 |
}
|
482 |
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_purchase_data_custom_price_fields_total_number', 1 ) );
|
483 |
for ( $i = 1; $i <= $total_number; $i++ ) {
|
484 |
if ( '' == get_option( 'wcj_purchase_data_custom_price_field_name_' . $i, '' ) ) {
|
485 |
continue;
|
486 |
}
|
487 |
-
$meta_value = (
|
488 |
if ( 0 != $meta_value ) {
|
489 |
$purchase_price += ( 'fixed' === get_option( 'wcj_purchase_data_custom_price_field_type_' . $i, 'fixed' ) ) ? $meta_value : $purchase_price * $meta_value / 100.0;
|
490 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Price and Currency
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.7.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
463 |
/**
|
464 |
* wc_get_product_purchase_price.
|
465 |
*
|
466 |
+
* @version 3.2.4
|
467 |
*/
|
468 |
function wc_get_product_purchase_price( $product_id = 0 ) {
|
469 |
if ( 0 == $product_id ) {
|
471 |
}
|
472 |
$purchase_price = 0;
|
473 |
if ( 'yes' === get_option( 'wcj_purchase_price_enabled', 'yes' ) ) {
|
474 |
+
$purchase_price += (float) get_post_meta( $product_id, '_' . 'wcj_purchase_price' , true );
|
475 |
}
|
476 |
if ( 'yes' === get_option( 'wcj_purchase_price_extra_enabled', 'yes' ) ) {
|
477 |
+
$purchase_price += (float) get_post_meta( $product_id, '_' . 'wcj_purchase_price_extra', true );
|
478 |
}
|
479 |
if ( 'yes' === get_option( 'wcj_purchase_price_affiliate_commission_enabled', 'no' ) ) {
|
480 |
+
$purchase_price += (float) get_post_meta( $product_id, '_' . 'wcj_purchase_price_affiliate_commission', true );
|
481 |
}
|
482 |
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_purchase_data_custom_price_fields_total_number', 1 ) );
|
483 |
for ( $i = 1; $i <= $total_number; $i++ ) {
|
484 |
if ( '' == get_option( 'wcj_purchase_data_custom_price_field_name_' . $i, '' ) ) {
|
485 |
continue;
|
486 |
}
|
487 |
+
$meta_value = (float) get_post_meta( $product_id, '_' . 'wcj_purchase_price_custom_field_' . $i, true );
|
488 |
if ( 0 != $meta_value ) {
|
489 |
$purchase_price += ( 'fixed' === get_option( 'wcj_purchase_data_custom_price_field_type_' . $i, 'fixed' ) ) ? $meta_value : $purchase_price * $meta_value / 100.0;
|
490 |
}
|
includes/functions/wcj-functions-reports.php
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Reports
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
-
* @
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
@@ -38,30 +38,31 @@ if ( ! function_exists( 'wcj_get_reports_standard_ranges' ) ) {
|
|
38 |
/*
|
39 |
* wcj_get_reports_standard_ranges.
|
40 |
*
|
41 |
-
* @version 2.
|
42 |
* @since 2.9.0
|
43 |
*/
|
44 |
function wcj_get_reports_standard_ranges() {
|
|
|
45 |
return array(
|
46 |
'year' => array(
|
47 |
'title' => __( 'Year', 'woocommerce' ),
|
48 |
-
'start_date' => date( 'Y-01-01' ),
|
49 |
-
'end_date' => date( 'Y-m-d' ),
|
50 |
),
|
51 |
'last_month' => array(
|
52 |
'title' => __( 'Last month', 'woocommerce' ),
|
53 |
-
'start_date' => date( 'Y-m-d', strtotime( 'first day of previous month' ) ),
|
54 |
-
'end_date' => date( 'Y-m-d', strtotime( 'last day of previous month' ) ),
|
55 |
),
|
56 |
'this_month' => array(
|
57 |
'title' => __( 'This month', 'woocommerce' ),
|
58 |
-
'start_date' => date( 'Y-m-01' ),
|
59 |
-
'end_date' => date( 'Y-m-d' ),
|
60 |
),
|
61 |
'last_7_days' => array(
|
62 |
'title' => __( 'Last 7 days', 'woocommerce' ),
|
63 |
-
'start_date' => date( 'Y-m-d', strtotime( '-7 days' ) ),
|
64 |
-
'end_date' => date( 'Y-m-d' ),
|
65 |
),
|
66 |
);
|
67 |
}
|
@@ -71,76 +72,77 @@ if ( ! function_exists( 'wcj_get_reports_custom_ranges' ) ) {
|
|
71 |
/*
|
72 |
* wcj_get_reports_custom_ranges.
|
73 |
*
|
74 |
-
* @version 2.
|
75 |
* @since 2.9.0
|
76 |
*/
|
77 |
function wcj_get_reports_custom_ranges() {
|
|
|
78 |
return array(
|
79 |
'last_14_days' => array(
|
80 |
'title' => __( 'Last 14 days', 'woocommerce-jetpack' ),
|
81 |
-
'start_date' => date( 'Y-m-d', strtotime( '-14 days' ) ),
|
82 |
-
'end_date' => date( 'Y-m-d' ),
|
83 |
),
|
84 |
'last_30_days' => array(
|
85 |
'title' => __( 'Last 30 days', 'woocommerce-jetpack' ),
|
86 |
-
'start_date' => date( 'Y-m-d', strtotime( '-30 days' ) ),
|
87 |
-
'end_date' => date( 'Y-m-d' ),
|
88 |
),
|
89 |
'last_3_months' => array(
|
90 |
'title' => __( 'Last 3 months', 'woocommerce-jetpack' ),
|
91 |
-
'start_date' => date( 'Y-m-d', strtotime( '-3 months' ) ),
|
92 |
-
'end_date' => date( 'Y-m-d' ),
|
93 |
),
|
94 |
'last_6_months' => array(
|
95 |
'title' => __( 'Last 6 months', 'woocommerce-jetpack' ),
|
96 |
-
'start_date' => date( 'Y-m-d', strtotime( '-6 months' ) ),
|
97 |
-
'end_date' => date( 'Y-m-d' ),
|
98 |
),
|
99 |
'last_12_months' => array(
|
100 |
'title' => __( 'Last 12 months', 'woocommerce-jetpack' ),
|
101 |
-
'start_date' => date( 'Y-m-d', strtotime( '-12 months' ) ),
|
102 |
-
'end_date' => date( 'Y-m-d' ),
|
103 |
),
|
104 |
'last_24_months' => array(
|
105 |
'title' => __( 'Last 24 months', 'woocommerce-jetpack' ),
|
106 |
-
'start_date' => date( 'Y-m-d', strtotime( '-24 months' ) ),
|
107 |
-
'end_date' => date( 'Y-m-d' ),
|
108 |
),
|
109 |
'last_36_months' => array(
|
110 |
'title' => __( 'Last 36 months', 'woocommerce-jetpack' ),
|
111 |
-
'start_date' => date( 'Y-m-d', strtotime( '-36 months' ) ),
|
112 |
-
'end_date' => date( 'Y-m-d' ),
|
113 |
),
|
114 |
'same_days_last_month' => array(
|
115 |
'title' => __( 'Same days last month', 'woocommerce-jetpack' ),
|
116 |
-
'start_date' => date( 'Y-m-01', strtotime( '-1 month' ) ),
|
117 |
-
'end_date' => date( 'Y-m-d',
|
118 |
),
|
119 |
'same_days_last_year' => array(
|
120 |
'title' => __( 'Same days last year', 'woocommerce-jetpack' ),
|
121 |
-
'start_date' => date( 'Y-m-01', strtotime( '-1 year' ) ),
|
122 |
-
'end_date' => date( 'Y-m-d',
|
123 |
),
|
124 |
'last_year' => array(
|
125 |
'title' => __( 'Last year', 'woocommerce-jetpack' ),
|
126 |
-
'start_date' => date( 'Y-01-01', strtotime( '-1 year' ) ),
|
127 |
-
'end_date' => date( 'Y-12-31', strtotime( '-1 year' ) ),
|
128 |
),
|
129 |
'yesterday' => array(
|
130 |
'title' => __( 'Yesterday', 'woocommerce-jetpack' ),
|
131 |
-
'start_date' => date( 'Y-m-d', strtotime( '-1 day' ) ),
|
132 |
-
'end_date' => date( 'Y-m-d', strtotime( '-1 day' ) ),
|
133 |
),
|
134 |
'today' => array(
|
135 |
'title' => __( 'Today', 'woocommerce-jetpack' ),
|
136 |
-
'start_date' => date( 'Y-m-d' ),
|
137 |
-
'end_date' => date( 'Y-m-d' ),
|
138 |
),
|
139 |
/*
|
140 |
'last_week' => array(
|
141 |
'title' => __( 'Last week', 'woocommerce-jetpack' ),
|
142 |
-
'start_date' => date( 'Y-m-d', strtotime( 'last monday' ) ),
|
143 |
-
'end_date' => date( 'Y-m-d', strtotime( 'last sunday' ) ),
|
144 |
),
|
145 |
*/
|
146 |
);
|
2 |
/**
|
3 |
* Booster for WooCommerce - Functions - Reports
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
38 |
/*
|
39 |
* wcj_get_reports_standard_ranges.
|
40 |
*
|
41 |
+
* @version 3.2.4
|
42 |
* @since 2.9.0
|
43 |
*/
|
44 |
function wcj_get_reports_standard_ranges() {
|
45 |
+
$current_time = (int) current_time( 'timestamp' );
|
46 |
return array(
|
47 |
'year' => array(
|
48 |
'title' => __( 'Year', 'woocommerce' ),
|
49 |
+
'start_date' => date( 'Y-01-01', $current_time ),
|
50 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
51 |
),
|
52 |
'last_month' => array(
|
53 |
'title' => __( 'Last month', 'woocommerce' ),
|
54 |
+
'start_date' => date( 'Y-m-d', strtotime( 'first day of previous month', $current_time ) ),
|
55 |
+
'end_date' => date( 'Y-m-d', strtotime( 'last day of previous month', $current_time ) ),
|
56 |
),
|
57 |
'this_month' => array(
|
58 |
'title' => __( 'This month', 'woocommerce' ),
|
59 |
+
'start_date' => date( 'Y-m-01', $current_time ),
|
60 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
61 |
),
|
62 |
'last_7_days' => array(
|
63 |
'title' => __( 'Last 7 days', 'woocommerce' ),
|
64 |
+
'start_date' => date( 'Y-m-d', strtotime( '-7 days', $current_time ) ),
|
65 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
66 |
),
|
67 |
);
|
68 |
}
|
72 |
/*
|
73 |
* wcj_get_reports_custom_ranges.
|
74 |
*
|
75 |
+
* @version 3.2.4
|
76 |
* @since 2.9.0
|
77 |
*/
|
78 |
function wcj_get_reports_custom_ranges() {
|
79 |
+
$current_time = (int) current_time( 'timestamp' );
|
80 |
return array(
|
81 |
'last_14_days' => array(
|
82 |
'title' => __( 'Last 14 days', 'woocommerce-jetpack' ),
|
83 |
+
'start_date' => date( 'Y-m-d', strtotime( '-14 days', $current_time ) ),
|
84 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
85 |
),
|
86 |
'last_30_days' => array(
|
87 |
'title' => __( 'Last 30 days', 'woocommerce-jetpack' ),
|
88 |
+
'start_date' => date( 'Y-m-d', strtotime( '-30 days', $current_time ) ),
|
89 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
90 |
),
|
91 |
'last_3_months' => array(
|
92 |
'title' => __( 'Last 3 months', 'woocommerce-jetpack' ),
|
93 |
+
'start_date' => date( 'Y-m-d', strtotime( '-3 months', $current_time ) ),
|
94 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
95 |
),
|
96 |
'last_6_months' => array(
|
97 |
'title' => __( 'Last 6 months', 'woocommerce-jetpack' ),
|
98 |
+
'start_date' => date( 'Y-m-d', strtotime( '-6 months', $current_time ) ),
|
99 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
100 |
),
|
101 |
'last_12_months' => array(
|
102 |
'title' => __( 'Last 12 months', 'woocommerce-jetpack' ),
|
103 |
+
'start_date' => date( 'Y-m-d', strtotime( '-12 months', $current_time ) ),
|
104 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
105 |
),
|
106 |
'last_24_months' => array(
|
107 |
'title' => __( 'Last 24 months', 'woocommerce-jetpack' ),
|
108 |
+
'start_date' => date( 'Y-m-d', strtotime( '-24 months', $current_time ) ),
|
109 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
110 |
),
|
111 |
'last_36_months' => array(
|
112 |
'title' => __( 'Last 36 months', 'woocommerce-jetpack' ),
|
113 |
+
'start_date' => date( 'Y-m-d', strtotime( '-36 months', $current_time ) ),
|
114 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
115 |
),
|
116 |
'same_days_last_month' => array(
|
117 |
'title' => __( 'Same days last month', 'woocommerce-jetpack' ),
|
118 |
+
'start_date' => date( 'Y-m-01', strtotime( '-1 month', $current_time ) ),
|
119 |
+
'end_date' => date( 'Y-m-d', strtotime( '-1 month', $current_time ) ),
|
120 |
),
|
121 |
'same_days_last_year' => array(
|
122 |
'title' => __( 'Same days last year', 'woocommerce-jetpack' ),
|
123 |
+
'start_date' => date( 'Y-m-01', strtotime( '-1 year', $current_time ) ),
|
124 |
+
'end_date' => date( 'Y-m-d', strtotime( '-1 year', $current_time ) ),
|
125 |
),
|
126 |
'last_year' => array(
|
127 |
'title' => __( 'Last year', 'woocommerce-jetpack' ),
|
128 |
+
'start_date' => date( 'Y-01-01', strtotime( '-1 year', $current_time ) ),
|
129 |
+
'end_date' => date( 'Y-12-31', strtotime( '-1 year', $current_time ) ),
|
130 |
),
|
131 |
'yesterday' => array(
|
132 |
'title' => __( 'Yesterday', 'woocommerce-jetpack' ),
|
133 |
+
'start_date' => date( 'Y-m-d', strtotime( '-1 day', $current_time ) ),
|
134 |
+
'end_date' => date( 'Y-m-d', strtotime( '-1 day', $current_time ) ),
|
135 |
),
|
136 |
'today' => array(
|
137 |
'title' => __( 'Today', 'woocommerce-jetpack' ),
|
138 |
+
'start_date' => date( 'Y-m-d', $current_time ),
|
139 |
+
'end_date' => date( 'Y-m-d', $current_time ),
|
140 |
),
|
141 |
/*
|
142 |
'last_week' => array(
|
143 |
'title' => __( 'Last week', 'woocommerce-jetpack' ),
|
144 |
+
'start_date' => date( 'Y-m-d', strtotime( 'last monday', $current_time ) ),
|
145 |
+
'end_date' => date( 'Y-m-d', strtotime( 'last sunday', $current_time ) ),
|
146 |
),
|
147 |
*/
|
148 |
);
|
includes/input-fields/class-wcj-product-input-fields-core.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Product Input Fields - Core
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -411,7 +411,7 @@ class WCJ_Product_Input_Fields_Core {
|
|
411 |
/**
|
412 |
* add_product_input_fields_to_frontend.
|
413 |
*
|
414 |
-
* @version 3.
|
415 |
* @todo `$set_value` - add "default" option for all other types except checkbox
|
416 |
* @todo `$set_value` - 'file' type
|
417 |
* @todo add `required` attributes
|
@@ -529,7 +529,7 @@ class WCJ_Product_Input_Fields_Core {
|
|
529 |
$select_options_raw = $this->get_value( 'wcj_product_input_fields_type_select_options_' . $this->scope . '_' . $i, $_product_id, '' );
|
530 |
$select_options = wcj_get_select_options( $select_options_raw, false );
|
531 |
if ( '' != $placeholder ) {
|
532 |
-
$select_options =
|
533 |
}
|
534 |
$select_options_html = '';
|
535 |
if ( ! empty( $select_options ) ) {
|
@@ -551,11 +551,16 @@ class WCJ_Product_Input_Fields_Core {
|
|
551 |
if ( ! empty( $select_options ) ) {
|
552 |
reset( $select_options );
|
553 |
$value = ( '' != $set_value ? $set_value : key( $select_options ) );
|
|
|
|
|
554 |
foreach ( $select_options as $option_key => $option_text ) {
|
555 |
-
$
|
556 |
-
'"
|
557 |
-
|
558 |
-
'
|
|
|
|
|
|
|
559 |
}
|
560 |
$html = $select_options_html;
|
561 |
}
|
2 |
/**
|
3 |
* Booster for WooCommerce - Product Input Fields - Core
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
411 |
/**
|
412 |
* add_product_input_fields_to_frontend.
|
413 |
*
|
414 |
+
* @version 3.2.4
|
415 |
* @todo `$set_value` - add "default" option for all other types except checkbox
|
416 |
* @todo `$set_value` - 'file' type
|
417 |
* @todo add `required` attributes
|
529 |
$select_options_raw = $this->get_value( 'wcj_product_input_fields_type_select_options_' . $this->scope . '_' . $i, $_product_id, '' );
|
530 |
$select_options = wcj_get_select_options( $select_options_raw, false );
|
531 |
if ( '' != $placeholder ) {
|
532 |
+
$select_options = array_replace( array( '' => $placeholder ), $select_options );
|
533 |
}
|
534 |
$select_options_html = '';
|
535 |
if ( ! empty( $select_options ) ) {
|
551 |
if ( ! empty( $select_options ) ) {
|
552 |
reset( $select_options );
|
553 |
$value = ( '' != $set_value ? $set_value : key( $select_options ) );
|
554 |
+
$template = get_option( 'wcj_product_input_fields_field_template_radio',
|
555 |
+
'%radio_field_html%<label for="%radio_field_id%" class="radio">%radio_field_title%</label><br>' );
|
556 |
foreach ( $select_options as $option_key => $option_text ) {
|
557 |
+
$replaced_values = array(
|
558 |
+
'%radio_field_html%' => '<input type="radio" class="input-radio wcj_product_input_fields" value="' . esc_attr( $option_key ) .
|
559 |
+
'" name="' . $field_name . '" id="' . $field_name . '_' . esc_attr( $option_key ) . '"' . checked( $value, $option_key, false ) . ' />',
|
560 |
+
'%radio_field_id%' => $field_name . '_' . esc_attr( $option_key ),
|
561 |
+
'%radio_field_title%' => $option_text,
|
562 |
+
);
|
563 |
+
$select_options_html .= str_replace( array_keys( $replaced_values ), $replaced_values, $template );
|
564 |
}
|
565 |
$html = $select_options_html;
|
566 |
}
|
includes/js/wcj-custom-tabs-yoast-seo.js
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* wcj-custom-tabs-yoast-seo.
|
3 |
+
*
|
4 |
+
* @version 3.2.4
|
5 |
+
* @since 3.2.4
|
6 |
+
* @see https://return-true.com/adding-content-to-yoast-seo-analysis-using-yoastseojs/
|
7 |
+
*/
|
8 |
+
|
9 |
+
(function($) {
|
10 |
+
|
11 |
+
var WCJ_Yoast_Plugin = function() {
|
12 |
+
YoastSEO.app.registerPlugin('wcj_yoast_plugin', {status: 'loading'});
|
13 |
+
this.getData();
|
14 |
+
};
|
15 |
+
|
16 |
+
WCJ_Yoast_Plugin.prototype.getData = function() {
|
17 |
+
var _self = this;
|
18 |
+
YoastSEO.app.pluginReady('wcj_yoast_plugin');
|
19 |
+
YoastSEO.app.registerModification('content', $.proxy(_self.getCustomContent, _self), 'wcj_yoast_plugin', 5);
|
20 |
+
};
|
21 |
+
|
22 |
+
WCJ_Yoast_Plugin.prototype.getCustomContent = function (content) {
|
23 |
+
var custom_product_tabs_content = "";
|
24 |
+
jQuery("textarea[id^='wcj_custom_product_tabs_content_local_']").each(function() {
|
25 |
+
custom_product_tabs_content += " " + jQuery(this).val();
|
26 |
+
});
|
27 |
+
return content + custom_product_tabs_content;
|
28 |
+
};
|
29 |
+
|
30 |
+
$(window).on('YoastSEO:ready', function () {
|
31 |
+
new WCJ_Yoast_Plugin();
|
32 |
+
});
|
33 |
+
|
34 |
+
})(jQuery);
|
includes/reports/wcj-class-reports-sales-daily.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Reports - Product Sales (Daily)
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -38,12 +38,13 @@ class WCJ_Reports_Product_Sales_Daily {
|
|
38 |
/*
|
39 |
* get_report_args.
|
40 |
*
|
41 |
-
* @version 2.
|
42 |
* @since 2.9.0
|
43 |
*/
|
44 |
function get_report_args() {
|
45 |
-
$
|
46 |
-
$this->
|
|
|
47 |
$this->product_title = isset( $_GET['product_title'] ) ? $_GET['product_title'] : '';
|
48 |
}
|
49 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Reports - Product Sales (Daily)
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
38 |
/*
|
39 |
* get_report_args.
|
40 |
*
|
41 |
+
* @version 3.2.4
|
42 |
* @since 2.9.0
|
43 |
*/
|
44 |
function get_report_args() {
|
45 |
+
$current_time = (int) current_time( 'timestamp' );
|
46 |
+
$this->start_date = isset( $_GET['start_date'] ) ? $_GET['start_date'] : date( 'Y-m-d', strtotime( '-7 days', $current_time ) );
|
47 |
+
$this->end_date = isset( $_GET['end_date'] ) ? $_GET['end_date'] : date( 'Y-m-d', $current_time );
|
48 |
$this->product_title = isset( $_GET['product_title'] ) ? $_GET['product_title'] : '';
|
49 |
}
|
50 |
|
includes/reports/wcj-class-reports-sales.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Reports - Sales
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -40,22 +40,6 @@ class WCJ_Reports_Sales {
|
|
40 |
return $html;
|
41 |
}
|
42 |
|
43 |
-
/*
|
44 |
-
* sort_by_total_sales.
|
45 |
-
*
|
46 |
-
* @version 2.3.0
|
47 |
-
* @since 2.3.0
|
48 |
-
* @deprecated 2.5.8
|
49 |
-
*/
|
50 |
-
/*
|
51 |
-
function sort_by_total_sales( $a, $b ) {
|
52 |
-
if ( $a['sales'] == $b['sales'] ) {
|
53 |
-
return 0;
|
54 |
-
}
|
55 |
-
return ( $a['sales'] < $b['sales'] ) ? 1 : -1;
|
56 |
-
}
|
57 |
-
*/
|
58 |
-
|
59 |
/*
|
60 |
* sort_by_title.
|
61 |
*
|
@@ -66,10 +50,24 @@ class WCJ_Reports_Sales {
|
|
66 |
return strcmp( strip_tags( $a['title'] ), strip_tags( $b['title'] ) );
|
67 |
}
|
68 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
/*
|
70 |
* get_products_sales.
|
71 |
*
|
72 |
-
* @version 2.
|
73 |
* @since 2.3.0
|
74 |
* @todo (maybe) currency conversion
|
75 |
* @todo fix when variable and variations are all (wrongfully) counted in total sums
|
@@ -106,6 +104,9 @@ class WCJ_Reports_Sales {
|
|
106 |
$order = wc_get_order( $order_id );
|
107 |
$items = $order->get_items();
|
108 |
foreach ( $items as $item ) {
|
|
|
|
|
|
|
109 |
$product_ids = array( $item['product_id'] );
|
110 |
if ( 0 != $item['variation_id'] && 'yes' === get_option( 'wcj_reports_products_sales_count_variations', 'no' ) ) {
|
111 |
$product_ids[] = $item['variation_id'];
|
@@ -117,7 +118,7 @@ class WCJ_Reports_Sales {
|
|
117 |
$_product = wc_get_product( $product_id );
|
118 |
if ( is_object( $_product ) ) {
|
119 |
$products_data[ $product_id ][ 'title' ] .= $_product->get_title(); // get_the_title( $product_id );
|
120 |
-
if ( 'WC_Product_Variation' === get_class( $_product ) &&
|
121 |
$products_data[ $product_id ][ 'title' ] .= '<br><em>' . wcj_get_product_formatted_variation( $_product, true ) . '</em>';
|
122 |
} elseif ( 'WC_Product_Variation' === get_class( $_product ) ) {
|
123 |
// $products_data[ $product_id ][ 'title' ] .= ' [PARENT PRODUCT DELETED]'; // todo
|
2 |
/**
|
3 |
* Booster for WooCommerce - Reports - Sales
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
40 |
return $html;
|
41 |
}
|
42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
/*
|
44 |
* sort_by_title.
|
45 |
*
|
50 |
return strcmp( strip_tags( $a['title'] ), strip_tags( $b['title'] ) );
|
51 |
}
|
52 |
|
53 |
+
/*
|
54 |
+
* do_product_parent_exist.
|
55 |
+
*
|
56 |
+
* @version 3.2.4
|
57 |
+
* @since 3.2.4
|
58 |
+
*/
|
59 |
+
function do_product_parent_exist( $_product ) {
|
60 |
+
if ( WCJ_IS_WC_VERSION_BELOW_3 ) {
|
61 |
+
return is_object( $_product->parent );
|
62 |
+
} else {
|
63 |
+
return ( 0 != ( $parent_id = $_product->get_parent_id() ) ? is_object( wc_get_product( $parent_id ) ) : false );
|
64 |
+
}
|
65 |
+
}
|
66 |
+
|
67 |
/*
|
68 |
* get_products_sales.
|
69 |
*
|
70 |
+
* @version 3.2.4
|
71 |
* @since 2.3.0
|
72 |
* @todo (maybe) currency conversion
|
73 |
* @todo fix when variable and variations are all (wrongfully) counted in total sums
|
104 |
$order = wc_get_order( $order_id );
|
105 |
$items = $order->get_items();
|
106 |
foreach ( $items as $item ) {
|
107 |
+
if ( ! apply_filters( 'wcj_reports_products_sales_check_product', true, $item['product_id'] ) ) {
|
108 |
+
continue;
|
109 |
+
}
|
110 |
$product_ids = array( $item['product_id'] );
|
111 |
if ( 0 != $item['variation_id'] && 'yes' === get_option( 'wcj_reports_products_sales_count_variations', 'no' ) ) {
|
112 |
$product_ids[] = $item['variation_id'];
|
118 |
$_product = wc_get_product( $product_id );
|
119 |
if ( is_object( $_product ) ) {
|
120 |
$products_data[ $product_id ][ 'title' ] .= $_product->get_title(); // get_the_title( $product_id );
|
121 |
+
if ( 'WC_Product_Variation' === get_class( $_product ) && $this->do_product_parent_exist( $_product ) ) {
|
122 |
$products_data[ $product_id ][ 'title' ] .= '<br><em>' . wcj_get_product_formatted_variation( $_product, true ) . '</em>';
|
123 |
} elseif ( 'WC_Product_Variation' === get_class( $_product ) ) {
|
124 |
// $products_data[ $product_id ][ 'title' ] .= ' [PARENT PRODUCT DELETED]'; // todo
|
includes/settings/meta-box/wcj-settings-meta-box-product-custom-visibility.php
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings Meta Box - Product Custom Visibility
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
* @todo (maybe) option to choose between `chosen_select` and "simple"
|
9 |
+
*/
|
10 |
+
|
11 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
12 |
+
|
13 |
+
return array(
|
14 |
+
array(
|
15 |
+
'title' => __( 'Visible', 'woocommerce-jetpack' ),
|
16 |
+
'name' => 'wcj_product_custom_visibility_visible',
|
17 |
+
'default' => '',
|
18 |
+
'type' => 'select',
|
19 |
+
'options' => wcj_get_select_options( get_option( 'wcj_product_custom_visibility_options_list', '' ) ),
|
20 |
+
'multiple' => true,
|
21 |
+
'css' => 'width:100%;',
|
22 |
+
'class' => 'chosen_select',
|
23 |
+
),
|
24 |
+
);
|
includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings Meta Box - Sale Flash
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
return array(
|
13 |
+
array(
|
14 |
+
'title' => __( 'Enable', 'woocommerce-jetpack' ),
|
15 |
+
'name' => 'wcj_sale_flash_enabled',
|
16 |
+
'default' => 'no',
|
17 |
+
'type' => 'select',
|
18 |
+
'options' => array(
|
19 |
+
'yes' => __( 'Yes', 'woocommerce-jetpack' ),
|
20 |
+
'no' => __( 'No', 'woocommerce-jetpack' ),
|
21 |
+
),
|
22 |
+
),
|
23 |
+
array(
|
24 |
+
'title' => __( 'HTML', 'woocommerce-jetpack' ),
|
25 |
+
'name' => 'wcj_sale_flash',
|
26 |
+
'default' => '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>',
|
27 |
+
'type' => 'textarea',
|
28 |
+
'css' => 'width:100%;min-height:100px;',
|
29 |
+
),
|
30 |
+
);
|
includes/settings/wcj-settings-admin-orders-list.php
ADDED
@@ -0,0 +1,165 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings - Admin Orders List
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
$settings = array(
|
13 |
+
array(
|
14 |
+
'title' => __( 'Custom Columns', 'woocommerce-jetpack' ),
|
15 |
+
'type' => 'title',
|
16 |
+
'desc' => __( 'This section lets you add custom columns to WooCommerce orders list.', 'woocommerce-jetpack' ),
|
17 |
+
'id' => 'wcj_orders_list_custom_columns_options',
|
18 |
+
),
|
19 |
+
array(
|
20 |
+
'title' => __( 'Custom Columns', 'woocommerce-jetpack' ),
|
21 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
22 |
+
'id' => 'wcj_order_admin_list_custom_columns_enabled',
|
23 |
+
'default' => 'no',
|
24 |
+
'type' => 'checkbox',
|
25 |
+
),
|
26 |
+
array(
|
27 |
+
'title' => __( 'Billing Country', 'woocommerce-jetpack' ),
|
28 |
+
'desc' => __( 'Add column and filtering', 'woocommerce-jetpack' ),
|
29 |
+
'id' => 'wcj_orders_list_custom_columns_country',
|
30 |
+
'default' => 'no',
|
31 |
+
'type' => 'checkbox',
|
32 |
+
),
|
33 |
+
array(
|
34 |
+
'title' => __( 'Currency Code', 'woocommerce-jetpack' ),
|
35 |
+
'desc' => __( 'Add column and filtering', 'woocommerce-jetpack' ),
|
36 |
+
'id' => 'wcj_orders_list_custom_columns_currency',
|
37 |
+
'default' => 'no',
|
38 |
+
'type' => 'checkbox',
|
39 |
+
),
|
40 |
+
array(
|
41 |
+
'title' => __( 'Custom Columns Total Number', 'woocommerce-jetpack' ),
|
42 |
+
'id' => 'wcj_orders_list_custom_columns_total_number',
|
43 |
+
'default' => 1,
|
44 |
+
'type' => 'custom_number',
|
45 |
+
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
46 |
+
'custom_attributes' => array_merge(
|
47 |
+
is_array( apply_filters( 'booster_get_message', '', 'readonly' ) ) ? apply_filters( 'booster_get_message', '', 'readonly' ) : array(),
|
48 |
+
array( 'step' => '1', 'min' => '0', )
|
49 |
+
),
|
50 |
+
),
|
51 |
+
);
|
52 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
53 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
54 |
+
$settings = array_merge( $settings, array(
|
55 |
+
array(
|
56 |
+
'title' => __( 'Custom Column', 'woocommerce-jetpack' ) . ' #' . $i,
|
57 |
+
'desc' => __( 'Enabled', 'woocommerce-jetpack' ),
|
58 |
+
'desc_tip' => __( 'Key:', 'woocommerce-jetpack' ) . ' <code>' . 'wcj_orders_custom_column_' . $i . '</code>',
|
59 |
+
'id' => 'wcj_orders_list_custom_columns_enabled_' . $i,
|
60 |
+
'default' => 'no',
|
61 |
+
'type' => 'checkbox',
|
62 |
+
),
|
63 |
+
array(
|
64 |
+
'desc' => __( 'Label', 'woocommerce-jetpack' ),
|
65 |
+
'id' => 'wcj_orders_list_custom_columns_label_' . $i,
|
66 |
+
'default' => '',
|
67 |
+
'type' => 'text',
|
68 |
+
),
|
69 |
+
array(
|
70 |
+
'desc' => __( 'Value', 'woocommerce-jetpack' ),
|
71 |
+
'desc_tip' => __( 'You can use shortcodes and/or HTML here.', 'woocommerce-jetpack' ),
|
72 |
+
'id' => 'wcj_orders_list_custom_columns_value_' . $i,
|
73 |
+
'default' => '',
|
74 |
+
'type' => 'custom_textarea',
|
75 |
+
),
|
76 |
+
array(
|
77 |
+
'desc' => __( 'Sortable', 'woocommerce-jetpack' ),
|
78 |
+
'id' => 'wcj_orders_list_custom_columns_sortable_' . $i,
|
79 |
+
'default' => 'no',
|
80 |
+
'type' => 'select',
|
81 |
+
'options' => array(
|
82 |
+
'no' => __( 'No', 'woocommerce-jetpack' ),
|
83 |
+
'meta_value' => __( 'By meta (as text)', 'woocommerce-jetpack' ),
|
84 |
+
'meta_value_num' => __( 'By meta (as numbers)', 'woocommerce-jetpack' ),
|
85 |
+
),
|
86 |
+
),
|
87 |
+
array(
|
88 |
+
'desc' => __( 'Key (if sortable)', 'woocommerce-jetpack' ),
|
89 |
+
'id' => 'wcj_orders_list_custom_columns_sortable_key_' . $i,
|
90 |
+
'default' => '',
|
91 |
+
'type' => 'text',
|
92 |
+
),
|
93 |
+
) );
|
94 |
+
}
|
95 |
+
$settings = array_merge( $settings, array(
|
96 |
+
array(
|
97 |
+
'type' => 'sectionend',
|
98 |
+
'id' => 'wcj_orders_list_custom_columns_options',
|
99 |
+
),
|
100 |
+
array(
|
101 |
+
'title' => __( 'Multiple Status', 'woocommerce-jetpack' ),
|
102 |
+
'type' => 'title',
|
103 |
+
'id' => 'wcj_order_admin_list_multiple_status_options',
|
104 |
+
),
|
105 |
+
array(
|
106 |
+
'title' => __( 'Multiple Status', 'woocommerce-jetpack' ),
|
107 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
108 |
+
'id' => 'wcj_order_admin_list_multiple_status_enabled',
|
109 |
+
'default' => 'no',
|
110 |
+
'type' => 'checkbox',
|
111 |
+
),
|
112 |
+
array(
|
113 |
+
'title' => __( 'Multiple Status Filtering', 'woocommerce-jetpack' ),
|
114 |
+
'id' => 'wcj_order_admin_list_multiple_status_filter',
|
115 |
+
'default' => 'no',
|
116 |
+
'type' => 'select',
|
117 |
+
'options' => array(
|
118 |
+
'no' => __( 'Do not add', 'woocommerce-jetpack' ),
|
119 |
+
'multiple_select' => __( 'Add as multiple select', 'woocommerce-jetpack' ),
|
120 |
+
'checkboxes' => __( 'Add as checkboxes', 'woocommerce-jetpack' ),
|
121 |
+
),
|
122 |
+
),
|
123 |
+
array(
|
124 |
+
'title' => __( 'Hide Default Statuses Menu', 'woocommerce-jetpack' ),
|
125 |
+
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
126 |
+
'id' => 'wcj_order_admin_list_hide_default_statuses_menu',
|
127 |
+
'default' => 'no',
|
128 |
+
'type' => 'checkbox',
|
129 |
+
),
|
130 |
+
array(
|
131 |
+
'title' => __( 'Add "Not Completed" Status Link to Default Statuses Menu', 'woocommerce-jetpack' ),
|
132 |
+
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
133 |
+
'id' => 'wcj_order_admin_list_multiple_status_not_completed_link',
|
134 |
+
'default' => 'no',
|
135 |
+
'type' => 'checkbox',
|
136 |
+
),
|
137 |
+
array(
|
138 |
+
'type' => 'sectionend',
|
139 |
+
'id' => 'wcj_order_admin_list_multiple_status_options',
|
140 |
+
),
|
141 |
+
array(
|
142 |
+
'title' => __( 'Columns Order', 'woocommerce-jetpack' ),
|
143 |
+
'type' => 'title',
|
144 |
+
'id' => 'wcj_order_admin_list_columns_order_options',
|
145 |
+
),
|
146 |
+
array(
|
147 |
+
'title' => __( 'Columns Order', 'woocommerce-jetpack' ),
|
148 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
149 |
+
'id' => 'wcj_order_admin_list_columns_order_enabled',
|
150 |
+
'default' => 'no',
|
151 |
+
'type' => 'checkbox',
|
152 |
+
),
|
153 |
+
array(
|
154 |
+
'id' => 'wcj_order_admin_list_columns_order',
|
155 |
+
'desc_tip' => __( 'Default columns order', 'woocommerce-jetpack' ) . ':<br>' . str_replace( PHP_EOL, '<br>', $this->get_orders_default_columns_in_order() ),
|
156 |
+
'default' => $this->get_orders_default_columns_in_order(),
|
157 |
+
'type' => 'textarea',
|
158 |
+
'css' => 'height:300px;',
|
159 |
+
),
|
160 |
+
array(
|
161 |
+
'type' => 'sectionend',
|
162 |
+
'id' => 'wcj_order_admin_list_columns_order_options',
|
163 |
+
),
|
164 |
+
) );
|
165 |
+
return $settings;
|
includes/settings/wcj-settings-admin-products-list.php
ADDED
@@ -0,0 +1,93 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings - Admin Products List
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
$settings = array(
|
13 |
+
array(
|
14 |
+
'title' => __( 'Custom Columns', 'woocommerce-jetpack' ),
|
15 |
+
'type' => 'title',
|
16 |
+
'id' => 'wcj_products_admin_list_custom_columns_options',
|
17 |
+
),
|
18 |
+
array(
|
19 |
+
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
20 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
21 |
+
'id' => 'wcj_products_admin_list_custom_columns_enabled',
|
22 |
+
'default' => 'no',
|
23 |
+
'type' => 'checkbox',
|
24 |
+
),
|
25 |
+
array(
|
26 |
+
'title' => __( 'Custom Columns Total Number', 'woocommerce-jetpack' ),
|
27 |
+
'desc_tip' => __( 'Save module\'s settings after changing this option to see new settings fields.', 'woocommerce-jetpack' ),
|
28 |
+
'id' => 'wcj_products_admin_list_custom_columns_total_number',
|
29 |
+
'default' => 1,
|
30 |
+
'type' => 'custom_number',
|
31 |
+
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
32 |
+
'custom_attributes' => array_merge(
|
33 |
+
is_array( apply_filters( 'booster_get_message', '', 'readonly' ) ) ? apply_filters( 'booster_get_message', '', 'readonly' ) : array(),
|
34 |
+
array( 'step' => '1', 'min' => '0', )
|
35 |
+
),
|
36 |
+
),
|
37 |
+
);
|
38 |
+
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
39 |
+
for ( $i = 1; $i <= $total_number; $i++ ) {
|
40 |
+
$settings = array_merge( $settings, array(
|
41 |
+
array(
|
42 |
+
'title' => __( 'Custom Column', 'woocommerce-jetpack' ) . ' #' . $i,
|
43 |
+
'desc' => __( 'Enabled', 'woocommerce-jetpack' ),
|
44 |
+
'desc_tip' => __( 'Key:', 'woocommerce-jetpack' ) . ' <code>' . 'wcj_products_custom_column_' . $i . '</code>',
|
45 |
+
'id' => 'wcj_products_admin_list_custom_columns_enabled_' . $i,
|
46 |
+
'default' => 'no',
|
47 |
+
'type' => 'checkbox',
|
48 |
+
),
|
49 |
+
array(
|
50 |
+
'desc' => __( 'Label', 'woocommerce-jetpack' ),
|
51 |
+
'id' => 'wcj_products_admin_list_custom_columns_label_' . $i,
|
52 |
+
'default' => '',
|
53 |
+
'type' => 'text',
|
54 |
+
),
|
55 |
+
array(
|
56 |
+
'desc' => __( 'Value', 'woocommerce-jetpack' ),
|
57 |
+
'desc_tip' => __( 'You can use shortcodes and/or HTML here.', 'woocommerce-jetpack' ),
|
58 |
+
'id' => 'wcj_products_admin_list_custom_columns_value_' . $i,
|
59 |
+
'default' => '',
|
60 |
+
'type' => 'custom_textarea',
|
61 |
+
),
|
62 |
+
) );
|
63 |
+
}
|
64 |
+
$settings = array_merge( $settings, array(
|
65 |
+
array(
|
66 |
+
'type' => 'sectionend',
|
67 |
+
'id' => 'wcj_products_admin_list_custom_columns_options',
|
68 |
+
),
|
69 |
+
array(
|
70 |
+
'title' => __( 'Columns Order', 'woocommerce-jetpack' ),
|
71 |
+
'type' => 'title',
|
72 |
+
'id' => 'wcj_products_admin_list_columns_order_options',
|
73 |
+
),
|
74 |
+
array(
|
75 |
+
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
76 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
77 |
+
'id' => 'wcj_products_admin_list_columns_order_enabled',
|
78 |
+
'default' => 'no',
|
79 |
+
'type' => 'checkbox',
|
80 |
+
),
|
81 |
+
array(
|
82 |
+
'id' => 'wcj_products_admin_list_columns_order',
|
83 |
+
'desc_tip' => __( 'Default columns order', 'woocommerce-jetpack' ) . ':<br>' . str_replace( PHP_EOL, '<br>', $this->get_products_default_columns_in_order() ),
|
84 |
+
'default' => $this->get_products_default_columns_in_order(),
|
85 |
+
'type' => 'textarea',
|
86 |
+
'css' => 'height:300px;',
|
87 |
+
),
|
88 |
+
array(
|
89 |
+
'type' => 'sectionend',
|
90 |
+
'id' => 'wcj_products_admin_list_columns_order_options',
|
91 |
+
),
|
92 |
+
) );
|
93 |
+
return $settings;
|
includes/settings/wcj-settings-call-for-price.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Call for Price
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -22,9 +22,9 @@ return array(
|
|
22 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
23 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
24 |
'id' => 'wcj_call_for_price_text',
|
25 |
-
'default' =>
|
26 |
'type' => 'textarea',
|
27 |
-
'css' => 'width:
|
28 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
29 |
),
|
30 |
array(
|
@@ -32,9 +32,9 @@ return array(
|
|
32 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
33 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
34 |
'id' => 'wcj_call_for_price_text_on_archive',
|
35 |
-
'default' =>
|
36 |
'type' => 'textarea',
|
37 |
-
'css' => 'width:
|
38 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
39 |
),
|
40 |
array(
|
@@ -42,9 +42,9 @@ return array(
|
|
42 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
43 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
44 |
'id' => 'wcj_call_for_price_text_on_home',
|
45 |
-
'default' =>
|
46 |
'type' => 'textarea',
|
47 |
-
'css' => 'width:
|
48 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
49 |
),
|
50 |
array(
|
@@ -52,9 +52,19 @@ return array(
|
|
52 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
53 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
54 |
'id' => 'wcj_call_for_price_text_on_related',
|
55 |
-
'default' =>
|
56 |
'type' => 'textarea',
|
57 |
-
'css' => 'width:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
59 |
),
|
60 |
array(
|
@@ -67,7 +77,7 @@ return array(
|
|
67 |
array(
|
68 |
'title' => __( 'Make All Products Call for Price', 'woocommerce-jetpack' ),
|
69 |
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
70 |
-
'desc_tip' => __( 'Enable this to make all products
|
71 |
'id' => 'wcj_call_for_price_make_all_empty',
|
72 |
'default' => 'no',
|
73 |
'type' => 'checkbox',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Call for Price
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
22 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
23 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
24 |
'id' => 'wcj_call_for_price_text',
|
25 |
+
'default' => '<strong>Call for price</strong>',
|
26 |
'type' => 'textarea',
|
27 |
+
'css' => 'width:100%',
|
28 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
29 |
),
|
30 |
array(
|
32 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
33 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
34 |
'id' => 'wcj_call_for_price_text_on_archive',
|
35 |
+
'default' => '<strong>Call for price</strong>',
|
36 |
'type' => 'textarea',
|
37 |
+
'css' => 'width:100%',
|
38 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
39 |
),
|
40 |
array(
|
42 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
43 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
44 |
'id' => 'wcj_call_for_price_text_on_home',
|
45 |
+
'default' => '<strong>Call for price</strong>',
|
46 |
'type' => 'textarea',
|
47 |
+
'css' => 'width:100%',
|
48 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
49 |
),
|
50 |
array(
|
52 |
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
53 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
54 |
'id' => 'wcj_call_for_price_text_on_related',
|
55 |
+
'default' => '<strong>Call for price</strong>',
|
56 |
'type' => 'textarea',
|
57 |
+
'css' => 'width:100%',
|
58 |
+
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
59 |
+
),
|
60 |
+
array(
|
61 |
+
'title' => __( 'Label to Show for Variations', 'woocommerce-jetpack' ),
|
62 |
+
'desc_tip' => __( 'This sets the html to output on empty price. Leave blank to disable.', 'woocommerce-jetpack' ),
|
63 |
+
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
64 |
+
'id' => 'wcj_call_for_price_text_variation',
|
65 |
+
'default' => '<strong>Call for price</strong>',
|
66 |
+
'type' => 'textarea',
|
67 |
+
'css' => 'width:100%',
|
68 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'readonly' ),
|
69 |
),
|
70 |
array(
|
77 |
array(
|
78 |
'title' => __( 'Make All Products Call for Price', 'woocommerce-jetpack' ),
|
79 |
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
80 |
+
'desc_tip' => __( 'Enable this to make all products prices empty. When checkbox disabled, all prices go back to normal.', 'woocommerce-jetpack' ),
|
81 |
'id' => 'wcj_call_for_price_make_all_empty',
|
82 |
'default' => 'no',
|
83 |
'type' => 'checkbox',
|
includes/settings/wcj-settings-checkout-custom-fields.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Checkout Custom Fields
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -104,7 +104,7 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_che
|
|
104 |
),
|
105 |
array(
|
106 |
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
107 |
-
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
108 |
'desc_tip' => __( 'Key', 'woocommerce-jetpack' ) . ': ' .
|
109 |
'<code>' . get_option( 'wcj_checkout_custom_field_section_' . $i, 'billing' ) . '_' . 'wcj_checkout_field_' . $i . '</code>',
|
110 |
'id' => 'wcj_checkout_custom_field_enabled_' . $i,
|
@@ -189,6 +189,13 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_che
|
|
189 |
'default' => 'yes',
|
190 |
'type' => 'checkbox',
|
191 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
192 |
array(
|
193 |
'title' => __( 'Select/Radio: Options', 'woocommerce-jetpack' ),
|
194 |
'desc' => __( 'One option per line', 'woocommerce-jetpack' ),
|
@@ -326,6 +333,22 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_che
|
|
326 |
'class' => 'chosen_select',
|
327 |
'options' => $products,
|
328 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
329 |
array(
|
330 |
'type' => 'sectionend',
|
331 |
'id' => 'wcj_checkout_custom_fields_options_' . $i,
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Checkout Custom Fields
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
104 |
),
|
105 |
array(
|
106 |
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
107 |
+
'desc' => '<strong>' . __( 'Enable', 'woocommerce-jetpack' ) . '</strong>',
|
108 |
'desc_tip' => __( 'Key', 'woocommerce-jetpack' ) . ': ' .
|
109 |
'<code>' . get_option( 'wcj_checkout_custom_field_section_' . $i, 'billing' ) . '_' . 'wcj_checkout_field_' . $i . '</code>',
|
110 |
'id' => 'wcj_checkout_custom_field_enabled_' . $i,
|
189 |
'default' => 'yes',
|
190 |
'type' => 'checkbox',
|
191 |
),
|
192 |
+
array(
|
193 |
+
'title' => __( 'Customer Meta Fields', 'woocommerce-jetpack' ),
|
194 |
+
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
195 |
+
'id' => 'wcj_checkout_custom_field_customer_meta_fields_' . $i,
|
196 |
+
'default' => 'yes',
|
197 |
+
'type' => 'checkbox',
|
198 |
+
),
|
199 |
array(
|
200 |
'title' => __( 'Select/Radio: Options', 'woocommerce-jetpack' ),
|
201 |
'desc' => __( 'One option per line', 'woocommerce-jetpack' ),
|
333 |
'class' => 'chosen_select',
|
334 |
'options' => $products,
|
335 |
),
|
336 |
+
array(
|
337 |
+
'title' => __( 'Min Cart Amount', 'woocommerce-jetpack' ),
|
338 |
+
'desc_tip' => __( 'Show this field only if cart total is at least this amount. Set zero to disable.', 'woocommerce-jetpack' ),
|
339 |
+
'id' => 'wcj_checkout_custom_field_min_cart_amount_' . $i,
|
340 |
+
'default' => 0,
|
341 |
+
'type' => 'number',
|
342 |
+
'custom_attributes' => array( 'min' => 0, 'step' => wcj_get_wc_price_step() ),
|
343 |
+
),
|
344 |
+
array(
|
345 |
+
'title' => __( 'Max Cart Amount', 'woocommerce-jetpack' ),
|
346 |
+
'desc_tip' => __( 'Show this field only if cart total is not more than this amount. Set zero to disable.', 'woocommerce-jetpack' ),
|
347 |
+
'id' => 'wcj_checkout_custom_field_max_cart_amount_' . $i,
|
348 |
+
'default' => 0,
|
349 |
+
'type' => 'number',
|
350 |
+
'custom_attributes' => array( 'min' => 0, 'step' => wcj_get_wc_price_step() ),
|
351 |
+
),
|
352 |
array(
|
353 |
'type' => 'sectionend',
|
354 |
'id' => 'wcj_checkout_custom_fields_options_' . $i,
|
includes/settings/wcj-settings-currency-exchange-rates.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Currency Exchange Rates
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add "rounding" and "offset" options for each pair separately
|
@@ -149,7 +149,7 @@ $settings = array_merge( $settings, array(
|
|
149 |
),
|
150 |
) );
|
151 |
// Exchange rates
|
152 |
-
$exchange_rate_settings = $this->get_all_currencies_exchange_rates_settings();
|
153 |
if ( ! empty( $exchange_rate_settings ) ) {
|
154 |
$settings = array_merge( $settings, array(
|
155 |
array(
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Currency Exchange Rates
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add "rounding" and "offset" options for each pair separately
|
149 |
),
|
150 |
) );
|
151 |
// Exchange rates
|
152 |
+
$exchange_rate_settings = $this->get_all_currencies_exchange_rates_settings( true );
|
153 |
if ( ! empty( $exchange_rate_settings ) ) {
|
154 |
$settings = array_merge( $settings, array(
|
155 |
array(
|
includes/settings/wcj-settings-currency-per-product.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Currency per Product
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -172,9 +172,7 @@ for ( $i = 1; $i <= $total_number; $i++ ) {
|
|
172 |
'id' => 'wcj_currency_per_product_exchange_rate_' . $i,
|
173 |
'default' => 1,
|
174 |
'type' => 'exchange_rate',
|
175 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
176 |
'custom_attributes_button' => $custom_attributes,
|
177 |
-
'css' => 'width:100px;',
|
178 |
'value' => $currency_from . '/' . $currency_to,
|
179 |
),
|
180 |
) );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Currency per Product
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
172 |
'id' => 'wcj_currency_per_product_exchange_rate_' . $i,
|
173 |
'default' => 1,
|
174 |
'type' => 'exchange_rate',
|
|
|
175 |
'custom_attributes_button' => $custom_attributes,
|
|
|
176 |
'value' => $currency_from . '/' . $currency_to,
|
177 |
),
|
178 |
) );
|
includes/settings/wcj-settings-general.php
CHANGED
@@ -7,6 +7,7 @@
|
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add link to Booster's shortcodes list
|
9 |
* @todo clean up
|
|
|
10 |
*/
|
11 |
|
12 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add link to Booster's shortcodes list
|
9 |
* @todo clean up
|
10 |
+
* @todo (maybe) move `wcj_general_advanced_disable_save_sys_temp_dir` to "PDF Invoicing" module
|
11 |
*/
|
12 |
|
13 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
includes/settings/wcj-settings-multicurrency-base-price.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Multicurrency Product Base Price
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -103,9 +103,7 @@ for ( $i = 1; $i <= $total_number; $i++ ) {
|
|
103 |
'id' => 'wcj_multicurrency_base_price_exchange_rate_' . $i,
|
104 |
'default' => 1,
|
105 |
'type' => 'exchange_rate',
|
106 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
107 |
'custom_attributes_button' => $custom_attributes,
|
108 |
-
'css' => 'width:100px;',
|
109 |
'value' => $currency_from . '/' . $currency_to,
|
110 |
),
|
111 |
) );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Multicurrency Product Base Price
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
103 |
'id' => 'wcj_multicurrency_base_price_exchange_rate_' . $i,
|
104 |
'default' => 1,
|
105 |
'type' => 'exchange_rate',
|
|
|
106 |
'custom_attributes_button' => $custom_attributes,
|
|
|
107 |
'value' => $currency_from . '/' . $currency_to,
|
108 |
),
|
109 |
) );
|
includes/settings/wcj-settings-multicurrency.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Multicurrency (Currency Switcher)
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo "pretty prices"
|
@@ -144,9 +144,7 @@ for ( $i = 1; $i <= $total_number; $i++ ) {
|
|
144 |
'id' => 'wcj_multicurrency_exchange_rate_' . $i,
|
145 |
'default' => 1,
|
146 |
'type' => 'exchange_rate',
|
147 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
148 |
'custom_attributes_button' => $custom_attributes,
|
149 |
-
'css' => 'width:100px;',
|
150 |
'value' => $currency_from . '/' . $currency_to,
|
151 |
),
|
152 |
) );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Multicurrency (Currency Switcher)
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo "pretty prices"
|
144 |
'id' => 'wcj_multicurrency_exchange_rate_' . $i,
|
145 |
'default' => 1,
|
146 |
'type' => 'exchange_rate',
|
|
|
147 |
'custom_attributes_button' => $custom_attributes,
|
|
|
148 |
'value' => $currency_from . '/' . $currency_to,
|
149 |
),
|
150 |
) );
|
includes/settings/wcj-settings-order-min-amount.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Order Minimum Amount
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -31,6 +31,13 @@ $settings = array(
|
|
31 |
'default' => 'no',
|
32 |
'type' => 'checkbox',
|
33 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
array(
|
35 |
'title' => __( 'Error message', 'woocommerce-jetpack' ),
|
36 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Order Minimum Amount
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
31 |
'default' => 'no',
|
32 |
'type' => 'checkbox',
|
33 |
),
|
34 |
+
array(
|
35 |
+
'title' => __( 'Exclude Discounts from Cart Total', 'woocommerce-jetpack' ),
|
36 |
+
'desc' => __( 'Exclude', 'woocommerce-jetpack' ),
|
37 |
+
'id' => 'wcj_order_minimum_amount_exclude_discounts',
|
38 |
+
'default' => 'no',
|
39 |
+
'type' => 'checkbox',
|
40 |
+
),
|
41 |
array(
|
42 |
'title' => __( 'Error message', 'woocommerce-jetpack' ),
|
43 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
includes/settings/wcj-settings-orders.php
CHANGED
@@ -2,13 +2,18 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce Settings - Orders
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
|
|
|
|
|
|
|
|
|
|
12 |
$settings = array(
|
13 |
array(
|
14 |
'title' => __( 'Admin Order Currency', 'woocommerce-jetpack' ),
|
@@ -56,147 +61,6 @@ $settings = array(
|
|
56 |
'type' => 'sectionend',
|
57 |
'id' => 'wcj_order_auto_complete_options',
|
58 |
),
|
59 |
-
array(
|
60 |
-
'title' => __( 'Admin Orders List Custom Columns', 'woocommerce-jetpack' ),
|
61 |
-
'type' => 'title',
|
62 |
-
'desc' => __( 'This section lets you add custom columns to WooCommerce orders list.', 'woocommerce-jetpack' ),
|
63 |
-
'id' => 'wcj_orders_list_custom_columns_options',
|
64 |
-
),
|
65 |
-
array(
|
66 |
-
'title' => __( 'Billing Country', 'woocommerce-jetpack' ),
|
67 |
-
'desc' => __( 'Add column and filtering', 'woocommerce-jetpack' ),
|
68 |
-
'id' => 'wcj_orders_list_custom_columns_country',
|
69 |
-
'default' => 'no',
|
70 |
-
'type' => 'checkbox',
|
71 |
-
),
|
72 |
-
array(
|
73 |
-
'title' => __( 'Currency Code', 'woocommerce-jetpack' ),
|
74 |
-
'desc' => __( 'Add column and filtering', 'woocommerce-jetpack' ),
|
75 |
-
'id' => 'wcj_orders_list_custom_columns_currency',
|
76 |
-
'default' => 'no',
|
77 |
-
'type' => 'checkbox',
|
78 |
-
),
|
79 |
-
array(
|
80 |
-
'title' => __( 'Custom Columns Total Number', 'woocommerce-jetpack' ),
|
81 |
-
'id' => 'wcj_orders_list_custom_columns_total_number',
|
82 |
-
'default' => 1,
|
83 |
-
'type' => 'custom_number',
|
84 |
-
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
85 |
-
'custom_attributes' => array_merge(
|
86 |
-
is_array( apply_filters( 'booster_get_message', '', 'readonly' ) ) ? apply_filters( 'booster_get_message', '', 'readonly' ) : array(),
|
87 |
-
array( 'step' => '1', 'min' => '0', )
|
88 |
-
),
|
89 |
-
),
|
90 |
-
);
|
91 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_orders_list_custom_columns_total_number', 1 ) );
|
92 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
93 |
-
$settings = array_merge( $settings, array(
|
94 |
-
array(
|
95 |
-
'title' => __( 'Custom Column', 'woocommerce-jetpack' ) . ' #' . $i,
|
96 |
-
'desc' => __( 'Enabled', 'woocommerce-jetpack' ),
|
97 |
-
'desc_tip' => __( 'Key:', 'woocommerce-jetpack' ) . ' <code>' . 'wcj_orders_custom_column_' . $i . '</code>',
|
98 |
-
'id' => 'wcj_orders_list_custom_columns_enabled_' . $i,
|
99 |
-
'default' => 'no',
|
100 |
-
'type' => 'checkbox',
|
101 |
-
),
|
102 |
-
array(
|
103 |
-
'desc' => __( 'Label', 'woocommerce-jetpack' ),
|
104 |
-
'id' => 'wcj_orders_list_custom_columns_label_' . $i,
|
105 |
-
'default' => '',
|
106 |
-
'type' => 'text',
|
107 |
-
'css' => 'width:300px;',
|
108 |
-
),
|
109 |
-
array(
|
110 |
-
'desc' => __( 'Value', 'woocommerce-jetpack' ),
|
111 |
-
'desc_tip' => __( 'You can use shortcodes and/or HTML here.', 'woocommerce-jetpack' ),
|
112 |
-
'id' => 'wcj_orders_list_custom_columns_value_' . $i,
|
113 |
-
'default' => '',
|
114 |
-
'type' => 'custom_textarea',
|
115 |
-
'css' => 'width:300px;',
|
116 |
-
),
|
117 |
-
array(
|
118 |
-
'desc' => __( 'Sortable', 'woocommerce-jetpack' ),
|
119 |
-
'id' => 'wcj_orders_list_custom_columns_sortable_' . $i,
|
120 |
-
'default' => 'no',
|
121 |
-
'type' => 'select',
|
122 |
-
'options' => array(
|
123 |
-
'no' => __( 'No', 'woocommerce-jetpack' ),
|
124 |
-
'meta_value' => __( 'By meta (as text)', 'woocommerce-jetpack' ),
|
125 |
-
'meta_value_num' => __( 'By meta (as numbers)', 'woocommerce-jetpack' ),
|
126 |
-
),
|
127 |
-
'css' => 'min-width:300px;',
|
128 |
-
),
|
129 |
-
array(
|
130 |
-
'desc' => __( 'Key (if sortable)', 'woocommerce-jetpack' ),
|
131 |
-
'id' => 'wcj_orders_list_custom_columns_sortable_key_' . $i,
|
132 |
-
'default' => '',
|
133 |
-
'type' => 'text',
|
134 |
-
'css' => 'width:300px;',
|
135 |
-
),
|
136 |
-
) );
|
137 |
-
}
|
138 |
-
$settings = array_merge( $settings, array(
|
139 |
-
array(
|
140 |
-
'type' => 'sectionend',
|
141 |
-
'id' => 'wcj_orders_list_custom_columns_options',
|
142 |
-
),
|
143 |
-
array(
|
144 |
-
'title' => __( 'Admin Orders List Multiple Status', 'woocommerce-jetpack' ),
|
145 |
-
'type' => 'title',
|
146 |
-
'id' => 'wcj_order_admin_list_multiple_status_options',
|
147 |
-
),
|
148 |
-
array(
|
149 |
-
'title' => __( 'Multiple Status Filtering', 'woocommerce-jetpack' ),
|
150 |
-
'id' => 'wcj_order_admin_list_multiple_status_filter',
|
151 |
-
'default' => 'no',
|
152 |
-
'type' => 'select',
|
153 |
-
'options' => array(
|
154 |
-
'no' => __( 'Do not add', 'woocommerce-jetpack' ),
|
155 |
-
'multiple_select' => __( 'Add as multiple select', 'woocommerce-jetpack' ),
|
156 |
-
'checkboxes' => __( 'Add as checkboxes', 'woocommerce-jetpack' ),
|
157 |
-
),
|
158 |
-
),
|
159 |
-
array(
|
160 |
-
'title' => __( 'Hide Default Statuses Menu', 'woocommerce-jetpack' ),
|
161 |
-
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
162 |
-
'id' => 'wcj_order_admin_list_hide_default_statuses_menu',
|
163 |
-
'default' => 'no',
|
164 |
-
'type' => 'checkbox',
|
165 |
-
),
|
166 |
-
array(
|
167 |
-
'title' => __( 'Add "Not Completed" Status Link to Default Statuses Menu', 'woocommerce-jetpack' ),
|
168 |
-
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
169 |
-
'id' => 'wcj_order_admin_list_multiple_status_not_completed_link',
|
170 |
-
'default' => 'no',
|
171 |
-
'type' => 'checkbox',
|
172 |
-
),
|
173 |
-
array(
|
174 |
-
'type' => 'sectionend',
|
175 |
-
'id' => 'wcj_order_admin_list_multiple_status_options',
|
176 |
-
),
|
177 |
-
array(
|
178 |
-
'title' => __( 'Admin Orders List Columns Order', 'woocommerce-jetpack' ),
|
179 |
-
'type' => 'title',
|
180 |
-
'id' => 'wcj_order_admin_list_columns_order_options',
|
181 |
-
),
|
182 |
-
array(
|
183 |
-
'title' => __( 'Columns Order', 'woocommerce-jetpack' ),
|
184 |
-
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
185 |
-
'id' => 'wcj_order_admin_list_columns_order_enabled',
|
186 |
-
'default' => 'no',
|
187 |
-
'type' => 'checkbox',
|
188 |
-
),
|
189 |
-
array(
|
190 |
-
'id' => 'wcj_order_admin_list_columns_order',
|
191 |
-
'desc_tip' => __( 'Default columns order', 'woocommerce-jetpack' ) . ':<br>' . str_replace( PHP_EOL, '<br>', $this->get_orders_default_columns_in_order() ),
|
192 |
-
'default' => $this->get_orders_default_columns_in_order(),
|
193 |
-
'type' => 'textarea',
|
194 |
-
'css' => 'height:300px;min-width:300px;',
|
195 |
-
),
|
196 |
-
array(
|
197 |
-
'type' => 'sectionend',
|
198 |
-
'id' => 'wcj_order_admin_list_columns_order_options',
|
199 |
-
),
|
200 |
array(
|
201 |
'title' => __( 'Bulk Regenerate Download Permissions for Orders', 'woocommerce-jetpack' ),
|
202 |
'type' => 'title',
|
@@ -212,7 +76,7 @@ $settings = array_merge( $settings, array(
|
|
212 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
213 |
),
|
214 |
array(
|
215 |
-
'title' => __( '
|
216 |
'desc_tip' => __( 'When enabled this will add "Regenerate download permissions" action to "Bulk Actions" select box on admin orders page.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
217 |
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
218 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_actions',
|
@@ -221,17 +85,27 @@ $settings = array_merge( $settings, array(
|
|
221 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
222 |
),
|
223 |
array(
|
224 |
-
'title' => __( '
|
225 |
-
'desc_tip' => __( 'Check this box and press "Save changes" button to start regeneration. Please note that both module and current section must be enabled.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
226 |
-
'desc' => __( 'Regenerate', 'woocommerce-jetpack' ),
|
227 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_all_orders',
|
228 |
'default' => 'no',
|
229 |
'type' => 'checkbox',
|
230 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
231 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
array(
|
233 |
'type' => 'sectionend',
|
234 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_options',
|
235 |
),
|
236 |
-
)
|
237 |
return $settings;
|
2 |
/**
|
3 |
* Booster for WooCommerce Settings - Orders
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
12 |
+
$bulk_regenerate_download_permissions_all_orders_cron_desc = '';
|
13 |
+
if ( $this->is_enabled() && 'yes' === apply_filters( 'booster_get_option', 'no', get_option( 'wcj_order_bulk_regenerate_download_permissions_enabled', 'no' ) ) ) {
|
14 |
+
$bulk_regenerate_download_permissions_all_orders_cron_desc = wcj_crons_get_next_event_time_message( 'wcj_bulk_regenerate_download_permissions_all_orders_cron_time' );
|
15 |
+
}
|
16 |
+
|
17 |
$settings = array(
|
18 |
array(
|
19 |
'title' => __( 'Admin Order Currency', 'woocommerce-jetpack' ),
|
61 |
'type' => 'sectionend',
|
62 |
'id' => 'wcj_order_auto_complete_options',
|
63 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
array(
|
65 |
'title' => __( 'Bulk Regenerate Download Permissions for Orders', 'woocommerce-jetpack' ),
|
66 |
'type' => 'title',
|
76 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
77 |
),
|
78 |
array(
|
79 |
+
'title' => __( 'Bulk Actions', 'woocommerce-jetpack' ),
|
80 |
'desc_tip' => __( 'When enabled this will add "Regenerate download permissions" action to "Bulk Actions" select box on admin orders page.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
81 |
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
82 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_actions',
|
85 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
86 |
),
|
87 |
array(
|
88 |
+
'title' => __( 'All Orders - Now', 'woocommerce-jetpack' ),
|
89 |
+
'desc_tip' => __( 'Check this box and press "Save changes" button to start regeneration. Please note that both module and current section must be enabled before that.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
90 |
+
'desc' => __( 'Regenerate now', 'woocommerce-jetpack' ),
|
91 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_all_orders',
|
92 |
'default' => 'no',
|
93 |
'type' => 'checkbox',
|
94 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
95 |
),
|
96 |
+
array(
|
97 |
+
'title' => __( 'All Orders - Periodically', 'woocommerce-jetpack' ),
|
98 |
+
'desc' => $bulk_regenerate_download_permissions_all_orders_cron_desc . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
99 |
+
'id' => 'wcj_order_bulk_regenerate_download_permissions_all_orders_cron',
|
100 |
+
'default' => 'disabled',
|
101 |
+
'type' => 'select',
|
102 |
+
'options' => array_merge( array( 'disabled' => __( 'Disabled', 'woocommerce-jetpack' ) ),
|
103 |
+
wcj_crons_get_all_intervals( __( 'Regenerate', 'woocommerce-jetpack' ), array( 'minutely' ) ) ),
|
104 |
+
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
105 |
+
),
|
106 |
array(
|
107 |
'type' => 'sectionend',
|
108 |
'id' => 'wcj_order_bulk_regenerate_download_permissions_options',
|
109 |
),
|
110 |
+
);
|
111 |
return $settings;
|
includes/settings/wcj-settings-payment-gateways-currency.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Gateways Currency
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -49,9 +49,7 @@ foreach ( $available_gateways as $key => $gateway ) {
|
|
49 |
'id' => 'wcj_gateways_currency_exchange_rate_' . $key,
|
50 |
'default' => 1,
|
51 |
'type' => 'exchange_rate',
|
52 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
53 |
'custom_attributes_button' => $custom_attributes,
|
54 |
-
'css' => 'width:100px;',
|
55 |
'value' => $currency_from . '/' . $currency_to,
|
56 |
),
|
57 |
) );
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Gateways Currency
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
49 |
'id' => 'wcj_gateways_currency_exchange_rate_' . $key,
|
50 |
'default' => 1,
|
51 |
'type' => 'exchange_rate',
|
|
|
52 |
'custom_attributes_button' => $custom_attributes,
|
|
|
53 |
'value' => $currency_from . '/' . $currency_to,
|
54 |
),
|
55 |
) );
|
includes/settings/wcj-settings-pdf-invoicing-page.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - PDF Invoicing - Page Settings
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -31,9 +31,23 @@ foreach ( $invoice_types as $invoice_type ) {
|
|
31 |
array(
|
32 |
'title' => __( 'Page Format', 'woocommerce-jetpack' ),
|
33 |
'id' => 'wcj_invoicing_' . $invoice_type['id'] . '_page_format',
|
34 |
-
'default' => 'A4',
|
35 |
'type' => 'select',
|
36 |
-
'options' => $this->get_page_formats(),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
),
|
38 |
array(
|
39 |
'title' => __( 'Margin Left', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - PDF Invoicing - Page Settings
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
31 |
array(
|
32 |
'title' => __( 'Page Format', 'woocommerce-jetpack' ),
|
33 |
'id' => 'wcj_invoicing_' . $invoice_type['id'] . '_page_format',
|
34 |
+
'default' => 'A4', // PDF_PAGE_FORMAT
|
35 |
'type' => 'select',
|
36 |
+
'options' => array_replace( array( 'custom' => __( 'Custom', 'woocommerce-jetpack' ) ), $this->get_page_formats() ),
|
37 |
+
),
|
38 |
+
array(
|
39 |
+
'desc' => __( 'Custom: width (millimeters)', 'woocommerce-jetpack' ),
|
40 |
+
'id' => 'wcj_invoicing_' . $invoice_type['id'] . '_page_format_custom_width',
|
41 |
+
'default' => '0',
|
42 |
+
'type' => 'number',
|
43 |
+
'custom_attributes' => array( 'min' => 0 ),
|
44 |
+
),
|
45 |
+
array(
|
46 |
+
'desc' => __( 'Custom: height (millimeters)', 'woocommerce-jetpack' ),
|
47 |
+
'id' => 'wcj_invoicing_' . $invoice_type['id'] . '_page_format_custom_height',
|
48 |
+
'default' => '0',
|
49 |
+
'type' => 'number',
|
50 |
+
'custom_attributes' => array( 'min' => 0 ),
|
51 |
),
|
52 |
array(
|
53 |
'title' => __( 'Margin Left', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-pdf-invoicing.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - PDF Invoicing - General
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -97,6 +97,13 @@ $settings = array_merge( $settings, array(
|
|
97 |
'document_root' => __( 'DOCUMENT_ROOT', 'woocommerce-jetpack' ), // . ': ' . $_SERVER['DOCUMENT_ROOT'],
|
98 |
),
|
99 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
array(
|
101 |
'type' => 'sectionend',
|
102 |
'id' => 'wcj_pdf_invoicing_options',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - PDF Invoicing - General
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
97 |
'document_root' => __( 'DOCUMENT_ROOT', 'woocommerce-jetpack' ), // . ': ' . $_SERVER['DOCUMENT_ROOT'],
|
98 |
),
|
99 |
),
|
100 |
+
array(
|
101 |
+
'title' => __( 'Advanced', 'woocommerce-jetpack' ) . ': ' . __( 'Temp Directory', 'woocommerce-jetpack' ),
|
102 |
+
'desc_tip' => __( 'Leave blank to use the default temp directory.', 'woocommerce-jetpack' ),
|
103 |
+
'id' => 'wcj_invoicing_general_tmp_dir',
|
104 |
+
'default' => '',
|
105 |
+
'type' => 'text',
|
106 |
+
),
|
107 |
array(
|
108 |
'type' => 'sectionend',
|
109 |
'id' => 'wcj_pdf_invoicing_options',
|
includes/settings/wcj-settings-price-by-country.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Prices and Currencies by Country
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -273,8 +273,6 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_pri
|
|
273 |
'id' => 'wcj_price_by_country_exchange_rate_group_' . $i,
|
274 |
'default' => 1,
|
275 |
'type' => 'exchange_rate',
|
276 |
-
'css' => 'width:100px;',
|
277 |
-
'custom_attributes' => array( 'step' => '0.000001', 'min' => '0', ),
|
278 |
'custom_attributes_button' => $custom_attributes,
|
279 |
'value' => $currency_from . '/' . $currency_to,
|
280 |
),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Prices and Currencies by Country
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
273 |
'id' => 'wcj_price_by_country_exchange_rate_group_' . $i,
|
274 |
'default' => 1,
|
275 |
'type' => 'exchange_rate',
|
|
|
|
|
276 |
'custom_attributes_button' => $custom_attributes,
|
277 |
'value' => $currency_from . '/' . $currency_to,
|
278 |
),
|
includes/settings/wcj-settings-price-formats.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Price Formats
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) add `desc_tip` to `wcj_price_formats_general_trim_zeros`
|
@@ -76,6 +76,19 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_pri
|
|
76 |
),
|
77 |
'css' => 'width:300px;',
|
78 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
array(
|
80 |
'desc' => __( 'Thousand Separator', 'woocommerce-jetpack' ),
|
81 |
'id' => 'wcj_price_formats_thousand_separator_' . $i,
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Price Formats
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo (maybe) add `desc_tip` to `wcj_price_formats_general_trim_zeros`
|
76 |
),
|
77 |
'css' => 'width:300px;',
|
78 |
),
|
79 |
+
array(
|
80 |
+
'desc' => __( 'Additional Currency Code Position', 'woocommerce-jetpack' ),
|
81 |
+
'id' => 'wcj_price_formats_currency_code_position_' . $i,
|
82 |
+
'default' => 'none',
|
83 |
+
'type' => 'select',
|
84 |
+
'options' => array(
|
85 |
+
'none' => __( 'Do not add currency code', 'woocommerce-jetpack' ),
|
86 |
+
'left' => __( 'Left', 'woocommerce' ),
|
87 |
+
'right' => __( 'Right', 'woocommerce' ),
|
88 |
+
'left_space' => __( 'Left with space', 'woocommerce' ),
|
89 |
+
'right_space' => __( 'Right with space', 'woocommerce' ),
|
90 |
+
),
|
91 |
+
),
|
92 |
array(
|
93 |
'desc' => __( 'Thousand Separator', 'woocommerce-jetpack' ),
|
94 |
'id' => 'wcj_price_formats_thousand_separator_' . $i,
|
includes/settings/wcj-settings-product-add-to-cart.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Add To Cart
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -157,6 +157,13 @@ return array(
|
|
157 |
'type' => 'checkbox',
|
158 |
'checkboxgroup' => 'end',
|
159 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
array(
|
161 |
'type' => 'sectionend',
|
162 |
'id' => 'wcj_add_to_cart_quantity_options',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Add To Cart
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
157 |
'type' => 'checkbox',
|
158 |
'checkboxgroup' => 'end',
|
159 |
),
|
160 |
+
array(
|
161 |
+
'title' => __( 'Set All Products to "Sold individually"', 'woocommerce-jetpack' ),
|
162 |
+
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
163 |
+
'id' => 'wcj_add_to_cart_quantity_sold_individually_all',
|
164 |
+
'default' => 'no',
|
165 |
+
'type' => 'checkbox',
|
166 |
+
),
|
167 |
array(
|
168 |
'type' => 'sectionend',
|
169 |
'id' => 'wcj_add_to_cart_quantity_options',
|
includes/settings/wcj-settings-product-addons.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Addons
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add "frontend template" options
|
@@ -218,6 +218,13 @@ $settings = array_merge( $settings, array(
|
|
218 |
'default' => 'no',
|
219 |
'type' => 'checkbox',
|
220 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
221 |
array(
|
222 |
'type' => 'sectionend',
|
223 |
'id' => 'wcj_product_addons_options',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Addons
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo add "frontend template" options
|
218 |
'default' => 'no',
|
219 |
'type' => 'checkbox',
|
220 |
),
|
221 |
+
array(
|
222 |
+
'title' => __( 'Position Priority on Frontend', 'woocommerce-jetpack' ),
|
223 |
+
'desc_tip' => __( 'Set to zero to use the default priority.', 'woocommerce-jetpack' ),
|
224 |
+
'id' => 'wcj_product_addons_position_priority',
|
225 |
+
'default' => 0,
|
226 |
+
'type' => 'number',
|
227 |
+
),
|
228 |
array(
|
229 |
'type' => 'sectionend',
|
230 |
'id' => 'wcj_product_addons_options',
|
includes/settings/wcj-settings-product-custom-visibility.php
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings - Product Custom Visibility
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
return array(
|
13 |
+
array(
|
14 |
+
'title' => __( 'Visibility Options', 'woocommerce-jetpack' ),
|
15 |
+
'type' => 'title',
|
16 |
+
'id' => 'wcj_product_custom_visibility_options',
|
17 |
+
),
|
18 |
+
array(
|
19 |
+
'title' => __( 'Hide Visibility', 'woocommerce-jetpack' ),
|
20 |
+
'desc_tip' => __( 'This will hide selected products in shop and search results. However product still will be accessible via direct link.', 'woocommerce-jetpack' ),
|
21 |
+
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
22 |
+
'id' => 'wcj_product_custom_visibility_visibility',
|
23 |
+
'default' => 'yes',
|
24 |
+
'type' => 'checkbox',
|
25 |
+
),
|
26 |
+
array(
|
27 |
+
'title' => __( 'Make Non-purchasable', 'woocommerce-jetpack' ),
|
28 |
+
'desc_tip' => __( 'This will make selected products non-purchasable (i.e. product can\'t be added to the cart).', 'woocommerce-jetpack' ),
|
29 |
+
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
30 |
+
'id' => 'wcj_product_custom_visibility_purchasable',
|
31 |
+
'default' => 'no',
|
32 |
+
'type' => 'checkbox',
|
33 |
+
),
|
34 |
+
array(
|
35 |
+
'title' => __( 'Modify Query', 'woocommerce-jetpack' ),
|
36 |
+
'desc_tip' => __( 'This will hide selected products completely (including direct link).', 'woocommerce-jetpack' ),
|
37 |
+
'desc' => __( 'Enable', 'woocommerce-jetpack' ),
|
38 |
+
'id' => 'wcj_product_custom_visibility_query',
|
39 |
+
'default' => 'no',
|
40 |
+
'type' => 'checkbox',
|
41 |
+
),
|
42 |
+
array(
|
43 |
+
'title' => __( 'Options', 'woocommerce-jetpack' ),
|
44 |
+
'desc_tip' => __( 'One per line.', 'woocommerce-jetpack' ),
|
45 |
+
'id' => 'wcj_product_custom_visibility_options_list',
|
46 |
+
'default' => '',
|
47 |
+
'type' => 'textarea',
|
48 |
+
'css' => 'width:100%;height:200px;',
|
49 |
+
),
|
50 |
+
array(
|
51 |
+
'type' => 'sectionend',
|
52 |
+
'id' => 'wcj_product_custom_visibility_options',
|
53 |
+
),
|
54 |
+
);
|
includes/settings/wcj-settings-product-images.php
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Booster for WooCommerce Settings -
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -15,12 +15,6 @@ return array(
|
|
15 |
'type' => 'title',
|
16 |
'id' => 'wcj_product_images_and_thumbnails_options',
|
17 |
),
|
18 |
-
array(
|
19 |
-
'title' => __( 'Enable Section', 'woocommerce-jetpack' ),
|
20 |
-
'id' => 'wcj_product_images_and_thumbnails_enabled',
|
21 |
-
'default' => 'no',
|
22 |
-
'type' => 'checkbox',
|
23 |
-
),
|
24 |
array(
|
25 |
'title' => __( 'Image and Thumbnails on Single', 'woocommerce-jetpack' ),
|
26 |
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
@@ -56,7 +50,7 @@ return array(
|
|
56 |
'id' => 'wcj_product_images_custom_on_single',
|
57 |
'default' => '',
|
58 |
'type' => 'textarea',
|
59 |
-
'css' => 'width:
|
60 |
),
|
61 |
array(
|
62 |
'title' => __( 'Replace Thumbnails on Single', 'woocommerce-jetpack' ),
|
@@ -65,7 +59,7 @@ return array(
|
|
65 |
'id' => 'wcj_product_images_thumbnails_custom_on_single',
|
66 |
'default' => '',
|
67 |
'type' => 'textarea',
|
68 |
-
'css' => 'width:
|
69 |
),
|
70 |
array(
|
71 |
'title' => __( 'Replace Image on Archive', 'woocommerce-jetpack' ),
|
@@ -74,7 +68,7 @@ return array(
|
|
74 |
'id' => 'wcj_product_images_custom_on_archives',
|
75 |
'default' => '',
|
76 |
'type' => 'textarea',
|
77 |
-
'css' => 'width:
|
78 |
),
|
79 |
array(
|
80 |
'title' => __( 'Single Product Thumbnails Columns', 'woocommerce-jetpack' ),
|
@@ -86,44 +80,4 @@ return array(
|
|
86 |
'type' => 'sectionend',
|
87 |
'id' => 'wcj_product_images_and_thumbnails_options',
|
88 |
),
|
89 |
-
array(
|
90 |
-
'title' => __( 'Product Images Sale Flash', 'woocommerce-jetpack' ),
|
91 |
-
'type' => 'title',
|
92 |
-
'id' => 'wcj_product_images_sale_flash_options',
|
93 |
-
),
|
94 |
-
array(
|
95 |
-
'title' => __( 'Enable Section', 'woocommerce-jetpack' ),
|
96 |
-
'id' => 'wcj_product_images_sale_flash_enabled',
|
97 |
-
'default' => 'no',
|
98 |
-
'type' => 'checkbox',
|
99 |
-
),
|
100 |
-
array(
|
101 |
-
'title' => __( 'HTML', 'woocommerce-jetpack' ),
|
102 |
-
'id' => 'wcj_product_images_sale_flash_html',
|
103 |
-
'default' => '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>',
|
104 |
-
'type' => 'textarea',
|
105 |
-
'css' => 'width:300px;height:100px;',
|
106 |
-
),
|
107 |
-
array(
|
108 |
-
'title' => __( 'Hide Everywhere', 'woocommerce-jetpack' ),
|
109 |
-
'id' => 'wcj_product_images_sale_flash_hide_everywhere',
|
110 |
-
'default' => 'no',
|
111 |
-
'type' => 'checkbox',
|
112 |
-
),
|
113 |
-
array(
|
114 |
-
'title' => __( 'Hide on Archives (Categories) Only', 'woocommerce-jetpack' ),
|
115 |
-
'id' => 'wcj_product_images_sale_flash_hide_on_archives',
|
116 |
-
'default' => 'no',
|
117 |
-
'type' => 'checkbox',
|
118 |
-
),
|
119 |
-
array(
|
120 |
-
'title' => __( 'Hide on Single Page Only', 'woocommerce-jetpack' ),
|
121 |
-
'id' => 'wcj_product_images_sale_flash_hide_on_single',
|
122 |
-
'default' => 'no',
|
123 |
-
'type' => 'checkbox',
|
124 |
-
),
|
125 |
-
array(
|
126 |
-
'type' => 'sectionend',
|
127 |
-
'id' => 'wcj_product_images_sale_flash_options',
|
128 |
-
),
|
129 |
);
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Booster for WooCommerce - Settings - Product Images
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
15 |
'type' => 'title',
|
16 |
'id' => 'wcj_product_images_and_thumbnails_options',
|
17 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
array(
|
19 |
'title' => __( 'Image and Thumbnails on Single', 'woocommerce-jetpack' ),
|
20 |
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
50 |
'id' => 'wcj_product_images_custom_on_single',
|
51 |
'default' => '',
|
52 |
'type' => 'textarea',
|
53 |
+
'css' => 'width:100%;',
|
54 |
),
|
55 |
array(
|
56 |
'title' => __( 'Replace Thumbnails on Single', 'woocommerce-jetpack' ),
|
59 |
'id' => 'wcj_product_images_thumbnails_custom_on_single',
|
60 |
'default' => '',
|
61 |
'type' => 'textarea',
|
62 |
+
'css' => 'width:100%;',
|
63 |
),
|
64 |
array(
|
65 |
'title' => __( 'Replace Image on Archive', 'woocommerce-jetpack' ),
|
68 |
'id' => 'wcj_product_images_custom_on_archives',
|
69 |
'default' => '',
|
70 |
'type' => 'textarea',
|
71 |
+
'css' => 'width:100%;',
|
72 |
),
|
73 |
array(
|
74 |
'title' => __( 'Single Product Thumbnails Columns', 'woocommerce-jetpack' ),
|
80 |
'type' => 'sectionend',
|
81 |
'id' => 'wcj_product_images_and_thumbnails_options',
|
82 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
);
|
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 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -222,6 +222,13 @@ $settings = array_merge( $settings, array(
|
|
222 |
'type' => 'custom_textarea',
|
223 |
'css' => 'width:50%;min-width:300px;',
|
224 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
225 |
array(
|
226 |
'title' => __( 'HTML to add after required field title', 'woocommerce-jetpack' ),
|
227 |
'id' => 'wcj_product_input_fields_frontend_view_required_html',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Product Input Fields
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
222 |
'type' => 'custom_textarea',
|
223 |
'css' => 'width:50%;min-width:300px;',
|
224 |
),
|
225 |
+
array(
|
226 |
+
'title' => __( 'HTML Template - Radio Field', 'woocommerce-jetpack' ),
|
227 |
+
'id' => 'wcj_product_input_fields_field_template_radio',
|
228 |
+
'default' => '%radio_field_html%<label for="%radio_field_id%" class="radio">%radio_field_title%</label><br>',
|
229 |
+
'type' => 'custom_textarea',
|
230 |
+
'css' => 'width:50%;min-width:300px;',
|
231 |
+
),
|
232 |
array(
|
233 |
'title' => __( 'HTML to add after required field title', 'woocommerce-jetpack' ),
|
234 |
'id' => 'wcj_product_input_fields_frontend_view_required_html',
|
includes/settings/wcj-settings-product-listings.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Admin Tools
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -25,11 +25,8 @@ foreach ( $options as $option ) {
|
|
25 |
// Prepare categories
|
26 |
$product_cats = wcj_get_terms( 'product_cat' );
|
27 |
|
28 |
-
// Prepare products
|
29 |
-
$products = wcj_get_products();
|
30 |
-
|
31 |
// Settings
|
32 |
-
|
33 |
array(
|
34 |
'title' => __( 'Shop Page Display Options', 'woocommerce-jetpack' ),
|
35 |
'type' => 'title',
|
@@ -153,183 +150,4 @@ $settings = array(
|
|
153 |
'type' => 'sectionend',
|
154 |
'id' => 'wcj_product_listings_product_visibility_by_price_options',
|
155 |
),
|
156 |
-
array(
|
157 |
-
'title' => __( 'TAX Display in the Shop - by Product', 'woocommerce-jetpack' ),
|
158 |
-
'type' => 'title',
|
159 |
-
'desc' => __( 'If you want to display part of your products including TAX and another part excluding TAX, you can set it here.', 'woocommerce-jetpack' ),
|
160 |
-
'id' => 'wcj_product_listings_display_taxes_options',
|
161 |
-
),
|
162 |
-
array(
|
163 |
-
'title' => __( 'Products - Including TAX', 'woocommerce-jetpack' ),
|
164 |
-
'id' => 'wcj_product_listings_display_taxes_products_incl_tax',
|
165 |
-
'desc_tip' => __( 'Select products to display including TAX.', 'woocommerce-jetpack' ),
|
166 |
-
'default' => '',
|
167 |
-
'type' => 'multiselect',
|
168 |
-
'class' => 'chosen_select',
|
169 |
-
'css' => 'width: 450px;',
|
170 |
-
'options' => $products,
|
171 |
-
),
|
172 |
-
array(
|
173 |
-
'title' => __( 'Products - Excluding TAX', 'woocommerce-jetpack' ),
|
174 |
-
'id' => 'wcj_product_listings_display_taxes_products_excl_tax',
|
175 |
-
'desc_tip' => __( 'Select products to display excluding TAX.', 'woocommerce-jetpack' ),
|
176 |
-
'default' => '',
|
177 |
-
'type' => 'multiselect',
|
178 |
-
'class' => 'chosen_select',
|
179 |
-
'css' => 'width: 450px;',
|
180 |
-
'options' => $products,
|
181 |
-
),
|
182 |
-
array(
|
183 |
-
'title' => __( 'Product Categories - Including TAX', 'woocommerce-jetpack' ),
|
184 |
-
'id' => 'wcj_product_listings_display_taxes_product_cats_incl_tax',
|
185 |
-
'desc_tip' => __( 'Select product categories to display including TAX.', 'woocommerce-jetpack' ),
|
186 |
-
'default' => '',
|
187 |
-
'type' => 'multiselect',
|
188 |
-
'class' => 'chosen_select',
|
189 |
-
'css' => 'width: 450px;',
|
190 |
-
'options' => $product_cats,
|
191 |
-
),
|
192 |
-
array(
|
193 |
-
'title' => __( 'Product Categories - Excluding TAX', 'woocommerce-jetpack' ),
|
194 |
-
'id' => 'wcj_product_listings_display_taxes_product_cats_excl_tax',
|
195 |
-
'desc_tip' => __( 'Select product categories to display excluding TAX.', 'woocommerce-jetpack' ),
|
196 |
-
'default' => '',
|
197 |
-
'type' => 'multiselect',
|
198 |
-
'class' => 'chosen_select',
|
199 |
-
'css' => 'width: 450px;',
|
200 |
-
'options' => $product_cats,
|
201 |
-
),
|
202 |
-
array(
|
203 |
-
'type' => 'sectionend',
|
204 |
-
'id' => 'wcj_product_listings_display_taxes_options',
|
205 |
-
),
|
206 |
-
array(
|
207 |
-
'title' => __( 'TAX Display in the Shop - by User Role', 'woocommerce-jetpack' ),
|
208 |
-
'type' => 'title',
|
209 |
-
'desc' => __( 'If you want to display prices including TAX or excluding TAX for different user roles, you can set it here.', 'woocommerce-jetpack' ),
|
210 |
-
'id' => 'wcj_product_listings_display_taxes_by_user_role_options',
|
211 |
-
),
|
212 |
-
array(
|
213 |
-
'title' => __( 'TAX Display by User Role', 'woocommerce-jetpack' ),
|
214 |
-
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
215 |
-
'id' => 'wcj_product_listings_display_taxes_by_user_role_enabled',
|
216 |
-
'type' => 'checkbox',
|
217 |
-
'default' => 'no',
|
218 |
-
),
|
219 |
-
array(
|
220 |
-
'title' => __( 'User Roles', 'woocommerce-jetpack' ),
|
221 |
-
'desc_tip' => __( 'Save changes after you change this option and new settings fields will appear.', 'woocommerce-jetpack' ),
|
222 |
-
'desc' => '<br>' . sprintf( __( 'Select user roles that you want to change tax display for. For all remaining (i.e. not selected) user roles - default TAX display (set in %s) will be applied.', 'woocommerce-jetpack' ),
|
223 |
-
'<a href="' . admin_url( 'admin.php?page=wc-settings&tab=tax' ) . '">' . __( 'WooCommerce > Settings > Tax', 'woocommerce-jetpack' ) . '</a>' ),
|
224 |
-
'id' => 'wcj_product_listings_display_taxes_by_user_role_roles',
|
225 |
-
'type' => 'multiselect',
|
226 |
-
'class' => 'chosen_select',
|
227 |
-
'default' => '',
|
228 |
-
'options' => wcj_get_user_roles_options(),
|
229 |
-
),
|
230 |
);
|
231 |
-
if ( '' != ( $display_taxes_by_user_role_roles = get_option( 'wcj_product_listings_display_taxes_by_user_role_roles', '' ) ) ) {
|
232 |
-
foreach ( $display_taxes_by_user_role_roles as $display_taxes_by_user_role_role ) {
|
233 |
-
$settings = array_merge( $settings, array(
|
234 |
-
array(
|
235 |
-
'title' => sprintf( __( 'Role: %s', 'woocommerce-jetpack' ), $display_taxes_by_user_role_role ),
|
236 |
-
'id' => 'wcj_product_listings_display_taxes_by_user_role_' . $display_taxes_by_user_role_role,
|
237 |
-
'default' => 'no_changes',
|
238 |
-
'type' => 'select',
|
239 |
-
'options' => array(
|
240 |
-
'no_changes' => __( 'Default TAX display (no changes)', 'woocommerce-jetpack' ),
|
241 |
-
'incl' => __( 'Including tax', 'woocommerce-jetpack' ),
|
242 |
-
'excl' => __( 'Excluding tax', 'woocommerce-jetpack' ),
|
243 |
-
),
|
244 |
-
),
|
245 |
-
) );
|
246 |
-
}
|
247 |
-
}
|
248 |
-
$settings = array_merge( $settings, array(
|
249 |
-
array(
|
250 |
-
'type' => 'sectionend',
|
251 |
-
'id' => 'wcj_product_listings_display_taxes_by_user_role_options',
|
252 |
-
),
|
253 |
-
array(
|
254 |
-
'title' => __( 'Admin Products List - Custom Columns', 'woocommerce-jetpack' ),
|
255 |
-
'type' => 'title',
|
256 |
-
'id' => 'wcj_products_admin_list_custom_columns_options',
|
257 |
-
),
|
258 |
-
array(
|
259 |
-
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
260 |
-
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
261 |
-
'id' => 'wcj_products_admin_list_custom_columns_enabled',
|
262 |
-
'default' => 'no',
|
263 |
-
'type' => 'checkbox',
|
264 |
-
),
|
265 |
-
array(
|
266 |
-
'title' => __( 'Custom Columns Total Number', 'woocommerce-jetpack' ),
|
267 |
-
'desc_tip' => __( 'Save module\'s settings after changing this option to see new settings fields.', 'woocommerce-jetpack' ),
|
268 |
-
'id' => 'wcj_products_admin_list_custom_columns_total_number',
|
269 |
-
'default' => 1,
|
270 |
-
'type' => 'custom_number',
|
271 |
-
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
272 |
-
'custom_attributes' => array_merge(
|
273 |
-
is_array( apply_filters( 'booster_get_message', '', 'readonly' ) ) ? apply_filters( 'booster_get_message', '', 'readonly' ) : array(),
|
274 |
-
array( 'step' => '1', 'min' => '0', )
|
275 |
-
),
|
276 |
-
),
|
277 |
-
) );
|
278 |
-
$total_number = apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_admin_list_custom_columns_total_number', 1 ) );
|
279 |
-
for ( $i = 1; $i <= $total_number; $i++ ) {
|
280 |
-
$settings = array_merge( $settings, array(
|
281 |
-
array(
|
282 |
-
'title' => __( 'Custom Column', 'woocommerce-jetpack' ) . ' #' . $i,
|
283 |
-
'desc' => __( 'Enabled', 'woocommerce-jetpack' ),
|
284 |
-
'desc_tip' => __( 'Key:', 'woocommerce-jetpack' ) . ' <code>' . 'wcj_products_custom_column_' . $i . '</code>',
|
285 |
-
'id' => 'wcj_products_admin_list_custom_columns_enabled_' . $i,
|
286 |
-
'default' => 'no',
|
287 |
-
'type' => 'checkbox',
|
288 |
-
),
|
289 |
-
array(
|
290 |
-
'desc' => __( 'Label', 'woocommerce-jetpack' ),
|
291 |
-
'id' => 'wcj_products_admin_list_custom_columns_label_' . $i,
|
292 |
-
'default' => '',
|
293 |
-
'type' => 'text',
|
294 |
-
'css' => 'width:300px;',
|
295 |
-
),
|
296 |
-
array(
|
297 |
-
'desc' => __( 'Value', 'woocommerce-jetpack' ),
|
298 |
-
'desc_tip' => __( 'You can use shortcodes and/or HTML here.', 'woocommerce-jetpack' ),
|
299 |
-
'id' => 'wcj_products_admin_list_custom_columns_value_' . $i,
|
300 |
-
'default' => '',
|
301 |
-
'type' => 'custom_textarea',
|
302 |
-
'css' => 'width:300px;',
|
303 |
-
),
|
304 |
-
) );
|
305 |
-
}
|
306 |
-
$settings = array_merge( $settings, array(
|
307 |
-
array(
|
308 |
-
'type' => 'sectionend',
|
309 |
-
'id' => 'wcj_products_admin_list_custom_columns_options',
|
310 |
-
),
|
311 |
-
array(
|
312 |
-
'title' => __( 'Admin Products List - Columns Order', 'woocommerce-jetpack' ),
|
313 |
-
'type' => 'title',
|
314 |
-
'id' => 'wcj_products_admin_list_columns_order_options',
|
315 |
-
),
|
316 |
-
array(
|
317 |
-
'title' => __( 'Enable/Disable', 'woocommerce-jetpack' ),
|
318 |
-
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
319 |
-
'id' => 'wcj_products_admin_list_columns_order_enabled',
|
320 |
-
'default' => 'no',
|
321 |
-
'type' => 'checkbox',
|
322 |
-
),
|
323 |
-
array(
|
324 |
-
'id' => 'wcj_products_admin_list_columns_order',
|
325 |
-
'desc_tip' => __( 'Default columns order', 'woocommerce-jetpack' ) . ':<br>' . str_replace( PHP_EOL, '<br>', $this->get_products_default_columns_in_order() ),
|
326 |
-
'default' => $this->get_products_default_columns_in_order(),
|
327 |
-
'type' => 'textarea',
|
328 |
-
'css' => 'height:300px;min-width:300px;',
|
329 |
-
),
|
330 |
-
array(
|
331 |
-
'type' => 'sectionend',
|
332 |
-
'id' => 'wcj_products_admin_list_columns_order_options',
|
333 |
-
),
|
334 |
-
) );
|
335 |
-
return $settings;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Admin Tools
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
25 |
// Prepare categories
|
26 |
$product_cats = wcj_get_terms( 'product_cat' );
|
27 |
|
|
|
|
|
|
|
28 |
// Settings
|
29 |
+
return array(
|
30 |
array(
|
31 |
'title' => __( 'Shop Page Display Options', 'woocommerce-jetpack' ),
|
32 |
'type' => 'title',
|
150 |
'type' => 'sectionend',
|
151 |
'id' => 'wcj_product_listings_product_visibility_by_price_options',
|
152 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/settings/wcj-settings-product-tabs.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce Settings - Product Tabs
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo clean up
|
@@ -222,6 +222,13 @@ $settings = array_merge( $settings, array(
|
|
222 |
'default' => 'yes',
|
223 |
'type' => 'checkbox',
|
224 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
225 |
array(
|
226 |
'title' => __( 'Default Per Product Custom Product Tabs Number', 'woocommerce-jetpack' ),
|
227 |
'id' => 'wcj_custom_product_tabs_local_total_number_default',
|
2 |
/**
|
3 |
* Booster for WooCommerce Settings - Product Tabs
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
* @todo clean up
|
222 |
'default' => 'yes',
|
223 |
'type' => 'checkbox',
|
224 |
),
|
225 |
+
array(
|
226 |
+
'title' => __( 'Add Per Product Tabs Content to "Yoast SEO" plugin analysis', 'woocommerce-jetpack' ),
|
227 |
+
'desc' => __( 'Add', 'woocommerce-jetpack' ),
|
228 |
+
'id' => 'wcj_custom_product_tabs_yoast_seo_enabled',
|
229 |
+
'default' => 'no',
|
230 |
+
'type' => 'checkbox',
|
231 |
+
),
|
232 |
array(
|
233 |
'title' => __( 'Default Per Product Custom Product Tabs Number', 'woocommerce-jetpack' ),
|
234 |
'id' => 'wcj_custom_product_tabs_local_total_number_default',
|
includes/settings/wcj-settings-products-xml.php
CHANGED
@@ -2,16 +2,17 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Products XML
|
4 |
*
|
5 |
-
* @version 2.
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
12 |
-
$product_cats_options
|
13 |
-
$product_tags_options
|
14 |
-
$products_options
|
|
|
15 |
$settings = array(
|
16 |
array(
|
17 |
'title' => __( 'Options', 'woocommerce-jetpack' ),
|
@@ -42,6 +43,10 @@ $settings = array(
|
|
42 |
),
|
43 |
);
|
44 |
for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_xml_total_files', 1 ) ); $i++ ) {
|
|
|
|
|
|
|
|
|
45 |
$products_xml_cron_desc = '';
|
46 |
if ( $this->is_enabled() ) {
|
47 |
if ( '' != get_option( 'wcj_create_products_xml_cron_time_' . $i, '' ) ) {
|
@@ -134,23 +139,25 @@ for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_pro
|
|
134 |
'desc_tip' => __( 'Possible update periods are: every minute, hourly, twice daily, daily and weekly.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc_no_link' ),
|
135 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
136 |
),
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
|
|
145 |
),
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
|
|
154 |
),
|
155 |
array(
|
156 |
'title' => __( 'Categories to Include', 'woocommerce-jetpack' ),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Products XML
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.8.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
9 |
|
10 |
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
|
12 |
+
$product_cats_options = wcj_get_terms( 'product_cat' );
|
13 |
+
$product_tags_options = wcj_get_terms( 'product_tag' );
|
14 |
+
$products_options = wcj_get_products();
|
15 |
+
$is_multiselect_products = ( 'yes' === get_option( 'wcj_list_for_products', 'yes' ) );
|
16 |
$settings = array(
|
17 |
array(
|
18 |
'title' => __( 'Options', 'woocommerce-jetpack' ),
|
43 |
),
|
44 |
);
|
45 |
for ( $i = 1; $i <= apply_filters( 'booster_get_option', 1, get_option( 'wcj_products_xml_total_files', 1 ) ); $i++ ) {
|
46 |
+
wcj_maybe_convert_and_update_option_value( array(
|
47 |
+
array( 'id' => 'wcj_products_xml_products_incl_' . $i, 'default' => '' ),
|
48 |
+
array( 'id' => 'wcj_products_xml_products_excl_' . $i, 'default' => '' ),
|
49 |
+
), $is_multiselect_products );
|
50 |
$products_xml_cron_desc = '';
|
51 |
if ( $this->is_enabled() ) {
|
52 |
if ( '' != get_option( 'wcj_create_products_xml_cron_time_' . $i, '' ) ) {
|
139 |
'desc_tip' => __( 'Possible update periods are: every minute, hourly, twice daily, daily and weekly.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc_no_link' ),
|
140 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
141 |
),
|
142 |
+
wcj_get_settings_as_multiselect_or_text(
|
143 |
+
array(
|
144 |
+
'title' => __( 'Products to Include', 'woocommerce-jetpack' ),
|
145 |
+
'desc_tip' => __( 'To include selected products only, enter products here. Leave blank to include all products.', 'woocommerce-jetpack' ),
|
146 |
+
'id' => 'wcj_products_xml_products_incl_' . $i,
|
147 |
+
'default' => '',
|
148 |
+
),
|
149 |
+
$products_options,
|
150 |
+
$is_multiselect_products
|
151 |
),
|
152 |
+
wcj_get_settings_as_multiselect_or_text(
|
153 |
+
array(
|
154 |
+
'title' => __( 'Products to Exclude', 'woocommerce-jetpack' ),
|
155 |
+
'desc_tip' => __( 'To exclude selected products, enter products here. Leave blank to include all products.', 'woocommerce-jetpack' ),
|
156 |
+
'id' => 'wcj_products_xml_products_excl_' . $i,
|
157 |
+
'default' => '',
|
158 |
+
),
|
159 |
+
$products_options,
|
160 |
+
$is_multiselect_products
|
161 |
),
|
162 |
array(
|
163 |
'title' => __( 'Categories to Include', 'woocommerce-jetpack' ),
|
includes/settings/wcj-settings-sale-flash.php
ADDED
@@ -0,0 +1,118 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings - Sale Flash
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
$settings = array(
|
13 |
+
array(
|
14 |
+
'title' => __( 'Globally', 'woocommerce-jetpack' ),
|
15 |
+
'type' => 'title',
|
16 |
+
'id' => 'wcj_sale_flash_global_options',
|
17 |
+
),
|
18 |
+
array(
|
19 |
+
'title' => __( 'Globally', 'woocommerce-jetpack' ),
|
20 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
21 |
+
'id' => 'wcj_product_images_sale_flash_enabled',
|
22 |
+
'default' => 'no',
|
23 |
+
'type' => 'checkbox',
|
24 |
+
),
|
25 |
+
array(
|
26 |
+
'title' => __( 'Sale Flash', 'woocommerce-jetpack' ),
|
27 |
+
'desc_tip' => __( 'You can use HTML and/or shortcodes here.', 'woocommerce-jetpack' ),
|
28 |
+
'id' => 'wcj_product_images_sale_flash_html',
|
29 |
+
'default' => '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>',
|
30 |
+
'type' => 'textarea',
|
31 |
+
'css' => 'width:100%',
|
32 |
+
),
|
33 |
+
array(
|
34 |
+
'title' => __( 'Hide Everywhere', 'woocommerce-jetpack' ),
|
35 |
+
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
36 |
+
'id' => 'wcj_product_images_sale_flash_hide_everywhere',
|
37 |
+
'default' => 'no',
|
38 |
+
'type' => 'checkbox',
|
39 |
+
),
|
40 |
+
array(
|
41 |
+
'title' => __( 'Hide on Archives (Categories) Only', 'woocommerce-jetpack' ),
|
42 |
+
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
43 |
+
'id' => 'wcj_product_images_sale_flash_hide_on_archives',
|
44 |
+
'default' => 'no',
|
45 |
+
'type' => 'checkbox',
|
46 |
+
),
|
47 |
+
array(
|
48 |
+
'title' => __( 'Hide on Single Page Only', 'woocommerce-jetpack' ),
|
49 |
+
'desc' => __( 'Hide', 'woocommerce-jetpack' ),
|
50 |
+
'id' => 'wcj_product_images_sale_flash_hide_on_single',
|
51 |
+
'default' => 'no',
|
52 |
+
'type' => 'checkbox',
|
53 |
+
),
|
54 |
+
array(
|
55 |
+
'type' => 'sectionend',
|
56 |
+
'id' => 'wcj_sale_flash_global_options',
|
57 |
+
),
|
58 |
+
array(
|
59 |
+
'title' => __( 'Per Product', 'woocommerce-jetpack' ),
|
60 |
+
'type' => 'title',
|
61 |
+
'id' => 'wcj_sale_flash_per_product_options',
|
62 |
+
),
|
63 |
+
array(
|
64 |
+
'title' => __( 'Per Product', 'woocommerce-jetpack' ),
|
65 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
66 |
+
'desc_tip' => __( 'This will add meta box to each product\'s edit page.', 'woocommerce-jetpack' ) . ' ' . apply_filters( 'booster_get_message', '', 'desc' ),
|
67 |
+
'id' => 'wcj_sale_flash_per_product_enabled',
|
68 |
+
'default' => 'no',
|
69 |
+
'type' => 'checkbox',
|
70 |
+
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
71 |
+
),
|
72 |
+
array(
|
73 |
+
'type' => 'sectionend',
|
74 |
+
'id' => 'wcj_sale_flash_per_product_options',
|
75 |
+
),
|
76 |
+
);
|
77 |
+
|
78 |
+
$product_terms['product_cat'] = wcj_get_terms( 'product_cat' );
|
79 |
+
$product_terms['product_tag'] = wcj_get_terms( 'product_tag' );
|
80 |
+
foreach ( $product_terms as $id => $product_term ) {
|
81 |
+
$title = ( 'product_cat' === $id ? __( 'Per Category', 'woocommerce-jetpack' ) : __( 'Per Tag', 'woocommerce-jetpack' ) );
|
82 |
+
$settings = array_merge( $settings, array(
|
83 |
+
array(
|
84 |
+
'title' => $title,
|
85 |
+
'type' => 'title',
|
86 |
+
'id' => 'wcj_sale_flash_per_' . $id . '_options',
|
87 |
+
),
|
88 |
+
array(
|
89 |
+
'title' => $title,
|
90 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
91 |
+
'desc_tip' => apply_filters( 'booster_get_message', '', 'desc' ),
|
92 |
+
'id' => 'wcj_sale_flash_per_' . $id . '_enabled',
|
93 |
+
'default' => 'no',
|
94 |
+
'type' => 'checkbox',
|
95 |
+
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
96 |
+
),
|
97 |
+
) );
|
98 |
+
foreach ( $product_term as $term_id => $term_desc ) {
|
99 |
+
$settings = array_merge( $settings, array(
|
100 |
+
array(
|
101 |
+
'title' => $term_desc,
|
102 |
+
'desc_tip' => __( 'You can use HTML and/or shortcodes here.', 'woocommerce-jetpack' ),
|
103 |
+
'id' => 'wcj_sale_flash_per_' . $id . '_' . $term_id . '_html',
|
104 |
+
'default' => '<span class="onsale">' . __( 'Sale!', 'woocommerce' ) . '</span>',
|
105 |
+
'type' => 'textarea',
|
106 |
+
'css' => 'width:100%;',
|
107 |
+
),
|
108 |
+
) );
|
109 |
+
}
|
110 |
+
$settings = array_merge( $settings, array(
|
111 |
+
array(
|
112 |
+
'type' => 'sectionend',
|
113 |
+
'id' => 'wcj_sale_flash_per_' . $id . '_options',
|
114 |
+
),
|
115 |
+
) );
|
116 |
+
}
|
117 |
+
|
118 |
+
return $settings;
|
includes/settings/wcj-settings-shipping-by-condition.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Shipping by Condition
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 3.2.1
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -73,4 +73,22 @@ foreach ( $this->condition_options as $options_id => $options_data ) {
|
|
73 |
),
|
74 |
) );
|
75 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
return $settings;
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Shipping by Condition
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 3.2.1
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
73 |
),
|
74 |
) );
|
75 |
}
|
76 |
+
$settings = array_merge( $settings, array(
|
77 |
+
array(
|
78 |
+
'title' => __( 'Advanced Options', 'woocommerce-jetpack' ),
|
79 |
+
'type' => 'title',
|
80 |
+
'id' => 'wcj_' . $this->id . '_advanced_options',
|
81 |
+
),
|
82 |
+
array(
|
83 |
+
'title' => __( 'Filter Priority', 'woocommerce-jetpack' ),
|
84 |
+
'desc_tip' => __( 'Set to zero to use the default priority.', 'woocommerce-jetpack' ),
|
85 |
+
'id' => 'wcj_' . $this->id . '_filter_priority',
|
86 |
+
'default' => 0,
|
87 |
+
'type' => 'number',
|
88 |
+
),
|
89 |
+
array(
|
90 |
+
'type' => 'sectionend',
|
91 |
+
'id' => 'wcj_' . $this->id . '_advanced_options',
|
92 |
+
),
|
93 |
+
) );
|
94 |
return $settings;
|
includes/settings/wcj-settings-shipping-options.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Shipping Options
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -36,6 +36,13 @@ $settings = array(
|
|
36 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
37 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
38 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
array(
|
40 |
'type' => 'sectionend',
|
41 |
'id' => 'wcj_shipping_hide_if_free_available_options',
|
2 |
/**
|
3 |
* Booster for WooCommerce - Settings - Shipping Options
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 2.9.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
36 |
'desc' => apply_filters( 'booster_get_message', '', 'desc' ),
|
37 |
'custom_attributes' => apply_filters( 'booster_get_message', '', 'disabled' ),
|
38 |
),
|
39 |
+
array(
|
40 |
+
'title' => __( 'Advanced: Filter Priority', 'woocommerce-jetpack' ),
|
41 |
+
'desc_tip' => __( 'Set to zero to use the default priority.', 'woocommerce-jetpack' ),
|
42 |
+
'id' => 'wcj_shipping_options_hide_free_shipping_filter_priority',
|
43 |
+
'default' => 0,
|
44 |
+
'type' => 'number',
|
45 |
+
),
|
46 |
array(
|
47 |
'type' => 'sectionend',
|
48 |
'id' => 'wcj_shipping_hide_if_free_available_options',
|
includes/settings/wcj-settings-tax-display.php
ADDED
@@ -0,0 +1,141 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Booster for WooCommerce - Settings - Tax Display
|
4 |
+
*
|
5 |
+
* @version 3.2.4
|
6 |
+
* @since 3.2.4
|
7 |
+
* @author Algoritmika Ltd.
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
11 |
+
|
12 |
+
// Prepare products
|
13 |
+
$products = wcj_get_products();
|
14 |
+
|
15 |
+
// Prepare categories
|
16 |
+
$product_cats = wcj_get_terms( 'product_cat' );
|
17 |
+
|
18 |
+
$settings = array(
|
19 |
+
array(
|
20 |
+
'title' => __( 'TAX Display - Toggle Button', 'woocommerce-jetpack' ),
|
21 |
+
'type' => 'title',
|
22 |
+
'desc' => sprintf( __( 'Use %s shortcode to display the button on frontend.', 'woocommerce-jetpack' ), '<code>[wcj_button_toggle_tax_display]</code>' ),
|
23 |
+
'id' => 'wcj_tax_display_toggle_options',
|
24 |
+
),
|
25 |
+
array(
|
26 |
+
'title' => __( 'TAX Toggle Button', 'woocommerce-jetpack' ),
|
27 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
28 |
+
'id' => 'wcj_tax_display_toggle_enabled',
|
29 |
+
'default' => 'no',
|
30 |
+
'type' => 'checkbox',
|
31 |
+
),
|
32 |
+
array(
|
33 |
+
'type' => 'sectionend',
|
34 |
+
'id' => 'wcj_tax_display_toggle_options',
|
35 |
+
),
|
36 |
+
array(
|
37 |
+
'title' => __( 'TAX Display by Product', 'woocommerce-jetpack' ),
|
38 |
+
'type' => 'title',
|
39 |
+
'desc' => __( 'If you want to display part of your products including TAX and another part excluding TAX, you can set it here.', 'woocommerce-jetpack' ),
|
40 |
+
'id' => 'wcj_product_listings_display_taxes_options',
|
41 |
+
),
|
42 |
+
array(
|
43 |
+
'title' => __( 'TAX Display by Product', 'woocommerce-jetpack' ),
|
44 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
45 |
+
'id' => 'wcj_product_listings_display_taxes_by_products_enabled',
|
46 |
+
'type' => 'checkbox',
|
47 |
+
'default' => 'no',
|
48 |
+
),
|
49 |
+
array(
|
50 |
+
'title' => __( 'Products - Including TAX', 'woocommerce-jetpack' ),
|
51 |
+
'id' => 'wcj_product_listings_display_taxes_products_incl_tax',
|
52 |
+
'desc_tip' => __( 'Select products to display including TAX.', 'woocommerce-jetpack' ),
|
53 |
+
'default' => '',
|
54 |
+
'type' => 'multiselect',
|
55 |
+
'class' => 'chosen_select',
|
56 |
+
'css' => 'width: 450px;',
|
57 |
+
'options' => $products,
|
58 |
+
),
|
59 |
+
array(
|
60 |
+
'title' => __( 'Products - Excluding TAX', 'woocommerce-jetpack' ),
|
61 |
+
'id' => 'wcj_product_listings_display_taxes_products_excl_tax',
|
62 |
+
'desc_tip' => __( 'Select products to display excluding TAX.', 'woocommerce-jetpack' ),
|
63 |
+
'default' => '',
|
64 |
+
'type' => 'multiselect',
|
65 |
+
'class' => 'chosen_select',
|
66 |
+
'css' => 'width: 450px;',
|
67 |
+
'options' => $products,
|
68 |
+
),
|
69 |
+
array(
|
70 |
+
'title' => __( 'Product Categories - Including TAX', 'woocommerce-jetpack' ),
|
71 |
+
'id' => 'wcj_product_listings_display_taxes_product_cats_incl_tax',
|
72 |
+
'desc_tip' => __( 'Select product categories to display including TAX.', 'woocommerce-jetpack' ),
|
73 |
+
'default' => '',
|
74 |
+
'type' => 'multiselect',
|
75 |
+
'class' => 'chosen_select',
|
76 |
+
'css' => 'width: 450px;',
|
77 |
+
'options' => $product_cats,
|
78 |
+
),
|
79 |
+
array(
|
80 |
+
'title' => __( 'Product Categories - Excluding TAX', 'woocommerce-jetpack' ),
|
81 |
+
'id' => 'wcj_product_listings_display_taxes_product_cats_excl_tax',
|
82 |
+
'desc_tip' => __( 'Select product categories to display excluding TAX.', 'woocommerce-jetpack' ),
|
83 |
+
'default' => '',
|
84 |
+
'type' => 'multiselect',
|
85 |
+
'class' => 'chosen_select',
|
86 |
+
'css' => 'width: 450px;',
|
87 |
+
'options' => $product_cats,
|
88 |
+
),
|
89 |
+
array(
|
90 |
+
'type' => 'sectionend',
|
91 |
+
'id' => 'wcj_product_listings_display_taxes_options',
|
92 |
+
),
|
93 |
+
array(
|
94 |
+
'title' => __( 'TAX Display by User Role', 'woocommerce-jetpack' ),
|
95 |
+
'type' => 'title',
|
96 |
+
'desc' => __( 'If you want to display prices including TAX or excluding TAX for different user roles, you can set it here.', 'woocommerce-jetpack' ),
|
97 |
+
'id' => 'wcj_product_listings_display_taxes_by_user_role_options',
|
98 |
+
),
|
99 |
+
array(
|
100 |
+
'title' => __( 'TAX Display by User Role', 'woocommerce-jetpack' ),
|
101 |
+
'desc' => '<strong>' . __( 'Enable section', 'woocommerce-jetpack' ) . '</strong>',
|
102 |
+
'id' => 'wcj_product_listings_display_taxes_by_user_role_enabled',
|
103 |
+
'type' => 'checkbox',
|
104 |
+
'default' => 'no',
|
105 |
+
),
|
106 |
+
array(
|
107 |
+
'title' => __( 'User Roles', 'woocommerce-jetpack' ),
|
108 |
+
'desc_tip' => __( 'Save changes after you change this option and new settings fields will appear.', 'woocommerce-jetpack' ),
|
109 |
+
'desc' => '<br>' . sprintf( __( 'Select user roles that you want to change tax display for. For all remaining (i.e. not selected) user roles - default TAX display (set in %s) will be applied.', 'woocommerce-jetpack' ),
|
110 |
+
'<a href="' . admin_url( 'admin.php?page=wc-settings&tab=tax' ) . '">' . __( 'WooCommerce > Settings > Tax', 'woocommerce-jetpack' ) . '</a>' ),
|
111 |
+
'id' => 'wcj_product_listings_display_taxes_by_user_role_roles',
|
112 |
+
'type' => 'multiselect',
|
113 |
+
'class' => 'chosen_select',
|
114 |
+
'default' => '',
|
115 |
+
'options' => wcj_get_user_roles_options(),
|
116 |
+
),
|
117 |
+
);
|
118 |
+
if ( '' != ( $display_taxes_by_user_role_roles = get_option( 'wcj_product_listings_display_taxes_by_user_role_roles', '' ) ) ) {
|
119 |
+
foreach ( $display_taxes_by_user_role_roles as $display_taxes_by_user_role_role ) {
|
120 |
+
$settings = array_merge( $settings, array(
|
121 |
+
array(
|
122 |
+
'title' => sprintf( __( 'Role: %s', 'woocommerce-jetpack' ), $display_taxes_by_user_role_role ),
|
123 |
+
'id' => 'wcj_product_listings_display_taxes_by_user_role_' . $display_taxes_by_user_role_role,
|
124 |
+
'default' => 'no_changes',
|
125 |
+
'type' => 'select',
|
126 |
+
'options' => array(
|
127 |
+
'no_changes' => __( 'Default TAX display (no changes)', 'woocommerce-jetpack' ),
|
128 |
+
'incl' => __( 'Including tax', 'woocommerce-jetpack' ),
|
129 |
+
'excl' => __( 'Excluding tax', 'woocommerce-jetpack' ),
|
130 |
+
),
|
131 |
+
),
|
132 |
+
) );
|
133 |
+
}
|
134 |
+
}
|
135 |
+
$settings = array_merge( $settings, array(
|
136 |
+
array(
|
137 |
+
'type' => 'sectionend',
|
138 |
+
'id' => 'wcj_product_listings_display_taxes_by_user_role_options',
|
139 |
+
),
|
140 |
+
) );
|
141 |
+
return $settings;
|
includes/shortcodes/{class-wcj-general-shortcodes.php → class-wcj-shortcodes-general.php}
RENAMED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - General
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,11 +15,14 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.2.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
$this->the_shortcodes = array(
|
|
|
|
|
|
|
23 |
'wcj_cart_items_total_quantity',
|
24 |
'wcj_cart_items_total_weight',
|
25 |
'wcj_cart_total',
|
@@ -40,6 +43,7 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
40 |
'wcj_customer_shipping_country',
|
41 |
'wcj_empty_cart_button',
|
42 |
'wcj_get_left_to_free_shipping',
|
|
|
43 |
'wcj_selector',
|
44 |
'wcj_site_url',
|
45 |
'wcj_store_address',
|
@@ -79,12 +83,158 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
79 |
'selector_type' => 'country',
|
80 |
'option' => '',
|
81 |
'company' => '',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
82 |
);
|
83 |
|
84 |
parent::__construct();
|
85 |
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
/**
|
89 |
* wcj_store_address.
|
90 |
*
|
@@ -141,8 +291,9 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
141 |
/**
|
142 |
* wcj_selector.
|
143 |
*
|
144 |
-
* @version 3.
|
145 |
* @since 3.1.0
|
|
|
146 |
* @todo (maybe) add more selector types (e.g.: currency)
|
147 |
* @todo (maybe) remove country switcher and currency switcher shortcodes and use this shortcode instead
|
148 |
*/
|
@@ -154,9 +305,13 @@ class WCJ_General_Shortcodes extends WCJ_Shortcodes {
|
|
154 |
wcj_session_get( 'wcj_selected_' . $atts['selector_type'] )
|
155 |
);
|
156 |
switch ( $atts['selector_type'] ) {
|
|
|
|
|
|
|
157 |
default: // 'country'
|
158 |
$options = wcj_get_countries();
|
159 |
asort( $options );
|
|
|
160 |
}
|
161 |
foreach ( $options as $value => $title ) {
|
162 |
$html .= '<option value="' . $value . '" ' . selected( $selected_value, $value, false ) . '>' . $title . '</option>';
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - General
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
22 |
$this->the_shortcodes = array(
|
23 |
+
'wcj_barcode',
|
24 |
+
'wcj_tcpdf_barcode',
|
25 |
+
'wcj_button_toggle_tax_display',
|
26 |
'wcj_cart_items_total_quantity',
|
27 |
'wcj_cart_items_total_weight',
|
28 |
'wcj_cart_total',
|
43 |
'wcj_customer_shipping_country',
|
44 |
'wcj_empty_cart_button',
|
45 |
'wcj_get_left_to_free_shipping',
|
46 |
+
'wcj_product_category_count',
|
47 |
'wcj_selector',
|
48 |
'wcj_site_url',
|
49 |
'wcj_store_address',
|
83 |
'selector_type' => 'country',
|
84 |
'option' => '',
|
85 |
'company' => '',
|
86 |
+
'label_incl' => __( 'Tax toggle (incl.)', 'woocommerce-jetpack' ),
|
87 |
+
'label_excl' => __( 'Tax toggle (excl.)', 'woocommerce-jetpack' ),
|
88 |
+
'slug' => '',
|
89 |
+
'code' => '',
|
90 |
+
'type' => '',
|
91 |
+
'dimension' => '2D',
|
92 |
+
'width' => 0,
|
93 |
+
'height' => 0,
|
94 |
+
'color' => 'black',
|
95 |
);
|
96 |
|
97 |
parent::__construct();
|
98 |
|
99 |
}
|
100 |
|
101 |
+
/**
|
102 |
+
* wcj_tcpdf_barcode.
|
103 |
+
*
|
104 |
+
* @version 3.2.4
|
105 |
+
* @since 3.2.4
|
106 |
+
* @todo `color`
|
107 |
+
* @todo `align` (try 'T')
|
108 |
+
*/
|
109 |
+
function wcj_tcpdf_barcode( $atts ) {
|
110 |
+
if ( '' === $atts['code'] ) {
|
111 |
+
return '';
|
112 |
+
}
|
113 |
+
if ( '' === $atts['type'] ) {
|
114 |
+
$atts['type'] = ( '1D' === $atts['dimension'] ? 'C39' : 'PDF417' );
|
115 |
+
}
|
116 |
+
if ( 0 === $atts['width'] ) {
|
117 |
+
$atts['width'] = ( '1D' === $atts['dimension'] ? 80 : 80 );
|
118 |
+
}
|
119 |
+
if ( 0 === $atts['height'] ) {
|
120 |
+
$atts['height'] = ( '1D' === $atts['dimension'] ? 30 : 80 );
|
121 |
+
}
|
122 |
+
if ( '1D' === $atts['dimension'] ) {
|
123 |
+
$params = array(
|
124 |
+
$atts['code'],
|
125 |
+
$atts['type'],
|
126 |
+
'', // x
|
127 |
+
'', // y
|
128 |
+
$atts['width'],
|
129 |
+
$atts['height'],
|
130 |
+
0.4, // xres
|
131 |
+
array( // style
|
132 |
+
'position' => 'S',
|
133 |
+
'border' => true,
|
134 |
+
'padding' => 4,
|
135 |
+
'fgcolor' => array( 0, 0, 0 ),
|
136 |
+
'bgcolor' => array( 255, 255, 255 ),
|
137 |
+
'text' => false,
|
138 |
+
),
|
139 |
+
'N', // align
|
140 |
+
);
|
141 |
+
} else {
|
142 |
+
$params = array(
|
143 |
+
$atts['code'],
|
144 |
+
$atts['type'],
|
145 |
+
'', // x
|
146 |
+
'', // y
|
147 |
+
$atts['width'],
|
148 |
+
$atts['height'],
|
149 |
+
array( // style
|
150 |
+
'border' => true,
|
151 |
+
'vpadding' => 'auto',
|
152 |
+
'hpadding' => 'auto',
|
153 |
+
'fgcolor' => array( 0, 0, 0 ),
|
154 |
+
'bgcolor' => array( 255, 255, 255 ),
|
155 |
+
'module_width' => 1, // width of a single module in points
|
156 |
+
'module_height' => 1, // height of a single module in points
|
157 |
+
),
|
158 |
+
'N', // align
|
159 |
+
false, // distort
|
160 |
+
);
|
161 |
+
}
|
162 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/lib/tcpdf_min/include/tcpdf_static.php' );
|
163 |
+
$params = TCPDF_STATIC::serializeTCPDFtagParameters( $params );
|
164 |
+
$method = ( '1D' === $atts['dimension'] ? 'write1DBarcode' : 'write2DBarcode' );
|
165 |
+
return '<tcpdf method="' . $method . '" params="' . $params . '" />';
|
166 |
+
}
|
167 |
+
|
168 |
+
/**
|
169 |
+
* wcj_barcode.
|
170 |
+
*
|
171 |
+
* @version 3.2.4
|
172 |
+
* @since 3.2.4
|
173 |
+
* @todo barcode in `[wcj_order_items_table]`
|
174 |
+
* @todo `code` from product data (SKU etc.), i.e. `[wcj_product_barcode]`
|
175 |
+
* @todo (maybe) "Barcodes" module
|
176 |
+
* @todo (maybe) `getBarcodePNG()`
|
177 |
+
*/
|
178 |
+
function wcj_barcode( $atts ) {
|
179 |
+
if ( '' === $atts['code'] ) {
|
180 |
+
return '';
|
181 |
+
}
|
182 |
+
if ( '' === $atts['type'] ) {
|
183 |
+
$atts['type'] = ( '1D' === $atts['dimension'] ? 'C39' : 'PDF417' );
|
184 |
+
}
|
185 |
+
if ( 0 === $atts['width'] ) {
|
186 |
+
$atts['width'] = ( '1D' === $atts['dimension'] ? 2 : 10 );
|
187 |
+
}
|
188 |
+
if ( 0 === $atts['height'] ) {
|
189 |
+
$atts['height'] = ( '1D' === $atts['dimension'] ? 30 : 10 );
|
190 |
+
}
|
191 |
+
if ( '1D' === $atts['dimension'] ) {
|
192 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/lib/tcpdf_min/tcpdf_barcodes_1d.php' );
|
193 |
+
$barcode = new TCPDFBarcode( $atts['code'], $atts['type'] );
|
194 |
+
} else {
|
195 |
+
require_once( WCJ_PLUGIN_PATH . '/includes/lib/tcpdf_min/tcpdf_barcodes_2d.php' );
|
196 |
+
$barcode = new TCPDF2DBarcode( $atts['code'], $atts['type'] );
|
197 |
+
}
|
198 |
+
$barcode_array = $barcode->getBarcodeArray();
|
199 |
+
return ( ! empty( $barcode_array ) && is_array( $barcode_array ) ? $barcode->getBarcodeHTML( $atts['width'], $atts['height'], $atts['color'] ) : '' );
|
200 |
+
}
|
201 |
+
|
202 |
+
/**
|
203 |
+
* wcj_product_category_count.
|
204 |
+
*
|
205 |
+
* @version 3.2.4
|
206 |
+
* @since 3.2.4
|
207 |
+
* @todo option to use `name` or `term_id` instead of `slug`
|
208 |
+
* @todo `pad_counts`
|
209 |
+
* @todo add similar `[wcj_product_tag_count]` and `[wcj_product_taxonomy_count]`
|
210 |
+
*/
|
211 |
+
function wcj_product_category_count( $atts ) {
|
212 |
+
if ( ! isset( $atts['slug'] ) ) {
|
213 |
+
return '';
|
214 |
+
}
|
215 |
+
$product_categories = get_categories( array(
|
216 |
+
'hide_empty' => 0,
|
217 |
+
'hierarchical' => 1,
|
218 |
+
'taxonomy' => 'product_cat',
|
219 |
+
'slug' => $atts['slug'],
|
220 |
+
) );
|
221 |
+
return ( isset( $product_categories[0]->count ) ? $product_categories[0]->count : '' );
|
222 |
+
}
|
223 |
+
|
224 |
+
/**
|
225 |
+
* wcj_button_toggle_tax_display.
|
226 |
+
*
|
227 |
+
* @version 3.2.4
|
228 |
+
* @since 3.2.4
|
229 |
+
* @todo (maybe) `get` instead of `post`
|
230 |
+
*/
|
231 |
+
function wcj_button_toggle_tax_display( $atts ) {
|
232 |
+
$current_value = ( '' == ( $session_value = wcj_session_get( 'wcj_toggle_tax_display' ) ) ? get_option( 'woocommerce_tax_display_shop', 'excl' ) : $session_value );
|
233 |
+
$label = $atts[ 'label_' . $current_value ];
|
234 |
+
return '<form method="post" action=""><input type="submit" name="wcj_button_toggle_tax_display"' .
|
235 |
+
' class="' . $atts['class'] . '" style="' . $atts['style'] . '" value="' . $label . '"></form>';
|
236 |
+
}
|
237 |
+
|
238 |
/**
|
239 |
* wcj_store_address.
|
240 |
*
|
291 |
/**
|
292 |
* wcj_selector.
|
293 |
*
|
294 |
+
* @version 3.2.4
|
295 |
* @since 3.1.0
|
296 |
+
* @todo add `default` attribute
|
297 |
* @todo (maybe) add more selector types (e.g.: currency)
|
298 |
* @todo (maybe) remove country switcher and currency switcher shortcodes and use this shortcode instead
|
299 |
*/
|
305 |
wcj_session_get( 'wcj_selected_' . $atts['selector_type'] )
|
306 |
);
|
307 |
switch ( $atts['selector_type'] ) {
|
308 |
+
case 'product_custom_visibility':
|
309 |
+
$options = wcj_get_select_options( get_option( 'wcj_product_custom_visibility_options_list', '' ) );
|
310 |
+
break;
|
311 |
default: // 'country'
|
312 |
$options = wcj_get_countries();
|
313 |
asort( $options );
|
314 |
+
break;
|
315 |
}
|
316 |
foreach ( $options as $value => $title ) {
|
317 |
$html .= '<option value="' . $value . '" ' . selected( $selected_value, $value, false ) . '>' . $title . '</option>';
|
includes/shortcodes/{class-wcj-input-field-shortcodes.php → class-wcj-shortcodes-input-field.php}
RENAMED
File without changes
|
includes/shortcodes/{class-wcj-invoices-shortcodes.php → class-wcj-shortcodes-invoices.php}
RENAMED
File without changes
|
includes/shortcodes/{class-wcj-order-items-shortcodes.php → class-wcj-shortcodes-order-items.php}
RENAMED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Order Items
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -438,7 +438,7 @@ class WCJ_Order_Items_Shortcodes extends WCJ_Shortcodes {
|
|
438 |
/**
|
439 |
* get_cell.
|
440 |
*
|
441 |
-
* @version 3.2.
|
442 |
* @since 3.2.0
|
443 |
*/
|
444 |
function get_cell( $column, $column_param, $atts, $the_order, $columns, $item_counter, $item_id, $item, $the_product ) {
|
@@ -478,7 +478,7 @@ class WCJ_Order_Items_Shortcodes extends WCJ_Shortcodes {
|
|
478 |
return $item_counter;
|
479 |
|
480 |
case 'item_meta':
|
481 |
-
return wcj_get_order_item_meta_info( $item_id, $item, $this->the_order, false, $the_product );
|
482 |
|
483 |
case 'item_name':
|
484 |
case 'product_name': // "product_" because of possible variation
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Order Items
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
438 |
/**
|
439 |
* get_cell.
|
440 |
*
|
441 |
+
* @version 3.2.4
|
442 |
* @since 3.2.0
|
443 |
*/
|
444 |
function get_cell( $column, $column_param, $atts, $the_order, $columns, $item_counter, $item_id, $item, $the_product ) {
|
478 |
return $item_counter;
|
479 |
|
480 |
case 'item_meta':
|
481 |
+
return wcj_get_order_item_meta_info( $item_id, $item, $this->the_order, false, $the_product, array( 'is_custom' ) );
|
482 |
|
483 |
case 'item_name':
|
484 |
case 'product_name': // "product_" because of possible variation
|
includes/shortcodes/{class-wcj-orders-shortcodes.php → class-wcj-shortcodes-orders.php}
RENAMED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Orders
|
4 |
*
|
5 |
-
* @version 3.2.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -92,7 +92,7 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
92 |
/**
|
93 |
* add_extra_atts.
|
94 |
*
|
95 |
-
* @version 3.2.
|
96 |
*/
|
97 |
function add_extra_atts( $atts ) {
|
98 |
$modified_atts = array_merge( array(
|
@@ -127,6 +127,7 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
127 |
'display_refunded' => 'yes',
|
128 |
'insert_page_break' => '',
|
129 |
'key' => null,
|
|
|
130 |
), $atts );
|
131 |
|
132 |
return $modified_atts;
|
@@ -833,10 +834,11 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
833 |
/**
|
834 |
* wcj_order_date.
|
835 |
*
|
836 |
-
* @version 3.
|
|
|
837 |
*/
|
838 |
function wcj_order_date( $atts ) {
|
839 |
-
return date_i18n( $atts['date_format'], strtotime( wcj_get_order_date( $this->the_order ) ) );
|
840 |
}
|
841 |
|
842 |
/**
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Orders
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
92 |
/**
|
93 |
* add_extra_atts.
|
94 |
*
|
95 |
+
* @version 3.2.4
|
96 |
*/
|
97 |
function add_extra_atts( $atts ) {
|
98 |
$modified_atts = array_merge( array(
|
127 |
'display_refunded' => 'yes',
|
128 |
'insert_page_break' => '',
|
129 |
'key' => null,
|
130 |
+
'days' => 0,
|
131 |
), $atts );
|
132 |
|
133 |
return $modified_atts;
|
834 |
/**
|
835 |
* wcj_order_date.
|
836 |
*
|
837 |
+
* @version 3.2.4
|
838 |
+
* @todo (maybe) rename `days` to `extra_days`
|
839 |
*/
|
840 |
function wcj_order_date( $atts ) {
|
841 |
+
return date_i18n( $atts['date_format'], strtotime( wcj_get_order_date( $this->the_order ) ) + $atts['days'] * 24 * 60 * 60 );
|
842 |
}
|
843 |
|
844 |
/**
|
includes/shortcodes/{class-wcj-products-add-form-shortcodes.php → class-wcj-shortcodes-products-add-form.php}
RENAMED
File without changes
|
includes/shortcodes/{class-wcj-products-crowdfunding-shortcodes.php → class-wcj-shortcodes-products-crowdfunding.php}
RENAMED
File without changes
|
includes/shortcodes/{class-wcj-products-shortcodes.php → class-wcj-shortcodes-products.php}
RENAMED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Products
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
@@ -15,7 +15,8 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
-
* @version 3.
|
|
|
19 |
*/
|
20 |
function __construct() {
|
21 |
|
@@ -104,6 +105,7 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
104 |
'count_variations' => 'no',
|
105 |
'variations' => 'no',
|
106 |
'columns_style' => 'text-align: center;',
|
|
|
107 |
);
|
108 |
|
109 |
parent::__construct();
|
@@ -561,13 +563,11 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
561 |
/**
|
562 |
* wcj_product_purchase_price.
|
563 |
*
|
564 |
-
* @version 2.
|
565 |
-
* @return string
|
566 |
-
* @todo maybe just `wcj_get_product_id` instead of `wcj_get_product_id_or_variation_parent_id`
|
567 |
*/
|
568 |
function wcj_product_purchase_price( $atts ) {
|
569 |
-
$purchase_price = wc_get_product_purchase_price(
|
570 |
-
return wc_price( $purchase_price );
|
571 |
}
|
572 |
|
573 |
/**
|
@@ -595,6 +595,7 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
595 |
*
|
596 |
* @return string
|
597 |
* @version 3.1.1
|
|
|
598 |
*/
|
599 |
function wcj_product_you_save( $atts ) {
|
600 |
if ( $this->the_product->is_on_sale() ) {
|
@@ -665,7 +666,7 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
665 |
/**
|
666 |
* Returns product (modified) price.
|
667 |
*
|
668 |
-
* @version 2.4
|
669 |
* @todo variable products: a) not range; and b) price by country.
|
670 |
* @return string The product (modified) price
|
671 |
*/
|
@@ -678,17 +679,34 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
678 |
$min = $min * $atts['multiply_by'];
|
679 |
$max = $max * $atts['multiply_by'];
|
680 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
681 |
if ( 'yes' !== $atts['hide_currency'] ) {
|
682 |
-
$min = wc_price( $min );
|
683 |
-
$max = wc_price( $max );
|
684 |
}
|
685 |
return ( $min != $max ) ? sprintf( '%s-%s', $min, $max ) : $min;
|
686 |
}
|
687 |
// Simple etc.
|
688 |
else {
|
689 |
$the_price = $this->the_product->get_price();
|
690 |
-
if ( '' !== $atts['multiply_by'] && is_numeric( $atts['multiply_by'] ) )
|
691 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
692 |
}
|
693 |
}
|
694 |
|
2 |
/**
|
3 |
* Booster for WooCommerce - Shortcodes - Products
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @author Algoritmika Ltd.
|
7 |
*/
|
8 |
|
15 |
/**
|
16 |
* Constructor.
|
17 |
*
|
18 |
+
* @version 3.2.4
|
19 |
+
* @todo (maybe) add `[wcj_product_stock_price]`
|
20 |
*/
|
21 |
function __construct() {
|
22 |
|
105 |
'count_variations' => 'no',
|
106 |
'variations' => 'no',
|
107 |
'columns_style' => 'text-align: center;',
|
108 |
+
'currency' => '',
|
109 |
);
|
110 |
|
111 |
parent::__construct();
|
563 |
/**
|
564 |
* wcj_product_purchase_price.
|
565 |
*
|
566 |
+
* @version 3.2.4
|
|
|
|
|
567 |
*/
|
568 |
function wcj_product_purchase_price( $atts ) {
|
569 |
+
$purchase_price = wc_get_product_purchase_price( wcj_get_product_id( $this->the_product ) );
|
570 |
+
return ( 'yes' === $atts['hide_currency'] ? $purchase_price : wc_price( $purchase_price ) );
|
571 |
}
|
572 |
|
573 |
/**
|
595 |
*
|
596 |
* @return string
|
597 |
* @version 3.1.1
|
598 |
+
* @todo (maybe) add `[wcj_product_discount]` alias
|
599 |
*/
|
600 |
function wcj_product_you_save( $atts ) {
|
601 |
if ( $this->the_product->is_on_sale() ) {
|
666 |
/**
|
667 |
* Returns product (modified) price.
|
668 |
*
|
669 |
+
* @version 3.2.4
|
670 |
* @todo variable products: a) not range; and b) price by country.
|
671 |
* @return string The product (modified) price
|
672 |
*/
|
679 |
$min = $min * $atts['multiply_by'];
|
680 |
$max = $max * $atts['multiply_by'];
|
681 |
}
|
682 |
+
if (
|
683 |
+
'' != $atts['currency'] &&
|
684 |
+
( $base_product_currency = get_woocommerce_currency() ) != $atts['currency'] &&
|
685 |
+
0 != ( $exchange_rate = wcj_get_saved_exchange_rate( $base_product_currency, $atts['currency'] ) )
|
686 |
+
) {
|
687 |
+
$min = $min * $exchange_rate;
|
688 |
+
$max = $max * $exchange_rate;
|
689 |
+
}
|
690 |
if ( 'yes' !== $atts['hide_currency'] ) {
|
691 |
+
$min = wc_price( $min, array( 'currency' => $atts['currency'] ) );
|
692 |
+
$max = wc_price( $max, array( 'currency' => $atts['currency'] ) );
|
693 |
}
|
694 |
return ( $min != $max ) ? sprintf( '%s-%s', $min, $max ) : $min;
|
695 |
}
|
696 |
// Simple etc.
|
697 |
else {
|
698 |
$the_price = $this->the_product->get_price();
|
699 |
+
if ( '' !== $atts['multiply_by'] && is_numeric( $atts['multiply_by'] ) ) {
|
700 |
+
$the_price = $the_price * $atts['multiply_by'];
|
701 |
+
}
|
702 |
+
if (
|
703 |
+
'' != $atts['currency'] &&
|
704 |
+
( $base_product_currency = get_woocommerce_currency() ) != $atts['currency'] &&
|
705 |
+
0 != ( $exchange_rate = wcj_get_saved_exchange_rate( $base_product_currency, $atts['currency'] ) )
|
706 |
+
) {
|
707 |
+
$the_price = $the_price * $exchange_rate;
|
708 |
+
}
|
709 |
+
return ( 'yes' === $atts['hide_currency'] ) ? $the_price : wc_price( $the_price, array( 'currency' => $atts['currency'] ) );
|
710 |
}
|
711 |
}
|
712 |
|
includes/widgets/class-wcj-widget-selector.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
/**
|
3 |
* Booster for WooCommerce - Widget - Selector
|
4 |
*
|
5 |
-
* @version 3.
|
6 |
* @since 3.1.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
@@ -43,7 +43,7 @@ class WCJ_Widget_Selector extends WCJ_Widget {
|
|
43 |
/**
|
44 |
* get_options.
|
45 |
*
|
46 |
-
* @version 3.
|
47 |
* @since 3.1.0
|
48 |
*/
|
49 |
function get_options() {
|
@@ -61,7 +61,8 @@ class WCJ_Widget_Selector extends WCJ_Widget {
|
|
61 |
'default' => 'country',
|
62 |
'type' => 'select',
|
63 |
'options' => array(
|
64 |
-
'country'
|
|
|
65 |
),
|
66 |
'class' => 'widefat',
|
67 |
),
|
2 |
/**
|
3 |
* Booster for WooCommerce - Widget - Selector
|
4 |
*
|
5 |
+
* @version 3.2.4
|
6 |
* @since 3.1.0
|
7 |
* @author Algoritmika Ltd.
|
8 |
*/
|
43 |
/**
|
44 |
* get_options.
|
45 |
*
|
46 |
+
* @version 3.2.4
|
47 |
* @since 3.1.0
|
48 |
*/
|
49 |
function get_options() {
|
61 |
'default' => 'country',
|
62 |
'type' => 'select',
|
63 |
'options' => array(
|
64 |
+
'country' => __( 'Countries', 'woocommerce-jetpack' ),
|
65 |
+
'product_custom_visibility' => __( 'Product custom visibility', 'woocommerce-jetpack' ),
|
66 |
),
|
67 |
'class' => 'widefat',
|
68 |
),
|
langs/woocommerce-jetpack.pot
CHANGED
@@ -1,81 +1,3 @@
|
|
1 |
-
# SOME DESCRIPTIVE TITLE.
|
2 |
-
# Copyright (C) YEAR Booster for WooCommerce
|
3 |
-
# This file is distributed under the same license as the PACKAGE package.
|
4 |
-
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
5 |
-
#
|
6 |
-
#: includes/settings/wcj-settings-add-to-cart.php:60
|
7 |
-
#: includes/settings/wcj-settings-shipping-calculator.php:47
|
8 |
-
#, fuzzy
|
9 |
-
msgid ""
|
10 |
-
msgstr ""
|
11 |
-
"Project-Id-Version: Booster for WooCommerce 3.2.3\n"
|
12 |
-
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/woocommerce-"
|
13 |
-
"jetpack\n"
|
14 |
-
"POT-Creation-Date: 2017-12-03 17:52+0200\n"
|
15 |
-
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
16 |
-
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
17 |
-
"Language-Team: LANGUAGE <LL@li.org>\n"
|
18 |
-
"Language: \n"
|
19 |
-
"MIME-Version: 1.0\n"
|
20 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
21 |
-
"Content-Transfer-Encoding: 8bit\n"
|
22 |
-
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
|
23 |
-
|
24 |
-
#: woocommerce-jetpack.php:184
|
25 |
-
#, php-format
|
26 |
-
msgid ""
|
27 |
-
"Please upgrade <strong>Booster Plus for WooCommerce</strong> plugin. Visit "
|
28 |
-
"<a target=\"_blank\" href=\"%s\">your account page</a> on booster.io to "
|
29 |
-
"download the latest Booster Plus version."
|
30 |
-
msgstr ""
|
31 |
-
|
32 |
-
#: woocommerce-jetpack.php:188
|
33 |
-
#, php-format
|
34 |
-
msgid ""
|
35 |
-
"There is new version of <strong>Booster Plus for WooCommerce</strong> plugin "
|
36 |
-
"available. We recommend upgrading. Please visit <a target=\"_blank\" href="
|
37 |
-
"\"%s\">your account page</a> on booster.io to download the latest Booster "
|
38 |
-
"Plus version."
|
39 |
-
msgstr ""
|
40 |
-
|
41 |
-
#: woocommerce-jetpack.php:208
|
42 |
-
#, php-format
|
43 |
-
msgid ""
|
44 |
-
"If you like <strong>Booster for WooCommerce</strong> please leave us a %s "
|
45 |
-
"rating. Thank you, we couldn't have done it without you!"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: woocommerce-jetpack.php:224
|
49 |
-
#: includes/admin/class-wc-settings-jetpack.php:486
|
50 |
-
msgid "Booster for WooCommerce"
|
51 |
-
msgstr ""
|
52 |
-
|
53 |
-
#: woocommerce-jetpack.php:225
|
54 |
-
msgid "Booster Settings"
|
55 |
-
msgstr ""
|
56 |
-
|
57 |
-
#: woocommerce-jetpack.php:240 includes/class-wcj-admin-bar.php:166
|
58 |
-
#: includes/class-wcj-admin-bar.php:461 includes/class-wcj-admin-bar.php:561
|
59 |
-
#: includes/admin/class-wc-settings-jetpack.php:211
|
60 |
-
#: includes/admin/class-wc-settings-jetpack.php:404
|
61 |
-
msgid "Settings"
|
62 |
-
msgstr ""
|
63 |
-
|
64 |
-
#: woocommerce-jetpack.php:241
|
65 |
-
msgid "Docs"
|
66 |
-
msgstr ""
|
67 |
-
|
68 |
-
#: woocommerce-jetpack.php:244
|
69 |
-
msgid "Unlock all"
|
70 |
-
msgstr ""
|
71 |
-
|
72 |
-
#: woocommerce-jetpack.php:510
|
73 |
-
#, php-format
|
74 |
-
msgid ""
|
75 |
-
"<strong>Booster for WooCommerce</strong> plugin was successfully updated to "
|
76 |
-
"version <strong>%s</strong>."
|
77 |
-
msgstr ""
|
78 |
-
|
79 |
#: includes/class-wcj-add-to-cart.php:23
|
80 |
msgid "Add to Cart Labels"
|
81 |
msgstr ""
|
@@ -124,15 +46,23 @@ msgstr ""
|
|
124 |
msgid "Manage Settings"
|
125 |
msgstr ""
|
126 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
127 |
#: includes/class-wcj-admin-bar.php:170
|
128 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
129 |
#: includes/classes/class-wcj-module.php:645
|
130 |
msgid "Documentation"
|
131 |
msgstr ""
|
132 |
|
133 |
#: includes/class-wcj-admin-bar.php:212
|
134 |
#: includes/admin/class-wc-settings-jetpack.php:138
|
135 |
-
#: includes/admin/wcj-modules-cats.php:
|
136 |
msgid "Dashboard"
|
137 |
msgstr ""
|
138 |
|
@@ -192,22 +122,22 @@ msgid "Coupons by date"
|
|
192 |
msgstr ""
|
193 |
|
194 |
#: includes/class-wcj-admin-bar.php:304 includes/class-wcj-track-users.php:34
|
195 |
-
#: includes/functions/wcj-functions-reports.php:
|
196 |
msgid "Last 7 days"
|
197 |
msgstr ""
|
198 |
|
199 |
#: includes/class-wcj-admin-bar.php:308
|
200 |
-
#: includes/functions/wcj-functions-reports.php:
|
201 |
msgid "This month"
|
202 |
msgstr ""
|
203 |
|
204 |
#: includes/class-wcj-admin-bar.php:312
|
205 |
-
#: includes/functions/wcj-functions-reports.php:
|
206 |
msgid "Last month"
|
207 |
msgstr ""
|
208 |
|
209 |
#: includes/class-wcj-admin-bar.php:316
|
210 |
-
#: includes/functions/wcj-functions-reports.php:
|
211 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:111
|
212 |
msgid "Year"
|
213 |
msgstr ""
|
@@ -223,7 +153,7 @@ msgid "WooCommerce settings"
|
|
223 |
msgstr ""
|
224 |
|
225 |
#: includes/class-wcj-admin-bar.php:346 includes/class-wcj-admin-bar.php:350
|
226 |
-
#: includes/class-wcj-admin-bar.php:368 includes/class-wcj-orders.php:
|
227 |
#: includes/settings/wcj-settings-reports.php:16
|
228 |
#: includes/settings/wcj-settings-reports.php:54
|
229 |
#: includes/settings/wcj-settings-reports.php:95
|
@@ -291,8 +221,8 @@ msgstr ""
|
|
291 |
#: includes/class-wcj-product-by-user.php:96
|
292 |
#: includes/class-wcj-product-by-user.php:132
|
293 |
#: includes/class-wcj-shipping-by-products.php:32
|
294 |
-
#: includes/admin/wcj-modules-cats.php:
|
295 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
296 |
msgid "Products"
|
297 |
msgstr ""
|
298 |
|
@@ -306,16 +236,16 @@ msgstr ""
|
|
306 |
#: includes/export/class-wcj-fields-helper.php:318
|
307 |
#: includes/settings/wcj-settings-price-by-user-role.php:129
|
308 |
#: includes/settings/wcj-settings-product-by-user.php:19
|
309 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
310 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
311 |
msgid "Categories"
|
312 |
msgstr ""
|
313 |
|
314 |
#: includes/class-wcj-admin-bar.php:437
|
315 |
#: includes/export/class-wcj-fields-helper.php:319
|
316 |
#: includes/settings/wcj-settings-product-by-user.php:20
|
317 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
318 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
319 |
msgid "Tags"
|
320 |
msgstr ""
|
321 |
|
@@ -440,6 +370,50 @@ msgstr ""
|
|
440 |
msgid "Extensions"
|
441 |
msgstr ""
|
442 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
443 |
#: includes/class-wcj-admin-tools.php:23 includes/class-wcj-admin-tools.php:30
|
444 |
msgid "Admin Tools"
|
445 |
msgstr ""
|
@@ -516,11 +490,11 @@ msgstr ""
|
|
516 |
msgid "Customize WooCommerce breadcrumbs."
|
517 |
msgstr ""
|
518 |
|
519 |
-
#: includes/class-wcj-call-for-price.php:
|
520 |
msgid "Call for Price"
|
521 |
msgstr ""
|
522 |
|
523 |
-
#: includes/class-wcj-call-for-price.php:
|
524 |
msgid ""
|
525 |
"Create any custom price label for all WooCommerce products with empty price."
|
526 |
msgstr ""
|
@@ -560,11 +534,11 @@ msgid ""
|
|
560 |
"required, change labels and/or placeholders."
|
561 |
msgstr ""
|
562 |
|
563 |
-
#: includes/class-wcj-checkout-custom-fields.php:
|
564 |
msgid "Checkout Custom Fields"
|
565 |
msgstr ""
|
566 |
|
567 |
-
#: includes/class-wcj-checkout-custom-fields.php:
|
568 |
msgid "Add custom fields to WooCommerce checkout page."
|
569 |
msgstr ""
|
570 |
|
@@ -710,7 +684,8 @@ msgstr ""
|
|
710 |
|
711 |
#: includes/class-wcj-currencies.php:24
|
712 |
msgid ""
|
713 |
-
"Add all world currencies to your WooCommerce store;
|
|
|
714 |
msgstr ""
|
715 |
|
716 |
#: includes/class-wcj-currencies.php:69
|
@@ -729,6 +704,16 @@ msgstr ""
|
|
729 |
msgid "Automatic currency exchange rates for WooCommerce."
|
730 |
msgstr ""
|
731 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
732 |
#: includes/class-wcj-currency-external-products.php:23
|
733 |
msgid "Currency for External Products"
|
734 |
msgstr ""
|
@@ -737,29 +722,29 @@ msgstr ""
|
|
737 |
msgid "Set different currency for external WooCommerce products."
|
738 |
msgstr ""
|
739 |
|
740 |
-
#: includes/class-wcj-currency-per-product.php:
|
741 |
msgid "Currency per Product"
|
742 |
msgstr ""
|
743 |
|
744 |
-
#: includes/class-wcj-currency-per-product.php:
|
745 |
msgid "Display prices for WooCommerce products in different currencies."
|
746 |
msgstr ""
|
747 |
|
748 |
-
#: includes/class-wcj-currency-per-product.php:
|
749 |
#: includes/settings/wcj-settings-currency-per-product.php:43
|
750 |
msgid ""
|
751 |
"Only one product can be added to the cart. Clear the cart or finish the "
|
752 |
"order, before adding another product to the cart."
|
753 |
msgstr ""
|
754 |
|
755 |
-
#: includes/class-wcj-currency-per-product.php:
|
756 |
#: includes/settings/wcj-settings-currency-per-product.php:50
|
757 |
msgid ""
|
758 |
"Only products with same currency can be added to the cart. Clear the cart or "
|
759 |
"finish the order, before adding products with another currency to the cart."
|
760 |
msgstr ""
|
761 |
|
762 |
-
#: includes/class-wcj-currency-per-product.php:
|
763 |
#, php-format
|
764 |
msgctxt "Price range: from-to"
|
765 |
msgid "%1$s–%2$s"
|
@@ -915,6 +900,7 @@ msgstr ""
|
|
915 |
#: includes/class-wcj-emails.php:58 includes/class-wcj-emails.php:76
|
916 |
#: includes/emails/class-wc-email-wcj-custom.php:30
|
917 |
#: includes/settings/wcj-settings-emails.php:37
|
|
|
918 |
#: includes/settings/wcj-settings-shipping.php:63
|
919 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:46
|
920 |
msgid "Custom"
|
@@ -926,7 +912,7 @@ msgid "Booster: Send Email: %s"
|
|
926 |
msgstr ""
|
927 |
|
928 |
#: includes/class-wcj-empty-cart-button.php:25
|
929 |
-
#: includes/shortcodes/class-wcj-general
|
930 |
msgid "Empty Cart Button"
|
931 |
msgstr ""
|
932 |
|
@@ -996,7 +982,7 @@ msgid "<strong>EU VAT Number</strong> is not valid."
|
|
996 |
msgstr ""
|
997 |
|
998 |
#: includes/class-wcj-export-import.php:26
|
999 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
1000 |
msgid "Export"
|
1001 |
msgstr ""
|
1002 |
|
@@ -1058,8 +1044,8 @@ msgid "Filter by Product Title"
|
|
1058 |
msgstr ""
|
1059 |
|
1060 |
#: includes/class-wcj-export-import.php:214
|
1061 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
1062 |
-
#: includes/settings/wcj-settings-orders.php:
|
1063 |
msgid "Filter"
|
1064 |
msgstr ""
|
1065 |
|
@@ -1153,7 +1139,7 @@ msgstr ""
|
|
1153 |
|
1154 |
#: includes/class-wcj-general.php:197 includes/class-wcj-general.php:210
|
1155 |
#: includes/class-wcj-sku.php:333
|
1156 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
1157 |
#: includes/settings/wcj-settings-order-numbers.php:123
|
1158 |
#: includes/settings/wcj-settings-product-by-user.php:161
|
1159 |
#: includes/settings/wcj-settings-related-products.php:30
|
@@ -1181,7 +1167,7 @@ msgstr ""
|
|
1181 |
#: includes/class-wcj-product-by-user.php:206
|
1182 |
#: includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php:138
|
1183 |
#: includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php:303
|
1184 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
1185 |
#: includes/tools/class-wcj-order-statuses-tool.php:157
|
1186 |
msgid "Delete"
|
1187 |
msgstr ""
|
@@ -1195,9 +1181,11 @@ msgid "Add New Role"
|
|
1195 |
msgstr ""
|
1196 |
|
1197 |
#: includes/class-wcj-general.php:215
|
|
|
1198 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:22
|
1199 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:29
|
1200 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:55
|
|
|
1201 |
#: includes/settings/wcj-settings-email-options.php:20
|
1202 |
#: includes/settings/wcj-settings-eu-vat-number.php:157
|
1203 |
#: includes/settings/wcj-settings-eu-vat-number.php:193
|
@@ -1205,20 +1193,20 @@ msgstr ""
|
|
1205 |
#: includes/settings/wcj-settings-order-custom-statuses.php:29
|
1206 |
#: includes/settings/wcj-settings-order-custom-statuses.php:37
|
1207 |
#: includes/settings/wcj-settings-order-custom-statuses.php:70
|
1208 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
1209 |
-
#: includes/settings/wcj-settings-orders.php:
|
1210 |
-
#: includes/settings/wcj-settings-orders.php:217
|
1211 |
#: includes/settings/wcj-settings-pdf-invoicing-display.php:151
|
1212 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
1213 |
#: includes/settings/wcj-settings-product-by-country.php:110
|
1214 |
#: includes/settings/wcj-settings-product-by-user.php:114
|
|
|
1215 |
#: includes/settings/wcj-settings-purchase-data.php:134
|
1216 |
#: includes/settings/wcj-settings-purchase-data.php:143
|
1217 |
#: includes/settings/wcj-settings-purchase-data.php:162
|
1218 |
#: includes/settings/wcj-settings-purchase-data.php:169
|
1219 |
#: includes/settings/wcj-settings-sku.php:181
|
1220 |
#: includes/settings/wcj-settings-sku.php:197
|
1221 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
1222 |
#: includes/tools/class-wcj-order-statuses-tool.php:228
|
1223 |
msgid "Add"
|
1224 |
msgstr ""
|
@@ -1227,7 +1215,7 @@ msgstr ""
|
|
1227 |
#: includes/class-wcj-product-bulk-meta-editor.php:339
|
1228 |
#: includes/class-wcj-product-bulk-price-converter.php:148
|
1229 |
#: includes/class-wcj-sku.php:334
|
1230 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
1231 |
#: includes/reports/wcj-class-reports-stock.php:253
|
1232 |
msgid "Product"
|
1233 |
msgstr ""
|
@@ -1242,7 +1230,7 @@ msgid "Total Products:"
|
|
1242 |
msgstr ""
|
1243 |
|
1244 |
#: includes/class-wcj-global-discount.php:27
|
1245 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
1246 |
msgid "Global Discount"
|
1247 |
msgstr ""
|
1248 |
|
@@ -1261,7 +1249,7 @@ msgstr ""
|
|
1261 |
#: includes/class-wcj-left-to-free-shipping.php:62
|
1262 |
#: includes/class-wcj-left-to-free-shipping.php:72
|
1263 |
#: includes/class-wcj-left-to-free-shipping.php:82
|
1264 |
-
#: includes/functions/wcj-functions-general.php:
|
1265 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:37
|
1266 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:72
|
1267 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:111
|
@@ -1332,7 +1320,7 @@ msgstr ""
|
|
1332 |
#: includes/functions/wcj-functions-html.php:95
|
1333 |
#: includes/reports/wcj-class-reports-monthly-sales.php:341
|
1334 |
#: includes/settings/wcj-settings-empty-cart.php:80
|
1335 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
1336 |
#: includes/tools/class-wcj-order-statuses-tool.php:157
|
1337 |
#: includes/tools/class-wcj-order-statuses-tool.php:261
|
1338 |
msgid "Are you sure?"
|
@@ -1668,49 +1656,23 @@ msgid ""
|
|
1668 |
"Your current item quantity is %item_quantity%."
|
1669 |
msgstr ""
|
1670 |
|
1671 |
-
#: includes/class-wcj-orders.php:
|
1672 |
msgid ""
|
1673 |
-
"
|
1674 |
-
"
|
1675 |
msgstr ""
|
1676 |
|
1677 |
-
#: includes/class-wcj-orders.php:
|
1678 |
msgid "Regenerate download permissions"
|
1679 |
msgstr ""
|
1680 |
|
1681 |
-
#: includes/class-wcj-orders.php:
|
1682 |
#, php-format
|
1683 |
msgid "Download permissions regenerated for %s order."
|
1684 |
msgid_plural "Download permissions regenerated for %s orders."
|
1685 |
msgstr[0] ""
|
1686 |
msgstr[1] ""
|
1687 |
|
1688 |
-
#: includes/class-wcj-orders.php:289
|
1689 |
-
msgid "Not Completed"
|
1690 |
-
msgstr ""
|
1691 |
-
|
1692 |
-
#: includes/class-wcj-orders.php:415
|
1693 |
-
#: includes/settings/wcj-settings-product-by-country.php:86
|
1694 |
-
msgid "All countries"
|
1695 |
-
msgstr ""
|
1696 |
-
|
1697 |
-
#: includes/class-wcj-orders.php:424
|
1698 |
-
msgid "All currencies"
|
1699 |
-
msgstr ""
|
1700 |
-
|
1701 |
-
#: includes/class-wcj-orders.php:464
|
1702 |
-
#: includes/export/class-wcj-fields-helper.php:44
|
1703 |
-
#: includes/export/class-wcj-fields-helper.php:129
|
1704 |
-
#: includes/export/class-wcj-fields-helper.php:214
|
1705 |
-
#: includes/settings/wcj-settings-orders.php:66
|
1706 |
-
msgid "Billing Country"
|
1707 |
-
msgstr ""
|
1708 |
-
|
1709 |
-
#: includes/class-wcj-orders.php:467
|
1710 |
-
#: includes/settings/wcj-settings-orders.php:73
|
1711 |
-
msgid "Currency Code"
|
1712 |
-
msgstr ""
|
1713 |
-
|
1714 |
#: includes/class-wcj-payment-gateways-by-country.php:24
|
1715 |
msgid "Gateways by Country or State"
|
1716 |
msgstr ""
|
@@ -1881,7 +1843,7 @@ msgid "Booster: ZipArchive error."
|
|
1881 |
msgstr ""
|
1882 |
|
1883 |
#: includes/class-wcj-pdf-invoicing.php:250
|
1884 |
-
#: includes/classes/class-wcj-pdf-invoice.php:
|
1885 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:230
|
1886 |
msgid "Unexpected error"
|
1887 |
msgstr ""
|
@@ -1957,7 +1919,7 @@ msgstr ""
|
|
1957 |
|
1958 |
#: includes/class-wcj-price-labels.php:40
|
1959 |
#: includes/class-wcj-product-info.php:254
|
1960 |
-
#: includes/class-wcj-shipping-options.php:
|
1961 |
#: includes/settings/wcj-settings-add-to-cart.php:52
|
1962 |
#: includes/settings/wcj-settings-address-formats.php:20
|
1963 |
#: includes/settings/wcj-settings-admin-bar.php:20
|
@@ -1969,11 +1931,11 @@ msgstr ""
|
|
1969 |
#: includes/settings/wcj-settings-admin-tools.php:74
|
1970 |
#: includes/settings/wcj-settings-admin-tools.php:81
|
1971 |
#: includes/settings/wcj-settings-breadcrumbs.php:20
|
1972 |
-
#: includes/settings/wcj-settings-call-for-price.php:
|
1973 |
#: includes/settings/wcj-settings-cart-customization.php:34
|
1974 |
#: includes/settings/wcj-settings-cart-customization.php:57
|
1975 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:107
|
1976 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
1977 |
#: includes/settings/wcj-settings-checkout-customization.php:78
|
1978 |
#: includes/settings/wcj-settings-checkout-files-upload.php:291
|
1979 |
#: includes/settings/wcj-settings-coupon-code-generator.php:32
|
@@ -1987,11 +1949,11 @@ msgstr ""
|
|
1987 |
#: includes/settings/wcj-settings-custom-css.php:34
|
1988 |
#: includes/settings/wcj-settings-emails-verification.php:28
|
1989 |
#: includes/settings/wcj-settings-emails-verification.php:36
|
1990 |
-
#: includes/settings/wcj-settings-general.php:
|
1991 |
-
#: includes/settings/wcj-settings-general.php:
|
1992 |
-
#: includes/settings/wcj-settings-general.php:
|
1993 |
-
#: includes/settings/wcj-settings-general.php:
|
1994 |
-
#: includes/settings/wcj-settings-general.php:
|
1995 |
#: includes/settings/wcj-settings-global-discount.php:52
|
1996 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:27
|
1997 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:60
|
@@ -2009,9 +1971,8 @@ msgstr ""
|
|
2009 |
#: includes/settings/wcj-settings-order-quantities.php:111
|
2010 |
#: includes/settings/wcj-settings-order-quantities.php:137
|
2011 |
#: includes/settings/wcj-settings-order-quantities.php:144
|
2012 |
-
#: includes/settings/wcj-settings-orders.php:
|
2013 |
-
#: includes/settings/wcj-settings-orders.php:
|
2014 |
-
#: includes/settings/wcj-settings-orders.php:184
|
2015 |
#: includes/settings/wcj-settings-pdf-invoicing-display.php:113
|
2016 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:23
|
2017 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:23
|
@@ -2031,11 +1992,12 @@ msgstr ""
|
|
2031 |
#: includes/settings/wcj-settings-product-add-to-cart.php:41
|
2032 |
#: includes/settings/wcj-settings-product-add-to-cart.php:80
|
2033 |
#: includes/settings/wcj-settings-product-add-to-cart.php:132
|
2034 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2035 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2036 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2037 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2038 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
|
|
2039 |
#: includes/settings/wcj-settings-product-addons.php:24
|
2040 |
#: includes/settings/wcj-settings-product-addons.php:43
|
2041 |
#: includes/settings/wcj-settings-product-addons.php:67
|
@@ -2053,11 +2015,14 @@ msgstr ""
|
|
2053 |
#: includes/settings/wcj-settings-product-by-user-role.php:29
|
2054 |
#: includes/settings/wcj-settings-product-by-user-role.php:37
|
2055 |
#: includes/settings/wcj-settings-product-by-user.php:107
|
|
|
|
|
|
|
2056 |
#: includes/settings/wcj-settings-product-info.php:35
|
2057 |
#: includes/settings/wcj-settings-product-info.php:68
|
2058 |
#: includes/settings/wcj-settings-product-input-fields.php:22
|
2059 |
#: includes/settings/wcj-settings-product-input-fields.php:52
|
2060 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
2061 |
#: includes/settings/wcj-settings-product-open-pricing.php:87
|
2062 |
#: includes/settings/wcj-settings-product-open-pricing.php:94
|
2063 |
#: includes/settings/wcj-settings-product-open-pricing.php:108
|
@@ -2065,7 +2030,7 @@ msgstr ""
|
|
2065 |
#: includes/settings/wcj-settings-product-tabs.php:23
|
2066 |
#: includes/settings/wcj-settings-product-tabs.php:212
|
2067 |
#: includes/settings/wcj-settings-product-tabs.php:220
|
2068 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
2069 |
#: includes/settings/wcj-settings-purchase-data.php:22
|
2070 |
#: includes/settings/wcj-settings-purchase-data.php:29
|
2071 |
#: includes/settings/wcj-settings-purchase-data.php:36
|
@@ -2081,7 +2046,7 @@ msgstr ""
|
|
2081 |
#: includes/settings/wcj-settings-shipping-calculator.php:27
|
2082 |
#: includes/settings/wcj-settings-shipping-calculator.php:34
|
2083 |
#: includes/settings/wcj-settings-shipping-calculator.php:41
|
2084 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
2085 |
#: includes/settings/wcj-settings-shipping.php:24
|
2086 |
#: includes/settings/wcj-settings-sku.php:50
|
2087 |
#: includes/settings/wcj-settings-sku.php:157
|
@@ -2097,6 +2062,7 @@ msgstr ""
|
|
2097 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-add-to-cart.php:92
|
2098 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:35
|
2099 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:17
|
|
|
2100 |
msgid "Enable"
|
2101 |
msgstr ""
|
2102 |
|
@@ -2169,26 +2135,26 @@ msgstr ""
|
|
2169 |
msgid "Customize Add to Cart messages."
|
2170 |
msgstr ""
|
2171 |
|
2172 |
-
#: includes/class-wcj-product-add-to-cart.php:
|
2173 |
#, php-format
|
2174 |
msgctxt "Item name in quotes"
|
2175 |
msgid "“%s”"
|
2176 |
msgstr ""
|
2177 |
|
2178 |
-
#: includes/class-wcj-product-add-to-cart.php:
|
2179 |
#, php-format
|
2180 |
msgid "%s has been added to your cart."
|
2181 |
msgid_plural "%s have been added to your cart."
|
2182 |
msgstr[0] ""
|
2183 |
msgstr[1] ""
|
2184 |
|
2185 |
-
#: includes/class-wcj-product-add-to-cart.php:
|
2186 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2187 |
msgid "Continue shopping"
|
2188 |
msgstr ""
|
2189 |
|
2190 |
-
#: includes/class-wcj-product-add-to-cart.php:
|
2191 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
2192 |
msgid "View cart"
|
2193 |
msgstr ""
|
2194 |
|
@@ -2200,11 +2166,11 @@ msgstr ""
|
|
2200 |
msgid "Add (paid/free/discount) addons to WooCommerce products."
|
2201 |
msgstr ""
|
2202 |
|
2203 |
-
#: includes/class-wcj-product-addons.php:
|
2204 |
msgid "Some of the required addons are not selected!"
|
2205 |
msgstr ""
|
2206 |
|
2207 |
-
#: includes/class-wcj-product-addons.php:
|
2208 |
msgid ""
|
2209 |
"Booster: Free plugin's version is limited to only three products with per "
|
2210 |
"product addons enabled at a time. You will need to get <a href=\"http://"
|
@@ -2328,12 +2294,12 @@ msgid ""
|
|
2328 |
msgstr ""
|
2329 |
|
2330 |
#: includes/class-wcj-product-bulk-meta-editor.php:294
|
|
|
|
|
2331 |
#: includes/settings/wcj-settings-export.php:91
|
2332 |
#: includes/settings/wcj-settings-export.php:162
|
2333 |
#: includes/settings/wcj-settings-export.php:241
|
2334 |
#: includes/settings/wcj-settings-global-discount.php:69
|
2335 |
-
#: includes/settings/wcj-settings-orders.php:110
|
2336 |
-
#: includes/settings/wcj-settings-product-listings.php:297
|
2337 |
msgid "Value"
|
2338 |
msgstr ""
|
2339 |
|
@@ -2437,7 +2403,7 @@ msgid "Products category"
|
|
2437 |
msgstr ""
|
2438 |
|
2439 |
#: includes/class-wcj-product-bulk-price-converter.php:260
|
2440 |
-
#: includes/shortcodes/class-wcj-products
|
2441 |
msgid "Any"
|
2442 |
msgstr ""
|
2443 |
|
@@ -2556,7 +2522,7 @@ msgstr ""
|
|
2556 |
|
2557 |
#: includes/class-wcj-product-by-user.php:154
|
2558 |
#: includes/class-wcj-product-by-user.php:163
|
2559 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
2560 |
msgid "Wrong user ID!"
|
2561 |
msgstr ""
|
2562 |
|
@@ -2567,7 +2533,7 @@ msgid "Status"
|
|
2567 |
msgstr ""
|
2568 |
|
2569 |
#: includes/class-wcj-product-by-user.php:197
|
2570 |
-
#: includes/class-wcj-product-tabs.php:
|
2571 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:66
|
2572 |
#: includes/input-fields/wcj-product-input-fields-options.php:51
|
2573 |
#: includes/settings/wcj-settings-export.php:75
|
@@ -2576,15 +2542,15 @@ msgstr ""
|
|
2576 |
#: includes/settings/wcj-settings-product-addons.php:86
|
2577 |
#: includes/settings/wcj-settings-product-by-user.php:167
|
2578 |
#: includes/settings/wcj-settings-product-tabs.php:52
|
2579 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2580 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2581 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2582 |
#: includes/settings/wcj-settings-purchase-data.php:66
|
2583 |
#: includes/settings/wcj-settings-related-products.php:24
|
2584 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:57
|
2585 |
#: includes/shipping/class-wc-shipping-wcj-custom-with-shipping-zones.php:157
|
2586 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:116
|
2587 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
2588 |
#: includes/widgets/class-wcj-widget-country-switcher.php:62
|
2589 |
#: includes/widgets/class-wcj-widget-left-to-free-shipping.php:52
|
2590 |
#: includes/widgets/class-wcj-widget-multicurrency.php:63
|
@@ -2593,15 +2559,15 @@ msgid "Title"
|
|
2593 |
msgstr ""
|
2594 |
|
2595 |
#: includes/class-wcj-product-by-user.php:205
|
2596 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
2597 |
#: includes/tools/class-wcj-order-statuses-tool.php:160
|
2598 |
#: includes/tools/class-wcj-order-statuses-tool.php:228
|
2599 |
msgid "Edit"
|
2600 |
msgstr ""
|
2601 |
|
2602 |
#: includes/class-wcj-product-custom-info.php:24
|
2603 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
2604 |
-
#: includes/functions/wcj-functions-general.php:
|
2605 |
msgid "Product Info"
|
2606 |
msgstr ""
|
2607 |
|
@@ -2610,17 +2576,39 @@ msgstr ""
|
|
2610 |
msgid "Add additional info to WooCommerce category and single product pages."
|
2611 |
msgstr ""
|
2612 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2613 |
#: includes/class-wcj-product-images.php:25
|
2614 |
msgid "Product Images"
|
2615 |
msgstr ""
|
2616 |
|
2617 |
#: includes/class-wcj-product-images.php:26
|
2618 |
-
msgid "Customize WooCommerce products images
|
2619 |
-
msgstr ""
|
2620 |
-
|
2621 |
-
#: includes/class-wcj-product-images.php:204
|
2622 |
-
#: includes/settings/wcj-settings-product-images.php:103
|
2623 |
-
msgid "Sale!"
|
2624 |
msgstr ""
|
2625 |
|
2626 |
#: includes/class-wcj-product-info.php:101
|
@@ -2687,9 +2675,9 @@ msgstr ""
|
|
2687 |
#: includes/settings/wcj-settings-product-info.php:61
|
2688 |
#: includes/settings/wcj-settings-product-info.php:94
|
2689 |
#: includes/settings/wcj-settings-product-tabs.php:66
|
2690 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2691 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2692 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2693 |
msgid "Priority (i.e. Order)"
|
2694 |
msgstr ""
|
2695 |
|
@@ -2711,7 +2699,7 @@ msgid "[wcj_product_total_sales before=\"Total sales: \"]"
|
|
2711 |
msgstr ""
|
2712 |
|
2713 |
#: includes/class-wcj-product-input-fields.php:24
|
2714 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
2715 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:123
|
2716 |
msgid "Product Input Fields"
|
2717 |
msgstr ""
|
@@ -2805,33 +2793,33 @@ msgid ""
|
|
2805 |
"remove WooCommerce default product tabs."
|
2806 |
msgstr ""
|
2807 |
|
2808 |
-
#: includes/class-wcj-product-tabs.php:
|
2809 |
msgid "Booster: Custom Tabs"
|
2810 |
msgstr ""
|
2811 |
|
2812 |
-
#: includes/class-wcj-product-tabs.php:
|
2813 |
msgid "Total number of custom tabs"
|
2814 |
msgstr ""
|
2815 |
|
2816 |
-
#: includes/class-wcj-product-tabs.php:
|
2817 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:149
|
2818 |
msgid "Click \"Update\" product after you change this number."
|
2819 |
msgstr ""
|
2820 |
|
2821 |
-
#: includes/class-wcj-product-tabs.php:
|
2822 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:108
|
2823 |
#: includes/settings/wcj-settings-product-tabs.php:59
|
2824 |
msgid "Key"
|
2825 |
msgstr ""
|
2826 |
|
2827 |
-
#: includes/class-wcj-product-tabs.php:
|
2828 |
#: includes/input-fields/wcj-product-input-fields-options.php:21
|
2829 |
#: includes/settings/wcj-settings-related-products.php:59
|
2830 |
#: includes/settings/wcj-settings-related-products.php:84
|
2831 |
msgid "Order"
|
2832 |
msgstr ""
|
2833 |
|
2834 |
-
#: includes/class-wcj-product-tabs.php:
|
2835 |
#: includes/settings/wcj-settings-cart.php:44
|
2836 |
#: includes/settings/wcj-settings-checkout-custom-info.php:40
|
2837 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:34
|
@@ -2844,28 +2832,28 @@ msgstr ""
|
|
2844 |
msgid "Content"
|
2845 |
msgstr ""
|
2846 |
|
2847 |
-
#: includes/class-wcj-product-tabs.php:
|
2848 |
#: includes/settings/wcj-settings-cart-customization.php:63
|
2849 |
#: includes/settings/wcj-settings-product-tabs.php:80
|
2850 |
msgid "Link"
|
2851 |
msgstr ""
|
2852 |
|
2853 |
-
#: includes/class-wcj-product-tabs.php:
|
2854 |
#: includes/settings/wcj-settings-product-tabs.php:81
|
2855 |
msgid ""
|
2856 |
"If you wish to forward tab to new link, enter it here. In this case content "
|
2857 |
"is ignored. Leave blank to show content."
|
2858 |
msgstr ""
|
2859 |
|
2860 |
-
#: includes/class-wcj-product-tabs.php:
|
2861 |
#: includes/settings/wcj-settings-product-tabs.php:88
|
2862 |
msgid "Link - Open in New Window"
|
2863 |
msgstr ""
|
2864 |
|
2865 |
-
#: includes/class-wcj-product-tabs.php:
|
2866 |
#: includes/input-fields/wcj-product-input-fields-options.php:95
|
2867 |
-
#: includes/settings/wcj-settings-
|
2868 |
-
#: includes/settings/wcj-settings-
|
2869 |
#: includes/settings/meta-box/wcj-settings-meta-box-custom-css.php:20
|
2870 |
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:20
|
2871 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:35
|
@@ -2884,14 +2872,15 @@ msgstr ""
|
|
2884 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:20
|
2885 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-price-by-formula.php:19
|
2886 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:23
|
|
|
2887 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:32
|
2888 |
#: includes/widgets/class-wcj-widget-country-switcher.php:82
|
2889 |
msgid "No"
|
2890 |
msgstr ""
|
2891 |
|
2892 |
-
#: includes/class-wcj-product-tabs.php:
|
2893 |
#: includes/input-fields/wcj-product-input-fields-options.php:88
|
2894 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
2895 |
#: includes/settings/wcj-settings-eu-vat-number.php:50
|
2896 |
#: includes/settings/wcj-settings-eu-vat-number.php:57
|
2897 |
#: includes/settings/wcj-settings-eu-vat-number.php:75
|
@@ -2916,23 +2905,25 @@ msgstr ""
|
|
2916 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:19
|
2917 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-price-by-formula.php:18
|
2918 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:24
|
|
|
2919 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:31
|
2920 |
#: includes/widgets/class-wcj-widget-country-switcher.php:83
|
2921 |
msgid "Yes"
|
2922 |
msgstr ""
|
2923 |
|
2924 |
-
#: includes/class-wcj-product-tabs.php:
|
2925 |
#: includes/settings/wcj-settings-checkout-core-fields.php:61
|
2926 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:141
|
|
|
2927 |
#: includes/settings/wcj-settings-product-add-to-cart.php:64
|
2928 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-by-date.php:19
|
2929 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-by-time.php:19
|
2930 |
msgid "Disabled"
|
2931 |
msgstr ""
|
2932 |
|
2933 |
-
#: includes/class-wcj-product-tabs.php:
|
2934 |
#: includes/settings/wcj-settings-product-tabs.php:51
|
2935 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
2936 |
msgid "Custom Product Tab"
|
2937 |
msgstr ""
|
2938 |
|
@@ -2952,11 +2943,11 @@ msgid ""
|
|
2952 |
msgstr ""
|
2953 |
|
2954 |
#: includes/class-wcj-products-xml.php:26
|
2955 |
-
msgid "Products XML"
|
2956 |
msgstr ""
|
2957 |
|
2958 |
#: includes/class-wcj-products-xml.php:27
|
2959 |
-
msgid "WooCommerce products XML
|
2960 |
msgstr ""
|
2961 |
|
2962 |
#: includes/class-wcj-products-xml.php:94
|
@@ -3006,7 +2997,7 @@ msgid "Booster: Product cost (destination)"
|
|
3006 |
msgstr ""
|
3007 |
|
3008 |
#: includes/class-wcj-purchase-data.php:92
|
3009 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3010 |
msgid "Import"
|
3011 |
msgstr ""
|
3012 |
|
@@ -3046,7 +3037,7 @@ msgid "Report"
|
|
3046 |
msgstr ""
|
3047 |
|
3048 |
#: includes/class-wcj-related-products.php:38
|
3049 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3050 |
#: includes/settings/wcj-settings-free-price.php:20
|
3051 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:28
|
3052 |
msgid "Related Products"
|
@@ -3076,46 +3067,62 @@ msgstr ""
|
|
3076 |
msgid "Booster: More Ranges - Months"
|
3077 |
msgstr ""
|
3078 |
|
3079 |
-
#: includes/class-wcj-reports.php:74 includes/class-wcj-reports.php:
|
3080 |
msgid "Select Range"
|
3081 |
msgstr ""
|
3082 |
|
3083 |
-
#: includes/class-wcj-reports.php:
|
3084 |
msgid "Booster: More Ranges"
|
3085 |
msgstr ""
|
3086 |
|
3087 |
-
#: includes/class-wcj-reports.php:
|
3088 |
msgid "Booster: Product Sales (Daily)"
|
3089 |
msgstr ""
|
3090 |
|
3091 |
-
#: includes/class-wcj-reports.php:
|
3092 |
msgid "Booster: Product Sales (Monthly)"
|
3093 |
msgstr ""
|
3094 |
|
3095 |
-
#: includes/class-wcj-reports.php:
|
3096 |
msgid "Booster: Monthly Sales (with Currency Conversion)"
|
3097 |
msgstr ""
|
3098 |
|
3099 |
-
#: includes/class-wcj-reports.php:
|
3100 |
msgid "Booster: All in stock"
|
3101 |
msgstr ""
|
3102 |
|
3103 |
-
#: includes/class-wcj-reports.php:
|
3104 |
msgid "Booster: Understocked"
|
3105 |
msgstr ""
|
3106 |
|
3107 |
-
#: includes/class-wcj-reports.php:
|
3108 |
msgid "Booster: Overstocked"
|
3109 |
msgstr ""
|
3110 |
|
3111 |
-
#: includes/class-wcj-reports.php:
|
3112 |
msgid "Booster: Customers by Country"
|
3113 |
msgstr ""
|
3114 |
|
3115 |
-
#: includes/class-wcj-reports.php:
|
3116 |
msgid "Booster: Customers by Country Sets"
|
3117 |
msgstr ""
|
3118 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3119 |
#: includes/class-wcj-shipping-by-order-amount.php:26
|
3120 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:14
|
3121 |
msgid "Shipping Methods by Min/Max Order Amount"
|
@@ -3128,7 +3135,7 @@ msgid ""
|
|
3128 |
msgstr ""
|
3129 |
|
3130 |
#: includes/class-wcj-shipping-by-products.php:26
|
3131 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
3132 |
msgid "Shipping Methods by Products"
|
3133 |
msgstr ""
|
3134 |
|
@@ -3143,7 +3150,7 @@ msgid "Shipping methods by <strong>products</strong>."
|
|
3143 |
msgstr ""
|
3144 |
|
3145 |
#: includes/class-wcj-shipping-by-products.php:36
|
3146 |
-
#: includes/settings/wcj-settings-currency-per-product.php:
|
3147 |
msgid "Product Categories"
|
3148 |
msgstr ""
|
3149 |
|
@@ -3152,7 +3159,7 @@ msgid "Shipping methods by <strong>products categories</strong>."
|
|
3152 |
msgstr ""
|
3153 |
|
3154 |
#: includes/class-wcj-shipping-by-products.php:40
|
3155 |
-
#: includes/settings/wcj-settings-currency-per-product.php:
|
3156 |
msgid "Product Tags"
|
3157 |
msgstr ""
|
3158 |
|
@@ -3185,13 +3192,13 @@ msgid ""
|
|
3185 |
msgstr ""
|
3186 |
|
3187 |
#: includes/class-wcj-shipping-by-user-role.php:31
|
3188 |
-
#: includes/settings/wcj-settings-
|
3189 |
msgid "User Roles"
|
3190 |
msgstr ""
|
3191 |
|
3192 |
#: includes/class-wcj-shipping-by-user-role.php:33
|
3193 |
-
#: includes/settings/wcj-settings-multicurrency.php:
|
3194 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
3195 |
#: includes/settings/wcj-settings-price-by-user-role.php:82
|
3196 |
#, php-format
|
3197 |
msgid ""
|
@@ -3238,28 +3245,28 @@ msgstr ""
|
|
3238 |
msgid "Grant free shipping on per product basis."
|
3239 |
msgstr ""
|
3240 |
|
3241 |
-
#: includes/class-wcj-shipping-options.php:
|
3242 |
msgid "Booster: Hide when free is available"
|
3243 |
msgstr ""
|
3244 |
|
3245 |
-
#: includes/class-wcj-shipping-options.php:
|
3246 |
#: includes/settings/wcj-settings-shipping-options.php:28
|
3247 |
msgid ""
|
3248 |
"Available options: hide all; hide all except \"Local Pickup\"; hide \"Flat "
|
3249 |
"Rate\" only."
|
3250 |
msgstr ""
|
3251 |
|
3252 |
-
#: includes/class-wcj-shipping-options.php:
|
3253 |
#: includes/settings/wcj-settings-shipping-options.php:32
|
3254 |
msgid "Hide all"
|
3255 |
msgstr ""
|
3256 |
|
3257 |
-
#: includes/class-wcj-shipping-options.php:
|
3258 |
#: includes/settings/wcj-settings-shipping-options.php:33
|
3259 |
msgid "Hide all except \"Local Pickup\""
|
3260 |
msgstr ""
|
3261 |
|
3262 |
-
#: includes/class-wcj-shipping-options.php:
|
3263 |
#: includes/settings/wcj-settings-shipping-options.php:34
|
3264 |
msgid "Hide \"Flat Rate\" only"
|
3265 |
msgstr ""
|
@@ -3347,6 +3354,14 @@ msgstr ""
|
|
3347 |
msgid "WooCommerce products stock management."
|
3348 |
msgstr ""
|
3349 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3350 |
#: includes/class-wcj-track-users.php:26
|
3351 |
msgid "User Tracking"
|
3352 |
msgstr ""
|
@@ -3372,7 +3387,7 @@ msgid "Other"
|
|
3372 |
msgstr ""
|
3373 |
|
3374 |
#: includes/class-wcj-track-users.php:159
|
3375 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3376 |
msgid "URL:"
|
3377 |
msgstr ""
|
3378 |
|
@@ -3476,93 +3491,107 @@ msgid ""
|
|
3476 |
"can be moved to paid plugin version."
|
3477 |
msgstr ""
|
3478 |
|
3479 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3480 |
msgid ""
|
3481 |
"This section lets you export, import or reset all Booster's modules settings."
|
3482 |
msgstr ""
|
3483 |
|
3484 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3485 |
msgid "Export all Booster's options to a file."
|
3486 |
msgstr ""
|
3487 |
|
3488 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3489 |
msgid "Import all Booster's options from a file."
|
3490 |
msgstr ""
|
3491 |
|
3492 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3493 |
msgid ""
|
3494 |
"This will reset settings to defaults for all Booster modules. Are you sure?"
|
3495 |
msgstr ""
|
3496 |
|
3497 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3498 |
msgid "Reset"
|
3499 |
msgstr ""
|
3500 |
|
3501 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3502 |
msgid "Reset all Booster's options."
|
3503 |
msgstr ""
|
3504 |
|
3505 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3506 |
msgid "Version"
|
3507 |
msgstr ""
|
3508 |
|
3509 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3510 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3511 |
msgid "Select All"
|
3512 |
msgstr ""
|
3513 |
|
3514 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3515 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3516 |
#: includes/admin/class-wcj-tools.php:72
|
3517 |
msgid "Module"
|
3518 |
msgstr ""
|
3519 |
|
3520 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3521 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3522 |
#: includes/admin/class-wcj-tools.php:73
|
3523 |
#: includes/export/class-wcj-fields-helper.php:293
|
3524 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:74
|
3525 |
#: includes/settings/wcj-settings-eu-vat-number.php:34
|
3526 |
#: includes/settings/wcj-settings-product-by-user.php:13
|
3527 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
3528 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
3529 |
msgid "Description"
|
3530 |
msgstr ""
|
3531 |
|
3532 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3533 |
msgid "No active modules found."
|
3534 |
msgstr ""
|
3535 |
|
3536 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3537 |
msgid "Total Modules:"
|
3538 |
msgstr ""
|
3539 |
|
3540 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3541 |
msgid "Autoload Booster's Options"
|
3542 |
msgstr ""
|
3543 |
|
3544 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3545 |
msgid ""
|
3546 |
"Choose if you want Booster's options to be autoloaded when calling "
|
3547 |
"add_option. After saving this option, you need to Reset all Booster's "
|
3548 |
"settings. Leave default value (i.e. Enabled) if not sure."
|
3549 |
msgstr ""
|
3550 |
|
3551 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3552 |
msgid "Use List Instead of Comma Separated Text for Products in Settings"
|
3553 |
msgstr ""
|
3554 |
|
3555 |
-
#: includes/admin/class-wc-settings-jetpack.php:
|
3556 |
#, php-format
|
3557 |
msgid "Supported modules: %s."
|
3558 |
msgstr ""
|
3559 |
|
3560 |
-
#: includes/admin/class-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3561 |
#: includes/settings/wcj-settings-wpml.php:21
|
3562 |
msgid "To use tools, module must be enabled."
|
3563 |
msgstr ""
|
3564 |
|
3565 |
-
#: includes/admin/class-wcj-settings-custom-fields.php:
|
3566 |
msgid "Save changes"
|
3567 |
msgstr ""
|
3568 |
|
@@ -3575,14 +3604,14 @@ msgstr ""
|
|
3575 |
msgid "Wrong file format!"
|
3576 |
msgstr ""
|
3577 |
|
3578 |
-
#: includes/admin/class-wcj-settings-manager.php:
|
3579 |
#, php-format
|
3580 |
msgid "%d options successfully imported."
|
3581 |
msgstr ""
|
3582 |
|
3583 |
-
#: includes/admin/class-wcj-settings-manager.php:
|
3584 |
#, php-format
|
3585 |
-
msgid "%d options successfully deleted."
|
3586 |
msgstr ""
|
3587 |
|
3588 |
#: includes/admin/class-wcj-tools.php:32
|
@@ -3613,7 +3642,7 @@ msgstr ""
|
|
3613 |
msgid "Tool"
|
3614 |
msgstr ""
|
3615 |
|
3616 |
-
#: includes/admin/wcj-modules-cats.php:
|
3617 |
msgid ""
|
3618 |
"This dashboard lets you enable/disable any Booster's module. Each checkbox "
|
3619 |
"comes with short module's description. Please visit <a href=\"http://booster."
|
@@ -3621,41 +3650,41 @@ msgid ""
|
|
3621 |
"feature."
|
3622 |
msgstr ""
|
3623 |
|
3624 |
-
#: includes/admin/wcj-modules-cats.php:
|
3625 |
msgid "Prices & Currencies"
|
3626 |
msgstr ""
|
3627 |
|
3628 |
-
#: includes/admin/wcj-modules-cats.php:
|
3629 |
msgid ""
|
3630 |
"Multicurrency, Price Converter, Wholesale Pricing, Name You Price, Price by "
|
3631 |
"User Role and more."
|
3632 |
msgstr ""
|
3633 |
|
3634 |
-
#: includes/admin/wcj-modules-cats.php:
|
3635 |
msgid "Button & Price Labels"
|
3636 |
msgstr ""
|
3637 |
|
3638 |
-
#: includes/admin/wcj-modules-cats.php:
|
3639 |
msgid "Add to Cart Labels, Call for Price, Custom Price Labels and more."
|
3640 |
msgstr ""
|
3641 |
|
3642 |
-
#: includes/admin/wcj-modules-cats.php:
|
3643 |
msgid ""
|
3644 |
"Bookings, Crowdfunding Products, Product Addons and Input Fields, Product "
|
3645 |
"Listings, Product Tabs and more."
|
3646 |
msgstr ""
|
3647 |
|
3648 |
-
#: includes/admin/wcj-modules-cats.php:
|
3649 |
msgid "Cart & Checkout"
|
3650 |
msgstr ""
|
3651 |
|
3652 |
-
#: includes/admin/wcj-modules-cats.php:
|
3653 |
msgid ""
|
3654 |
"Cart and Checkout Customization, Empty Cart Button, Mini Cart, Coupons and "
|
3655 |
"more."
|
3656 |
msgstr ""
|
3657 |
|
3658 |
-
#: includes/admin/wcj-modules-cats.php:
|
3659 |
#: includes/settings/wcj-settings-payment-gateways-by-country.php:14
|
3660 |
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:14
|
3661 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:21
|
@@ -3664,35 +3693,35 @@ msgstr ""
|
|
3664 |
msgid "Payment Gateways"
|
3665 |
msgstr ""
|
3666 |
|
3667 |
-
#: includes/admin/wcj-modules-cats.php:
|
3668 |
msgid ""
|
3669 |
"Custom Payment Gateways, Gateways Currency, Gateways Fees and Discounts and "
|
3670 |
"more."
|
3671 |
msgstr ""
|
3672 |
|
3673 |
-
#: includes/admin/wcj-modules-cats.php:
|
3674 |
msgid "Shipping & Orders"
|
3675 |
msgstr ""
|
3676 |
|
3677 |
-
#: includes/admin/wcj-modules-cats.php:
|
3678 |
msgid ""
|
3679 |
"Order Custom Statuses, Order Minimum Amount, Order Numbers, Custom Shipping "
|
3680 |
"Methods and more."
|
3681 |
msgstr ""
|
3682 |
|
3683 |
-
#: includes/admin/wcj-modules-cats.php:
|
3684 |
msgid "PDF Invoicing & Packing Slips"
|
3685 |
msgstr ""
|
3686 |
|
3687 |
-
#: includes/admin/wcj-modules-cats.php:
|
3688 |
msgid "PDF Documents"
|
3689 |
msgstr ""
|
3690 |
|
3691 |
-
#: includes/admin/wcj-modules-cats.php:
|
3692 |
msgid "Emails & Misc."
|
3693 |
msgstr ""
|
3694 |
|
3695 |
-
#: includes/admin/wcj-modules-cats.php:
|
3696 |
msgid "Emails, Reports, Export, Admin Tools, General Options and more."
|
3697 |
msgstr ""
|
3698 |
|
@@ -3760,16 +3789,58 @@ msgstr ""
|
|
3760 |
msgid "Enable Module"
|
3761 |
msgstr ""
|
3762 |
|
3763 |
-
#: includes/classes/class-wcj-pdf-invoice.php:
|
3764 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:55
|
3765 |
msgid "Company Name"
|
3766 |
msgstr ""
|
3767 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3768 |
#: includes/classes/class-wcj-tcpdf.php:34
|
3769 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:31
|
3770 |
msgid "Page %page_number% / %total_pages%"
|
3771 |
msgstr ""
|
3772 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3773 |
#: includes/emails/class-wc-email-wcj-custom.php:31
|
3774 |
msgid ""
|
3775 |
"Custom emails are sent to the recipient list when selected triggers are "
|
@@ -3784,39 +3855,39 @@ msgstr ""
|
|
3784 |
msgid "[{site_title}] Custom Subject - Order ({order_number}) - {order_date}"
|
3785 |
msgstr ""
|
3786 |
|
3787 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3788 |
#, php-format
|
3789 |
msgid "New order (%s)"
|
3790 |
msgstr ""
|
3791 |
|
3792 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3793 |
#, php-format
|
3794 |
msgid "Order status updated to %s"
|
3795 |
msgstr ""
|
3796 |
|
3797 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3798 |
#, php-format
|
3799 |
msgid "Order status %s to %s"
|
3800 |
msgstr ""
|
3801 |
|
3802 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3803 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:59
|
|
|
|
|
3804 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:106
|
3805 |
-
#: includes/settings/wcj-settings-product-listings.php:259
|
3806 |
-
#: includes/settings/wcj-settings-product-listings.php:317
|
3807 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:110
|
3808 |
msgid "Enable/Disable"
|
3809 |
msgstr ""
|
3810 |
|
3811 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3812 |
msgid "Enable this email notification"
|
3813 |
msgstr ""
|
3814 |
|
3815 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3816 |
msgid "Trigger(s)"
|
3817 |
msgstr ""
|
3818 |
|
3819 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3820 |
msgid ""
|
3821 |
"Please note, that all new orders in WooCommerce by default are created with "
|
3822 |
"Pending Payment status. If you want to change the default order status - you "
|
@@ -3824,133 +3895,133 @@ msgid ""
|
|
3824 |
"Settings > Booster > Shipping & Orders > Order Custom Statuses)."
|
3825 |
msgstr ""
|
3826 |
|
3827 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3828 |
msgid "New order (Any status)"
|
3829 |
msgstr ""
|
3830 |
|
3831 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3832 |
msgid "Reset password notification"
|
3833 |
msgstr ""
|
3834 |
|
3835 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3836 |
msgid "Order fully refunded notification"
|
3837 |
msgstr ""
|
3838 |
|
3839 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3840 |
msgid "Order partially refunded notification"
|
3841 |
msgstr ""
|
3842 |
|
3843 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3844 |
msgid "New customer note notification"
|
3845 |
msgstr ""
|
3846 |
|
3847 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3848 |
msgid "Low stock notification"
|
3849 |
msgstr ""
|
3850 |
|
3851 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3852 |
msgid "No stock notification"
|
3853 |
msgstr ""
|
3854 |
|
3855 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3856 |
msgid "Product on backorder notification"
|
3857 |
msgstr ""
|
3858 |
|
3859 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3860 |
msgid "Created customer notification"
|
3861 |
msgstr ""
|
3862 |
|
3863 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3864 |
msgid "Recipient(s)"
|
3865 |
msgstr ""
|
3866 |
|
3867 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3868 |
#, php-format
|
3869 |
msgid ""
|
3870 |
"Enter recipients (comma separated) for this email. Defaults to <code>%s</"
|
3871 |
"code>."
|
3872 |
msgstr ""
|
3873 |
|
3874 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3875 |
msgid "Or enter <code>%customer%</code> to send to customer billing email."
|
3876 |
msgstr ""
|
3877 |
|
3878 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3879 |
msgid "Subject"
|
3880 |
msgstr ""
|
3881 |
|
3882 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3883 |
#, php-format
|
3884 |
msgid ""
|
3885 |
"This controls the email subject line. Leave blank to use the default "
|
3886 |
"subject: <code>%s</code>."
|
3887 |
msgstr ""
|
3888 |
|
3889 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3890 |
msgid "Email type"
|
3891 |
msgstr ""
|
3892 |
|
3893 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3894 |
msgid "Choose which format of email to send."
|
3895 |
msgstr ""
|
3896 |
|
3897 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3898 |
msgid "Wrap in WC Email Template"
|
3899 |
msgstr ""
|
3900 |
|
3901 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3902 |
msgid ""
|
3903 |
"WC Email Heading. Used only if \"Wrap in WC Email Template\" is enabled and "
|
3904 |
"only for HTML templates."
|
3905 |
msgstr ""
|
3906 |
|
3907 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3908 |
#, php-format
|
3909 |
msgid ""
|
3910 |
"This controls the main heading contained within the email notification. "
|
3911 |
"Leave blank to use the default heading: <code>%s</code>."
|
3912 |
msgstr ""
|
3913 |
|
3914 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3915 |
msgid "HTML template"
|
3916 |
msgstr ""
|
3917 |
|
3918 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3919 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3920 |
msgid "You can use shortcodes here. E.g. Booster's order shortcodes."
|
3921 |
msgstr ""
|
3922 |
|
3923 |
-
#: includes/emails/class-wc-email-wcj-custom.php:
|
3924 |
msgid "Plain text template"
|
3925 |
msgstr ""
|
3926 |
|
3927 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:22
|
3928 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:38
|
3929 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3930 |
msgid "Update Every Minute"
|
3931 |
msgstr ""
|
3932 |
|
3933 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:23
|
3934 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:39
|
3935 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3936 |
msgid "Update Hourly"
|
3937 |
msgstr ""
|
3938 |
|
3939 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:24
|
3940 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:40
|
3941 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3942 |
msgid "Update Twice Daily"
|
3943 |
msgstr ""
|
3944 |
|
3945 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:25
|
3946 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:41
|
3947 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3948 |
msgid "Update Daily"
|
3949 |
msgstr ""
|
3950 |
|
3951 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:26
|
3952 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:42
|
3953 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
3954 |
msgid "Update Weekly"
|
3955 |
msgstr ""
|
3956 |
|
@@ -3966,11 +4037,6 @@ msgstr ""
|
|
3966 |
msgid "Cron job: exchange rates update failed"
|
3967 |
msgstr ""
|
3968 |
|
3969 |
-
#: includes/exchange-rates/class-wcj-exchange-rates.php:129
|
3970 |
-
#, php-format
|
3971 |
-
msgid "Grab %s rate from %s"
|
3972 |
-
msgstr ""
|
3973 |
-
|
3974 |
#: includes/export/class-wcj-fields-helper.php:34
|
3975 |
msgid "Customer Nr."
|
3976 |
msgstr ""
|
@@ -4257,8 +4323,8 @@ msgstr ""
|
|
4257 |
#: includes/settings/wcj-settings-product-by-user.php:16
|
4258 |
#: includes/settings/meta-box/wcj-settings-meta-box-multicurrency.php:37
|
4259 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:55
|
4260 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4261 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4262 |
msgid "Regular Price"
|
4263 |
msgstr ""
|
4264 |
|
@@ -4267,8 +4333,8 @@ msgstr ""
|
|
4267 |
#: includes/settings/wcj-settings-product-by-user.php:17
|
4268 |
#: includes/settings/meta-box/wcj-settings-meta-box-multicurrency.php:46
|
4269 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:64
|
4270 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4271 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4272 |
msgid "Sale Price"
|
4273 |
msgstr ""
|
4274 |
|
@@ -4281,7 +4347,7 @@ msgstr ""
|
|
4281 |
#: includes/settings/wcj-settings-global-discount.php:58
|
4282 |
#: includes/settings/wcj-settings-product-addons.php:73
|
4283 |
#: includes/settings/wcj-settings-purchase-data.php:73
|
4284 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
4285 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:45
|
4286 |
#: includes/shipping/class-wc-shipping-wcj-custom-with-shipping-zones.php:164
|
4287 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:123
|
@@ -4290,14 +4356,14 @@ msgid "Type"
|
|
4290 |
msgstr ""
|
4291 |
|
4292 |
#: includes/export/class-wcj-fields-helper.php:291
|
4293 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
4294 |
msgid "Image URL"
|
4295 |
msgstr ""
|
4296 |
|
4297 |
#: includes/export/class-wcj-fields-helper.php:292
|
4298 |
#: includes/settings/wcj-settings-product-by-user.php:14
|
4299 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4300 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
4301 |
msgid "Short Description"
|
4302 |
msgstr ""
|
4303 |
|
@@ -4407,11 +4473,18 @@ msgstr ""
|
|
4407 |
msgid "Availability Class"
|
4408 |
msgstr ""
|
4409 |
|
4410 |
-
#: includes/functions/wcj-functions-admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4411 |
msgid "Enter comma separated list of IDs."
|
4412 |
msgstr ""
|
4413 |
|
4414 |
-
#: includes/functions/wcj-functions-admin.php:
|
4415 |
#: includes/settings/wcj-settings-emails-verification.php:59
|
4416 |
#: includes/settings/wcj-settings-emails-verification.php:67
|
4417 |
#: includes/settings/wcj-settings-emails-verification.php:107
|
@@ -4419,60 +4492,60 @@ msgstr ""
|
|
4419 |
msgid "Replaced value: %s"
|
4420 |
msgstr ""
|
4421 |
|
4422 |
-
#: includes/functions/wcj-functions-admin.php:
|
4423 |
#, php-format
|
4424 |
msgid "Replaced values: %s"
|
4425 |
msgstr ""
|
4426 |
|
4427 |
-
#: includes/functions/wcj-functions-admin.php:
|
4428 |
msgid "Install Booster Plus to unlock all features"
|
4429 |
msgstr ""
|
4430 |
|
4431 |
-
#: includes/functions/wcj-functions-admin.php:
|
4432 |
#, php-format
|
4433 |
msgid ""
|
4434 |
"Some settings fields are locked and you will need %s to modify all locked "
|
4435 |
"fields."
|
4436 |
msgstr ""
|
4437 |
|
4438 |
-
#: includes/functions/wcj-functions-admin.php:
|
4439 |
msgid "Buy now"
|
4440 |
msgstr ""
|
4441 |
|
4442 |
-
#: includes/functions/wcj-functions-admin.php:
|
4443 |
msgid "Visit Booster Site"
|
4444 |
msgstr ""
|
4445 |
|
4446 |
-
#: includes/functions/wcj-functions-admin.php:
|
4447 |
#, php-format
|
4448 |
msgid "Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change value."
|
4449 |
msgstr ""
|
4450 |
|
4451 |
-
#: includes/functions/wcj-functions-admin.php:
|
4452 |
#, php-format
|
4453 |
msgid ""
|
4454 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to enable \"%s\" "
|
4455 |
"option."
|
4456 |
msgstr ""
|
4457 |
|
4458 |
-
#: includes/functions/wcj-functions-admin.php:
|
4459 |
#, php-format
|
4460 |
msgid "Get Booster Plus to enable \"%s\" option."
|
4461 |
msgstr ""
|
4462 |
|
4463 |
-
#: includes/functions/wcj-functions-admin.php:
|
4464 |
#, php-format
|
4465 |
msgid ""
|
4466 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values below."
|
4467 |
msgstr ""
|
4468 |
|
4469 |
-
#: includes/functions/wcj-functions-admin.php:
|
4470 |
#, php-format
|
4471 |
msgid ""
|
4472 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values above."
|
4473 |
msgstr ""
|
4474 |
|
4475 |
-
#: includes/functions/wcj-functions-admin.php:
|
4476 |
msgid "Get Booster Plus to change value."
|
4477 |
msgstr ""
|
4478 |
|
@@ -5456,6 +5529,80 @@ msgstr ""
|
|
5456 |
msgid "European Union"
|
5457 |
msgstr ""
|
5458 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5459 |
#: includes/functions/wcj-functions-currencies.php:15
|
5460 |
msgid "United Arab Emirates Dirham"
|
5461 |
msgstr ""
|
@@ -5922,7 +6069,7 @@ msgid "Polish Zloty"
|
|
5922 |
msgstr ""
|
5923 |
|
5924 |
#: includes/functions/wcj-functions-currencies.php:131
|
5925 |
-
msgid "Paraguayan
|
5926 |
msgstr ""
|
5927 |
|
5928 |
#: includes/functions/wcj-functions-currencies.php:132
|
@@ -6105,116 +6252,232 @@ msgstr ""
|
|
6105 |
msgid "Zimbabwean dollar"
|
6106 |
msgstr ""
|
6107 |
|
6108 |
-
#: includes/functions/wcj-functions-currencies.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6109 |
msgid "Bitcoin"
|
6110 |
msgstr ""
|
6111 |
|
6112 |
-
#: includes/functions/wcj-functions-currencies.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6113 |
msgid "Ethereum"
|
6114 |
msgstr ""
|
6115 |
|
6116 |
-
#: includes/functions/wcj-functions-currencies.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6117 |
msgid "myCred"
|
6118 |
msgstr ""
|
6119 |
|
6120 |
-
#: includes/functions/wcj-functions-exchange-rates.php:
|
6121 |
msgid "Yahoo"
|
6122 |
msgstr ""
|
6123 |
|
6124 |
-
#: includes/functions/wcj-functions-exchange-rates.php:
|
6125 |
msgid "European Central Bank (ECB)"
|
6126 |
msgstr ""
|
6127 |
|
6128 |
-
#: includes/functions/wcj-functions-exchange-rates.php:
|
6129 |
msgid "TCMB"
|
6130 |
msgstr ""
|
6131 |
|
6132 |
-
#: includes/functions/wcj-functions-exchange-rates.php:
|
6133 |
msgid "Fixer.io"
|
6134 |
msgstr ""
|
6135 |
|
6136 |
-
#: includes/functions/wcj-functions-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6137 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:147
|
6138 |
msgid "You have Free delivery"
|
6139 |
msgstr ""
|
6140 |
|
6141 |
-
#: includes/functions/wcj-functions-general.php:
|
6142 |
msgid "Before cart"
|
6143 |
msgstr ""
|
6144 |
|
6145 |
-
#: includes/functions/wcj-functions-general.php:
|
6146 |
msgid "Before cart table"
|
6147 |
msgstr ""
|
6148 |
|
6149 |
-
#: includes/functions/wcj-functions-general.php:
|
6150 |
msgid "Before cart contents"
|
6151 |
msgstr ""
|
6152 |
|
6153 |
-
#: includes/functions/wcj-functions-general.php:
|
6154 |
msgid "Cart contents"
|
6155 |
msgstr ""
|
6156 |
|
6157 |
-
#: includes/functions/wcj-functions-general.php:
|
6158 |
msgid "Cart coupon"
|
6159 |
msgstr ""
|
6160 |
|
6161 |
-
#: includes/functions/wcj-functions-general.php:
|
6162 |
msgid "Cart actions"
|
6163 |
msgstr ""
|
6164 |
|
6165 |
-
#: includes/functions/wcj-functions-general.php:
|
6166 |
msgid "After cart contents"
|
6167 |
msgstr ""
|
6168 |
|
6169 |
-
#: includes/functions/wcj-functions-general.php:
|
6170 |
msgid "After cart table"
|
6171 |
msgstr ""
|
6172 |
|
6173 |
-
#: includes/functions/wcj-functions-general.php:
|
6174 |
msgid "Cart collaterals"
|
6175 |
msgstr ""
|
6176 |
|
6177 |
-
#: includes/functions/wcj-functions-general.php:
|
6178 |
msgid "After cart"
|
6179 |
msgstr ""
|
6180 |
|
6181 |
-
#: includes/functions/wcj-functions-general.php:
|
6182 |
msgid "Before cart totals"
|
6183 |
msgstr ""
|
6184 |
|
6185 |
-
#: includes/functions/wcj-functions-general.php:
|
6186 |
msgid "Cart totals: Before shipping"
|
6187 |
msgstr ""
|
6188 |
|
6189 |
-
#: includes/functions/wcj-functions-general.php:
|
6190 |
msgid "Cart totals: After shipping"
|
6191 |
msgstr ""
|
6192 |
|
6193 |
-
#: includes/functions/wcj-functions-general.php:
|
6194 |
msgid "Cart totals: Before order total"
|
6195 |
msgstr ""
|
6196 |
|
6197 |
-
#: includes/functions/wcj-functions-general.php:
|
6198 |
msgid "Cart totals: After order total"
|
6199 |
msgstr ""
|
6200 |
|
6201 |
-
#: includes/functions/wcj-functions-general.php:
|
6202 |
msgid "Proceed to checkout"
|
6203 |
msgstr ""
|
6204 |
|
6205 |
-
#: includes/functions/wcj-functions-general.php:
|
6206 |
msgid "After cart totals"
|
6207 |
msgstr ""
|
6208 |
|
6209 |
-
#: includes/functions/wcj-functions-general.php:
|
6210 |
msgid "Before shipping calculator"
|
6211 |
msgstr ""
|
6212 |
|
6213 |
-
#: includes/functions/wcj-functions-general.php:
|
6214 |
msgid "After shipping calculator"
|
6215 |
msgstr ""
|
6216 |
|
6217 |
-
#: includes/functions/wcj-functions-general.php:
|
6218 |
msgid "If cart is empty"
|
6219 |
msgstr ""
|
6220 |
|
@@ -6270,51 +6533,51 @@ msgstr ""
|
|
6270 |
msgid "Last Sale Order Status"
|
6271 |
msgstr ""
|
6272 |
|
6273 |
-
#: includes/functions/wcj-functions-reports.php:
|
6274 |
msgid "Last 14 days"
|
6275 |
msgstr ""
|
6276 |
|
6277 |
-
#: includes/functions/wcj-functions-reports.php:
|
6278 |
msgid "Last 30 days"
|
6279 |
msgstr ""
|
6280 |
|
6281 |
-
#: includes/functions/wcj-functions-reports.php:
|
6282 |
msgid "Last 3 months"
|
6283 |
msgstr ""
|
6284 |
|
6285 |
-
#: includes/functions/wcj-functions-reports.php:
|
6286 |
msgid "Last 6 months"
|
6287 |
msgstr ""
|
6288 |
|
6289 |
-
#: includes/functions/wcj-functions-reports.php:
|
6290 |
msgid "Last 12 months"
|
6291 |
msgstr ""
|
6292 |
|
6293 |
-
#: includes/functions/wcj-functions-reports.php:
|
6294 |
msgid "Last 24 months"
|
6295 |
msgstr ""
|
6296 |
|
6297 |
-
#: includes/functions/wcj-functions-reports.php:
|
6298 |
msgid "Last 36 months"
|
6299 |
msgstr ""
|
6300 |
|
6301 |
-
#: includes/functions/wcj-functions-reports.php:
|
6302 |
msgid "Same days last month"
|
6303 |
msgstr ""
|
6304 |
|
6305 |
-
#: includes/functions/wcj-functions-reports.php:
|
6306 |
msgid "Same days last year"
|
6307 |
msgstr ""
|
6308 |
|
6309 |
-
#: includes/functions/wcj-functions-reports.php:
|
6310 |
msgid "Last year"
|
6311 |
msgstr ""
|
6312 |
|
6313 |
-
#: includes/functions/wcj-functions-reports.php:
|
6314 |
msgid "Yesterday"
|
6315 |
msgstr ""
|
6316 |
|
6317 |
-
#: includes/functions/wcj-functions-reports.php:
|
6318 |
msgid "Today"
|
6319 |
msgstr ""
|
6320 |
|
@@ -6481,21 +6744,21 @@ msgstr ""
|
|
6481 |
msgid "File is too big!"
|
6482 |
msgstr ""
|
6483 |
|
6484 |
-
#: includes/input-fields/class-wcj-product-input-fields-core.php:
|
6485 |
msgid "Select a country…"
|
6486 |
msgstr ""
|
6487 |
|
6488 |
#: includes/input-fields/wcj-product-input-fields-options.php:15
|
|
|
|
|
6489 |
#: includes/settings/wcj-settings-checkout-core-fields.php:60
|
6490 |
#: includes/settings/wcj-settings-checkout-files-upload.php:39
|
6491 |
#: includes/settings/wcj-settings-export.php:70
|
6492 |
#: includes/settings/wcj-settings-export.php:138
|
6493 |
#: includes/settings/wcj-settings-export.php:220
|
6494 |
#: includes/settings/wcj-settings-global-discount.php:50
|
6495 |
-
#: includes/settings/wcj-settings-orders.php:96
|
6496 |
#: includes/settings/wcj-settings-product-by-user.php:149
|
6497 |
-
#: includes/settings/wcj-settings-
|
6498 |
-
#: includes/settings/wcj-settings-products-xml.php:71
|
6499 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:37
|
6500 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:21
|
6501 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-bookings.php:14
|
@@ -6617,12 +6880,12 @@ msgid "Checkbox: Default"
|
|
6617 |
msgstr ""
|
6618 |
|
6619 |
#: includes/input-fields/wcj-product-input-fields-options.php:104
|
6620 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6621 |
msgid "Not Checked"
|
6622 |
msgstr ""
|
6623 |
|
6624 |
#: includes/input-fields/wcj-product-input-fields-options.php:105
|
6625 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6626 |
#: includes/settings/wcj-settings-checkout-customization.php:26
|
6627 |
msgid "Checked"
|
6628 |
msgstr ""
|
@@ -6665,7 +6928,7 @@ msgid ""
|
|
6665 |
msgstr ""
|
6666 |
|
6667 |
#: includes/input-fields/wcj-product-input-fields-options.php:126
|
6668 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6669 |
msgid "Leave blank to use your current WordPress format"
|
6670 |
msgstr ""
|
6671 |
|
@@ -6717,37 +6980,37 @@ msgid "Datepicker/Weekpicker: First week day"
|
|
6717 |
msgstr ""
|
6718 |
|
6719 |
#: includes/input-fields/wcj-product-input-fields-options.php:167
|
6720 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6721 |
msgid "Sunday"
|
6722 |
msgstr ""
|
6723 |
|
6724 |
#: includes/input-fields/wcj-product-input-fields-options.php:168
|
6725 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6726 |
msgid "Monday"
|
6727 |
msgstr ""
|
6728 |
|
6729 |
#: includes/input-fields/wcj-product-input-fields-options.php:169
|
6730 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6731 |
msgid "Tuesday"
|
6732 |
msgstr ""
|
6733 |
|
6734 |
#: includes/input-fields/wcj-product-input-fields-options.php:170
|
6735 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6736 |
msgid "Wednesday"
|
6737 |
msgstr ""
|
6738 |
|
6739 |
#: includes/input-fields/wcj-product-input-fields-options.php:171
|
6740 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6741 |
msgid "Thursday"
|
6742 |
msgstr ""
|
6743 |
|
6744 |
#: includes/input-fields/wcj-product-input-fields-options.php:172
|
6745 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6746 |
msgid "Friday"
|
6747 |
msgstr ""
|
6748 |
|
6749 |
#: includes/input-fields/wcj-product-input-fields-options.php:173
|
6750 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6751 |
msgid "Saturday"
|
6752 |
msgstr ""
|
6753 |
|
@@ -6789,7 +7052,7 @@ msgid "If timepicker is selected, set interval (in minutes) here"
|
|
6789 |
msgstr ""
|
6790 |
|
6791 |
#: includes/input-fields/wcj-product-input-fields-options.php:200
|
6792 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6793 |
msgid "Timepicker: Interval"
|
6794 |
msgstr ""
|
6795 |
|
@@ -6798,7 +7061,7 @@ msgid "If select/radio is selected, set options here. One option per line"
|
|
6798 |
msgstr ""
|
6799 |
|
6800 |
#: includes/input-fields/wcj-product-input-fields-options.php:207
|
6801 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
6802 |
msgid "Select/Radio: Options"
|
6803 |
msgstr ""
|
6804 |
|
@@ -7028,7 +7291,7 @@ msgid "Country Groups Generated."
|
|
7028 |
msgstr ""
|
7029 |
|
7030 |
#: includes/price-by-country/class-wcj-price-by-country-local.php:140
|
7031 |
-
#: includes/settings/wcj-settings-price-by-country.php:
|
7032 |
msgid "Make empty price"
|
7033 |
msgstr ""
|
7034 |
|
@@ -7099,7 +7362,7 @@ msgid "Orders Average / Day"
|
|
7099 |
msgstr ""
|
7100 |
|
7101 |
#: includes/reports/wcj-class-reports-monthly-sales.php:87
|
7102 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7103 |
msgid "Total Sum"
|
7104 |
msgstr ""
|
7105 |
|
@@ -7148,65 +7411,65 @@ msgstr ""
|
|
7148 |
msgid "Reset Currency Rates"
|
7149 |
msgstr ""
|
7150 |
|
7151 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7152 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7153 |
msgid "Reports Settings"
|
7154 |
msgstr ""
|
7155 |
|
7156 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7157 |
msgid "From:"
|
7158 |
msgstr ""
|
7159 |
|
7160 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7161 |
msgid "To:"
|
7162 |
msgstr ""
|
7163 |
|
7164 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7165 |
msgid "Product:"
|
7166 |
msgstr ""
|
7167 |
|
7168 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7169 |
#, php-format
|
7170 |
msgid "Total: %d"
|
7171 |
msgstr ""
|
7172 |
|
7173 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7174 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7175 |
#, php-format
|
7176 |
msgid "Total: %s"
|
7177 |
msgstr ""
|
7178 |
|
7179 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7180 |
#, php-format
|
7181 |
msgid "Total orders: %d"
|
7182 |
msgstr ""
|
7183 |
|
7184 |
-
#: includes/reports/wcj-class-reports-sales-daily.php:
|
7185 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7186 |
msgid "No sales data for current period."
|
7187 |
msgstr ""
|
7188 |
|
7189 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7190 |
msgid "Variation"
|
7191 |
msgstr ""
|
7192 |
|
7193 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7194 |
msgid "Last Sale"
|
7195 |
msgstr ""
|
7196 |
|
7197 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7198 |
msgid "Total"
|
7199 |
msgstr ""
|
7200 |
|
7201 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7202 |
msgid "Total Items"
|
7203 |
msgstr ""
|
7204 |
|
7205 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7206 |
msgid "Total Profit"
|
7207 |
msgstr ""
|
7208 |
|
7209 |
-
#: includes/reports/wcj-class-reports-sales.php:
|
7210 |
msgid "Filter products"
|
7211 |
msgstr ""
|
7212 |
|
@@ -7330,12 +7593,10 @@ msgstr ""
|
|
7330 |
#: includes/settings/wcj-settings-add-to-cart.php:21
|
7331 |
#: includes/settings/wcj-settings-add-to-cart.php:99
|
7332 |
#: includes/settings/wcj-settings-add-to-cart.php:117
|
7333 |
-
#: includes/settings/wcj-settings-general.php:
|
7334 |
-
#: includes/settings/wcj-settings-product-images.php:19
|
7335 |
-
#: includes/settings/wcj-settings-product-images.php:95
|
7336 |
#: includes/settings/wcj-settings-shipping-calculator.php:69
|
7337 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
7338 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
7339 |
#: includes/settings/wcj-settings-sorting.php:20
|
7340 |
#: includes/settings/wcj-settings-sorting.php:99
|
7341 |
#: includes/settings/wcj-settings-sorting.php:123
|
@@ -7363,6 +7624,11 @@ msgstr ""
|
|
7363 |
msgid "categories"
|
7364 |
msgstr ""
|
7365 |
|
|
|
|
|
|
|
|
|
|
|
7366 |
#: includes/settings/wcj-settings-add-to-cart.php:70
|
7367 |
msgid "Button text - single product view"
|
7368 |
msgstr ""
|
@@ -7526,9 +7792,10 @@ msgstr ""
|
|
7526 |
#: includes/settings/wcj-settings-product-bookings.php:86
|
7527 |
#: includes/settings/wcj-settings-product-by-user-role.php:14
|
7528 |
#: includes/settings/wcj-settings-product-by-user.php:59
|
|
|
7529 |
#: includes/settings/wcj-settings-product-open-pricing.php:16
|
7530 |
#: includes/settings/wcj-settings-products-per-page.php:14
|
7531 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
7532 |
#: includes/settings/wcj-settings-track-users.php:14
|
7533 |
#: includes/settings/wcj-settings-url-coupons.php:14
|
7534 |
#: includes/settings/wcj-settings-wholesale-price.php:15
|
@@ -7547,107 +7814,251 @@ msgstr ""
|
|
7547 |
msgid "\"Booster: Active\" Admin Bar"
|
7548 |
msgstr ""
|
7549 |
|
7550 |
-
#: includes/settings/wcj-settings-admin-
|
7551 |
-
|
|
|
|
|
7552 |
msgstr ""
|
7553 |
|
7554 |
-
#: includes/settings/wcj-settings-admin-
|
7555 |
-
msgid "WooCommerce
|
7556 |
msgstr ""
|
7557 |
|
7558 |
-
#: includes/settings/wcj-settings-admin-
|
7559 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7560 |
msgstr ""
|
7561 |
|
7562 |
-
#: includes/settings/wcj-settings-admin-
|
7563 |
-
|
|
|
7564 |
msgstr ""
|
7565 |
|
7566 |
-
#: includes/settings/wcj-settings-admin-
|
7567 |
-
|
|
|
7568 |
msgstr ""
|
7569 |
|
7570 |
-
#: includes/settings/wcj-settings-admin-
|
7571 |
-
#: includes/settings/wcj-settings-admin-
|
7572 |
-
|
7573 |
-
#: includes/settings/wcj-settings-offer-price.php:147
|
7574 |
-
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:43
|
7575 |
-
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:52
|
7576 |
-
msgid "Set zero to disable."
|
7577 |
msgstr ""
|
7578 |
|
7579 |
-
#: includes/settings/wcj-settings-admin-
|
7580 |
-
|
|
|
7581 |
msgstr ""
|
7582 |
|
7583 |
-
#: includes/settings/wcj-settings-admin-
|
7584 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7585 |
msgstr ""
|
7586 |
|
7587 |
-
#: includes/settings/wcj-settings-admin-
|
7588 |
-
|
|
|
7589 |
msgstr ""
|
7590 |
|
7591 |
-
#: includes/settings/wcj-settings-admin-
|
7592 |
-
msgid "
|
7593 |
msgstr ""
|
7594 |
|
7595 |
-
#: includes/settings/wcj-settings-admin-
|
7596 |
-
msgid "
|
7597 |
msgstr ""
|
7598 |
|
7599 |
-
#: includes/settings/wcj-settings-
|
7600 |
-
msgid "
|
7601 |
msgstr ""
|
7602 |
|
7603 |
-
#: includes/settings/wcj-settings-
|
7604 |
-
msgid "
|
7605 |
msgstr ""
|
7606 |
|
7607 |
-
#: includes/settings/wcj-settings-
|
7608 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7609 |
msgstr ""
|
7610 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7611 |
#: includes/settings/wcj-settings-breadcrumbs.php:34
|
7612 |
#: includes/settings/wcj-settings-cart-customization.php:20
|
7613 |
#: includes/settings/wcj-settings-cart-customization.php:27
|
7614 |
#: includes/settings/wcj-settings-checkout-customization.php:32
|
7615 |
#: includes/settings/wcj-settings-currency.php:21
|
7616 |
#: includes/settings/wcj-settings-order-custom-statuses.php:63
|
7617 |
-
#: includes/settings/wcj-settings-orders.php:161
|
7618 |
#: includes/settings/wcj-settings-pdf-invoicing.php:74
|
7619 |
#: includes/settings/wcj-settings-product-bookings.php:92
|
7620 |
-
#: includes/settings/wcj-settings-product-images.php:
|
7621 |
-
#: includes/settings/wcj-settings-product-images.php:
|
7622 |
-
#: includes/settings/wcj-settings-product-images.php:
|
7623 |
-
#: includes/settings/wcj-settings-product-images.php:
|
7624 |
#: includes/settings/wcj-settings-related-products.php:163
|
7625 |
#: includes/settings/wcj-settings-related-products.php:169
|
|
|
|
|
|
|
7626 |
#: includes/settings/wcj-settings-shipping-calculator.php:54
|
7627 |
msgid "Hide"
|
7628 |
msgstr ""
|
7629 |
|
7630 |
-
#: includes/settings/wcj-settings-
|
7631 |
-
msgid "
|
7632 |
-
msgstr ""
|
7633 |
-
|
7634 |
-
#: includes/settings/wcj-settings-call-for-price.php:16
|
7635 |
-
msgid ""
|
7636 |
-
"Leave price empty when adding or editing products. Then set the options here."
|
7637 |
msgstr ""
|
7638 |
|
7639 |
-
#: includes/settings/wcj-settings-
|
7640 |
-
|
|
|
|
|
7641 |
msgstr ""
|
7642 |
|
7643 |
-
#: includes/settings/wcj-settings-
|
7644 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7645 |
msgstr ""
|
7646 |
|
7647 |
#: includes/settings/wcj-settings-call-for-price.php:22
|
7648 |
#: includes/settings/wcj-settings-call-for-price.php:32
|
7649 |
#: includes/settings/wcj-settings-call-for-price.php:42
|
7650 |
#: includes/settings/wcj-settings-call-for-price.php:52
|
|
|
7651 |
msgid "This sets the html to output on empty price. Leave blank to disable."
|
7652 |
msgstr ""
|
7653 |
|
@@ -7664,21 +8075,25 @@ msgid "Label to Show on Related"
|
|
7664 |
msgstr ""
|
7665 |
|
7666 |
#: includes/settings/wcj-settings-call-for-price.php:61
|
|
|
|
|
|
|
|
|
7667 |
msgid "Hide Sale! Tag"
|
7668 |
msgstr ""
|
7669 |
|
7670 |
-
#: includes/settings/wcj-settings-call-for-price.php:
|
7671 |
msgid "Hide the tag"
|
7672 |
msgstr ""
|
7673 |
|
7674 |
-
#: includes/settings/wcj-settings-call-for-price.php:
|
7675 |
msgid "Make All Products Call for Price"
|
7676 |
msgstr ""
|
7677 |
|
7678 |
-
#: includes/settings/wcj-settings-call-for-price.php:
|
7679 |
msgid ""
|
7680 |
-
"Enable this to make all products
|
7681 |
-
"
|
7682 |
msgstr ""
|
7683 |
|
7684 |
#: includes/settings/wcj-settings-cart-customization.php:19
|
@@ -7811,7 +8226,7 @@ msgid "Default"
|
|
7811 |
msgstr ""
|
7812 |
|
7813 |
#: includes/settings/wcj-settings-checkout-core-fields.php:66
|
7814 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
7815 |
msgid "required"
|
7816 |
msgstr ""
|
7817 |
|
@@ -7910,22 +8325,6 @@ msgstr ""
|
|
7910 |
msgid "State"
|
7911 |
msgstr ""
|
7912 |
|
7913 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:143
|
7914 |
-
#: includes/settings/wcj-settings-checkout-files-upload.php:82
|
7915 |
-
#: includes/settings/wcj-settings-checkout-files-upload.php:256
|
7916 |
-
#: includes/settings/wcj-settings-offer-price.php:43
|
7917 |
-
#: includes/settings/wcj-settings-offer-price.php:115
|
7918 |
-
#: includes/settings/wcj-settings-offer-price.php:155
|
7919 |
-
#: includes/settings/wcj-settings-offer-price.php:163
|
7920 |
-
#: includes/settings/wcj-settings-offer-price.php:171
|
7921 |
-
#: includes/settings/wcj-settings-offer-price.php:179
|
7922 |
-
#: includes/settings/wcj-settings-orders.php:103
|
7923 |
-
#: includes/settings/wcj-settings-product-listings.php:290
|
7924 |
-
#: includes/tools/class-wcj-order-statuses-tool.php:139
|
7925 |
-
#: includes/tools/class-wcj-order-statuses-tool.php:211
|
7926 |
-
msgid "Label"
|
7927 |
-
msgstr ""
|
7928 |
-
|
7929 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:164
|
7930 |
msgid "Section"
|
7931 |
msgstr ""
|
@@ -7963,59 +8362,63 @@ msgstr ""
|
|
7963 |
msgid "Clear"
|
7964 |
msgstr ""
|
7965 |
|
7966 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7967 |
-
msgid "
|
7968 |
msgstr ""
|
7969 |
|
7970 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:201
|
|
|
|
|
|
|
|
|
7971 |
msgid "Select: Use select2 Library"
|
7972 |
msgstr ""
|
7973 |
|
7974 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7975 |
msgid "Checkbox: Value for ON"
|
7976 |
msgstr ""
|
7977 |
|
7978 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7979 |
msgid "Checkbox: Value for OFF"
|
7980 |
msgstr ""
|
7981 |
|
7982 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7983 |
msgid "Checkbox: Default Value"
|
7984 |
msgstr ""
|
7985 |
|
7986 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7987 |
msgid "Datepicker/Weekpicker: Date Format"
|
7988 |
msgstr ""
|
7989 |
|
7990 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7991 |
msgid ""
|
7992 |
"Visit <a href=\"https://codex.wordpress.org/Formatting_Date_and_Time\" "
|
7993 |
"target=\"_blank\">documentation on date and time formatting</a> for valid "
|
7994 |
"date formats"
|
7995 |
msgstr ""
|
7996 |
|
7997 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
7998 |
msgid "Datepicker/Weekpicker: Min Date"
|
7999 |
msgstr ""
|
8000 |
|
8001 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:239
|
8002 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:246
|
|
|
8003 |
msgid "days"
|
8004 |
msgstr ""
|
8005 |
|
8006 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8007 |
msgid "Datepicker/Weekpicker: Max Date"
|
8008 |
msgstr ""
|
8009 |
|
8010 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8011 |
msgid "Datepicker/Weekpicker: Add Year Selector"
|
8012 |
msgstr ""
|
8013 |
|
8014 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8015 |
msgid "Datepicker/Weekpicker: Year Selector: Year Range"
|
8016 |
msgstr ""
|
8017 |
|
8018 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8019 |
msgid ""
|
8020 |
"The range of years displayed in the year drop-down: either relative to "
|
8021 |
"today's year (\"-nn:+nn\"), relative to the currently selected year (\"c-nn:c"
|
@@ -8024,63 +8427,83 @@ msgid ""
|
|
8024 |
"restrict which dates may be selected use the minDate and/or maxDate options."
|
8025 |
msgstr ""
|
8026 |
|
8027 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8028 |
msgid "Datepicker/Weekpicker: First Week Day"
|
8029 |
msgstr ""
|
8030 |
|
8031 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8032 |
msgid "Timepicker: Time Format"
|
8033 |
msgstr ""
|
8034 |
|
8035 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8036 |
msgid ""
|
8037 |
"Visit <a href=\"http://timepicker.co/options/\" target=\"_blank\">timepicker "
|
8038 |
"options page</a> for valid time formats"
|
8039 |
msgstr ""
|
8040 |
|
8041 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8042 |
msgid "minutes"
|
8043 |
msgstr ""
|
8044 |
|
8045 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8046 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
8047 |
msgid "Exclude Categories"
|
8048 |
msgstr ""
|
8049 |
|
8050 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8051 |
msgid "Hide this field if there is a product of selected category in cart."
|
8052 |
msgstr ""
|
8053 |
|
8054 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8055 |
msgid "Include Categories"
|
8056 |
msgstr ""
|
8057 |
|
8058 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8059 |
msgid ""
|
8060 |
"Show this field only if there is a product of selected category in cart."
|
8061 |
msgstr ""
|
8062 |
|
8063 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8064 |
#: includes/settings/wcj-settings-global-discount.php:137
|
8065 |
#: includes/settings/wcj-settings-product-addons.php:140
|
8066 |
#: includes/settings/wcj-settings-related-products.php:223
|
8067 |
msgid "Exclude Products"
|
8068 |
msgstr ""
|
8069 |
|
8070 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8071 |
msgid "Hide this field if there is a selected product in cart."
|
8072 |
msgstr ""
|
8073 |
|
8074 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8075 |
#: includes/settings/wcj-settings-global-discount.php:126
|
8076 |
#: includes/settings/wcj-settings-related-products.php:212
|
8077 |
msgid "Include Products"
|
8078 |
msgstr ""
|
8079 |
|
8080 |
-
#: includes/settings/wcj-settings-checkout-custom-fields.php:
|
8081 |
msgid "Show this field only if there is a selected product in cart."
|
8082 |
msgstr ""
|
8083 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8084 |
#: includes/settings/wcj-settings-checkout-custom-info.php:14
|
8085 |
msgid "Checkout Custom Info Blocks"
|
8086 |
msgstr ""
|
@@ -8246,11 +8669,13 @@ msgid "Customize \"order received\" message"
|
|
8246 |
msgstr ""
|
8247 |
|
8248 |
#: includes/settings/wcj-settings-checkout-customization.php:84
|
|
|
|
|
8249 |
msgid "You can use HTML and/or shortcodes here."
|
8250 |
msgstr ""
|
8251 |
|
8252 |
#: includes/settings/wcj-settings-checkout-files-upload.php:22
|
8253 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
8254 |
msgid "Total Files"
|
8255 |
msgstr ""
|
8256 |
|
@@ -8384,24 +8809,24 @@ msgid ""
|
|
8384 |
msgstr ""
|
8385 |
|
8386 |
#: includes/settings/wcj-settings-checkout-files-upload.php:219
|
8387 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
8388 |
msgid "Emails Options"
|
8389 |
msgstr ""
|
8390 |
|
8391 |
#: includes/settings/wcj-settings-checkout-files-upload.php:224
|
8392 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
8393 |
msgid "Attach Files to Admin's New Order Emails"
|
8394 |
msgstr ""
|
8395 |
|
8396 |
#: includes/settings/wcj-settings-checkout-files-upload.php:225
|
8397 |
#: includes/settings/wcj-settings-checkout-files-upload.php:232
|
8398 |
-
#: includes/settings/wcj-settings-product-input-fields.php:285
|
8399 |
#: includes/settings/wcj-settings-product-input-fields.php:292
|
|
|
8400 |
msgid "Attach"
|
8401 |
msgstr ""
|
8402 |
|
8403 |
#: includes/settings/wcj-settings-checkout-files-upload.php:231
|
8404 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
8405 |
msgid "Attach Files to Customer's Processing Order Emails"
|
8406 |
msgstr ""
|
8407 |
|
@@ -8438,8 +8863,9 @@ msgstr ""
|
|
8438 |
|
8439 |
#: includes/settings/wcj-settings-checkout-files-upload.php:285
|
8440 |
#: includes/settings/wcj-settings-eu-vat-number.php:203
|
8441 |
-
#: includes/settings/wcj-settings-general.php:
|
8442 |
#: includes/settings/wcj-settings-product-custom-info.php:188
|
|
|
8443 |
msgid "Advanced Options"
|
8444 |
msgstr ""
|
8445 |
|
@@ -8515,7 +8941,7 @@ msgid "%s till next update."
|
|
8515 |
msgstr ""
|
8516 |
|
8517 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:20
|
8518 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
8519 |
#, php-format
|
8520 |
msgid "%s seconds till next update."
|
8521 |
msgstr ""
|
@@ -8531,15 +8957,11 @@ msgstr ""
|
|
8531 |
#: includes/settings/wcj-settings-currency-per-product.php:102
|
8532 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:24
|
8533 |
#: includes/settings/wcj-settings-multicurrency.php:22
|
8534 |
-
#: includes/settings/wcj-settings-payment-gateways-currency.php:
|
8535 |
#: includes/settings/wcj-settings-price-by-country.php:244
|
8536 |
msgid "Exchange Rates Updates"
|
8537 |
msgstr ""
|
8538 |
|
8539 |
-
#: includes/settings/wcj-settings-currency-exchange-rates.php:46
|
8540 |
-
msgid "Exchange Rates Server"
|
8541 |
-
msgstr ""
|
8542 |
-
|
8543 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:53
|
8544 |
msgid "Exchange Rates Rounding"
|
8545 |
msgstr ""
|
@@ -8693,7 +9115,7 @@ msgstr ""
|
|
8693 |
#: includes/settings/wcj-settings-currency-per-product.php:107
|
8694 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:29
|
8695 |
#: includes/settings/wcj-settings-multicurrency.php:28
|
8696 |
-
#: includes/settings/wcj-settings-payment-gateways-currency.php:
|
8697 |
#: includes/settings/wcj-settings-price-by-country.php:249
|
8698 |
msgid "Enter Rates Manually"
|
8699 |
msgstr ""
|
@@ -8701,7 +9123,7 @@ msgstr ""
|
|
8701 |
#: includes/settings/wcj-settings-currency-per-product.php:108
|
8702 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:30
|
8703 |
#: includes/settings/wcj-settings-multicurrency.php:29
|
8704 |
-
#: includes/settings/wcj-settings-payment-gateways-currency.php:
|
8705 |
#: includes/settings/wcj-settings-price-by-country.php:250
|
8706 |
msgid "Automatically via Currency Exchange Rates module"
|
8707 |
msgstr ""
|
@@ -8709,7 +9131,7 @@ msgstr ""
|
|
8709 |
#: includes/settings/wcj-settings-currency-per-product.php:111
|
8710 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:33
|
8711 |
#: includes/settings/wcj-settings-multicurrency.php:32
|
8712 |
-
#: includes/settings/wcj-settings-payment-gateways-currency.php:
|
8713 |
#: includes/settings/wcj-settings-price-by-country.php:253
|
8714 |
msgid "Visit"
|
8715 |
msgstr ""
|
@@ -8717,7 +9139,7 @@ msgstr ""
|
|
8717 |
#: includes/settings/wcj-settings-currency-per-product.php:111
|
8718 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:33
|
8719 |
#: includes/settings/wcj-settings-multicurrency.php:32
|
8720 |
-
#: includes/settings/wcj-settings-payment-gateways-currency.php:
|
8721 |
#: includes/settings/wcj-settings-price-by-country.php:253
|
8722 |
msgid "Currency Exchange Rates module"
|
8723 |
msgstr ""
|
@@ -8741,11 +9163,11 @@ msgstr ""
|
|
8741 |
msgid "Total Currencies"
|
8742 |
msgstr ""
|
8743 |
|
8744 |
-
#: includes/settings/wcj-settings-currency-per-product.php:
|
8745 |
msgid "Product Authors"
|
8746 |
msgstr ""
|
8747 |
|
8748 |
-
#: includes/settings/wcj-settings-currency-per-product.php:
|
8749 |
msgid "Product Authors User Roles"
|
8750 |
msgstr ""
|
8751 |
|
@@ -8795,9 +9217,9 @@ msgid ""
|
|
8795 |
msgstr ""
|
8796 |
|
8797 |
#: includes/settings/wcj-settings-custom-css.php:36
|
8798 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
8799 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
8800 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
8801 |
msgid "This will add meta box to each product's edit page"
|
8802 |
msgstr ""
|
8803 |
|
@@ -8939,14 +9361,6 @@ msgstr ""
|
|
8939 |
msgid "Button position on the Cart page"
|
8940 |
msgstr ""
|
8941 |
|
8942 |
-
#: includes/settings/wcj-settings-empty-cart.php:40
|
8943 |
-
#: includes/settings/wcj-settings-empty-cart.php:55
|
8944 |
-
#: includes/settings/wcj-settings-offer-price.php:69
|
8945 |
-
#: includes/settings/wcj-settings-offer-price.php:90
|
8946 |
-
#: includes/settings/wcj-settings-orders.php:154
|
8947 |
-
msgid "Do not add"
|
8948 |
-
msgstr ""
|
8949 |
-
|
8950 |
#: includes/settings/wcj-settings-empty-cart.php:41
|
8951 |
msgid "After Cart"
|
8952 |
msgstr ""
|
@@ -9103,7 +9517,7 @@ msgid "Export Options"
|
|
9103 |
msgstr ""
|
9104 |
|
9105 |
#: includes/settings/wcj-settings-export.php:20
|
9106 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
9107 |
msgid "CSV Separator"
|
9108 |
msgstr ""
|
9109 |
|
@@ -9247,7 +9661,7 @@ msgid "Grouped Products"
|
|
9247 |
msgstr ""
|
9248 |
|
9249 |
#: includes/settings/wcj-settings-free-price.php:16
|
9250 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
9251 |
msgid "External Products"
|
9252 |
msgstr ""
|
9253 |
|
@@ -9275,34 +9689,34 @@ msgstr ""
|
|
9275 |
msgid "Variations"
|
9276 |
msgstr ""
|
9277 |
|
9278 |
-
#: includes/settings/wcj-settings-general.php:
|
9279 |
msgid "Shortcodes Options"
|
9280 |
msgstr ""
|
9281 |
|
9282 |
-
#: includes/settings/wcj-settings-general.php:
|
9283 |
msgid "Enable All Shortcodes in WordPress Text Widgets"
|
9284 |
msgstr ""
|
9285 |
|
9286 |
-
#: includes/settings/wcj-settings-general.php:
|
9287 |
msgid ""
|
9288 |
"This will enable all (including non Booster's) shortcodes in WordPress text "
|
9289 |
"widgets."
|
9290 |
msgstr ""
|
9291 |
|
9292 |
-
#: includes/settings/wcj-settings-general.php:
|
9293 |
msgid "Disable Booster's Shortcodes"
|
9294 |
msgstr ""
|
9295 |
|
9296 |
-
#: includes/settings/wcj-settings-general.php:
|
9297 |
msgid "Disable all Booster's shortcodes (for memory saving)."
|
9298 |
msgstr ""
|
9299 |
|
9300 |
-
#: includes/settings/wcj-settings-general.php:
|
9301 |
-
#: includes/settings/wcj-settings-general.php:
|
9302 |
-
#: includes/settings/wcj-settings-general.php:
|
9303 |
-
#: includes/settings/wcj-settings-general.php:
|
9304 |
-
#: includes/settings/wcj-settings-general.php:
|
9305 |
-
#: includes/settings/wcj-settings-general.php:
|
9306 |
#: includes/settings/wcj-settings-pdf-invoicing-styling.php:126
|
9307 |
#: includes/settings/wcj-settings-price-by-user-role.php:56
|
9308 |
#: includes/settings/wcj-settings-price-by-user-role.php:88
|
@@ -9313,99 +9727,99 @@ msgstr ""
|
|
9313 |
msgid "Disable"
|
9314 |
msgstr ""
|
9315 |
|
9316 |
-
#: includes/settings/wcj-settings-general.php:
|
9317 |
-
#: includes/settings/wcj-settings-general.php:
|
9318 |
msgid "Product Revisions"
|
9319 |
msgstr ""
|
9320 |
|
9321 |
-
#: includes/settings/wcj-settings-general.php:
|
9322 |
msgid "Recalculate Cart Totals on Every Page Load"
|
9323 |
msgstr ""
|
9324 |
|
9325 |
-
#: includes/settings/wcj-settings-general.php:
|
9326 |
msgid "Session Type in Booster"
|
9327 |
msgstr ""
|
9328 |
|
9329 |
-
#: includes/settings/wcj-settings-general.php:
|
9330 |
msgid "Standard PHP sessions"
|
9331 |
msgstr ""
|
9332 |
|
9333 |
-
#: includes/settings/wcj-settings-general.php:
|
9334 |
msgid "WC sessions"
|
9335 |
msgstr ""
|
9336 |
|
9337 |
-
#: includes/settings/wcj-settings-general.php:
|
9338 |
msgid "Disable Loading Datepicker/Weekpicker CSS"
|
9339 |
msgstr ""
|
9340 |
|
9341 |
-
#: includes/settings/wcj-settings-general.php:
|
9342 |
msgid "Datepicker/Weekpicker CSS"
|
9343 |
msgstr ""
|
9344 |
|
9345 |
-
#: includes/settings/wcj-settings-general.php:
|
9346 |
msgid "Disable Loading Datepicker/Weekpicker JavaScript"
|
9347 |
msgstr ""
|
9348 |
|
9349 |
-
#: includes/settings/wcj-settings-general.php:
|
9350 |
msgid "Disable Loading Timepicker CSS"
|
9351 |
msgstr ""
|
9352 |
|
9353 |
-
#: includes/settings/wcj-settings-general.php:
|
9354 |
msgid "Disable Loading Timepicker JavaScript"
|
9355 |
msgstr ""
|
9356 |
|
9357 |
-
#: includes/settings/wcj-settings-general.php:
|
9358 |
msgid "Disable Saving PDFs in PHP directory for temporary files"
|
9359 |
msgstr ""
|
9360 |
|
9361 |
-
#: includes/settings/wcj-settings-general.php:
|
9362 |
msgid "PayPal Email per Product Options"
|
9363 |
msgstr ""
|
9364 |
|
9365 |
-
#: includes/settings/wcj-settings-general.php:
|
9366 |
msgid "PayPal Email per Product"
|
9367 |
msgstr ""
|
9368 |
|
9369 |
-
#: includes/settings/wcj-settings-general.php:
|
9370 |
#: includes/settings/wcj-settings-product-by-date.php:54
|
9371 |
#: includes/settings/wcj-settings-product-by-time.php:54
|
9372 |
msgid "This will add new meta box to each product's edit page."
|
9373 |
msgstr ""
|
9374 |
|
9375 |
-
#: includes/settings/wcj-settings-general.php:
|
9376 |
msgid "Session Expiration Options"
|
9377 |
msgstr ""
|
9378 |
|
9379 |
-
#: includes/settings/wcj-settings-general.php:
|
9380 |
-
#: includes/settings/wcj-settings-general.php:
|
9381 |
msgid "Session Expiration"
|
9382 |
msgstr ""
|
9383 |
|
9384 |
-
#: includes/settings/wcj-settings-general.php:
|
9385 |
msgid "Session Expiring"
|
9386 |
msgstr ""
|
9387 |
|
9388 |
-
#: includes/settings/wcj-settings-general.php:
|
9389 |
msgid "In seconds. Default: 47 hours (60 * 60 * 47)"
|
9390 |
msgstr ""
|
9391 |
|
9392 |
-
#: includes/settings/wcj-settings-general.php:
|
9393 |
msgid "In seconds. Default: 48 hours (60 * 60 * 48)"
|
9394 |
msgstr ""
|
9395 |
|
9396 |
-
#: includes/settings/wcj-settings-general.php:
|
9397 |
msgid "Booster User Roles Changer Options"
|
9398 |
msgstr ""
|
9399 |
|
9400 |
-
#: includes/settings/wcj-settings-general.php:
|
9401 |
msgid "This will add user roles changer tool to admin bar."
|
9402 |
msgstr ""
|
9403 |
|
9404 |
-
#: includes/settings/wcj-settings-general.php:
|
9405 |
msgid "Booster User Roles Changer"
|
9406 |
msgstr ""
|
9407 |
|
9408 |
-
#: includes/settings/wcj-settings-general.php:
|
9409 |
msgid "Enabled for"
|
9410 |
msgstr ""
|
9411 |
|
@@ -9415,7 +9829,7 @@ msgstr ""
|
|
9415 |
|
9416 |
#: includes/settings/wcj-settings-global-discount.php:28
|
9417 |
#: includes/settings/wcj-settings-product-by-user.php:138
|
9418 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
9419 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:157
|
9420 |
msgid "Press Save changes after you change this number."
|
9421 |
msgstr ""
|
@@ -9465,7 +9879,7 @@ msgstr ""
|
|
9465 |
|
9466 |
#: includes/settings/wcj-settings-global-discount.php:83
|
9467 |
#: includes/settings/wcj-settings-product-add-to-cart.php:65
|
9468 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
9469 |
msgid "All products"
|
9470 |
msgstr ""
|
9471 |
|
@@ -9474,7 +9888,7 @@ msgid "Only products that are already on sale"
|
|
9474 |
msgstr ""
|
9475 |
|
9476 |
#: includes/settings/wcj-settings-global-discount.php:85
|
9477 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
9478 |
msgid "Only products that are not on sale"
|
9479 |
msgstr ""
|
9480 |
|
@@ -9743,20 +10157,20 @@ msgid ""
|
|
9743 |
"added."
|
9744 |
msgstr ""
|
9745 |
|
9746 |
-
#: includes/settings/wcj-settings-multicurrency.php:
|
9747 |
msgid "Role Defaults"
|
9748 |
msgstr ""
|
9749 |
|
9750 |
-
#: includes/settings/wcj-settings-multicurrency.php:
|
9751 |
msgid "Roles"
|
9752 |
msgstr ""
|
9753 |
|
9754 |
-
#: includes/settings/wcj-settings-multicurrency.php:
|
9755 |
#: includes/settings/wcj-settings-wholesale-price.php:137
|
9756 |
msgid "Save settings after you change this option. Leave blank to disable."
|
9757 |
msgstr ""
|
9758 |
|
9759 |
-
#: includes/settings/wcj-settings-multicurrency.php:
|
9760 |
msgid "No default currency"
|
9761 |
msgstr ""
|
9762 |
|
@@ -10017,16 +10431,21 @@ msgid "Exclude Shipping from Cart Total"
|
|
10017 |
msgstr ""
|
10018 |
|
10019 |
#: includes/settings/wcj-settings-order-min-amount.php:29
|
|
|
10020 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:99
|
10021 |
msgid "Exclude"
|
10022 |
msgstr ""
|
10023 |
|
10024 |
#: includes/settings/wcj-settings-order-min-amount.php:35
|
|
|
|
|
|
|
|
|
10025 |
msgid "Error message"
|
10026 |
msgstr ""
|
10027 |
|
10028 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10029 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10030 |
#, php-format
|
10031 |
msgid ""
|
10032 |
"Message to customer if order is below minimum amount. Default: You must have "
|
@@ -10034,55 +10453,56 @@ msgid ""
|
|
10034 |
"is %s."
|
10035 |
msgstr ""
|
10036 |
|
10037 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10038 |
msgid "Add notice to cart page also"
|
10039 |
msgstr ""
|
10040 |
|
10041 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10042 |
msgid "Message on cart page"
|
10043 |
msgstr ""
|
10044 |
|
10045 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10046 |
#: includes/settings/wcj-settings-pdf-invoicing.php:87
|
|
|
10047 |
msgid "Advanced"
|
10048 |
msgstr ""
|
10049 |
|
10050 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10051 |
msgid "Cart notice method"
|
10052 |
msgstr ""
|
10053 |
|
10054 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10055 |
msgid "Print notice"
|
10056 |
msgstr ""
|
10057 |
|
10058 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10059 |
msgid "Add notice"
|
10060 |
msgstr ""
|
10061 |
|
10062 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10063 |
msgid "Cart notice type"
|
10064 |
msgstr ""
|
10065 |
|
10066 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10067 |
#: includes/settings/wcj-settings-payment-gateways-min-max.php:55
|
10068 |
msgid "Notice"
|
10069 |
msgstr ""
|
10070 |
|
10071 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10072 |
#: includes/settings/wcj-settings-payment-gateways-min-max.php:56
|
10073 |
msgid "Error"
|
10074 |
msgstr ""
|
10075 |
|
10076 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10077 |
msgid ""
|
10078 |
"Stop customer from seeing the Checkout page if minimum amount not reached"
|
10079 |
msgstr ""
|
10080 |
|
10081 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10082 |
msgid "Redirect back to Cart page"
|
10083 |
msgstr ""
|
10084 |
|
10085 |
-
#: includes/settings/wcj-settings-order-min-amount.php:
|
10086 |
msgid "Order Minimum Amount by User Role"
|
10087 |
msgstr ""
|
10088 |
|
@@ -10240,20 +10660,6 @@ msgstr ""
|
|
10240 |
msgid "Minimum Quantity"
|
10241 |
msgstr ""
|
10242 |
|
10243 |
-
#: includes/settings/wcj-settings-order-quantities.php:21
|
10244 |
-
#: includes/settings/wcj-settings-order-quantities.php:79
|
10245 |
-
#: includes/settings/wcj-settings-orders.php:208
|
10246 |
-
#: includes/settings/wcj-settings-price-formats.php:37
|
10247 |
-
#: includes/settings/wcj-settings-product-listings.php:131
|
10248 |
-
#: includes/settings/wcj-settings-product-listings.php:214
|
10249 |
-
#: includes/settings/wcj-settings-product-listings.php:260
|
10250 |
-
#: includes/settings/wcj-settings-product-listings.php:318
|
10251 |
-
#: includes/settings/wcj-settings-shipping-by-condition.php:25
|
10252 |
-
#: includes/settings/wcj-settings-shipping-options.php:21
|
10253 |
-
#: includes/settings/wcj-settings-stock.php:23
|
10254 |
-
msgid "Enable section"
|
10255 |
-
msgstr ""
|
10256 |
-
|
10257 |
#: includes/settings/wcj-settings-order-quantities.php:27
|
10258 |
#: includes/settings/wcj-settings-order-quantities.php:85
|
10259 |
msgid "Cart Total Quantity"
|
@@ -10284,6 +10690,7 @@ msgstr ""
|
|
10284 |
|
10285 |
#: includes/settings/wcj-settings-order-quantities.php:54
|
10286 |
#: includes/settings/wcj-settings-order-quantities.php:112
|
|
|
10287 |
msgid "This will add meta box to each product's edit page."
|
10288 |
msgstr ""
|
10289 |
|
@@ -10337,22 +10744,22 @@ msgstr ""
|
|
10337 |
msgid "Force quantity correction on add to cart button click"
|
10338 |
msgstr ""
|
10339 |
|
10340 |
-
#: includes/settings/wcj-settings-orders.php:14
|
10341 |
#: includes/settings/wcj-settings-orders.php:19
|
|
|
10342 |
msgid "Admin Order Currency"
|
10343 |
msgstr ""
|
10344 |
|
10345 |
-
#: includes/settings/wcj-settings-orders.php:
|
10346 |
msgid ""
|
10347 |
"When enabled this will add \"Booster: Orders\" metabox to each order's edit "
|
10348 |
"page."
|
10349 |
msgstr ""
|
10350 |
|
10351 |
-
#: includes/settings/wcj-settings-orders.php:
|
10352 |
msgid "Admin Order Currency Method"
|
10353 |
msgstr ""
|
10354 |
|
10355 |
-
#: includes/settings/wcj-settings-orders.php:
|
10356 |
msgid ""
|
10357 |
"Choose if you want changed order currency to be saved directly to DB, or if "
|
10358 |
"you want to use filter. When using <em>filter</em> method, changes will be "
|
@@ -10361,177 +10768,98 @@ msgid ""
|
|
10361 |
"Booster plugin is removed."
|
10362 |
msgstr ""
|
10363 |
|
10364 |
-
#: includes/settings/wcj-settings-orders.php:
|
10365 |
msgid "Directly to DB"
|
10366 |
msgstr ""
|
10367 |
|
10368 |
-
#: includes/settings/wcj-settings-orders.php:
|
10369 |
msgid "Orders Auto-Complete"
|
10370 |
msgstr ""
|
10371 |
|
10372 |
-
#: includes/settings/wcj-settings-orders.php:
|
10373 |
msgid "This section lets you enable orders auto-complete function."
|
10374 |
msgstr ""
|
10375 |
|
10376 |
-
#: includes/settings/wcj-settings-orders.php:
|
10377 |
msgid "Auto-complete all WooCommerce orders"
|
10378 |
msgstr ""
|
10379 |
|
10380 |
-
#: includes/settings/wcj-settings-orders.php:
|
10381 |
msgid ""
|
10382 |
"E.g. if you sell digital products then you are not shipping anything and you "
|
10383 |
"may want auto-complete all your orders."
|
10384 |
msgstr ""
|
10385 |
|
10386 |
-
#: includes/settings/wcj-settings-orders.php:
|
10387 |
-
|
10388 |
-
msgid "Admin Orders List Custom Columns"
|
10389 |
msgstr ""
|
10390 |
|
10391 |
-
#: includes/settings/wcj-settings-orders.php:
|
10392 |
-
msgid "
|
10393 |
msgstr ""
|
10394 |
|
10395 |
-
#: includes/settings/wcj-settings-orders.php:
|
10396 |
-
|
10397 |
-
msgid "Add column and filtering"
|
10398 |
msgstr ""
|
10399 |
|
10400 |
#: includes/settings/wcj-settings-orders.php:80
|
10401 |
-
|
10402 |
-
|
|
|
10403 |
msgstr ""
|
10404 |
|
10405 |
-
#: includes/settings/wcj-settings-orders.php:
|
10406 |
-
|
10407 |
-
msgid "Custom Column"
|
10408 |
msgstr ""
|
10409 |
|
10410 |
-
#: includes/settings/wcj-settings-orders.php:
|
10411 |
-
|
10412 |
-
|
|
|
10413 |
msgstr ""
|
10414 |
|
10415 |
-
#: includes/settings/wcj-settings-orders.php:
|
10416 |
-
|
10417 |
-
msgid "You can use shortcodes and/or HTML here."
|
10418 |
msgstr ""
|
10419 |
|
10420 |
-
#: includes/settings/wcj-settings-orders.php:
|
10421 |
-
msgid "
|
10422 |
msgstr ""
|
10423 |
|
10424 |
-
#: includes/settings/wcj-settings-orders.php:
|
10425 |
-
msgid "
|
10426 |
msgstr ""
|
10427 |
|
10428 |
-
#: includes/settings/wcj-settings-
|
10429 |
-
|
|
|
|
|
|
|
10430 |
msgstr ""
|
10431 |
|
10432 |
-
#: includes/settings/wcj-settings-
|
10433 |
-
msgid "
|
10434 |
msgstr ""
|
10435 |
|
10436 |
-
#: includes/settings/wcj-settings-
|
10437 |
-
msgid "
|
10438 |
msgstr ""
|
10439 |
|
10440 |
-
#: includes/settings/wcj-settings-
|
10441 |
-
msgid "
|
10442 |
msgstr ""
|
10443 |
|
10444 |
-
#: includes/settings/wcj-settings-
|
10445 |
-
msgid "
|
10446 |
msgstr ""
|
10447 |
|
10448 |
-
#: includes/settings/wcj-settings-
|
10449 |
-
|
|
|
10450 |
msgstr ""
|
10451 |
|
10452 |
-
#: includes/settings/wcj-settings-
|
10453 |
-
msgid "
|
10454 |
-
msgstr ""
|
10455 |
-
|
10456 |
-
#: includes/settings/wcj-settings-orders.php:167
|
10457 |
-
msgid "Add \"Not Completed\" Status Link to Default Statuses Menu"
|
10458 |
-
msgstr ""
|
10459 |
-
|
10460 |
-
#: includes/settings/wcj-settings-orders.php:178
|
10461 |
-
msgid "Admin Orders List Columns Order"
|
10462 |
-
msgstr ""
|
10463 |
-
|
10464 |
-
#: includes/settings/wcj-settings-orders.php:183
|
10465 |
-
msgid "Columns Order"
|
10466 |
-
msgstr ""
|
10467 |
-
|
10468 |
-
#: includes/settings/wcj-settings-orders.php:191
|
10469 |
-
#: includes/settings/wcj-settings-product-listings.php:325
|
10470 |
-
msgid "Default columns order"
|
10471 |
-
msgstr ""
|
10472 |
-
|
10473 |
-
#: includes/settings/wcj-settings-orders.php:201
|
10474 |
-
msgid "Bulk Regenerate Download Permissions for Orders"
|
10475 |
-
msgstr ""
|
10476 |
-
|
10477 |
-
#: includes/settings/wcj-settings-orders.php:206
|
10478 |
-
msgid "Bulk Regenerate Download Permissions"
|
10479 |
-
msgstr ""
|
10480 |
-
|
10481 |
-
#: includes/settings/wcj-settings-orders.php:215
|
10482 |
-
msgid "Add Regenerate Download Permissions to Bulk Actions"
|
10483 |
-
msgstr ""
|
10484 |
-
|
10485 |
-
#: includes/settings/wcj-settings-orders.php:216
|
10486 |
-
msgid ""
|
10487 |
-
"When enabled this will add \"Regenerate download permissions\" action to "
|
10488 |
-
"\"Bulk Actions\" select box on admin orders page."
|
10489 |
-
msgstr ""
|
10490 |
-
|
10491 |
-
#: includes/settings/wcj-settings-orders.php:224
|
10492 |
-
msgid "Regenerate Download Permissions for All Orders"
|
10493 |
-
msgstr ""
|
10494 |
-
|
10495 |
-
#: includes/settings/wcj-settings-orders.php:225
|
10496 |
-
msgid ""
|
10497 |
-
"Check this box and press \"Save changes\" button to start regeneration. "
|
10498 |
-
"Please note that both module and current section must be enabled."
|
10499 |
-
msgstr ""
|
10500 |
-
|
10501 |
-
#: includes/settings/wcj-settings-orders.php:226
|
10502 |
-
msgid "Regenerate"
|
10503 |
-
msgstr ""
|
10504 |
-
|
10505 |
-
#: includes/settings/wcj-settings-payment-gateways-by-country.php:16
|
10506 |
-
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:16
|
10507 |
-
#: includes/settings/wcj-settings-payment-gateways-by-user-role.php:16
|
10508 |
-
#: includes/settings/wcj-settings-shipping-by-condition.php:20
|
10509 |
-
msgid "Leave empty to disable."
|
10510 |
-
msgstr ""
|
10511 |
-
|
10512 |
-
#: includes/settings/wcj-settings-payment-gateways-by-country.php:39
|
10513 |
-
msgid "Include Countries"
|
10514 |
-
msgstr ""
|
10515 |
-
|
10516 |
-
#: includes/settings/wcj-settings-payment-gateways-by-country.php:51
|
10517 |
-
msgid "Exclude Countries"
|
10518 |
-
msgstr ""
|
10519 |
-
|
10520 |
-
#: includes/settings/wcj-settings-payment-gateways-by-country.php:63
|
10521 |
-
msgid "Include States (Base Country)"
|
10522 |
-
msgstr ""
|
10523 |
-
|
10524 |
-
#: includes/settings/wcj-settings-payment-gateways-by-country.php:75
|
10525 |
-
msgid "Exclude States (Base Country)"
|
10526 |
-
msgstr ""
|
10527 |
-
|
10528 |
-
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:27
|
10529 |
-
#, php-format
|
10530 |
-
msgid "PayPal allows only these currencies:<br>%s."
|
10531 |
-
msgstr ""
|
10532 |
-
|
10533 |
-
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:44
|
10534 |
-
msgid "Allowed Currencies"
|
10535 |
msgstr ""
|
10536 |
|
10537 |
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:55
|
@@ -10578,7 +10906,7 @@ msgstr ""
|
|
10578 |
|
10579 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:25
|
10580 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:36
|
10581 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
10582 |
#: includes/settings/wcj-settings-purchase-data.php:67
|
10583 |
msgid "Leave blank to disable"
|
10584 |
msgstr ""
|
@@ -10998,26 +11326,34 @@ msgid "Page Format"
|
|
10998 |
msgstr ""
|
10999 |
|
11000 |
#: includes/settings/wcj-settings-pdf-invoicing-page.php:39
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11001 |
msgid "Margin Left"
|
11002 |
msgstr ""
|
11003 |
|
11004 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
11005 |
msgid "Margin Right"
|
11006 |
msgstr ""
|
11007 |
|
11008 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
11009 |
msgid "Margin Top"
|
11010 |
msgstr ""
|
11011 |
|
11012 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
11013 |
msgid "Margin Bottom"
|
11014 |
msgstr ""
|
11015 |
|
11016 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
11017 |
msgid "Background Image"
|
11018 |
msgstr ""
|
11019 |
|
11020 |
-
#: includes/settings/wcj-settings-pdf-invoicing-page.php:
|
11021 |
#, php-format
|
11022 |
msgid ""
|
11023 |
"Enter a local URL to an image. Upload your image using the <a href=\"%s"
|
@@ -11172,23 +11508,31 @@ msgstr ""
|
|
11172 |
msgid "DOCUMENT_ROOT"
|
11173 |
msgstr ""
|
11174 |
|
11175 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11176 |
msgid "Report Tool Options"
|
11177 |
msgstr ""
|
11178 |
|
11179 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
11180 |
msgid "Reports Filename"
|
11181 |
msgstr ""
|
11182 |
|
11183 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
11184 |
msgid "CSV UTF-8 BOM"
|
11185 |
msgstr ""
|
11186 |
|
11187 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
11188 |
msgid "Replace Periods with Commas in CSV Data"
|
11189 |
msgstr ""
|
11190 |
|
11191 |
-
#: includes/settings/wcj-settings-pdf-invoicing.php:
|
11192 |
msgid "Replace"
|
11193 |
msgstr ""
|
11194 |
|
@@ -11439,13 +11783,6 @@ msgstr ""
|
|
11439 |
msgid "Price by User Role by Products Categories"
|
11440 |
msgstr ""
|
11441 |
|
11442 |
-
#: includes/settings/wcj-settings-price-by-user-role.php:130
|
11443 |
-
#: includes/settings/wcj-settings-product-listings.php:267
|
11444 |
-
#: includes/settings/wcj-settings-shipping.php:51
|
11445 |
-
msgid ""
|
11446 |
-
"Save module's settings after changing this option to see new settings fields."
|
11447 |
-
msgstr ""
|
11448 |
-
|
11449 |
#: includes/settings/wcj-settings-price-formats.php:20
|
11450 |
msgid "Trim Zeros in Prices"
|
11451 |
msgstr ""
|
@@ -11468,38 +11805,50 @@ msgid "Currency Position"
|
|
11468 |
msgstr ""
|
11469 |
|
11470 |
#: includes/settings/wcj-settings-price-formats.php:72
|
|
|
11471 |
msgid "Left"
|
11472 |
msgstr ""
|
11473 |
|
11474 |
#: includes/settings/wcj-settings-price-formats.php:73
|
|
|
11475 |
msgid "Right"
|
11476 |
msgstr ""
|
11477 |
|
11478 |
#: includes/settings/wcj-settings-price-formats.php:74
|
|
|
11479 |
msgid "Left with space"
|
11480 |
msgstr ""
|
11481 |
|
11482 |
#: includes/settings/wcj-settings-price-formats.php:75
|
|
|
11483 |
msgid "Right with space"
|
11484 |
msgstr ""
|
11485 |
|
11486 |
#: includes/settings/wcj-settings-price-formats.php:80
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11487 |
msgid "Thousand Separator"
|
11488 |
msgstr ""
|
11489 |
|
11490 |
-
#: includes/settings/wcj-settings-price-formats.php:
|
11491 |
msgid "Decimal Separator"
|
11492 |
msgstr ""
|
11493 |
|
11494 |
-
#: includes/settings/wcj-settings-price-formats.php:
|
11495 |
msgid "Number of Decimals"
|
11496 |
msgstr ""
|
11497 |
|
11498 |
-
#: includes/settings/wcj-settings-price-formats.php:
|
11499 |
msgid "WPML Language Code"
|
11500 |
msgstr ""
|
11501 |
|
11502 |
-
#: includes/settings/wcj-settings-price-formats.php:
|
11503 |
msgid ""
|
11504 |
"Option to set different price formats for different WPML languages. Can be "
|
11505 |
"comma separated list. Leave empty to disable."
|
@@ -11646,6 +11995,8 @@ msgstr ""
|
|
11646 |
#: includes/settings/wcj-settings-product-add-to-cart.php:39
|
11647 |
#: includes/settings/wcj-settings-product-by-date.php:52
|
11648 |
#: includes/settings/wcj-settings-product-by-time.php:52
|
|
|
|
|
11649 |
msgid "Per Product"
|
11650 |
msgstr ""
|
11651 |
|
@@ -11726,64 +12077,68 @@ msgstr ""
|
|
11726 |
msgid "Disable on Cart Page"
|
11727 |
msgstr ""
|
11728 |
|
11729 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
|
|
|
|
|
|
|
|
11730 |
msgid "Add to Cart Button Disabling"
|
11731 |
msgstr ""
|
11732 |
|
11733 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11734 |
msgid "Disable Add to Cart Buttons on per Product Basis"
|
11735 |
msgstr ""
|
11736 |
|
11737 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11738 |
msgid "Disable Add to Cart Buttons on All Category/Archives Pages"
|
11739 |
msgstr ""
|
11740 |
|
11741 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:179
|
11742 |
#: includes/settings/wcj-settings-product-add-to-cart.php:186
|
|
|
11743 |
msgid "Disable Buttons"
|
11744 |
msgstr ""
|
11745 |
|
11746 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11747 |
msgid "Disable Add to Cart Buttons on All Single Product Pages"
|
11748 |
msgstr ""
|
11749 |
|
11750 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11751 |
msgid "Add to Cart Button Custom URL"
|
11752 |
msgstr ""
|
11753 |
|
11754 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11755 |
msgid "Custom Add to Cart Buttons URL on Archives on per Product Basis"
|
11756 |
msgstr ""
|
11757 |
|
11758 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11759 |
msgid "Add to Cart Button AJAX"
|
11760 |
msgstr ""
|
11761 |
|
11762 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11763 |
msgid "Disable/Enable Add to Cart Button AJAX on per Product Basis"
|
11764 |
msgstr ""
|
11765 |
|
11766 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11767 |
msgid "Open External Products on Add to Cart in New Window"
|
11768 |
msgstr ""
|
11769 |
|
11770 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11771 |
msgid "Enable on Single Product Pages"
|
11772 |
msgstr ""
|
11773 |
|
11774 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11775 |
msgid "Enable on Category/Archive Pages"
|
11776 |
msgstr ""
|
11777 |
|
11778 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11779 |
msgid "Add to Cart Message Options"
|
11780 |
msgstr ""
|
11781 |
|
11782 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11783 |
msgid "Change \"Continue shopping\" Text"
|
11784 |
msgstr ""
|
11785 |
|
11786 |
-
#: includes/settings/wcj-settings-product-add-to-cart.php:
|
11787 |
msgid "Change \"View cart\" Text"
|
11788 |
msgstr ""
|
11789 |
|
@@ -11913,6 +12268,16 @@ msgstr ""
|
|
11913 |
msgid "Hide all addons"
|
11914 |
msgstr ""
|
11915 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11916 |
#: includes/settings/wcj-settings-product-bookings.php:28
|
11917 |
msgid "Labels and Messages"
|
11918 |
msgstr ""
|
@@ -12009,16 +12374,19 @@ msgid "Additional Columns"
|
|
12009 |
msgstr ""
|
12010 |
|
12011 |
#: includes/settings/wcj-settings-product-by-country.php:14
|
|
|
12012 |
msgid "Visibility Options"
|
12013 |
msgstr ""
|
12014 |
|
12015 |
#: includes/settings/wcj-settings-product-by-country.php:19
|
12016 |
#: includes/settings/wcj-settings-product-by-user-role.php:19
|
|
|
12017 |
msgid "Hide Visibility"
|
12018 |
msgstr ""
|
12019 |
|
12020 |
#: includes/settings/wcj-settings-product-by-country.php:20
|
12021 |
#: includes/settings/wcj-settings-product-by-user-role.php:20
|
|
|
12022 |
msgid ""
|
12023 |
"This will hide selected products in shop and search results. However product "
|
12024 |
"still will be accessible via direct link."
|
@@ -12026,11 +12394,13 @@ msgstr ""
|
|
12026 |
|
12027 |
#: includes/settings/wcj-settings-product-by-country.php:27
|
12028 |
#: includes/settings/wcj-settings-product-by-user-role.php:27
|
|
|
12029 |
msgid "Make Non-purchasable"
|
12030 |
msgstr ""
|
12031 |
|
12032 |
#: includes/settings/wcj-settings-product-by-country.php:28
|
12033 |
#: includes/settings/wcj-settings-product-by-user-role.php:28
|
|
|
12034 |
msgid ""
|
12035 |
"This will make selected products non-purchasable (i.e. product can't be "
|
12036 |
"added to the cart)."
|
@@ -12038,11 +12408,13 @@ msgstr ""
|
|
12038 |
|
12039 |
#: includes/settings/wcj-settings-product-by-country.php:35
|
12040 |
#: includes/settings/wcj-settings-product-by-user-role.php:35
|
|
|
12041 |
msgid "Modify Query"
|
12042 |
msgstr ""
|
12043 |
|
12044 |
#: includes/settings/wcj-settings-product-by-country.php:36
|
12045 |
#: includes/settings/wcj-settings-product-by-user-role.php:36
|
|
|
12046 |
msgid "This will hide selected products completely (including direct link)."
|
12047 |
msgstr ""
|
12048 |
|
@@ -12065,11 +12437,6 @@ msgid ""
|
|
12065 |
"to frontend with \"%s\" widget or %s shortcode."
|
12066 |
msgstr ""
|
12067 |
|
12068 |
-
#: includes/settings/wcj-settings-product-by-country.php:56
|
12069 |
-
#: includes/widgets/class-wcj-widget-selector.php:27
|
12070 |
-
msgid "Booster - Selector"
|
12071 |
-
msgstr ""
|
12072 |
-
|
12073 |
#: includes/settings/wcj-settings-product-by-country.php:62
|
12074 |
msgid "Automatically by IP"
|
12075 |
msgstr ""
|
@@ -12204,8 +12571,8 @@ msgid "Replaceable value:"
|
|
12204 |
msgstr ""
|
12205 |
|
12206 |
#: includes/settings/wcj-settings-product-by-user.php:15
|
12207 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
12208 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
12209 |
msgid "Image"
|
12210 |
msgstr ""
|
12211 |
|
@@ -12254,7 +12621,7 @@ msgid "Message: Product Successfully Added"
|
|
12254 |
msgstr ""
|
12255 |
|
12256 |
#: includes/settings/wcj-settings-product-by-user.php:122
|
12257 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
12258 |
msgid "\"%product_title%\" successfully added!"
|
12259 |
msgstr ""
|
12260 |
|
@@ -12263,7 +12630,7 @@ msgid "Message: Product Successfully Edited"
|
|
12263 |
msgstr ""
|
12264 |
|
12265 |
#: includes/settings/wcj-settings-product-by-user.php:129
|
12266 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
12267 |
msgid "\"%product_title%\" successfully edited!"
|
12268 |
msgstr ""
|
12269 |
|
@@ -12288,10 +12655,10 @@ msgid "Product Custom Info Blocks"
|
|
12288 |
msgstr ""
|
12289 |
|
12290 |
#: includes/settings/wcj-settings-product-custom-info.php:81
|
12291 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12292 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12293 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12294 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
12295 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:18
|
12296 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:25
|
12297 |
msgid "You can use shortcodes here."
|
@@ -12345,12 +12712,12 @@ msgid "Product Tags to Exclude"
|
|
12345 |
msgstr ""
|
12346 |
|
12347 |
#: includes/settings/wcj-settings-product-custom-info.php:160
|
12348 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
12349 |
msgid "Products to Include"
|
12350 |
msgstr ""
|
12351 |
|
12352 |
#: includes/settings/wcj-settings-product-custom-info.php:171
|
12353 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
12354 |
msgid "Products to Exclude"
|
12355 |
msgstr ""
|
12356 |
|
@@ -12364,79 +12731,63 @@ msgid ""
|
|
12364 |
"g.: <code>rehub_woo_after_compact_grid_title|Rehub: After title</code>."
|
12365 |
msgstr ""
|
12366 |
|
|
|
|
|
|
|
|
|
12367 |
#: includes/settings/wcj-settings-product-images.php:14
|
12368 |
msgid "Product Image and Thumbnails"
|
12369 |
msgstr ""
|
12370 |
|
12371 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12372 |
msgid "Image and Thumbnails on Single"
|
12373 |
msgstr ""
|
12374 |
|
12375 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12376 |
msgid "Image on Single"
|
12377 |
msgstr ""
|
12378 |
|
12379 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12380 |
msgid "Thumbnails on Single"
|
12381 |
msgstr ""
|
12382 |
|
12383 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12384 |
msgid "Image on Archives"
|
12385 |
msgstr ""
|
12386 |
|
12387 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12388 |
msgid "Replace Image on Single"
|
12389 |
msgstr ""
|
12390 |
|
12391 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12392 |
msgid ""
|
12393 |
"Replace image on single product page with custom HTML. Leave blank to "
|
12394 |
"disable."
|
12395 |
msgstr ""
|
12396 |
|
12397 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12398 |
msgid "Replace Thumbnails on Single"
|
12399 |
msgstr ""
|
12400 |
|
12401 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12402 |
msgid ""
|
12403 |
"Replace thumbnails on single product page with custom HTML. Leave blank to "
|
12404 |
"disable."
|
12405 |
msgstr ""
|
12406 |
|
12407 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12408 |
msgid "Replace Image on Archive"
|
12409 |
msgstr ""
|
12410 |
|
12411 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12412 |
msgid ""
|
12413 |
"Replace image on archive pages with custom HTML. Leave blank to disable."
|
12414 |
msgstr ""
|
12415 |
|
12416 |
-
#: includes/settings/wcj-settings-product-images.php:
|
12417 |
msgid "Single Product Thumbnails Columns"
|
12418 |
msgstr ""
|
12419 |
|
12420 |
-
#: includes/settings/wcj-settings-product-images.php:90
|
12421 |
-
msgid "Product Images Sale Flash"
|
12422 |
-
msgstr ""
|
12423 |
-
|
12424 |
-
#: includes/settings/wcj-settings-product-images.php:101
|
12425 |
-
msgid "HTML"
|
12426 |
-
msgstr ""
|
12427 |
-
|
12428 |
-
#: includes/settings/wcj-settings-product-images.php:108
|
12429 |
-
msgid "Hide Everywhere"
|
12430 |
-
msgstr ""
|
12431 |
-
|
12432 |
-
#: includes/settings/wcj-settings-product-images.php:114
|
12433 |
-
msgid "Hide on Archives (Categories) Only"
|
12434 |
-
msgstr ""
|
12435 |
-
|
12436 |
-
#: includes/settings/wcj-settings-product-images.php:120
|
12437 |
-
msgid "Hide on Single Page Only"
|
12438 |
-
msgstr ""
|
12439 |
-
|
12440 |
#: includes/settings/wcj-settings-product-info.php:14
|
12441 |
msgid "Products Info"
|
12442 |
msgstr ""
|
@@ -12603,102 +12954,106 @@ msgid "HTML Template - End"
|
|
12603 |
msgstr ""
|
12604 |
|
12605 |
#: includes/settings/wcj-settings-product-input-fields.php:226
|
12606 |
-
msgid "HTML
|
12607 |
msgstr ""
|
12608 |
|
12609 |
#: includes/settings/wcj-settings-product-input-fields.php:233
|
|
|
|
|
|
|
|
|
12610 |
msgid "Cart Display Options"
|
12611 |
msgstr ""
|
12612 |
|
12613 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12614 |
msgid ""
|
12615 |
"When \"Add to cart item data\" is selected, \"Cart HTML Template\" options "
|
12616 |
"below will be ignored."
|
12617 |
msgstr ""
|
12618 |
|
12619 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12620 |
msgid "Add to cart item name"
|
12621 |
msgstr ""
|
12622 |
|
12623 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12624 |
msgid "Add to cart item data"
|
12625 |
msgstr ""
|
12626 |
|
12627 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12628 |
msgid "Cart HTML Template - Start"
|
12629 |
msgstr ""
|
12630 |
|
12631 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12632 |
msgid "Cart HTML Template - Each Field"
|
12633 |
msgstr ""
|
12634 |
|
12635 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12636 |
msgid "Cart HTML Template - End"
|
12637 |
msgstr ""
|
12638 |
|
12639 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12640 |
msgid "Order Table Template - Each Field"
|
12641 |
msgstr ""
|
12642 |
|
12643 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12644 |
msgid "Affects Order received page, Emails and Admin Orders View"
|
12645 |
msgstr ""
|
12646 |
|
12647 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12648 |
msgid "Admin Order View Options"
|
12649 |
msgstr ""
|
12650 |
|
12651 |
-
#: includes/settings/wcj-settings-product-input-fields.php:
|
12652 |
msgid "Replace Field ID with Field Label"
|
12653 |
msgstr ""
|
12654 |
|
12655 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12656 |
msgid "Shop Page Display Options"
|
12657 |
msgstr ""
|
12658 |
|
12659 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12660 |
#, php-format
|
12661 |
msgid ""
|
12662 |
"You can control what is shown on the product archive in <a href=\"%s"
|
12663 |
"\">WooCommerce > Settings > Products > Display > Shop page display</a>."
|
12664 |
msgstr ""
|
12665 |
|
12666 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12667 |
msgid "Categories Count"
|
12668 |
msgstr ""
|
12669 |
|
12670 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12671 |
msgid "Hide categories count on shop page"
|
12672 |
msgstr ""
|
12673 |
|
12674 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12675 |
msgid ""
|
12676 |
" Excludes one or more categories from the shop page. Leave blank to disable."
|
12677 |
msgstr ""
|
12678 |
|
12679 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12680 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12681 |
msgid "Hide Empty"
|
12682 |
msgstr ""
|
12683 |
|
12684 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12685 |
msgid "Hide empty categories on shop page"
|
12686 |
msgstr ""
|
12687 |
|
12688 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12689 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12690 |
msgid "Show Products"
|
12691 |
msgstr ""
|
12692 |
|
12693 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12694 |
msgid "Show products if no categories are displayed on shop page"
|
12695 |
msgstr ""
|
12696 |
|
12697 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12698 |
msgid "Category Display Options"
|
12699 |
msgstr ""
|
12700 |
|
12701 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12702 |
#, php-format
|
12703 |
msgid ""
|
12704 |
"You can control what is shown on category archives in <a href=\"%s"
|
@@ -12706,162 +13061,63 @@ msgid ""
|
|
12706 |
"a>."
|
12707 |
msgstr ""
|
12708 |
|
12709 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12710 |
msgid "Subcategories Count"
|
12711 |
msgstr ""
|
12712 |
|
12713 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12714 |
msgid "Hide subcategories count on category pages"
|
12715 |
msgstr ""
|
12716 |
|
12717 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12718 |
msgid "Exclude Subcategories"
|
12719 |
msgstr ""
|
12720 |
|
12721 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12722 |
msgid ""
|
12723 |
" Excludes one or more categories from the category (archive) pages. Leave "
|
12724 |
"blank to disable."
|
12725 |
msgstr ""
|
12726 |
|
12727 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12728 |
msgid "Hide empty subcategories on category pages"
|
12729 |
msgstr ""
|
12730 |
|
12731 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12732 |
msgid "Show products if no categories are displayed on category page"
|
12733 |
msgstr ""
|
12734 |
|
12735 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12736 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12737 |
msgid "Product Shop Visibility by Price"
|
12738 |
msgstr ""
|
12739 |
|
12740 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12741 |
msgid ""
|
12742 |
"Here you can set to hide products from shop and search results depending on "
|
12743 |
"product's price. Products will still be accessible via direct link."
|
12744 |
msgstr ""
|
12745 |
|
12746 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12747 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:31
|
12748 |
msgid "Min Price"
|
12749 |
msgstr ""
|
12750 |
|
12751 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12752 |
msgid ""
|
12753 |
"Products with price below this value will be hidden. Ignored if set to zero."
|
12754 |
msgstr ""
|
12755 |
|
12756 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12757 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:38
|
12758 |
msgid "Max Price"
|
12759 |
msgstr ""
|
12760 |
|
12761 |
-
#: includes/settings/wcj-settings-product-listings.php:
|
12762 |
msgid ""
|
12763 |
"Products with price above this value will be hidden. Ignored if set to zero."
|
12764 |
msgstr ""
|
12765 |
|
12766 |
-
#: includes/settings/wcj-settings-product-listings.php:157
|
12767 |
-
msgid "TAX Display in the Shop - by Product"
|
12768 |
-
msgstr ""
|
12769 |
-
|
12770 |
-
#: includes/settings/wcj-settings-product-listings.php:159
|
12771 |
-
msgid ""
|
12772 |
-
"If you want to display part of your products including TAX and another part "
|
12773 |
-
"excluding TAX, you can set it here."
|
12774 |
-
msgstr ""
|
12775 |
-
|
12776 |
-
#: includes/settings/wcj-settings-product-listings.php:163
|
12777 |
-
msgid "Products - Including TAX"
|
12778 |
-
msgstr ""
|
12779 |
-
|
12780 |
-
#: includes/settings/wcj-settings-product-listings.php:165
|
12781 |
-
msgid "Select products to display including TAX."
|
12782 |
-
msgstr ""
|
12783 |
-
|
12784 |
-
#: includes/settings/wcj-settings-product-listings.php:173
|
12785 |
-
msgid "Products - Excluding TAX"
|
12786 |
-
msgstr ""
|
12787 |
-
|
12788 |
-
#: includes/settings/wcj-settings-product-listings.php:175
|
12789 |
-
msgid "Select products to display excluding TAX."
|
12790 |
-
msgstr ""
|
12791 |
-
|
12792 |
-
#: includes/settings/wcj-settings-product-listings.php:183
|
12793 |
-
msgid "Product Categories - Including TAX"
|
12794 |
-
msgstr ""
|
12795 |
-
|
12796 |
-
#: includes/settings/wcj-settings-product-listings.php:185
|
12797 |
-
msgid "Select product categories to display including TAX."
|
12798 |
-
msgstr ""
|
12799 |
-
|
12800 |
-
#: includes/settings/wcj-settings-product-listings.php:193
|
12801 |
-
msgid "Product Categories - Excluding TAX"
|
12802 |
-
msgstr ""
|
12803 |
-
|
12804 |
-
#: includes/settings/wcj-settings-product-listings.php:195
|
12805 |
-
msgid "Select product categories to display excluding TAX."
|
12806 |
-
msgstr ""
|
12807 |
-
|
12808 |
-
#: includes/settings/wcj-settings-product-listings.php:207
|
12809 |
-
msgid "TAX Display in the Shop - by User Role"
|
12810 |
-
msgstr ""
|
12811 |
-
|
12812 |
-
#: includes/settings/wcj-settings-product-listings.php:209
|
12813 |
-
msgid ""
|
12814 |
-
"If you want to display prices including TAX or excluding TAX for different "
|
12815 |
-
"user roles, you can set it here."
|
12816 |
-
msgstr ""
|
12817 |
-
|
12818 |
-
#: includes/settings/wcj-settings-product-listings.php:213
|
12819 |
-
msgid "TAX Display by User Role"
|
12820 |
-
msgstr ""
|
12821 |
-
|
12822 |
-
#: includes/settings/wcj-settings-product-listings.php:221
|
12823 |
-
msgid ""
|
12824 |
-
"Save changes after you change this option and new settings fields will "
|
12825 |
-
"appear."
|
12826 |
-
msgstr ""
|
12827 |
-
|
12828 |
-
#: includes/settings/wcj-settings-product-listings.php:222
|
12829 |
-
#, php-format
|
12830 |
-
msgid ""
|
12831 |
-
"Select user roles that you want to change tax display for. For all remaining "
|
12832 |
-
"(i.e. not selected) user roles - default TAX display (set in %s) will be "
|
12833 |
-
"applied."
|
12834 |
-
msgstr ""
|
12835 |
-
|
12836 |
-
#: includes/settings/wcj-settings-product-listings.php:223
|
12837 |
-
msgid "WooCommerce > Settings > Tax"
|
12838 |
-
msgstr ""
|
12839 |
-
|
12840 |
-
#: includes/settings/wcj-settings-product-listings.php:235
|
12841 |
-
#, php-format
|
12842 |
-
msgid "Role: %s"
|
12843 |
-
msgstr ""
|
12844 |
-
|
12845 |
-
#: includes/settings/wcj-settings-product-listings.php:240
|
12846 |
-
msgid "Default TAX display (no changes)"
|
12847 |
-
msgstr ""
|
12848 |
-
|
12849 |
-
#: includes/settings/wcj-settings-product-listings.php:241
|
12850 |
-
msgid "Including tax"
|
12851 |
-
msgstr ""
|
12852 |
-
|
12853 |
-
#: includes/settings/wcj-settings-product-listings.php:242
|
12854 |
-
msgid "Excluding tax"
|
12855 |
-
msgstr ""
|
12856 |
-
|
12857 |
-
#: includes/settings/wcj-settings-product-listings.php:254
|
12858 |
-
msgid "Admin Products List - Custom Columns"
|
12859 |
-
msgstr ""
|
12860 |
-
|
12861 |
-
#: includes/settings/wcj-settings-product-listings.php:312
|
12862 |
-
msgid "Admin Products List - Columns Order"
|
12863 |
-
msgstr ""
|
12864 |
-
|
12865 |
#: includes/settings/wcj-settings-product-open-pricing.php:21
|
12866 |
msgid "Frontend Label"
|
12867 |
msgstr ""
|
@@ -12962,72 +13218,72 @@ msgid "Custom Product Tabs Number"
|
|
12962 |
msgstr ""
|
12963 |
|
12964 |
#: includes/settings/wcj-settings-product-tabs.php:60
|
12965 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12966 |
msgid "Make sure it's unique for each tab."
|
12967 |
msgstr ""
|
12968 |
|
12969 |
#: includes/settings/wcj-settings-product-tabs.php:73
|
12970 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12971 |
msgid "You can use shortcodes here..."
|
12972 |
msgstr ""
|
12973 |
|
12974 |
#: includes/settings/wcj-settings-product-tabs.php:94
|
12975 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12976 |
msgid "PRODUCTS to HIDE this tab"
|
12977 |
msgstr ""
|
12978 |
|
12979 |
#: includes/settings/wcj-settings-product-tabs.php:95
|
12980 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12981 |
msgid "To hide this tab from some products, enter products here."
|
12982 |
msgstr ""
|
12983 |
|
12984 |
#: includes/settings/wcj-settings-product-tabs.php:103
|
12985 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12986 |
msgid "PRODUCTS to SHOW this tab"
|
12987 |
msgstr ""
|
12988 |
|
12989 |
#: includes/settings/wcj-settings-product-tabs.php:104
|
12990 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12991 |
msgid "To show this tab only for some products, enter products here."
|
12992 |
msgstr ""
|
12993 |
|
12994 |
#: includes/settings/wcj-settings-product-tabs.php:112
|
12995 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
12996 |
msgid "CATEGORIES to HIDE this tab"
|
12997 |
msgstr ""
|
12998 |
|
12999 |
#: includes/settings/wcj-settings-product-tabs.php:113
|
13000 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13001 |
msgid "To hide this tab from some categories, enter categories here."
|
13002 |
msgstr ""
|
13003 |
|
13004 |
#: includes/settings/wcj-settings-product-tabs.php:121
|
13005 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13006 |
msgid "CATEGORIES to SHOW this tab"
|
13007 |
msgstr ""
|
13008 |
|
13009 |
#: includes/settings/wcj-settings-product-tabs.php:122
|
13010 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13011 |
msgid "To show this tab only for some categories, enter categories here."
|
13012 |
msgstr ""
|
13013 |
|
13014 |
#: includes/settings/wcj-settings-product-tabs.php:130
|
13015 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13016 |
msgid "TAGS to HIDE this tab"
|
13017 |
msgstr ""
|
13018 |
|
13019 |
#: includes/settings/wcj-settings-product-tabs.php:131
|
13020 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13021 |
msgid "To hide this tab from some tags, enter tags here."
|
13022 |
msgstr ""
|
13023 |
|
13024 |
#: includes/settings/wcj-settings-product-tabs.php:139
|
13025 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13026 |
msgid "TAGS to SHOW this tab"
|
13027 |
msgstr ""
|
13028 |
|
13029 |
#: includes/settings/wcj-settings-product-tabs.php:140
|
13030 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13031 |
msgid "To show this tab only for some tags, enter tags here."
|
13032 |
msgstr ""
|
13033 |
|
@@ -13080,66 +13336,70 @@ msgid "Use Visual Editor"
|
|
13080 |
msgstr ""
|
13081 |
|
13082 |
#: includes/settings/wcj-settings-product-tabs.php:226
|
|
|
|
|
|
|
|
|
13083 |
msgid "Default Per Product Custom Product Tabs Number"
|
13084 |
msgstr ""
|
13085 |
|
13086 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13087 |
msgid "Default Title"
|
13088 |
msgstr ""
|
13089 |
|
13090 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13091 |
msgid "Default Key"
|
13092 |
msgstr ""
|
13093 |
|
13094 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13095 |
msgid "Default Priority (i.e. Order)"
|
13096 |
msgstr ""
|
13097 |
|
13098 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13099 |
msgid "Default Content"
|
13100 |
msgstr ""
|
13101 |
|
13102 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13103 |
msgid "Default Link"
|
13104 |
msgstr ""
|
13105 |
|
13106 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13107 |
msgid "Leave blank for default behaviour."
|
13108 |
msgstr ""
|
13109 |
|
13110 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13111 |
msgid "Default \"Link - Open in New Window\""
|
13112 |
msgstr ""
|
13113 |
|
13114 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13115 |
msgid "WooCommerce Standard Product Tabs Options"
|
13116 |
msgstr ""
|
13117 |
|
13118 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13119 |
msgid "This section lets you customize single product tabs."
|
13120 |
msgstr ""
|
13121 |
|
13122 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13123 |
msgid "Description Tab"
|
13124 |
msgstr ""
|
13125 |
|
13126 |
-
#: includes/settings/wcj-settings-product-tabs.php:355
|
13127 |
-
#: includes/settings/wcj-settings-product-tabs.php:376
|
13128 |
-
#: includes/settings/wcj-settings-product-tabs.php:397
|
13129 |
-
msgid "Remove tab from product page"
|
13130 |
-
msgstr ""
|
13131 |
-
|
13132 |
#: includes/settings/wcj-settings-product-tabs.php:362
|
13133 |
#: includes/settings/wcj-settings-product-tabs.php:383
|
13134 |
#: includes/settings/wcj-settings-product-tabs.php:404
|
|
|
|
|
|
|
|
|
|
|
|
|
13135 |
msgid "Leave blank for WooCommerce defaults"
|
13136 |
msgstr ""
|
13137 |
|
13138 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13139 |
msgid "Additional Information Tab"
|
13140 |
msgstr ""
|
13141 |
|
13142 |
-
#: includes/settings/wcj-settings-product-tabs.php:
|
13143 |
msgid "Reviews Tab"
|
13144 |
msgstr ""
|
13145 |
|
@@ -13175,135 +13435,135 @@ msgstr ""
|
|
13175 |
msgid "Template - After Form"
|
13176 |
msgstr ""
|
13177 |
|
13178 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13179 |
msgid "Advanced: Block Size"
|
13180 |
msgstr ""
|
13181 |
|
13182 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13183 |
msgid ""
|
13184 |
"If you have large number of products you may want to modify block size for "
|
13185 |
"WP_Query call. Leave default value if not sure."
|
13186 |
msgstr ""
|
13187 |
|
13188 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13189 |
msgid "Create Now"
|
13190 |
msgstr ""
|
13191 |
|
13192 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13193 |
#, php-format
|
13194 |
msgid "Recent file was created on %s"
|
13195 |
msgstr ""
|
13196 |
|
13197 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13198 |
msgid "XML File"
|
13199 |
msgstr ""
|
13200 |
|
13201 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13202 |
msgid "XML Header"
|
13203 |
msgstr ""
|
13204 |
|
13205 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13206 |
msgid "You can use shortcodes here. For example [wcj_current_datetime]."
|
13207 |
msgstr ""
|
13208 |
|
13209 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13210 |
msgid "XML Item"
|
13211 |
msgstr ""
|
13212 |
|
13213 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13214 |
#, php-format
|
13215 |
msgid ""
|
13216 |
"You can use shortcodes here. Please take a look at <a target=\"_blank\" href="
|
13217 |
"\"%s\">Booster's products shortcodes</a>."
|
13218 |
msgstr ""
|
13219 |
|
13220 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13221 |
msgid "XML Footer"
|
13222 |
msgstr ""
|
13223 |
|
13224 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13225 |
msgid "XML File Path and Name"
|
13226 |
msgstr ""
|
13227 |
|
13228 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13229 |
msgid "Path on server:"
|
13230 |
msgstr ""
|
13231 |
|
13232 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13233 |
msgid "Update Period"
|
13234 |
msgstr ""
|
13235 |
|
13236 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13237 |
msgid ""
|
13238 |
"Possible update periods are: every minute, hourly, twice daily, daily and "
|
13239 |
"weekly."
|
13240 |
msgstr ""
|
13241 |
|
13242 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13243 |
msgid ""
|
13244 |
"To include selected products only, enter products here. Leave blank to "
|
13245 |
"include all products."
|
13246 |
msgstr ""
|
13247 |
|
13248 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13249 |
msgid ""
|
13250 |
"To exclude selected products, enter products here. Leave blank to include "
|
13251 |
"all products."
|
13252 |
msgstr ""
|
13253 |
|
13254 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13255 |
msgid "Categories to Include"
|
13256 |
msgstr ""
|
13257 |
|
13258 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13259 |
msgid ""
|
13260 |
"To include products from selected categories only, enter categories here. "
|
13261 |
"Leave blank to include all products."
|
13262 |
msgstr ""
|
13263 |
|
13264 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13265 |
msgid "Categories to Exclude"
|
13266 |
msgstr ""
|
13267 |
|
13268 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13269 |
msgid ""
|
13270 |
"To exclude products from selected categories, enter categories here. Leave "
|
13271 |
"blank to include all products."
|
13272 |
msgstr ""
|
13273 |
|
13274 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13275 |
msgid "Tags to Include"
|
13276 |
msgstr ""
|
13277 |
|
13278 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13279 |
msgid ""
|
13280 |
"To include products from selected tags only, enter tags here. Leave blank to "
|
13281 |
"include all products."
|
13282 |
msgstr ""
|
13283 |
|
13284 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13285 |
msgid "Tags to Exclude"
|
13286 |
msgstr ""
|
13287 |
|
13288 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13289 |
msgid ""
|
13290 |
"To exclude products from selected tags, enter tags here. Leave blank to "
|
13291 |
"include all products."
|
13292 |
msgstr ""
|
13293 |
|
13294 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13295 |
msgid "Products Scope"
|
13296 |
msgstr ""
|
13297 |
|
13298 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13299 |
msgid "Only products that are on sale"
|
13300 |
msgstr ""
|
13301 |
|
13302 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13303 |
msgid "Only products that are featured"
|
13304 |
msgstr ""
|
13305 |
|
13306 |
-
#: includes/settings/wcj-settings-products-xml.php:
|
13307 |
msgid "Only products that are not featured"
|
13308 |
msgstr ""
|
13309 |
|
@@ -13377,6 +13637,10 @@ msgid ""
|
|
13377 |
"This section lets you add custom columns to WooCommerce admin products list."
|
13378 |
msgstr ""
|
13379 |
|
|
|
|
|
|
|
|
|
13380 |
#: includes/settings/wcj-settings-purchase-data.php:157
|
13381 |
msgid ""
|
13382 |
"This section lets you add custom columns to WooCommerce admin orders list."
|
@@ -13616,6 +13880,31 @@ msgstr ""
|
|
13616 |
msgid "View report"
|
13617 |
msgstr ""
|
13618 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13619 |
#: includes/settings/wcj-settings-shipping-by-condition.php:18
|
13620 |
#: includes/settings/wcj-settings-shipping-by-condition.php:24
|
13621 |
#, php-format
|
@@ -13632,6 +13921,10 @@ msgstr ""
|
|
13632 |
msgid "Exclude %s"
|
13633 |
msgstr ""
|
13634 |
|
|
|
|
|
|
|
|
|
13635 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:44
|
13636 |
msgid "Maximum order amount"
|
13637 |
msgstr ""
|
@@ -13708,42 +14001,46 @@ msgstr ""
|
|
13708 |
msgid "Hide when free is available"
|
13709 |
msgstr ""
|
13710 |
|
13711 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13712 |
-
|
|
|
|
|
|
|
|
|
13713 |
msgid "Free Shipping by Product"
|
13714 |
msgstr ""
|
13715 |
|
13716 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13717 |
msgid ""
|
13718 |
"In this section you can select products which grant free shipping when added "
|
13719 |
"to cart."
|
13720 |
msgstr ""
|
13721 |
|
13722 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13723 |
#, php-format
|
13724 |
msgid "Similar results can be achieved with %s module."
|
13725 |
msgstr ""
|
13726 |
|
13727 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13728 |
msgid ""
|
13729 |
"Select either <strong>all products</strong> or <strong>at least one product</"
|
13730 |
"strong> in cart must grant free shipping."
|
13731 |
msgstr ""
|
13732 |
|
13733 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13734 |
msgid "All products in cart must grant free shipping"
|
13735 |
msgstr ""
|
13736 |
|
13737 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13738 |
msgid "At least one product in cart must grant free shipping"
|
13739 |
msgstr ""
|
13740 |
|
13741 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13742 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13743 |
msgid "Shipping Descriptions"
|
13744 |
msgstr ""
|
13745 |
|
13746 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13747 |
#, php-format
|
13748 |
msgid ""
|
13749 |
"This section will allow you to add any text (e.g. description) for shipping "
|
@@ -13751,64 +14048,64 @@ msgid ""
|
|
13751 |
"tags here, e.g. try \"%s\""
|
13752 |
msgstr ""
|
13753 |
|
13754 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13755 |
msgid "Description Visibility"
|
13756 |
msgstr ""
|
13757 |
|
13758 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13759 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13760 |
msgid "On both cart and checkout pages"
|
13761 |
msgstr ""
|
13762 |
|
13763 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13764 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13765 |
msgid "Only on cart page"
|
13766 |
msgstr ""
|
13767 |
|
13768 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13769 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13770 |
msgid "Only on checkout page"
|
13771 |
msgstr ""
|
13772 |
|
13773 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13774 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13775 |
msgid ""
|
13776 |
"Possible values: on both cart and checkout pages; only on cart page; only on "
|
13777 |
"checkout page"
|
13778 |
msgstr ""
|
13779 |
|
13780 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13781 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13782 |
msgid "Shipping Icons"
|
13783 |
msgstr ""
|
13784 |
|
13785 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13786 |
msgid ""
|
13787 |
"This section will allow you to add icons for shipping method. Icons will be "
|
13788 |
"visible on cart and checkout pages."
|
13789 |
msgstr ""
|
13790 |
|
13791 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13792 |
msgid "Icon Position"
|
13793 |
msgstr ""
|
13794 |
|
13795 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13796 |
msgid "Before label"
|
13797 |
msgstr ""
|
13798 |
|
13799 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13800 |
msgid "After label"
|
13801 |
msgstr ""
|
13802 |
|
13803 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13804 |
msgid "Icon Visibility"
|
13805 |
msgstr ""
|
13806 |
|
13807 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13808 |
msgid "Icon Style"
|
13809 |
msgstr ""
|
13810 |
|
13811 |
-
#: includes/settings/wcj-settings-shipping-options.php:
|
13812 |
msgid ""
|
13813 |
"You can also style icons with CSS class \"wcj_shipping_icon\", or id "
|
13814 |
"\"wcj_shipping_icon_method_id\""
|
@@ -14116,6 +14413,108 @@ msgstr ""
|
|
14116 |
msgid "Custom Out of Stock Class"
|
14117 |
msgstr ""
|
14118 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14119 |
#: includes/settings/wcj-settings-track-users.php:19
|
14120 |
msgid "Countries by Visits"
|
14121 |
msgstr ""
|
@@ -14417,6 +14816,10 @@ msgstr ""
|
|
14417 |
msgid "Hold Control (Ctrl) key to select multiple roles."
|
14418 |
msgstr ""
|
14419 |
|
|
|
|
|
|
|
|
|
14420 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:17
|
14421 |
msgid "Replace image with custom HTML on single product page"
|
14422 |
msgstr ""
|
@@ -14469,6 +14872,10 @@ msgstr ""
|
|
14469 |
msgid "Hold Control (Ctrl) key to select multiple products."
|
14470 |
msgstr ""
|
14471 |
|
|
|
|
|
|
|
|
|
14472 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:20
|
14473 |
msgid "Price directly"
|
14474 |
msgstr ""
|
@@ -14574,72 +14981,74 @@ msgstr ""
|
|
14574 |
msgid "Enable Custom Shipping"
|
14575 |
msgstr ""
|
14576 |
|
14577 |
-
#: includes/shortcodes/class-wcj-general
|
14578 |
-
|
14579 |
-
|
14580 |
-
|
|
|
|
|
14581 |
msgstr ""
|
14582 |
|
14583 |
-
#: includes/shortcodes/class-wcj-input-field
|
14584 |
msgid "Attribute \"name\" is required!"
|
14585 |
msgstr ""
|
14586 |
|
14587 |
-
#: includes/shortcodes/class-wcj-order-items
|
14588 |
msgid "Standard"
|
14589 |
msgstr ""
|
14590 |
|
14591 |
-
#: includes/shortcodes/class-wcj-orders
|
14592 |
msgid "Dollars"
|
14593 |
msgstr ""
|
14594 |
|
14595 |
-
#: includes/shortcodes/class-wcj-orders
|
14596 |
msgid "Cents"
|
14597 |
msgstr ""
|
14598 |
|
14599 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14600 |
msgid "Product by User"
|
14601 |
msgstr ""
|
14602 |
|
14603 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14604 |
msgid "Title is required!"
|
14605 |
msgstr ""
|
14606 |
|
14607 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14608 |
msgid "Product exists!"
|
14609 |
msgstr ""
|
14610 |
|
14611 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14612 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14613 |
msgid "Product URL"
|
14614 |
msgstr ""
|
14615 |
|
14616 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14617 |
#, php-format
|
14618 |
msgid "%s is required!"
|
14619 |
msgstr ""
|
14620 |
|
14621 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14622 |
msgid "Sale price must be less than the regular price!"
|
14623 |
msgstr ""
|
14624 |
|
14625 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14626 |
msgid "Error!"
|
14627 |
msgstr ""
|
14628 |
|
14629 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14630 |
msgid "Add New Product"
|
14631 |
msgstr ""
|
14632 |
|
14633 |
-
#: includes/shortcodes/class-wcj-products-add-form
|
14634 |
msgid "Edit Product"
|
14635 |
msgstr ""
|
14636 |
|
14637 |
-
#: includes/shortcodes/class-wcj-products
|
14638 |
#, php-format
|
14639 |
msgid "%s ago"
|
14640 |
msgstr ""
|
14641 |
|
14642 |
-
#: includes/shortcodes/class-wcj-products
|
14643 |
msgid "No sales yet."
|
14644 |
msgstr ""
|
14645 |
|
@@ -14827,3 +15236,7 @@ msgstr ""
|
|
14827 |
#: includes/widgets/class-wcj-widget-selector.php:59
|
14828 |
msgid "Selector Type"
|
14829 |
msgstr ""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
#: includes/class-wcj-add-to-cart.php:23
|
2 |
msgid "Add to Cart Labels"
|
3 |
msgstr ""
|
46 |
msgid "Manage Settings"
|
47 |
msgstr ""
|
48 |
|
49 |
+
#: includes/class-wcj-admin-bar.php:166 includes/class-wcj-admin-bar.php:461
|
50 |
+
#: includes/class-wcj-admin-bar.php:561
|
51 |
+
#: includes/admin/class-wc-settings-jetpack.php:211
|
52 |
+
#: includes/admin/class-wc-settings-jetpack.php:405
|
53 |
+
#: includes/core/class-wcj-admin.php:129
|
54 |
+
msgid "Settings"
|
55 |
+
msgstr ""
|
56 |
+
|
57 |
#: includes/class-wcj-admin-bar.php:170
|
58 |
+
#: includes/admin/class-wc-settings-jetpack.php:407
|
59 |
#: includes/classes/class-wcj-module.php:645
|
60 |
msgid "Documentation"
|
61 |
msgstr ""
|
62 |
|
63 |
#: includes/class-wcj-admin-bar.php:212
|
64 |
#: includes/admin/class-wc-settings-jetpack.php:138
|
65 |
+
#: includes/admin/wcj-modules-cats.php:14
|
66 |
msgid "Dashboard"
|
67 |
msgstr ""
|
68 |
|
122 |
msgstr ""
|
123 |
|
124 |
#: includes/class-wcj-admin-bar.php:304 includes/class-wcj-track-users.php:34
|
125 |
+
#: includes/functions/wcj-functions-reports.php:63
|
126 |
msgid "Last 7 days"
|
127 |
msgstr ""
|
128 |
|
129 |
#: includes/class-wcj-admin-bar.php:308
|
130 |
+
#: includes/functions/wcj-functions-reports.php:58
|
131 |
msgid "This month"
|
132 |
msgstr ""
|
133 |
|
134 |
#: includes/class-wcj-admin-bar.php:312
|
135 |
+
#: includes/functions/wcj-functions-reports.php:53
|
136 |
msgid "Last month"
|
137 |
msgstr ""
|
138 |
|
139 |
#: includes/class-wcj-admin-bar.php:316
|
140 |
+
#: includes/functions/wcj-functions-reports.php:48
|
141 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:111
|
142 |
msgid "Year"
|
143 |
msgstr ""
|
153 |
msgstr ""
|
154 |
|
155 |
#: includes/class-wcj-admin-bar.php:346 includes/class-wcj-admin-bar.php:350
|
156 |
+
#: includes/class-wcj-admin-bar.php:368 includes/class-wcj-orders.php:26
|
157 |
#: includes/settings/wcj-settings-reports.php:16
|
158 |
#: includes/settings/wcj-settings-reports.php:54
|
159 |
#: includes/settings/wcj-settings-reports.php:95
|
221 |
#: includes/class-wcj-product-by-user.php:96
|
222 |
#: includes/class-wcj-product-by-user.php:132
|
223 |
#: includes/class-wcj-shipping-by-products.php:32
|
224 |
+
#: includes/admin/wcj-modules-cats.php:59
|
225 |
+
#: includes/settings/wcj-settings-shipping-options.php:69
|
226 |
msgid "Products"
|
227 |
msgstr ""
|
228 |
|
236 |
#: includes/export/class-wcj-fields-helper.php:318
|
237 |
#: includes/settings/wcj-settings-price-by-user-role.php:129
|
238 |
#: includes/settings/wcj-settings-product-by-user.php:19
|
239 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:185
|
240 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:406
|
241 |
msgid "Categories"
|
242 |
msgstr ""
|
243 |
|
244 |
#: includes/class-wcj-admin-bar.php:437
|
245 |
#: includes/export/class-wcj-fields-helper.php:319
|
246 |
#: includes/settings/wcj-settings-product-by-user.php:20
|
247 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:186
|
248 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:411
|
249 |
msgid "Tags"
|
250 |
msgstr ""
|
251 |
|
370 |
msgid "Extensions"
|
371 |
msgstr ""
|
372 |
|
373 |
+
#: includes/class-wcj-admin-orders-list.php:25
|
374 |
+
msgid "Admin Orders List"
|
375 |
+
msgstr ""
|
376 |
+
|
377 |
+
#: includes/class-wcj-admin-orders-list.php:26
|
378 |
+
msgid ""
|
379 |
+
"Customize WooCommerce admin orders list: add custom columns; add multiple "
|
380 |
+
"status filtering."
|
381 |
+
msgstr ""
|
382 |
+
|
383 |
+
#: includes/class-wcj-admin-orders-list.php:165
|
384 |
+
msgid "Not Completed"
|
385 |
+
msgstr ""
|
386 |
+
|
387 |
+
#: includes/class-wcj-admin-orders-list.php:281
|
388 |
+
#: includes/settings/wcj-settings-product-by-country.php:86
|
389 |
+
msgid "All countries"
|
390 |
+
msgstr ""
|
391 |
+
|
392 |
+
#: includes/class-wcj-admin-orders-list.php:290
|
393 |
+
msgid "All currencies"
|
394 |
+
msgstr ""
|
395 |
+
|
396 |
+
#: includes/class-wcj-admin-orders-list.php:330
|
397 |
+
#: includes/export/class-wcj-fields-helper.php:44
|
398 |
+
#: includes/export/class-wcj-fields-helper.php:129
|
399 |
+
#: includes/export/class-wcj-fields-helper.php:214
|
400 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:27
|
401 |
+
msgid "Billing Country"
|
402 |
+
msgstr ""
|
403 |
+
|
404 |
+
#: includes/class-wcj-admin-orders-list.php:333
|
405 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:34
|
406 |
+
msgid "Currency Code"
|
407 |
+
msgstr ""
|
408 |
+
|
409 |
+
#: includes/class-wcj-admin-products-list.php:25
|
410 |
+
msgid "Admin Products List"
|
411 |
+
msgstr ""
|
412 |
+
|
413 |
+
#: includes/class-wcj-admin-products-list.php:26
|
414 |
+
msgid "Customize WooCommerce admin products list."
|
415 |
+
msgstr ""
|
416 |
+
|
417 |
#: includes/class-wcj-admin-tools.php:23 includes/class-wcj-admin-tools.php:30
|
418 |
msgid "Admin Tools"
|
419 |
msgstr ""
|
490 |
msgid "Customize WooCommerce breadcrumbs."
|
491 |
msgstr ""
|
492 |
|
493 |
+
#: includes/class-wcj-call-for-price.php:25
|
494 |
msgid "Call for Price"
|
495 |
msgstr ""
|
496 |
|
497 |
+
#: includes/class-wcj-call-for-price.php:26
|
498 |
msgid ""
|
499 |
"Create any custom price label for all WooCommerce products with empty price."
|
500 |
msgstr ""
|
534 |
"required, change labels and/or placeholders."
|
535 |
msgstr ""
|
536 |
|
537 |
+
#: includes/class-wcj-checkout-custom-fields.php:24
|
538 |
msgid "Checkout Custom Fields"
|
539 |
msgstr ""
|
540 |
|
541 |
+
#: includes/class-wcj-checkout-custom-fields.php:25
|
542 |
msgid "Add custom fields to WooCommerce checkout page."
|
543 |
msgstr ""
|
544 |
|
684 |
|
685 |
#: includes/class-wcj-currencies.php:24
|
686 |
msgid ""
|
687 |
+
"Add all world currencies and cryptocurrencies to your WooCommerce store; "
|
688 |
+
"change currency symbol."
|
689 |
msgstr ""
|
690 |
|
691 |
#: includes/class-wcj-currencies.php:69
|
704 |
msgid "Automatic currency exchange rates for WooCommerce."
|
705 |
msgstr ""
|
706 |
|
707 |
+
#: includes/class-wcj-currency-exchange-rates.php:167
|
708 |
+
#: includes/settings/wcj-settings-currency-exchange-rates.php:46
|
709 |
+
msgid "Exchange Rates Server"
|
710 |
+
msgstr ""
|
711 |
+
|
712 |
+
#: includes/class-wcj-currency-exchange-rates.php:172
|
713 |
+
#, php-format
|
714 |
+
msgid "Use default: %s"
|
715 |
+
msgstr ""
|
716 |
+
|
717 |
#: includes/class-wcj-currency-external-products.php:23
|
718 |
msgid "Currency for External Products"
|
719 |
msgstr ""
|
722 |
msgid "Set different currency for external WooCommerce products."
|
723 |
msgstr ""
|
724 |
|
725 |
+
#: includes/class-wcj-currency-per-product.php:26
|
726 |
msgid "Currency per Product"
|
727 |
msgstr ""
|
728 |
|
729 |
+
#: includes/class-wcj-currency-per-product.php:27
|
730 |
msgid "Display prices for WooCommerce products in different currencies."
|
731 |
msgstr ""
|
732 |
|
733 |
+
#: includes/class-wcj-currency-per-product.php:170
|
734 |
#: includes/settings/wcj-settings-currency-per-product.php:43
|
735 |
msgid ""
|
736 |
"Only one product can be added to the cart. Clear the cart or finish the "
|
737 |
"order, before adding another product to the cart."
|
738 |
msgstr ""
|
739 |
|
740 |
+
#: includes/class-wcj-currency-per-product.php:185
|
741 |
#: includes/settings/wcj-settings-currency-per-product.php:50
|
742 |
msgid ""
|
743 |
"Only products with same currency can be added to the cart. Clear the cart or "
|
744 |
"finish the order, before adding products with another currency to the cart."
|
745 |
msgstr ""
|
746 |
|
747 |
+
#: includes/class-wcj-currency-per-product.php:231
|
748 |
#, php-format
|
749 |
msgctxt "Price range: from-to"
|
750 |
msgid "%1$s–%2$s"
|
900 |
#: includes/class-wcj-emails.php:58 includes/class-wcj-emails.php:76
|
901 |
#: includes/emails/class-wc-email-wcj-custom.php:30
|
902 |
#: includes/settings/wcj-settings-emails.php:37
|
903 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:36
|
904 |
#: includes/settings/wcj-settings-shipping.php:63
|
905 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:46
|
906 |
msgid "Custom"
|
912 |
msgstr ""
|
913 |
|
914 |
#: includes/class-wcj-empty-cart-button.php:25
|
915 |
+
#: includes/shortcodes/class-wcj-shortcodes-general.php:375
|
916 |
msgid "Empty Cart Button"
|
917 |
msgstr ""
|
918 |
|
982 |
msgstr ""
|
983 |
|
984 |
#: includes/class-wcj-export-import.php:26
|
985 |
+
#: includes/admin/class-wc-settings-jetpack.php:291
|
986 |
msgid "Export"
|
987 |
msgstr ""
|
988 |
|
1044 |
msgstr ""
|
1045 |
|
1046 |
#: includes/class-wcj-export-import.php:214
|
1047 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:189
|
1048 |
+
#: includes/settings/wcj-settings-orders.php:38
|
1049 |
msgid "Filter"
|
1050 |
msgstr ""
|
1051 |
|
1139 |
|
1140 |
#: includes/class-wcj-general.php:197 includes/class-wcj-general.php:210
|
1141 |
#: includes/class-wcj-sku.php:333
|
1142 |
+
#: includes/reports/wcj-class-reports-sales.php:192
|
1143 |
#: includes/settings/wcj-settings-order-numbers.php:123
|
1144 |
#: includes/settings/wcj-settings-product-by-user.php:161
|
1145 |
#: includes/settings/wcj-settings-related-products.php:30
|
1167 |
#: includes/class-wcj-product-by-user.php:206
|
1168 |
#: includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php:138
|
1169 |
#: includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php:303
|
1170 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:367
|
1171 |
#: includes/tools/class-wcj-order-statuses-tool.php:157
|
1172 |
msgid "Delete"
|
1173 |
msgstr ""
|
1181 |
msgstr ""
|
1182 |
|
1183 |
#: includes/class-wcj-general.php:215
|
1184 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:132
|
1185 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:22
|
1186 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:29
|
1187 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:55
|
1188 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:194
|
1189 |
#: includes/settings/wcj-settings-email-options.php:20
|
1190 |
#: includes/settings/wcj-settings-eu-vat-number.php:157
|
1191 |
#: includes/settings/wcj-settings-eu-vat-number.php:193
|
1193 |
#: includes/settings/wcj-settings-order-custom-statuses.php:29
|
1194 |
#: includes/settings/wcj-settings-order-custom-statuses.php:37
|
1195 |
#: includes/settings/wcj-settings-order-custom-statuses.php:70
|
1196 |
+
#: includes/settings/wcj-settings-order-min-amount.php:53
|
1197 |
+
#: includes/settings/wcj-settings-orders.php:81
|
|
|
1198 |
#: includes/settings/wcj-settings-pdf-invoicing-display.php:151
|
1199 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:132
|
1200 |
#: includes/settings/wcj-settings-product-by-country.php:110
|
1201 |
#: includes/settings/wcj-settings-product-by-user.php:114
|
1202 |
+
#: includes/settings/wcj-settings-product-tabs.php:227
|
1203 |
#: includes/settings/wcj-settings-purchase-data.php:134
|
1204 |
#: includes/settings/wcj-settings-purchase-data.php:143
|
1205 |
#: includes/settings/wcj-settings-purchase-data.php:162
|
1206 |
#: includes/settings/wcj-settings-purchase-data.php:169
|
1207 |
#: includes/settings/wcj-settings-sku.php:181
|
1208 |
#: includes/settings/wcj-settings-sku.php:197
|
1209 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:425
|
1210 |
#: includes/tools/class-wcj-order-statuses-tool.php:228
|
1211 |
msgid "Add"
|
1212 |
msgstr ""
|
1215 |
#: includes/class-wcj-product-bulk-meta-editor.php:339
|
1216 |
#: includes/class-wcj-product-bulk-price-converter.php:148
|
1217 |
#: includes/class-wcj-sku.php:334
|
1218 |
+
#: includes/reports/wcj-class-reports-sales.php:193
|
1219 |
#: includes/reports/wcj-class-reports-stock.php:253
|
1220 |
msgid "Product"
|
1221 |
msgstr ""
|
1230 |
msgstr ""
|
1231 |
|
1232 |
#: includes/class-wcj-global-discount.php:27
|
1233 |
+
#: includes/admin/class-wc-settings-jetpack.php:460
|
1234 |
msgid "Global Discount"
|
1235 |
msgstr ""
|
1236 |
|
1249 |
#: includes/class-wcj-left-to-free-shipping.php:62
|
1250 |
#: includes/class-wcj-left-to-free-shipping.php:72
|
1251 |
#: includes/class-wcj-left-to-free-shipping.php:82
|
1252 |
+
#: includes/functions/wcj-functions-general.php:359
|
1253 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:37
|
1254 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:72
|
1255 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:111
|
1320 |
#: includes/functions/wcj-functions-html.php:95
|
1321 |
#: includes/reports/wcj-class-reports-monthly-sales.php:341
|
1322 |
#: includes/settings/wcj-settings-empty-cart.php:80
|
1323 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:367
|
1324 |
#: includes/tools/class-wcj-order-statuses-tool.php:157
|
1325 |
#: includes/tools/class-wcj-order-statuses-tool.php:261
|
1326 |
msgid "Are you sure?"
|
1656 |
"Your current item quantity is %item_quantity%."
|
1657 |
msgstr ""
|
1658 |
|
1659 |
+
#: includes/class-wcj-orders.php:27
|
1660 |
msgid ""
|
1661 |
+
"WooCommerce orders auto-complete; admin order currency; bulk regenerate "
|
1662 |
+
"download permissions for orders."
|
1663 |
msgstr ""
|
1664 |
|
1665 |
+
#: includes/class-wcj-orders.php:114
|
1666 |
msgid "Regenerate download permissions"
|
1667 |
msgstr ""
|
1668 |
|
1669 |
+
#: includes/class-wcj-orders.php:128
|
1670 |
#, php-format
|
1671 |
msgid "Download permissions regenerated for %s order."
|
1672 |
msgid_plural "Download permissions regenerated for %s orders."
|
1673 |
msgstr[0] ""
|
1674 |
msgstr[1] ""
|
1675 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1676 |
#: includes/class-wcj-payment-gateways-by-country.php:24
|
1677 |
msgid "Gateways by Country or State"
|
1678 |
msgstr ""
|
1843 |
msgstr ""
|
1844 |
|
1845 |
#: includes/class-wcj-pdf-invoicing.php:250
|
1846 |
+
#: includes/classes/class-wcj-pdf-invoice.php:233
|
1847 |
#: includes/pdf-invoices/class-wcj-pdf-invoicing-report-tool.php:230
|
1848 |
msgid "Unexpected error"
|
1849 |
msgstr ""
|
1919 |
|
1920 |
#: includes/class-wcj-price-labels.php:40
|
1921 |
#: includes/class-wcj-product-info.php:254
|
1922 |
+
#: includes/class-wcj-shipping-options.php:173
|
1923 |
#: includes/settings/wcj-settings-add-to-cart.php:52
|
1924 |
#: includes/settings/wcj-settings-address-formats.php:20
|
1925 |
#: includes/settings/wcj-settings-admin-bar.php:20
|
1931 |
#: includes/settings/wcj-settings-admin-tools.php:74
|
1932 |
#: includes/settings/wcj-settings-admin-tools.php:81
|
1933 |
#: includes/settings/wcj-settings-breadcrumbs.php:20
|
1934 |
+
#: includes/settings/wcj-settings-call-for-price.php:79
|
1935 |
#: includes/settings/wcj-settings-cart-customization.php:34
|
1936 |
#: includes/settings/wcj-settings-cart-customization.php:57
|
1937 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:107
|
1938 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:209
|
1939 |
#: includes/settings/wcj-settings-checkout-customization.php:78
|
1940 |
#: includes/settings/wcj-settings-checkout-files-upload.php:291
|
1941 |
#: includes/settings/wcj-settings-coupon-code-generator.php:32
|
1949 |
#: includes/settings/wcj-settings-custom-css.php:34
|
1950 |
#: includes/settings/wcj-settings-emails-verification.php:28
|
1951 |
#: includes/settings/wcj-settings-emails-verification.php:36
|
1952 |
+
#: includes/settings/wcj-settings-general.php:43
|
1953 |
+
#: includes/settings/wcj-settings-general.php:67
|
1954 |
+
#: includes/settings/wcj-settings-general.php:83
|
1955 |
+
#: includes/settings/wcj-settings-general.php:151
|
1956 |
+
#: includes/settings/wcj-settings-general.php:202
|
1957 |
#: includes/settings/wcj-settings-global-discount.php:52
|
1958 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:27
|
1959 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:60
|
1971 |
#: includes/settings/wcj-settings-order-quantities.php:111
|
1972 |
#: includes/settings/wcj-settings-order-quantities.php:137
|
1973 |
#: includes/settings/wcj-settings-order-quantities.php:144
|
1974 |
+
#: includes/settings/wcj-settings-orders.php:25
|
1975 |
+
#: includes/settings/wcj-settings-orders.php:54
|
|
|
1976 |
#: includes/settings/wcj-settings-pdf-invoicing-display.php:113
|
1977 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:23
|
1978 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:23
|
1992 |
#: includes/settings/wcj-settings-product-add-to-cart.php:41
|
1993 |
#: includes/settings/wcj-settings-product-add-to-cart.php:80
|
1994 |
#: includes/settings/wcj-settings-product-add-to-cart.php:132
|
1995 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:162
|
1996 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:178
|
1997 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:209
|
1998 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:226
|
1999 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:267
|
2000 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:281
|
2001 |
#: includes/settings/wcj-settings-product-addons.php:24
|
2002 |
#: includes/settings/wcj-settings-product-addons.php:43
|
2003 |
#: includes/settings/wcj-settings-product-addons.php:67
|
2015 |
#: includes/settings/wcj-settings-product-by-user-role.php:29
|
2016 |
#: includes/settings/wcj-settings-product-by-user-role.php:37
|
2017 |
#: includes/settings/wcj-settings-product-by-user.php:107
|
2018 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:21
|
2019 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:29
|
2020 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:37
|
2021 |
#: includes/settings/wcj-settings-product-info.php:35
|
2022 |
#: includes/settings/wcj-settings-product-info.php:68
|
2023 |
#: includes/settings/wcj-settings-product-input-fields.php:22
|
2024 |
#: includes/settings/wcj-settings-product-input-fields.php:52
|
2025 |
+
#: includes/settings/wcj-settings-product-input-fields.php:317
|
2026 |
#: includes/settings/wcj-settings-product-open-pricing.php:87
|
2027 |
#: includes/settings/wcj-settings-product-open-pricing.php:94
|
2028 |
#: includes/settings/wcj-settings-product-open-pricing.php:108
|
2030 |
#: includes/settings/wcj-settings-product-tabs.php:23
|
2031 |
#: includes/settings/wcj-settings-product-tabs.php:212
|
2032 |
#: includes/settings/wcj-settings-product-tabs.php:220
|
2033 |
+
#: includes/settings/wcj-settings-products-xml.php:77
|
2034 |
#: includes/settings/wcj-settings-purchase-data.php:22
|
2035 |
#: includes/settings/wcj-settings-purchase-data.php:29
|
2036 |
#: includes/settings/wcj-settings-purchase-data.php:36
|
2046 |
#: includes/settings/wcj-settings-shipping-calculator.php:27
|
2047 |
#: includes/settings/wcj-settings-shipping-calculator.php:34
|
2048 |
#: includes/settings/wcj-settings-shipping-calculator.php:41
|
2049 |
+
#: includes/settings/wcj-settings-shipping-options.php:63
|
2050 |
#: includes/settings/wcj-settings-shipping.php:24
|
2051 |
#: includes/settings/wcj-settings-sku.php:50
|
2052 |
#: includes/settings/wcj-settings-sku.php:157
|
2062 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-add-to-cart.php:92
|
2063 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:35
|
2064 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:17
|
2065 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php:14
|
2066 |
msgid "Enable"
|
2067 |
msgstr ""
|
2068 |
|
2135 |
msgid "Customize Add to Cart messages."
|
2136 |
msgstr ""
|
2137 |
|
2138 |
+
#: includes/class-wcj-product-add-to-cart.php:146
|
2139 |
#, php-format
|
2140 |
msgctxt "Item name in quotes"
|
2141 |
msgid "“%s”"
|
2142 |
msgstr ""
|
2143 |
|
2144 |
+
#: includes/class-wcj-product-add-to-cart.php:151
|
2145 |
#, php-format
|
2146 |
msgid "%s has been added to your cart."
|
2147 |
msgid_plural "%s have been added to your cart."
|
2148 |
msgstr[0] ""
|
2149 |
msgstr[1] ""
|
2150 |
|
2151 |
+
#: includes/class-wcj-product-add-to-cart.php:155
|
2152 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:276
|
2153 |
msgid "Continue shopping"
|
2154 |
msgstr ""
|
2155 |
|
2156 |
+
#: includes/class-wcj-product-add-to-cart.php:157
|
2157 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:290
|
2158 |
msgid "View cart"
|
2159 |
msgstr ""
|
2160 |
|
2166 |
msgid "Add (paid/free/discount) addons to WooCommerce products."
|
2167 |
msgstr ""
|
2168 |
|
2169 |
+
#: includes/class-wcj-product-addons.php:101
|
2170 |
msgid "Some of the required addons are not selected!"
|
2171 |
msgstr ""
|
2172 |
|
2173 |
+
#: includes/class-wcj-product-addons.php:116
|
2174 |
msgid ""
|
2175 |
"Booster: Free plugin's version is limited to only three products with per "
|
2176 |
"product addons enabled at a time. You will need to get <a href=\"http://"
|
2294 |
msgstr ""
|
2295 |
|
2296 |
#: includes/class-wcj-product-bulk-meta-editor.php:294
|
2297 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:70
|
2298 |
+
#: includes/settings/wcj-settings-admin-products-list.php:56
|
2299 |
#: includes/settings/wcj-settings-export.php:91
|
2300 |
#: includes/settings/wcj-settings-export.php:162
|
2301 |
#: includes/settings/wcj-settings-export.php:241
|
2302 |
#: includes/settings/wcj-settings-global-discount.php:69
|
|
|
|
|
2303 |
msgid "Value"
|
2304 |
msgstr ""
|
2305 |
|
2403 |
msgstr ""
|
2404 |
|
2405 |
#: includes/class-wcj-product-bulk-price-converter.php:260
|
2406 |
+
#: includes/shortcodes/class-wcj-shortcodes-products.php:305
|
2407 |
msgid "Any"
|
2408 |
msgstr ""
|
2409 |
|
2522 |
|
2523 |
#: includes/class-wcj-product-by-user.php:154
|
2524 |
#: includes/class-wcj-product-by-user.php:163
|
2525 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:313
|
2526 |
msgid "Wrong user ID!"
|
2527 |
msgstr ""
|
2528 |
|
2533 |
msgstr ""
|
2534 |
|
2535 |
#: includes/class-wcj-product-by-user.php:197
|
2536 |
+
#: includes/class-wcj-product-tabs.php:576
|
2537 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:66
|
2538 |
#: includes/input-fields/wcj-product-input-fields-options.php:51
|
2539 |
#: includes/settings/wcj-settings-export.php:75
|
2542 |
#: includes/settings/wcj-settings-product-addons.php:86
|
2543 |
#: includes/settings/wcj-settings-product-by-user.php:167
|
2544 |
#: includes/settings/wcj-settings-product-tabs.php:52
|
2545 |
+
#: includes/settings/wcj-settings-product-tabs.php:368
|
2546 |
+
#: includes/settings/wcj-settings-product-tabs.php:389
|
2547 |
+
#: includes/settings/wcj-settings-product-tabs.php:410
|
2548 |
#: includes/settings/wcj-settings-purchase-data.php:66
|
2549 |
#: includes/settings/wcj-settings-related-products.php:24
|
2550 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:57
|
2551 |
#: includes/shipping/class-wc-shipping-wcj-custom-with-shipping-zones.php:157
|
2552 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:116
|
2553 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:337
|
2554 |
#: includes/widgets/class-wcj-widget-country-switcher.php:62
|
2555 |
#: includes/widgets/class-wcj-widget-left-to-free-shipping.php:52
|
2556 |
#: includes/widgets/class-wcj-widget-multicurrency.php:63
|
2559 |
msgstr ""
|
2560 |
|
2561 |
#: includes/class-wcj-product-by-user.php:205
|
2562 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:425
|
2563 |
#: includes/tools/class-wcj-order-statuses-tool.php:160
|
2564 |
#: includes/tools/class-wcj-order-statuses-tool.php:228
|
2565 |
msgid "Edit"
|
2566 |
msgstr ""
|
2567 |
|
2568 |
#: includes/class-wcj-product-custom-info.php:24
|
2569 |
+
#: includes/admin/class-wc-settings-jetpack.php:461
|
2570 |
+
#: includes/functions/wcj-functions-general.php:170
|
2571 |
msgid "Product Info"
|
2572 |
msgstr ""
|
2573 |
|
2576 |
msgid "Add additional info to WooCommerce category and single product pages."
|
2577 |
msgstr ""
|
2578 |
|
2579 |
+
#: includes/class-wcj-product-custom-visibility.php:28
|
2580 |
+
msgid "Product Custom Visibility"
|
2581 |
+
msgstr ""
|
2582 |
+
|
2583 |
+
#: includes/class-wcj-product-custom-visibility.php:29
|
2584 |
+
msgid "Display WooCommerce products by custom param."
|
2585 |
+
msgstr ""
|
2586 |
+
|
2587 |
+
#: includes/class-wcj-product-custom-visibility.php:31
|
2588 |
+
msgid ""
|
2589 |
+
"When enabled, module will add new \"Booster: Product Custom Visibility\" "
|
2590 |
+
"meta box to each product's edit page."
|
2591 |
+
msgstr ""
|
2592 |
+
|
2593 |
+
#: includes/class-wcj-product-custom-visibility.php:33
|
2594 |
+
#, php-format
|
2595 |
+
msgid ""
|
2596 |
+
"You can add selection drop box to frontend with \"%s\" widget (set \"Product "
|
2597 |
+
"custom visibility\" as \"Selector Type\") or %s shortcode."
|
2598 |
+
msgstr ""
|
2599 |
+
|
2600 |
+
#: includes/class-wcj-product-custom-visibility.php:34
|
2601 |
+
#: includes/settings/wcj-settings-product-by-country.php:56
|
2602 |
+
#: includes/widgets/class-wcj-widget-selector.php:27
|
2603 |
+
msgid "Booster - Selector"
|
2604 |
+
msgstr ""
|
2605 |
+
|
2606 |
#: includes/class-wcj-product-images.php:25
|
2607 |
msgid "Product Images"
|
2608 |
msgstr ""
|
2609 |
|
2610 |
#: includes/class-wcj-product-images.php:26
|
2611 |
+
msgid "Customize WooCommerce products images and thumbnails."
|
|
|
|
|
|
|
|
|
|
|
2612 |
msgstr ""
|
2613 |
|
2614 |
#: includes/class-wcj-product-info.php:101
|
2675 |
#: includes/settings/wcj-settings-product-info.php:61
|
2676 |
#: includes/settings/wcj-settings-product-info.php:94
|
2677 |
#: includes/settings/wcj-settings-product-tabs.php:66
|
2678 |
+
#: includes/settings/wcj-settings-product-tabs.php:378
|
2679 |
+
#: includes/settings/wcj-settings-product-tabs.php:399
|
2680 |
+
#: includes/settings/wcj-settings-product-tabs.php:420
|
2681 |
msgid "Priority (i.e. Order)"
|
2682 |
msgstr ""
|
2683 |
|
2699 |
msgstr ""
|
2700 |
|
2701 |
#: includes/class-wcj-product-input-fields.php:24
|
2702 |
+
#: includes/admin/class-wc-settings-jetpack.php:462
|
2703 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:123
|
2704 |
msgid "Product Input Fields"
|
2705 |
msgstr ""
|
2793 |
"remove WooCommerce default product tabs."
|
2794 |
msgstr ""
|
2795 |
|
2796 |
+
#: includes/class-wcj-product-tabs.php:533
|
2797 |
msgid "Booster: Custom Tabs"
|
2798 |
msgstr ""
|
2799 |
|
2800 |
+
#: includes/class-wcj-product-tabs.php:560
|
2801 |
msgid "Total number of custom tabs"
|
2802 |
msgstr ""
|
2803 |
|
2804 |
+
#: includes/class-wcj-product-tabs.php:566
|
2805 |
#: includes/input-fields/class-wcj-product-input-fields-core.php:149
|
2806 |
msgid "Click \"Update\" product after you change this number."
|
2807 |
msgstr ""
|
2808 |
|
2809 |
+
#: includes/class-wcj-product-tabs.php:581
|
2810 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:108
|
2811 |
#: includes/settings/wcj-settings-product-tabs.php:59
|
2812 |
msgid "Key"
|
2813 |
msgstr ""
|
2814 |
|
2815 |
+
#: includes/class-wcj-product-tabs.php:586
|
2816 |
#: includes/input-fields/wcj-product-input-fields-options.php:21
|
2817 |
#: includes/settings/wcj-settings-related-products.php:59
|
2818 |
#: includes/settings/wcj-settings-related-products.php:84
|
2819 |
msgid "Order"
|
2820 |
msgstr ""
|
2821 |
|
2822 |
+
#: includes/class-wcj-product-tabs.php:591
|
2823 |
#: includes/settings/wcj-settings-cart.php:44
|
2824 |
#: includes/settings/wcj-settings-checkout-custom-info.php:40
|
2825 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:34
|
2832 |
msgid "Content"
|
2833 |
msgstr ""
|
2834 |
|
2835 |
+
#: includes/class-wcj-product-tabs.php:596
|
2836 |
#: includes/settings/wcj-settings-cart-customization.php:63
|
2837 |
#: includes/settings/wcj-settings-product-tabs.php:80
|
2838 |
msgid "Link"
|
2839 |
msgstr ""
|
2840 |
|
2841 |
+
#: includes/class-wcj-product-tabs.php:598
|
2842 |
#: includes/settings/wcj-settings-product-tabs.php:81
|
2843 |
msgid ""
|
2844 |
"If you wish to forward tab to new link, enter it here. In this case content "
|
2845 |
"is ignored. Leave blank to show content."
|
2846 |
msgstr ""
|
2847 |
|
2848 |
+
#: includes/class-wcj-product-tabs.php:602
|
2849 |
#: includes/settings/wcj-settings-product-tabs.php:88
|
2850 |
msgid "Link - Open in New Window"
|
2851 |
msgstr ""
|
2852 |
|
2853 |
+
#: includes/class-wcj-product-tabs.php:605
|
2854 |
#: includes/input-fields/wcj-product-input-fields-options.php:95
|
2855 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:82
|
2856 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:224
|
2857 |
#: includes/settings/meta-box/wcj-settings-meta-box-custom-css.php:20
|
2858 |
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:20
|
2859 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:35
|
2872 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:20
|
2873 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-price-by-formula.php:19
|
2874 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:23
|
2875 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php:20
|
2876 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:32
|
2877 |
#: includes/widgets/class-wcj-widget-country-switcher.php:82
|
2878 |
msgid "No"
|
2879 |
msgstr ""
|
2880 |
|
2881 |
+
#: includes/class-wcj-product-tabs.php:606
|
2882 |
#: includes/input-fields/wcj-product-input-fields-options.php:88
|
2883 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:218
|
2884 |
#: includes/settings/wcj-settings-eu-vat-number.php:50
|
2885 |
#: includes/settings/wcj-settings-eu-vat-number.php:57
|
2886 |
#: includes/settings/wcj-settings-eu-vat-number.php:75
|
2905 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:19
|
2906 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-price-by-formula.php:18
|
2907 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:24
|
2908 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php:19
|
2909 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:31
|
2910 |
#: includes/widgets/class-wcj-widget-country-switcher.php:83
|
2911 |
msgid "Yes"
|
2912 |
msgstr ""
|
2913 |
|
2914 |
+
#: includes/class-wcj-product-tabs.php:614
|
2915 |
#: includes/settings/wcj-settings-checkout-core-fields.php:61
|
2916 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:141
|
2917 |
+
#: includes/settings/wcj-settings-orders.php:102
|
2918 |
#: includes/settings/wcj-settings-product-add-to-cart.php:64
|
2919 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-by-date.php:19
|
2920 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-by-time.php:19
|
2921 |
msgid "Disabled"
|
2922 |
msgstr ""
|
2923 |
|
2924 |
+
#: includes/class-wcj-product-tabs.php:617
|
2925 |
#: includes/settings/wcj-settings-product-tabs.php:51
|
2926 |
+
#: includes/settings/wcj-settings-product-tabs.php:250
|
2927 |
msgid "Custom Product Tab"
|
2928 |
msgstr ""
|
2929 |
|
2943 |
msgstr ""
|
2944 |
|
2945 |
#: includes/class-wcj-products-xml.php:26
|
2946 |
+
msgid "Products XML Feeds"
|
2947 |
msgstr ""
|
2948 |
|
2949 |
#: includes/class-wcj-products-xml.php:27
|
2950 |
+
msgid "WooCommerce products XML feeds."
|
2951 |
msgstr ""
|
2952 |
|
2953 |
#: includes/class-wcj-products-xml.php:94
|
2997 |
msgstr ""
|
2998 |
|
2999 |
#: includes/class-wcj-purchase-data.php:92
|
3000 |
+
#: includes/admin/class-wc-settings-jetpack.php:295
|
3001 |
msgid "Import"
|
3002 |
msgstr ""
|
3003 |
|
3037 |
msgstr ""
|
3038 |
|
3039 |
#: includes/class-wcj-related-products.php:38
|
3040 |
+
#: includes/admin/class-wc-settings-jetpack.php:464
|
3041 |
#: includes/settings/wcj-settings-free-price.php:20
|
3042 |
#: includes/settings/meta-box/wcj-settings-meta-box-related-products.php:28
|
3043 |
msgid "Related Products"
|
3067 |
msgid "Booster: More Ranges - Months"
|
3068 |
msgstr ""
|
3069 |
|
3070 |
+
#: includes/class-wcj-reports.php:74 includes/class-wcj-reports.php:119
|
3071 |
msgid "Select Range"
|
3072 |
msgstr ""
|
3073 |
|
3074 |
+
#: includes/class-wcj-reports.php:117
|
3075 |
msgid "Booster: More Ranges"
|
3076 |
msgstr ""
|
3077 |
|
3078 |
+
#: includes/class-wcj-reports.php:208
|
3079 |
msgid "Booster: Product Sales (Daily)"
|
3080 |
msgstr ""
|
3081 |
|
3082 |
+
#: includes/class-wcj-reports.php:215
|
3083 |
msgid "Booster: Product Sales (Monthly)"
|
3084 |
msgstr ""
|
3085 |
|
3086 |
+
#: includes/class-wcj-reports.php:222
|
3087 |
msgid "Booster: Monthly Sales (with Currency Conversion)"
|
3088 |
msgstr ""
|
3089 |
|
3090 |
+
#: includes/class-wcj-reports.php:237
|
3091 |
msgid "Booster: All in stock"
|
3092 |
msgstr ""
|
3093 |
|
3094 |
+
#: includes/class-wcj-reports.php:244
|
3095 |
msgid "Booster: Understocked"
|
3096 |
msgstr ""
|
3097 |
|
3098 |
+
#: includes/class-wcj-reports.php:251
|
3099 |
msgid "Booster: Overstocked"
|
3100 |
msgstr ""
|
3101 |
|
3102 |
+
#: includes/class-wcj-reports.php:266
|
3103 |
msgid "Booster: Customers by Country"
|
3104 |
msgstr ""
|
3105 |
|
3106 |
+
#: includes/class-wcj-reports.php:273
|
3107 |
msgid "Booster: Customers by Country Sets"
|
3108 |
msgstr ""
|
3109 |
|
3110 |
+
#: includes/class-wcj-sale-flash.php:28
|
3111 |
+
#: includes/settings/wcj-settings-sale-flash.php:26
|
3112 |
+
msgid "Sale Flash"
|
3113 |
+
msgstr ""
|
3114 |
+
|
3115 |
+
#: includes/class-wcj-sale-flash.php:29
|
3116 |
+
msgid "Customize WooCommerce products sale flash."
|
3117 |
+
msgstr ""
|
3118 |
+
|
3119 |
+
#: includes/class-wcj-sale-flash.php:55 includes/class-wcj-sale-flash.php:89
|
3120 |
+
#: includes/settings/wcj-settings-sale-flash.php:29
|
3121 |
+
#: includes/settings/wcj-settings-sale-flash.php:104
|
3122 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php:26
|
3123 |
+
msgid "Sale!"
|
3124 |
+
msgstr ""
|
3125 |
+
|
3126 |
#: includes/class-wcj-shipping-by-order-amount.php:26
|
3127 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:14
|
3128 |
msgid "Shipping Methods by Min/Max Order Amount"
|
3135 |
msgstr ""
|
3136 |
|
3137 |
#: includes/class-wcj-shipping-by-products.php:26
|
3138 |
+
#: includes/settings/wcj-settings-shipping-options.php:57
|
3139 |
msgid "Shipping Methods by Products"
|
3140 |
msgstr ""
|
3141 |
|
3150 |
msgstr ""
|
3151 |
|
3152 |
#: includes/class-wcj-shipping-by-products.php:36
|
3153 |
+
#: includes/settings/wcj-settings-currency-per-product.php:206
|
3154 |
msgid "Product Categories"
|
3155 |
msgstr ""
|
3156 |
|
3159 |
msgstr ""
|
3160 |
|
3161 |
#: includes/class-wcj-shipping-by-products.php:40
|
3162 |
+
#: includes/settings/wcj-settings-currency-per-product.php:218
|
3163 |
msgid "Product Tags"
|
3164 |
msgstr ""
|
3165 |
|
3192 |
msgstr ""
|
3193 |
|
3194 |
#: includes/class-wcj-shipping-by-user-role.php:31
|
3195 |
+
#: includes/settings/wcj-settings-tax-display.php:107
|
3196 |
msgid "User Roles"
|
3197 |
msgstr ""
|
3198 |
|
3199 |
#: includes/class-wcj-shipping-by-user-role.php:33
|
3200 |
+
#: includes/settings/wcj-settings-multicurrency.php:162
|
3201 |
+
#: includes/settings/wcj-settings-order-min-amount.php:104
|
3202 |
#: includes/settings/wcj-settings-price-by-user-role.php:82
|
3203 |
#, php-format
|
3204 |
msgid ""
|
3245 |
msgid "Grant free shipping on per product basis."
|
3246 |
msgstr ""
|
3247 |
|
3248 |
+
#: includes/class-wcj-shipping-options.php:172
|
3249 |
msgid "Booster: Hide when free is available"
|
3250 |
msgstr ""
|
3251 |
|
3252 |
+
#: includes/class-wcj-shipping-options.php:180
|
3253 |
#: includes/settings/wcj-settings-shipping-options.php:28
|
3254 |
msgid ""
|
3255 |
"Available options: hide all; hide all except \"Local Pickup\"; hide \"Flat "
|
3256 |
"Rate\" only."
|
3257 |
msgstr ""
|
3258 |
|
3259 |
+
#: includes/class-wcj-shipping-options.php:184
|
3260 |
#: includes/settings/wcj-settings-shipping-options.php:32
|
3261 |
msgid "Hide all"
|
3262 |
msgstr ""
|
3263 |
|
3264 |
+
#: includes/class-wcj-shipping-options.php:185
|
3265 |
#: includes/settings/wcj-settings-shipping-options.php:33
|
3266 |
msgid "Hide all except \"Local Pickup\""
|
3267 |
msgstr ""
|
3268 |
|
3269 |
+
#: includes/class-wcj-shipping-options.php:186
|
3270 |
#: includes/settings/wcj-settings-shipping-options.php:34
|
3271 |
msgid "Hide \"Flat Rate\" only"
|
3272 |
msgstr ""
|
3354 |
msgid "WooCommerce products stock management."
|
3355 |
msgstr ""
|
3356 |
|
3357 |
+
#: includes/class-wcj-tax-display.php:25
|
3358 |
+
msgid "Tax Display"
|
3359 |
+
msgstr ""
|
3360 |
+
|
3361 |
+
#: includes/class-wcj-tax-display.php:26
|
3362 |
+
msgid "Customize WooCommerce tax display."
|
3363 |
+
msgstr ""
|
3364 |
+
|
3365 |
#: includes/class-wcj-track-users.php:26
|
3366 |
msgid "User Tracking"
|
3367 |
msgstr ""
|
3387 |
msgstr ""
|
3388 |
|
3389 |
#: includes/class-wcj-track-users.php:159
|
3390 |
+
#: includes/settings/wcj-settings-products-xml.php:120
|
3391 |
msgid "URL:"
|
3392 |
msgstr ""
|
3393 |
|
3491 |
"can be moved to paid plugin version."
|
3492 |
msgstr ""
|
3493 |
|
3494 |
+
#: includes/admin/class-wc-settings-jetpack.php:263
|
3495 |
msgid ""
|
3496 |
"This section lets you export, import or reset all Booster's modules settings."
|
3497 |
msgstr ""
|
3498 |
|
3499 |
+
#: includes/admin/class-wc-settings-jetpack.php:292
|
3500 |
msgid "Export all Booster's options to a file."
|
3501 |
msgstr ""
|
3502 |
|
3503 |
+
#: includes/admin/class-wc-settings-jetpack.php:297
|
3504 |
msgid "Import all Booster's options from a file."
|
3505 |
msgstr ""
|
3506 |
|
3507 |
+
#: includes/admin/class-wc-settings-jetpack.php:300
|
3508 |
msgid ""
|
3509 |
"This will reset settings to defaults for all Booster modules. Are you sure?"
|
3510 |
msgstr ""
|
3511 |
|
3512 |
+
#: includes/admin/class-wc-settings-jetpack.php:300
|
3513 |
msgid "Reset"
|
3514 |
msgstr ""
|
3515 |
|
3516 |
+
#: includes/admin/class-wc-settings-jetpack.php:301
|
3517 |
msgid "Reset all Booster's options."
|
3518 |
msgstr ""
|
3519 |
|
3520 |
+
#: includes/admin/class-wc-settings-jetpack.php:338
|
3521 |
msgid "Version"
|
3522 |
msgstr ""
|
3523 |
|
3524 |
+
#: includes/admin/class-wc-settings-jetpack.php:362
|
3525 |
+
#: includes/admin/class-wc-settings-jetpack.php:369
|
3526 |
msgid "Select All"
|
3527 |
msgstr ""
|
3528 |
|
3529 |
+
#: includes/admin/class-wc-settings-jetpack.php:363
|
3530 |
+
#: includes/admin/class-wc-settings-jetpack.php:370
|
3531 |
#: includes/admin/class-wcj-tools.php:72
|
3532 |
msgid "Module"
|
3533 |
msgstr ""
|
3534 |
|
3535 |
+
#: includes/admin/class-wc-settings-jetpack.php:364
|
3536 |
+
#: includes/admin/class-wc-settings-jetpack.php:371
|
3537 |
#: includes/admin/class-wcj-tools.php:73
|
3538 |
#: includes/export/class-wcj-fields-helper.php:293
|
3539 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:74
|
3540 |
#: includes/settings/wcj-settings-eu-vat-number.php:34
|
3541 |
#: includes/settings/wcj-settings-product-by-user.php:13
|
3542 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:179
|
3543 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:345
|
3544 |
msgid "Description"
|
3545 |
msgstr ""
|
3546 |
|
3547 |
+
#: includes/admin/class-wc-settings-jetpack.php:419
|
3548 |
msgid "No active modules found."
|
3549 |
msgstr ""
|
3550 |
|
3551 |
+
#: includes/admin/class-wc-settings-jetpack.php:422
|
3552 |
msgid "Total Modules:"
|
3553 |
msgstr ""
|
3554 |
|
3555 |
+
#: includes/admin/class-wc-settings-jetpack.php:449
|
3556 |
msgid "Autoload Booster's Options"
|
3557 |
msgstr ""
|
3558 |
|
3559 |
+
#: includes/admin/class-wc-settings-jetpack.php:451
|
3560 |
msgid ""
|
3561 |
"Choose if you want Booster's options to be autoloaded when calling "
|
3562 |
"add_option. After saving this option, you need to Reset all Booster's "
|
3563 |
"settings. Leave default value (i.e. Enabled) if not sure."
|
3564 |
msgstr ""
|
3565 |
|
3566 |
+
#: includes/admin/class-wc-settings-jetpack.php:456
|
3567 |
msgid "Use List Instead of Comma Separated Text for Products in Settings"
|
3568 |
msgstr ""
|
3569 |
|
3570 |
+
#: includes/admin/class-wc-settings-jetpack.php:458
|
3571 |
#, php-format
|
3572 |
msgid "Supported modules: %s."
|
3573 |
msgstr ""
|
3574 |
|
3575 |
+
#: includes/admin/class-wc-settings-jetpack.php:463
|
3576 |
+
msgid "Products XML"
|
3577 |
+
msgstr ""
|
3578 |
+
|
3579 |
+
#: includes/admin/class-wc-settings-jetpack.php:488
|
3580 |
+
#: includes/core/class-wcj-admin.php:113
|
3581 |
+
msgid "Booster for WooCommerce"
|
3582 |
+
msgstr ""
|
3583 |
+
|
3584 |
+
#: includes/admin/class-wcj-settings-custom-fields.php:65
|
3585 |
+
#, php-format
|
3586 |
+
msgid "Grab %s rate from %s"
|
3587 |
+
msgstr ""
|
3588 |
+
|
3589 |
+
#: includes/admin/class-wcj-settings-custom-fields.php:259
|
3590 |
#: includes/settings/wcj-settings-wpml.php:21
|
3591 |
msgid "To use tools, module must be enabled."
|
3592 |
msgstr ""
|
3593 |
|
3594 |
+
#: includes/admin/class-wcj-settings-custom-fields.php:298
|
3595 |
msgid "Save changes"
|
3596 |
msgstr ""
|
3597 |
|
3604 |
msgid "Wrong file format!"
|
3605 |
msgstr ""
|
3606 |
|
3607 |
+
#: includes/admin/class-wcj-settings-manager.php:81
|
3608 |
#, php-format
|
3609 |
msgid "%d options successfully imported."
|
3610 |
msgstr ""
|
3611 |
|
3612 |
+
#: includes/admin/class-wcj-settings-manager.php:166
|
3613 |
#, php-format
|
3614 |
+
msgid "%d options and %d meta successfully deleted."
|
3615 |
msgstr ""
|
3616 |
|
3617 |
#: includes/admin/class-wcj-tools.php:32
|
3642 |
msgid "Tool"
|
3643 |
msgstr ""
|
3644 |
|
3645 |
+
#: includes/admin/wcj-modules-cats.php:15
|
3646 |
msgid ""
|
3647 |
"This dashboard lets you enable/disable any Booster's module. Each checkbox "
|
3648 |
"comes with short module's description. Please visit <a href=\"http://booster."
|
3650 |
"feature."
|
3651 |
msgstr ""
|
3652 |
|
3653 |
+
#: includes/admin/wcj-modules-cats.php:25
|
3654 |
msgid "Prices & Currencies"
|
3655 |
msgstr ""
|
3656 |
|
3657 |
+
#: includes/admin/wcj-modules-cats.php:26
|
3658 |
msgid ""
|
3659 |
"Multicurrency, Price Converter, Wholesale Pricing, Name You Price, Price by "
|
3660 |
"User Role and more."
|
3661 |
msgstr ""
|
3662 |
|
3663 |
+
#: includes/admin/wcj-modules-cats.php:47
|
3664 |
msgid "Button & Price Labels"
|
3665 |
msgstr ""
|
3666 |
|
3667 |
+
#: includes/admin/wcj-modules-cats.php:48
|
3668 |
msgid "Add to Cart Labels, Call for Price, Custom Price Labels and more."
|
3669 |
msgstr ""
|
3670 |
|
3671 |
+
#: includes/admin/wcj-modules-cats.php:60
|
3672 |
msgid ""
|
3673 |
"Bookings, Crowdfunding Products, Product Addons and Input Fields, Product "
|
3674 |
"Listings, Product Tabs and more."
|
3675 |
msgstr ""
|
3676 |
|
3677 |
+
#: includes/admin/wcj-modules-cats.php:92
|
3678 |
msgid "Cart & Checkout"
|
3679 |
msgstr ""
|
3680 |
|
3681 |
+
#: includes/admin/wcj-modules-cats.php:93
|
3682 |
msgid ""
|
3683 |
"Cart and Checkout Customization, Empty Cart Button, Mini Cart, Coupons and "
|
3684 |
"more."
|
3685 |
msgstr ""
|
3686 |
|
3687 |
+
#: includes/admin/wcj-modules-cats.php:111
|
3688 |
#: includes/settings/wcj-settings-payment-gateways-by-country.php:14
|
3689 |
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:14
|
3690 |
#: includes/settings/wcj-settings-payment-gateways-by-shipping.php:21
|
3693 |
msgid "Payment Gateways"
|
3694 |
msgstr ""
|
3695 |
|
3696 |
+
#: includes/admin/wcj-modules-cats.php:112
|
3697 |
msgid ""
|
3698 |
"Custom Payment Gateways, Gateways Currency, Gateways Fees and Discounts and "
|
3699 |
"more."
|
3700 |
msgstr ""
|
3701 |
|
3702 |
+
#: includes/admin/wcj-modules-cats.php:128
|
3703 |
msgid "Shipping & Orders"
|
3704 |
msgstr ""
|
3705 |
|
3706 |
+
#: includes/admin/wcj-modules-cats.php:129
|
3707 |
msgid ""
|
3708 |
"Order Custom Statuses, Order Minimum Amount, Order Numbers, Custom Shipping "
|
3709 |
"Methods and more."
|
3710 |
msgstr ""
|
3711 |
|
3712 |
+
#: includes/admin/wcj-modules-cats.php:149
|
3713 |
msgid "PDF Invoicing & Packing Slips"
|
3714 |
msgstr ""
|
3715 |
|
3716 |
+
#: includes/admin/wcj-modules-cats.php:150
|
3717 |
msgid "PDF Documents"
|
3718 |
msgstr ""
|
3719 |
|
3720 |
+
#: includes/admin/wcj-modules-cats.php:165
|
3721 |
msgid "Emails & Misc."
|
3722 |
msgstr ""
|
3723 |
|
3724 |
+
#: includes/admin/wcj-modules-cats.php:166
|
3725 |
msgid "Emails, Reports, Export, Admin Tools, General Options and more."
|
3726 |
msgstr ""
|
3727 |
|
3789 |
msgid "Enable Module"
|
3790 |
msgstr ""
|
3791 |
|
3792 |
+
#: includes/classes/class-wcj-pdf-invoice.php:81
|
3793 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:55
|
3794 |
msgid "Company Name"
|
3795 |
msgstr ""
|
3796 |
|
3797 |
+
#: includes/classes/class-wcj-shortcodes.php:107
|
3798 |
+
#: includes/shortcodes/class-wcj-shortcodes-general.php:375
|
3799 |
+
#, php-format
|
3800 |
+
msgid "\"%s\" module is not enabled!"
|
3801 |
+
msgstr ""
|
3802 |
+
|
3803 |
#: includes/classes/class-wcj-tcpdf.php:34
|
3804 |
#: includes/settings/wcj-settings-pdf-invoicing-footer.php:31
|
3805 |
msgid "Page %page_number% / %total_pages%"
|
3806 |
msgstr ""
|
3807 |
|
3808 |
+
#: includes/core/class-wcj-admin.php:73
|
3809 |
+
#, php-format
|
3810 |
+
msgid ""
|
3811 |
+
"Please upgrade <strong>Booster Plus for WooCommerce</strong> plugin. Visit "
|
3812 |
+
"<a target=\"_blank\" href=\"%s\">your account page</a> on booster.io to "
|
3813 |
+
"download the latest Booster Plus version."
|
3814 |
+
msgstr ""
|
3815 |
+
|
3816 |
+
#: includes/core/class-wcj-admin.php:77
|
3817 |
+
#, php-format
|
3818 |
+
msgid ""
|
3819 |
+
"There is new version of <strong>Booster Plus for WooCommerce</strong> plugin "
|
3820 |
+
"available. We recommend upgrading. Please visit <a target=\"_blank\" href="
|
3821 |
+
"\"%s\">your account page</a> on booster.io to download the latest Booster "
|
3822 |
+
"Plus version."
|
3823 |
+
msgstr ""
|
3824 |
+
|
3825 |
+
#: includes/core/class-wcj-admin.php:97
|
3826 |
+
#, php-format
|
3827 |
+
msgid ""
|
3828 |
+
"If you like <strong>Booster for WooCommerce</strong> please leave us a %s "
|
3829 |
+
"rating. Thank you, we couldn't have done it without you!"
|
3830 |
+
msgstr ""
|
3831 |
+
|
3832 |
+
#: includes/core/class-wcj-admin.php:114
|
3833 |
+
msgid "Booster Settings"
|
3834 |
+
msgstr ""
|
3835 |
+
|
3836 |
+
#: includes/core/class-wcj-admin.php:130
|
3837 |
+
msgid "Docs"
|
3838 |
+
msgstr ""
|
3839 |
+
|
3840 |
+
#: includes/core/class-wcj-admin.php:133
|
3841 |
+
msgid "Unlock all"
|
3842 |
+
msgstr ""
|
3843 |
+
|
3844 |
#: includes/emails/class-wc-email-wcj-custom.php:31
|
3845 |
msgid ""
|
3846 |
"Custom emails are sent to the recipient list when selected triggers are "
|
3855 |
msgid "[{site_title}] Custom Subject - Order ({order_number}) - {order_date}"
|
3856 |
msgstr ""
|
3857 |
|
3858 |
+
#: includes/emails/class-wc-email-wcj-custom.php:217
|
3859 |
#, php-format
|
3860 |
msgid "New order (%s)"
|
3861 |
msgstr ""
|
3862 |
|
3863 |
+
#: includes/emails/class-wc-email-wcj-custom.php:218
|
3864 |
#, php-format
|
3865 |
msgid "Order status updated to %s"
|
3866 |
msgstr ""
|
3867 |
|
3868 |
+
#: includes/emails/class-wc-email-wcj-custom.php:221
|
3869 |
#, php-format
|
3870 |
msgid "Order status %s to %s"
|
3871 |
msgstr ""
|
3872 |
|
3873 |
+
#: includes/emails/class-wc-email-wcj-custom.php:228
|
3874 |
#: includes/gateways/class-wc-gateway-wcj-custom.php:59
|
3875 |
+
#: includes/settings/wcj-settings-admin-products-list.php:19
|
3876 |
+
#: includes/settings/wcj-settings-admin-products-list.php:75
|
3877 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:106
|
|
|
|
|
3878 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:110
|
3879 |
msgid "Enable/Disable"
|
3880 |
msgstr ""
|
3881 |
|
3882 |
+
#: includes/emails/class-wc-email-wcj-custom.php:230
|
3883 |
msgid "Enable this email notification"
|
3884 |
msgstr ""
|
3885 |
|
3886 |
+
#: includes/emails/class-wc-email-wcj-custom.php:234
|
3887 |
msgid "Trigger(s)"
|
3888 |
msgstr ""
|
3889 |
|
3890 |
+
#: includes/emails/class-wc-email-wcj-custom.php:238
|
3891 |
msgid ""
|
3892 |
"Please note, that all new orders in WooCommerce by default are created with "
|
3893 |
"Pending Payment status. If you want to change the default order status - you "
|
3895 |
"Settings > Booster > Shipping & Orders > Order Custom Statuses)."
|
3896 |
msgstr ""
|
3897 |
|
3898 |
+
#: includes/emails/class-wc-email-wcj-custom.php:241
|
3899 |
msgid "New order (Any status)"
|
3900 |
msgstr ""
|
3901 |
|
3902 |
+
#: includes/emails/class-wc-email-wcj-custom.php:246
|
3903 |
msgid "Reset password notification"
|
3904 |
msgstr ""
|
3905 |
|
3906 |
+
#: includes/emails/class-wc-email-wcj-custom.php:247
|
3907 |
msgid "Order fully refunded notification"
|
3908 |
msgstr ""
|
3909 |
|
3910 |
+
#: includes/emails/class-wc-email-wcj-custom.php:248
|
3911 |
msgid "Order partially refunded notification"
|
3912 |
msgstr ""
|
3913 |
|
3914 |
+
#: includes/emails/class-wc-email-wcj-custom.php:249
|
3915 |
msgid "New customer note notification"
|
3916 |
msgstr ""
|
3917 |
|
3918 |
+
#: includes/emails/class-wc-email-wcj-custom.php:250
|
3919 |
msgid "Low stock notification"
|
3920 |
msgstr ""
|
3921 |
|
3922 |
+
#: includes/emails/class-wc-email-wcj-custom.php:251
|
3923 |
msgid "No stock notification"
|
3924 |
msgstr ""
|
3925 |
|
3926 |
+
#: includes/emails/class-wc-email-wcj-custom.php:252
|
3927 |
msgid "Product on backorder notification"
|
3928 |
msgstr ""
|
3929 |
|
3930 |
+
#: includes/emails/class-wc-email-wcj-custom.php:253
|
3931 |
msgid "Created customer notification"
|
3932 |
msgstr ""
|
3933 |
|
3934 |
+
#: includes/emails/class-wc-email-wcj-custom.php:260
|
3935 |
msgid "Recipient(s)"
|
3936 |
msgstr ""
|
3937 |
|
3938 |
+
#: includes/emails/class-wc-email-wcj-custom.php:262
|
3939 |
#, php-format
|
3940 |
msgid ""
|
3941 |
"Enter recipients (comma separated) for this email. Defaults to <code>%s</"
|
3942 |
"code>."
|
3943 |
msgstr ""
|
3944 |
|
3945 |
+
#: includes/emails/class-wc-email-wcj-custom.php:263
|
3946 |
msgid "Or enter <code>%customer%</code> to send to customer billing email."
|
3947 |
msgstr ""
|
3948 |
|
3949 |
+
#: includes/emails/class-wc-email-wcj-custom.php:269
|
3950 |
msgid "Subject"
|
3951 |
msgstr ""
|
3952 |
|
3953 |
+
#: includes/emails/class-wc-email-wcj-custom.php:271
|
3954 |
#, php-format
|
3955 |
msgid ""
|
3956 |
"This controls the email subject line. Leave blank to use the default "
|
3957 |
"subject: <code>%s</code>."
|
3958 |
msgstr ""
|
3959 |
|
3960 |
+
#: includes/emails/class-wc-email-wcj-custom.php:277
|
3961 |
msgid "Email type"
|
3962 |
msgstr ""
|
3963 |
|
3964 |
+
#: includes/emails/class-wc-email-wcj-custom.php:279
|
3965 |
msgid "Choose which format of email to send."
|
3966 |
msgstr ""
|
3967 |
|
3968 |
+
#: includes/emails/class-wc-email-wcj-custom.php:285
|
3969 |
msgid "Wrap in WC Email Template"
|
3970 |
msgstr ""
|
3971 |
|
3972 |
+
#: includes/emails/class-wc-email-wcj-custom.php:291
|
3973 |
msgid ""
|
3974 |
"WC Email Heading. Used only if \"Wrap in WC Email Template\" is enabled and "
|
3975 |
"only for HTML templates."
|
3976 |
msgstr ""
|
3977 |
|
3978 |
+
#: includes/emails/class-wc-email-wcj-custom.php:292
|
3979 |
#, php-format
|
3980 |
msgid ""
|
3981 |
"This controls the main heading contained within the email notification. "
|
3982 |
"Leave blank to use the default heading: <code>%s</code>."
|
3983 |
msgstr ""
|
3984 |
|
3985 |
+
#: includes/emails/class-wc-email-wcj-custom.php:298
|
3986 |
msgid "HTML template"
|
3987 |
msgstr ""
|
3988 |
|
3989 |
+
#: includes/emails/class-wc-email-wcj-custom.php:300
|
3990 |
+
#: includes/emails/class-wc-email-wcj-custom.php:309
|
3991 |
msgid "You can use shortcodes here. E.g. Booster's order shortcodes."
|
3992 |
msgstr ""
|
3993 |
|
3994 |
+
#: includes/emails/class-wc-email-wcj-custom.php:307
|
3995 |
msgid "Plain text template"
|
3996 |
msgstr ""
|
3997 |
|
3998 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:22
|
3999 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:38
|
4000 |
+
#: includes/settings/wcj-settings-products-xml.php:133
|
4001 |
msgid "Update Every Minute"
|
4002 |
msgstr ""
|
4003 |
|
4004 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:23
|
4005 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:39
|
4006 |
+
#: includes/settings/wcj-settings-products-xml.php:134
|
4007 |
msgid "Update Hourly"
|
4008 |
msgstr ""
|
4009 |
|
4010 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:24
|
4011 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:40
|
4012 |
+
#: includes/settings/wcj-settings-products-xml.php:135
|
4013 |
msgid "Update Twice Daily"
|
4014 |
msgstr ""
|
4015 |
|
4016 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:25
|
4017 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:41
|
4018 |
+
#: includes/settings/wcj-settings-products-xml.php:136
|
4019 |
msgid "Update Daily"
|
4020 |
msgstr ""
|
4021 |
|
4022 |
#: includes/exchange-rates/class-wcj-exchange-rates-crons.php:26
|
4023 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:42
|
4024 |
+
#: includes/settings/wcj-settings-products-xml.php:137
|
4025 |
msgid "Update Weekly"
|
4026 |
msgstr ""
|
4027 |
|
4037 |
msgid "Cron job: exchange rates update failed"
|
4038 |
msgstr ""
|
4039 |
|
|
|
|
|
|
|
|
|
|
|
4040 |
#: includes/export/class-wcj-fields-helper.php:34
|
4041 |
msgid "Customer Nr."
|
4042 |
msgstr ""
|
4323 |
#: includes/settings/wcj-settings-product-by-user.php:16
|
4324 |
#: includes/settings/meta-box/wcj-settings-meta-box-multicurrency.php:37
|
4325 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:55
|
4326 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:182
|
4327 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:381
|
4328 |
msgid "Regular Price"
|
4329 |
msgstr ""
|
4330 |
|
4333 |
#: includes/settings/wcj-settings-product-by-user.php:17
|
4334 |
#: includes/settings/meta-box/wcj-settings-meta-box-multicurrency.php:46
|
4335 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:64
|
4336 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:183
|
4337 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:390
|
4338 |
msgid "Sale Price"
|
4339 |
msgstr ""
|
4340 |
|
4347 |
#: includes/settings/wcj-settings-global-discount.php:58
|
4348 |
#: includes/settings/wcj-settings-product-addons.php:73
|
4349 |
#: includes/settings/wcj-settings-purchase-data.php:73
|
4350 |
+
#: includes/settings/wcj-settings-shipping-options.php:77
|
4351 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:45
|
4352 |
#: includes/shipping/class-wc-shipping-wcj-custom-with-shipping-zones.php:164
|
4353 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:123
|
4356 |
msgstr ""
|
4357 |
|
4358 |
#: includes/export/class-wcj-fields-helper.php:291
|
4359 |
+
#: includes/settings/wcj-settings-shipping-options.php:191
|
4360 |
msgid "Image URL"
|
4361 |
msgstr ""
|
4362 |
|
4363 |
#: includes/export/class-wcj-fields-helper.php:292
|
4364 |
#: includes/settings/wcj-settings-product-by-user.php:14
|
4365 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:180
|
4366 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:354
|
4367 |
msgid "Short Description"
|
4368 |
msgstr ""
|
4369 |
|
4473 |
msgid "Availability Class"
|
4474 |
msgstr ""
|
4475 |
|
4476 |
+
#: includes/functions/wcj-functions-admin.php:37
|
4477 |
+
#, php-format
|
4478 |
+
msgid ""
|
4479 |
+
"<strong>Booster for WooCommerce</strong> plugin was successfully updated to "
|
4480 |
+
"version <strong>%s</strong>."
|
4481 |
+
msgstr ""
|
4482 |
+
|
4483 |
+
#: includes/functions/wcj-functions-admin.php:60
|
4484 |
msgid "Enter comma separated list of IDs."
|
4485 |
msgstr ""
|
4486 |
|
4487 |
+
#: includes/functions/wcj-functions-admin.php:134
|
4488 |
#: includes/settings/wcj-settings-emails-verification.php:59
|
4489 |
#: includes/settings/wcj-settings-emails-verification.php:67
|
4490 |
#: includes/settings/wcj-settings-emails-verification.php:107
|
4492 |
msgid "Replaced value: %s"
|
4493 |
msgstr ""
|
4494 |
|
4495 |
+
#: includes/functions/wcj-functions-admin.php:134
|
4496 |
#, php-format
|
4497 |
msgid "Replaced values: %s"
|
4498 |
msgstr ""
|
4499 |
|
4500 |
+
#: includes/functions/wcj-functions-admin.php:163
|
4501 |
msgid "Install Booster Plus to unlock all features"
|
4502 |
msgstr ""
|
4503 |
|
4504 |
+
#: includes/functions/wcj-functions-admin.php:164
|
4505 |
#, php-format
|
4506 |
msgid ""
|
4507 |
"Some settings fields are locked and you will need %s to modify all locked "
|
4508 |
"fields."
|
4509 |
msgstr ""
|
4510 |
|
4511 |
+
#: includes/functions/wcj-functions-admin.php:165
|
4512 |
msgid "Buy now"
|
4513 |
msgstr ""
|
4514 |
|
4515 |
+
#: includes/functions/wcj-functions-admin.php:165
|
4516 |
msgid "Visit Booster Site"
|
4517 |
msgstr ""
|
4518 |
|
4519 |
+
#: includes/functions/wcj-functions-admin.php:169
|
4520 |
#, php-format
|
4521 |
msgid "Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change value."
|
4522 |
msgstr ""
|
4523 |
|
4524 |
+
#: includes/functions/wcj-functions-admin.php:172
|
4525 |
#, php-format
|
4526 |
msgid ""
|
4527 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to enable \"%s\" "
|
4528 |
"option."
|
4529 |
msgstr ""
|
4530 |
|
4531 |
+
#: includes/functions/wcj-functions-admin.php:175
|
4532 |
#, php-format
|
4533 |
msgid "Get Booster Plus to enable \"%s\" option."
|
4534 |
msgstr ""
|
4535 |
|
4536 |
+
#: includes/functions/wcj-functions-admin.php:178
|
4537 |
#, php-format
|
4538 |
msgid ""
|
4539 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values below."
|
4540 |
msgstr ""
|
4541 |
|
4542 |
+
#: includes/functions/wcj-functions-admin.php:181
|
4543 |
#, php-format
|
4544 |
msgid ""
|
4545 |
"Get <a href=\"%s\" target=\"_blank\">Booster Plus</a> to change values above."
|
4546 |
msgstr ""
|
4547 |
|
4548 |
+
#: includes/functions/wcj-functions-admin.php:184
|
4549 |
msgid "Get Booster Plus to change value."
|
4550 |
msgstr ""
|
4551 |
|
5529 |
msgid "European Union"
|
5530 |
msgstr ""
|
5531 |
|
5532 |
+
#: includes/functions/wcj-functions-crons.php:24
|
5533 |
+
msgid "Update"
|
5534 |
+
msgstr ""
|
5535 |
+
|
5536 |
+
#: includes/functions/wcj-functions-crons.php:27
|
5537 |
+
#, php-format
|
5538 |
+
msgid "%s every minute"
|
5539 |
+
msgstr ""
|
5540 |
+
|
5541 |
+
#: includes/functions/wcj-functions-crons.php:28
|
5542 |
+
#, php-format
|
5543 |
+
msgid "%s every 5 minutes"
|
5544 |
+
msgstr ""
|
5545 |
+
|
5546 |
+
#: includes/functions/wcj-functions-crons.php:29
|
5547 |
+
#, php-format
|
5548 |
+
msgid "%s every 15 minutes"
|
5549 |
+
msgstr ""
|
5550 |
+
|
5551 |
+
#: includes/functions/wcj-functions-crons.php:30
|
5552 |
+
#, php-format
|
5553 |
+
msgid "%s every 30 minutes"
|
5554 |
+
msgstr ""
|
5555 |
+
|
5556 |
+
#: includes/functions/wcj-functions-crons.php:31
|
5557 |
+
#, php-format
|
5558 |
+
msgid "%s hourly"
|
5559 |
+
msgstr ""
|
5560 |
+
|
5561 |
+
#: includes/functions/wcj-functions-crons.php:32
|
5562 |
+
#, php-format
|
5563 |
+
msgid "%s twice daily"
|
5564 |
+
msgstr ""
|
5565 |
+
|
5566 |
+
#: includes/functions/wcj-functions-crons.php:33
|
5567 |
+
#, php-format
|
5568 |
+
msgid "%s daily"
|
5569 |
+
msgstr ""
|
5570 |
+
|
5571 |
+
#: includes/functions/wcj-functions-crons.php:34
|
5572 |
+
#, php-format
|
5573 |
+
msgid "%s weekly"
|
5574 |
+
msgstr ""
|
5575 |
+
|
5576 |
+
#: includes/functions/wcj-functions-crons.php:80
|
5577 |
+
#, php-format
|
5578 |
+
msgid "%s till next run."
|
5579 |
+
msgstr ""
|
5580 |
+
|
5581 |
+
#: includes/functions/wcj-functions-crons.php:82
|
5582 |
+
#, php-format
|
5583 |
+
msgid "%s seconds till next run."
|
5584 |
+
msgstr ""
|
5585 |
+
|
5586 |
+
#: includes/functions/wcj-functions-crons.php:99
|
5587 |
+
msgid "Once weekly"
|
5588 |
+
msgstr ""
|
5589 |
+
|
5590 |
+
#: includes/functions/wcj-functions-crons.php:103
|
5591 |
+
msgid "Once every 30 minutes"
|
5592 |
+
msgstr ""
|
5593 |
+
|
5594 |
+
#: includes/functions/wcj-functions-crons.php:107
|
5595 |
+
msgid "Once every 15 minutes"
|
5596 |
+
msgstr ""
|
5597 |
+
|
5598 |
+
#: includes/functions/wcj-functions-crons.php:111
|
5599 |
+
msgid "Once every 5 minutes"
|
5600 |
+
msgstr ""
|
5601 |
+
|
5602 |
+
#: includes/functions/wcj-functions-crons.php:115
|
5603 |
+
msgid "Once a minute"
|
5604 |
+
msgstr ""
|
5605 |
+
|
5606 |
#: includes/functions/wcj-functions-currencies.php:15
|
5607 |
msgid "United Arab Emirates Dirham"
|
5608 |
msgstr ""
|
6069 |
msgstr ""
|
6070 |
|
6071 |
#: includes/functions/wcj-functions-currencies.php:131
|
6072 |
+
msgid "Paraguayan Guaran"
|
6073 |
msgstr ""
|
6074 |
|
6075 |
#: includes/functions/wcj-functions-currencies.php:132
|
6252 |
msgid "Zimbabwean dollar"
|
6253 |
msgstr ""
|
6254 |
|
6255 |
+
#: includes/functions/wcj-functions-currencies.php:179
|
6256 |
+
msgid "Auroracoin"
|
6257 |
+
msgstr ""
|
6258 |
+
|
6259 |
+
#: includes/functions/wcj-functions-currencies.php:180
|
6260 |
+
msgid "BitConnect"
|
6261 |
+
msgstr ""
|
6262 |
+
|
6263 |
+
#: includes/functions/wcj-functions-currencies.php:181
|
6264 |
+
msgid "Bitcoin Cash"
|
6265 |
+
msgstr ""
|
6266 |
+
|
6267 |
+
#: includes/functions/wcj-functions-currencies.php:182
|
6268 |
msgid "Bitcoin"
|
6269 |
msgstr ""
|
6270 |
|
6271 |
+
#: includes/functions/wcj-functions-currencies.php:183
|
6272 |
+
msgid "Coinye"
|
6273 |
+
msgstr ""
|
6274 |
+
|
6275 |
+
#: includes/functions/wcj-functions-currencies.php:184
|
6276 |
+
msgid "DigitalNote"
|
6277 |
+
msgstr ""
|
6278 |
+
|
6279 |
+
#: includes/functions/wcj-functions-currencies.php:185
|
6280 |
+
msgid "Emercoin"
|
6281 |
+
msgstr ""
|
6282 |
+
|
6283 |
+
#: includes/functions/wcj-functions-currencies.php:186
|
6284 |
+
msgid "Ethereum Classic"
|
6285 |
+
msgstr ""
|
6286 |
+
|
6287 |
+
#: includes/functions/wcj-functions-currencies.php:187
|
6288 |
msgid "Ethereum"
|
6289 |
msgstr ""
|
6290 |
|
6291 |
+
#: includes/functions/wcj-functions-currencies.php:188
|
6292 |
+
msgid "Freemasoncoin"
|
6293 |
+
msgstr ""
|
6294 |
+
|
6295 |
+
#: includes/functions/wcj-functions-currencies.php:189
|
6296 |
+
msgid "Gridcoin"
|
6297 |
+
msgstr ""
|
6298 |
+
|
6299 |
+
#: includes/functions/wcj-functions-currencies.php:190
|
6300 |
+
msgid "IOTA"
|
6301 |
+
msgstr ""
|
6302 |
+
|
6303 |
+
#: includes/functions/wcj-functions-currencies.php:191
|
6304 |
+
msgid "Litecoin"
|
6305 |
+
msgstr ""
|
6306 |
+
|
6307 |
+
#: includes/functions/wcj-functions-currencies.php:192
|
6308 |
+
msgid "MazaCoin"
|
6309 |
+
msgstr ""
|
6310 |
+
|
6311 |
+
#: includes/functions/wcj-functions-currencies.php:193
|
6312 |
+
msgid "Monero"
|
6313 |
+
msgstr ""
|
6314 |
+
|
6315 |
+
#: includes/functions/wcj-functions-currencies.php:194
|
6316 |
+
msgid "Namecoin"
|
6317 |
+
msgstr ""
|
6318 |
+
|
6319 |
+
#: includes/functions/wcj-functions-currencies.php:195
|
6320 |
+
msgid "NEM"
|
6321 |
+
msgstr ""
|
6322 |
+
|
6323 |
+
#: includes/functions/wcj-functions-currencies.php:196
|
6324 |
+
msgid "Nxt"
|
6325 |
+
msgstr ""
|
6326 |
+
|
6327 |
+
#: includes/functions/wcj-functions-currencies.php:197
|
6328 |
+
msgid "Omni"
|
6329 |
+
msgstr ""
|
6330 |
+
|
6331 |
+
#: includes/functions/wcj-functions-currencies.php:198
|
6332 |
+
msgid "Peercoin"
|
6333 |
+
msgstr ""
|
6334 |
+
|
6335 |
+
#: includes/functions/wcj-functions-currencies.php:199
|
6336 |
+
msgid "PotCoin"
|
6337 |
+
msgstr ""
|
6338 |
+
|
6339 |
+
#: includes/functions/wcj-functions-currencies.php:200
|
6340 |
+
msgid "Primecoin"
|
6341 |
+
msgstr ""
|
6342 |
+
|
6343 |
+
#: includes/functions/wcj-functions-currencies.php:201
|
6344 |
+
msgid "Ripple"
|
6345 |
+
msgstr ""
|
6346 |
+
|
6347 |
+
#: includes/functions/wcj-functions-currencies.php:202
|
6348 |
+
msgid "SixEleven"
|
6349 |
+
msgstr ""
|
6350 |
+
|
6351 |
+
#: includes/functions/wcj-functions-currencies.php:203
|
6352 |
+
msgid "Synereo AMP"
|
6353 |
+
msgstr ""
|
6354 |
+
|
6355 |
+
#: includes/functions/wcj-functions-currencies.php:204
|
6356 |
+
msgid "Titcoin"
|
6357 |
+
msgstr ""
|
6358 |
+
|
6359 |
+
#: includes/functions/wcj-functions-currencies.php:205
|
6360 |
+
msgid "Ubiq"
|
6361 |
+
msgstr ""
|
6362 |
+
|
6363 |
+
#: includes/functions/wcj-functions-currencies.php:206
|
6364 |
+
msgid "Vertcoin"
|
6365 |
+
msgstr ""
|
6366 |
+
|
6367 |
+
#: includes/functions/wcj-functions-currencies.php:207
|
6368 |
+
msgid "Zcash"
|
6369 |
+
msgstr ""
|
6370 |
+
|
6371 |
+
#: includes/functions/wcj-functions-currencies.php:209
|
6372 |
msgid "myCred"
|
6373 |
msgstr ""
|
6374 |
|
6375 |
+
#: includes/functions/wcj-functions-exchange-rates.php:66
|
6376 |
msgid "Yahoo"
|
6377 |
msgstr ""
|
6378 |
|
6379 |
+
#: includes/functions/wcj-functions-exchange-rates.php:67
|
6380 |
msgid "European Central Bank (ECB)"
|
6381 |
msgstr ""
|
6382 |
|
6383 |
+
#: includes/functions/wcj-functions-exchange-rates.php:68
|
6384 |
msgid "TCMB"
|
6385 |
msgstr ""
|
6386 |
|
6387 |
+
#: includes/functions/wcj-functions-exchange-rates.php:69
|
6388 |
msgid "Fixer.io"
|
6389 |
msgstr ""
|
6390 |
|
6391 |
+
#: includes/functions/wcj-functions-exchange-rates.php:70
|
6392 |
+
msgid "Coinbase"
|
6393 |
+
msgstr ""
|
6394 |
+
|
6395 |
+
#: includes/functions/wcj-functions-exchange-rates.php:71
|
6396 |
+
msgid "CoinMarketCap"
|
6397 |
+
msgstr ""
|
6398 |
+
|
6399 |
+
#: includes/functions/wcj-functions-general.php:399
|
6400 |
#: includes/settings/wcj-settings-left-to-free-shipping.php:147
|
6401 |
msgid "You have Free delivery"
|
6402 |
msgstr ""
|
6403 |
|
6404 |
+
#: includes/functions/wcj-functions-general.php:420
|
6405 |
msgid "Before cart"
|
6406 |
msgstr ""
|
6407 |
|
6408 |
+
#: includes/functions/wcj-functions-general.php:421
|
6409 |
msgid "Before cart table"
|
6410 |
msgstr ""
|
6411 |
|
6412 |
+
#: includes/functions/wcj-functions-general.php:422
|
6413 |
msgid "Before cart contents"
|
6414 |
msgstr ""
|
6415 |
|
6416 |
+
#: includes/functions/wcj-functions-general.php:423
|
6417 |
msgid "Cart contents"
|
6418 |
msgstr ""
|
6419 |
|
6420 |
+
#: includes/functions/wcj-functions-general.php:424
|
6421 |
msgid "Cart coupon"
|
6422 |
msgstr ""
|
6423 |
|
6424 |
+
#: includes/functions/wcj-functions-general.php:425
|
6425 |
msgid "Cart actions"
|
6426 |
msgstr ""
|
6427 |
|
6428 |
+
#: includes/functions/wcj-functions-general.php:426
|
6429 |
msgid "After cart contents"
|
6430 |
msgstr ""
|
6431 |
|
6432 |
+
#: includes/functions/wcj-functions-general.php:427
|
6433 |
msgid "After cart table"
|
6434 |
msgstr ""
|
6435 |
|
6436 |
+
#: includes/functions/wcj-functions-general.php:428
|
6437 |
msgid "Cart collaterals"
|
6438 |
msgstr ""
|
6439 |
|
6440 |
+
#: includes/functions/wcj-functions-general.php:429
|
6441 |
msgid "After cart"
|
6442 |
msgstr ""
|
6443 |
|
6444 |
+
#: includes/functions/wcj-functions-general.php:431
|
6445 |
msgid "Before cart totals"
|
6446 |
msgstr ""
|
6447 |
|
6448 |
+
#: includes/functions/wcj-functions-general.php:432
|
6449 |
msgid "Cart totals: Before shipping"
|
6450 |
msgstr ""
|
6451 |
|
6452 |
+
#: includes/functions/wcj-functions-general.php:433
|
6453 |
msgid "Cart totals: After shipping"
|
6454 |
msgstr ""
|
6455 |
|
6456 |
+
#: includes/functions/wcj-functions-general.php:434
|
6457 |
msgid "Cart totals: Before order total"
|
6458 |
msgstr ""
|
6459 |
|
6460 |
+
#: includes/functions/wcj-functions-general.php:435
|
6461 |
msgid "Cart totals: After order total"
|
6462 |
msgstr ""
|
6463 |
|
6464 |
+
#: includes/functions/wcj-functions-general.php:436
|
6465 |
msgid "Proceed to checkout"
|
6466 |
msgstr ""
|
6467 |
|
6468 |
+
#: includes/functions/wcj-functions-general.php:437
|
6469 |
msgid "After cart totals"
|
6470 |
msgstr ""
|
6471 |
|
6472 |
+
#: includes/functions/wcj-functions-general.php:439
|
6473 |
msgid "Before shipping calculator"
|
6474 |
msgstr ""
|
6475 |
|
6476 |
+
#: includes/functions/wcj-functions-general.php:440
|
6477 |
msgid "After shipping calculator"
|
6478 |
msgstr ""
|
6479 |
|
6480 |
+
#: includes/functions/wcj-functions-general.php:442
|
6481 |
msgid "If cart is empty"
|
6482 |
msgstr ""
|
6483 |
|
6533 |
msgid "Last Sale Order Status"
|
6534 |
msgstr ""
|
6535 |
|
6536 |
+
#: includes/functions/wcj-functions-reports.php:82
|
6537 |
msgid "Last 14 days"
|
6538 |
msgstr ""
|
6539 |
|
6540 |
+
#: includes/functions/wcj-functions-reports.php:87
|
6541 |
msgid "Last 30 days"
|
6542 |
msgstr ""
|
6543 |
|
6544 |
+
#: includes/functions/wcj-functions-reports.php:92
|
6545 |
msgid "Last 3 months"
|
6546 |
msgstr ""
|
6547 |
|
6548 |
+
#: includes/functions/wcj-functions-reports.php:97
|
6549 |
msgid "Last 6 months"
|
6550 |
msgstr ""
|
6551 |
|
6552 |
+
#: includes/functions/wcj-functions-reports.php:102
|
6553 |
msgid "Last 12 months"
|
6554 |
msgstr ""
|
6555 |
|
6556 |
+
#: includes/functions/wcj-functions-reports.php:107
|
6557 |
msgid "Last 24 months"
|
6558 |
msgstr ""
|
6559 |
|
6560 |
+
#: includes/functions/wcj-functions-reports.php:112
|
6561 |
msgid "Last 36 months"
|
6562 |
msgstr ""
|
6563 |
|
6564 |
+
#: includes/functions/wcj-functions-reports.php:117
|
6565 |
msgid "Same days last month"
|
6566 |
msgstr ""
|
6567 |
|
6568 |
+
#: includes/functions/wcj-functions-reports.php:122
|
6569 |
msgid "Same days last year"
|
6570 |
msgstr ""
|
6571 |
|
6572 |
+
#: includes/functions/wcj-functions-reports.php:127
|
6573 |
msgid "Last year"
|
6574 |
msgstr ""
|
6575 |
|
6576 |
+
#: includes/functions/wcj-functions-reports.php:132
|
6577 |
msgid "Yesterday"
|
6578 |
msgstr ""
|
6579 |
|
6580 |
+
#: includes/functions/wcj-functions-reports.php:137
|
6581 |
msgid "Today"
|
6582 |
msgstr ""
|
6583 |
|
6744 |
msgid "File is too big!"
|
6745 |
msgstr ""
|
6746 |
|
6747 |
+
#: includes/input-fields/class-wcj-product-input-fields-core.php:574
|
6748 |
msgid "Select a country…"
|
6749 |
msgstr ""
|
6750 |
|
6751 |
#: includes/input-fields/wcj-product-input-fields-options.php:15
|
6752 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:57
|
6753 |
+
#: includes/settings/wcj-settings-admin-products-list.php:43
|
6754 |
#: includes/settings/wcj-settings-checkout-core-fields.php:60
|
6755 |
#: includes/settings/wcj-settings-checkout-files-upload.php:39
|
6756 |
#: includes/settings/wcj-settings-export.php:70
|
6757 |
#: includes/settings/wcj-settings-export.php:138
|
6758 |
#: includes/settings/wcj-settings-export.php:220
|
6759 |
#: includes/settings/wcj-settings-global-discount.php:50
|
|
|
6760 |
#: includes/settings/wcj-settings-product-by-user.php:149
|
6761 |
+
#: includes/settings/wcj-settings-products-xml.php:76
|
|
|
6762 |
#: includes/settings/meta-box/wcj-settings-meta-box-price-by-user-role.php:37
|
6763 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-addons.php:21
|
6764 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-bookings.php:14
|
6880 |
msgstr ""
|
6881 |
|
6882 |
#: includes/input-fields/wcj-product-input-fields-options.php:104
|
6883 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:232
|
6884 |
msgid "Not Checked"
|
6885 |
msgstr ""
|
6886 |
|
6887 |
#: includes/input-fields/wcj-product-input-fields-options.php:105
|
6888 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:233
|
6889 |
#: includes/settings/wcj-settings-checkout-customization.php:26
|
6890 |
msgid "Checked"
|
6891 |
msgstr ""
|
6928 |
msgstr ""
|
6929 |
|
6930 |
#: includes/input-fields/wcj-product-input-fields-options.php:126
|
6931 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:239
|
6932 |
msgid "Leave blank to use your current WordPress format"
|
6933 |
msgstr ""
|
6934 |
|
6980 |
msgstr ""
|
6981 |
|
6982 |
#: includes/input-fields/wcj-product-input-fields-options.php:167
|
6983 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:277
|
6984 |
msgid "Sunday"
|
6985 |
msgstr ""
|
6986 |
|
6987 |
#: includes/input-fields/wcj-product-input-fields-options.php:168
|
6988 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:278
|
6989 |
msgid "Monday"
|
6990 |
msgstr ""
|
6991 |
|
6992 |
#: includes/input-fields/wcj-product-input-fields-options.php:169
|
6993 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:279
|
6994 |
msgid "Tuesday"
|
6995 |
msgstr ""
|
6996 |
|
6997 |
#: includes/input-fields/wcj-product-input-fields-options.php:170
|
6998 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:280
|
6999 |
msgid "Wednesday"
|
7000 |
msgstr ""
|
7001 |
|
7002 |
#: includes/input-fields/wcj-product-input-fields-options.php:171
|
7003 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:281
|
7004 |
msgid "Thursday"
|
7005 |
msgstr ""
|
7006 |
|
7007 |
#: includes/input-fields/wcj-product-input-fields-options.php:172
|
7008 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:282
|
7009 |
msgid "Friday"
|
7010 |
msgstr ""
|
7011 |
|
7012 |
#: includes/input-fields/wcj-product-input-fields-options.php:173
|
7013 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:283
|
7014 |
msgid "Saturday"
|
7015 |
msgstr ""
|
7016 |
|
7052 |
msgstr ""
|
7053 |
|
7054 |
#: includes/input-fields/wcj-product-input-fields-options.php:200
|
7055 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:294
|
7056 |
msgid "Timepicker: Interval"
|
7057 |
msgstr ""
|
7058 |
|
7061 |
msgstr ""
|
7062 |
|
7063 |
#: includes/input-fields/wcj-product-input-fields-options.php:207
|
7064 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:200
|
7065 |
msgid "Select/Radio: Options"
|
7066 |
msgstr ""
|
7067 |
|
7291 |
msgstr ""
|
7292 |
|
7293 |
#: includes/price-by-country/class-wcj-price-by-country-local.php:140
|
7294 |
+
#: includes/settings/wcj-settings-price-by-country.php:289
|
7295 |
msgid "Make empty price"
|
7296 |
msgstr ""
|
7297 |
|
7362 |
msgstr ""
|
7363 |
|
7364 |
#: includes/reports/wcj-class-reports-monthly-sales.php:87
|
7365 |
+
#: includes/reports/wcj-class-reports-sales.php:326
|
7366 |
msgid "Total Sum"
|
7367 |
msgstr ""
|
7368 |
|
7411 |
msgid "Reset Currency Rates"
|
7412 |
msgstr ""
|
7413 |
|
7414 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:164
|
7415 |
+
#: includes/reports/wcj-class-reports-sales.php:332
|
7416 |
msgid "Reports Settings"
|
7417 |
msgstr ""
|
7418 |
|
7419 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:181
|
7420 |
msgid "From:"
|
7421 |
msgstr ""
|
7422 |
|
7423 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:184
|
7424 |
msgid "To:"
|
7425 |
msgstr ""
|
7426 |
|
7427 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:187
|
7428 |
msgid "Product:"
|
7429 |
msgstr ""
|
7430 |
|
7431 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:276
|
7432 |
#, php-format
|
7433 |
msgid "Total: %d"
|
7434 |
msgstr ""
|
7435 |
|
7436 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:280
|
7437 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:284
|
7438 |
#, php-format
|
7439 |
msgid "Total: %s"
|
7440 |
msgstr ""
|
7441 |
|
7442 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:296
|
7443 |
#, php-format
|
7444 |
msgid "Total orders: %d"
|
7445 |
msgstr ""
|
7446 |
|
7447 |
+
#: includes/reports/wcj-class-reports-sales-daily.php:297
|
7448 |
+
#: includes/reports/wcj-class-reports-sales.php:353
|
7449 |
msgid "No sales data for current period."
|
7450 |
msgstr ""
|
7451 |
|
7452 |
+
#: includes/reports/wcj-class-reports-sales.php:125
|
7453 |
msgid "Variation"
|
7454 |
msgstr ""
|
7455 |
|
7456 |
+
#: includes/reports/wcj-class-reports-sales.php:194
|
7457 |
msgid "Last Sale"
|
7458 |
msgstr ""
|
7459 |
|
7460 |
+
#: includes/reports/wcj-class-reports-sales.php:195
|
7461 |
msgid "Total"
|
7462 |
msgstr ""
|
7463 |
|
7464 |
+
#: includes/reports/wcj-class-reports-sales.php:323
|
7465 |
msgid "Total Items"
|
7466 |
msgstr ""
|
7467 |
|
7468 |
+
#: includes/reports/wcj-class-reports-sales.php:329
|
7469 |
msgid "Total Profit"
|
7470 |
msgstr ""
|
7471 |
|
7472 |
+
#: includes/reports/wcj-class-reports-sales.php:348
|
7473 |
msgid "Filter products"
|
7474 |
msgstr ""
|
7475 |
|
7593 |
#: includes/settings/wcj-settings-add-to-cart.php:21
|
7594 |
#: includes/settings/wcj-settings-add-to-cart.php:99
|
7595 |
#: includes/settings/wcj-settings-add-to-cart.php:117
|
7596 |
+
#: includes/settings/wcj-settings-general.php:168
|
|
|
|
|
7597 |
#: includes/settings/wcj-settings-shipping-calculator.php:69
|
7598 |
+
#: includes/settings/wcj-settings-shipping-options.php:103
|
7599 |
+
#: includes/settings/wcj-settings-shipping-options.php:149
|
7600 |
#: includes/settings/wcj-settings-sorting.php:20
|
7601 |
#: includes/settings/wcj-settings-sorting.php:99
|
7602 |
#: includes/settings/wcj-settings-sorting.php:123
|
7624 |
msgid "categories"
|
7625 |
msgstr ""
|
7626 |
|
7627 |
+
#: includes/settings/wcj-settings-add-to-cart.php:60
|
7628 |
+
#: includes/settings/wcj-settings-shipping-calculator.php:47
|
7629 |
+
msgid ""
|
7630 |
+
msgstr ""
|
7631 |
+
|
7632 |
#: includes/settings/wcj-settings-add-to-cart.php:70
|
7633 |
msgid "Button text - single product view"
|
7634 |
msgstr ""
|
7792 |
#: includes/settings/wcj-settings-product-bookings.php:86
|
7793 |
#: includes/settings/wcj-settings-product-by-user-role.php:14
|
7794 |
#: includes/settings/wcj-settings-product-by-user.php:59
|
7795 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:43
|
7796 |
#: includes/settings/wcj-settings-product-open-pricing.php:16
|
7797 |
#: includes/settings/wcj-settings-products-per-page.php:14
|
7798 |
+
#: includes/settings/wcj-settings-products-xml.php:18
|
7799 |
#: includes/settings/wcj-settings-track-users.php:14
|
7800 |
#: includes/settings/wcj-settings-url-coupons.php:14
|
7801 |
#: includes/settings/wcj-settings-wholesale-price.php:15
|
7814 |
msgid "\"Booster: Active\" Admin Bar"
|
7815 |
msgstr ""
|
7816 |
|
7817 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:14
|
7818 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:20
|
7819 |
+
#: includes/settings/wcj-settings-admin-products-list.php:14
|
7820 |
+
msgid "Custom Columns"
|
7821 |
msgstr ""
|
7822 |
|
7823 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:16
|
7824 |
+
msgid "This section lets you add custom columns to WooCommerce orders list."
|
7825 |
msgstr ""
|
7826 |
|
7827 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:21
|
7828 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:107
|
7829 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:148
|
7830 |
+
#: includes/settings/wcj-settings-admin-products-list.php:20
|
7831 |
+
#: includes/settings/wcj-settings-admin-products-list.php:76
|
7832 |
+
#: includes/settings/wcj-settings-order-quantities.php:21
|
7833 |
+
#: includes/settings/wcj-settings-order-quantities.php:79
|
7834 |
+
#: includes/settings/wcj-settings-orders.php:72
|
7835 |
+
#: includes/settings/wcj-settings-price-formats.php:37
|
7836 |
+
#: includes/settings/wcj-settings-product-listings.php:128
|
7837 |
+
#: includes/settings/wcj-settings-sale-flash.php:20
|
7838 |
+
#: includes/settings/wcj-settings-sale-flash.php:65
|
7839 |
+
#: includes/settings/wcj-settings-sale-flash.php:90
|
7840 |
+
#: includes/settings/wcj-settings-shipping-by-condition.php:25
|
7841 |
+
#: includes/settings/wcj-settings-shipping-options.php:21
|
7842 |
+
#: includes/settings/wcj-settings-stock.php:23
|
7843 |
+
#: includes/settings/wcj-settings-tax-display.php:27
|
7844 |
+
#: includes/settings/wcj-settings-tax-display.php:44
|
7845 |
+
#: includes/settings/wcj-settings-tax-display.php:101
|
7846 |
+
msgid "Enable section"
|
7847 |
msgstr ""
|
7848 |
|
7849 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:28
|
7850 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:35
|
7851 |
+
msgid "Add column and filtering"
|
7852 |
msgstr ""
|
7853 |
|
7854 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:41
|
7855 |
+
#: includes/settings/wcj-settings-admin-products-list.php:26
|
7856 |
+
msgid "Custom Columns Total Number"
|
7857 |
msgstr ""
|
7858 |
|
7859 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:56
|
7860 |
+
#: includes/settings/wcj-settings-admin-products-list.php:42
|
7861 |
+
msgid "Custom Column"
|
|
|
|
|
|
|
|
|
7862 |
msgstr ""
|
7863 |
|
7864 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:58
|
7865 |
+
#: includes/settings/wcj-settings-admin-products-list.php:44
|
7866 |
+
msgid "Key:"
|
7867 |
msgstr ""
|
7868 |
|
7869 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:64
|
7870 |
+
#: includes/settings/wcj-settings-admin-products-list.php:50
|
7871 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:143
|
7872 |
+
#: includes/settings/wcj-settings-checkout-files-upload.php:82
|
7873 |
+
#: includes/settings/wcj-settings-checkout-files-upload.php:256
|
7874 |
+
#: includes/settings/wcj-settings-offer-price.php:43
|
7875 |
+
#: includes/settings/wcj-settings-offer-price.php:115
|
7876 |
+
#: includes/settings/wcj-settings-offer-price.php:155
|
7877 |
+
#: includes/settings/wcj-settings-offer-price.php:163
|
7878 |
+
#: includes/settings/wcj-settings-offer-price.php:171
|
7879 |
+
#: includes/settings/wcj-settings-offer-price.php:179
|
7880 |
+
#: includes/tools/class-wcj-order-statuses-tool.php:139
|
7881 |
+
#: includes/tools/class-wcj-order-statuses-tool.php:211
|
7882 |
+
msgid "Label"
|
7883 |
msgstr ""
|
7884 |
|
7885 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:71
|
7886 |
+
#: includes/settings/wcj-settings-admin-products-list.php:57
|
7887 |
+
msgid "You can use shortcodes and/or HTML here."
|
7888 |
msgstr ""
|
7889 |
|
7890 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:77
|
7891 |
+
msgid "Sortable"
|
7892 |
msgstr ""
|
7893 |
|
7894 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:83
|
7895 |
+
msgid "By meta (as text)"
|
7896 |
msgstr ""
|
7897 |
|
7898 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:84
|
7899 |
+
msgid "By meta (as numbers)"
|
7900 |
msgstr ""
|
7901 |
|
7902 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:88
|
7903 |
+
msgid "Key (if sortable)"
|
7904 |
msgstr ""
|
7905 |
|
7906 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:101
|
7907 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:106
|
7908 |
+
msgid "Multiple Status"
|
7909 |
+
msgstr ""
|
7910 |
+
|
7911 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:113
|
7912 |
+
msgid "Multiple Status Filtering"
|
7913 |
+
msgstr ""
|
7914 |
+
|
7915 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:118
|
7916 |
+
#: includes/settings/wcj-settings-empty-cart.php:40
|
7917 |
+
#: includes/settings/wcj-settings-empty-cart.php:55
|
7918 |
+
#: includes/settings/wcj-settings-offer-price.php:69
|
7919 |
+
#: includes/settings/wcj-settings-offer-price.php:90
|
7920 |
+
msgid "Do not add"
|
7921 |
+
msgstr ""
|
7922 |
+
|
7923 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:119
|
7924 |
+
msgid "Add as multiple select"
|
7925 |
msgstr ""
|
7926 |
|
7927 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:120
|
7928 |
+
msgid "Add as checkboxes"
|
7929 |
+
msgstr ""
|
7930 |
+
|
7931 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:124
|
7932 |
+
msgid "Hide Default Statuses Menu"
|
7933 |
+
msgstr ""
|
7934 |
+
|
7935 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:125
|
7936 |
#: includes/settings/wcj-settings-breadcrumbs.php:34
|
7937 |
#: includes/settings/wcj-settings-cart-customization.php:20
|
7938 |
#: includes/settings/wcj-settings-cart-customization.php:27
|
7939 |
#: includes/settings/wcj-settings-checkout-customization.php:32
|
7940 |
#: includes/settings/wcj-settings-currency.php:21
|
7941 |
#: includes/settings/wcj-settings-order-custom-statuses.php:63
|
|
|
7942 |
#: includes/settings/wcj-settings-pdf-invoicing.php:74
|
7943 |
#: includes/settings/wcj-settings-product-bookings.php:92
|
7944 |
+
#: includes/settings/wcj-settings-product-images.php:20
|
7945 |
+
#: includes/settings/wcj-settings-product-images.php:27
|
7946 |
+
#: includes/settings/wcj-settings-product-images.php:34
|
7947 |
+
#: includes/settings/wcj-settings-product-images.php:41
|
7948 |
#: includes/settings/wcj-settings-related-products.php:163
|
7949 |
#: includes/settings/wcj-settings-related-products.php:169
|
7950 |
+
#: includes/settings/wcj-settings-sale-flash.php:35
|
7951 |
+
#: includes/settings/wcj-settings-sale-flash.php:42
|
7952 |
+
#: includes/settings/wcj-settings-sale-flash.php:49
|
7953 |
#: includes/settings/wcj-settings-shipping-calculator.php:54
|
7954 |
msgid "Hide"
|
7955 |
msgstr ""
|
7956 |
|
7957 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:131
|
7958 |
+
msgid "Add \"Not Completed\" Status Link to Default Statuses Menu"
|
|
|
|
|
|
|
|
|
|
|
7959 |
msgstr ""
|
7960 |
|
7961 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:142
|
7962 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:147
|
7963 |
+
#: includes/settings/wcj-settings-admin-products-list.php:70
|
7964 |
+
msgid "Columns Order"
|
7965 |
msgstr ""
|
7966 |
|
7967 |
+
#: includes/settings/wcj-settings-admin-orders-list.php:155
|
7968 |
+
#: includes/settings/wcj-settings-admin-products-list.php:83
|
7969 |
+
msgid "Default columns order"
|
7970 |
+
msgstr ""
|
7971 |
+
|
7972 |
+
#: includes/settings/wcj-settings-admin-products-list.php:27
|
7973 |
+
#: includes/settings/wcj-settings-price-by-user-role.php:130
|
7974 |
+
#: includes/settings/wcj-settings-shipping.php:51
|
7975 |
+
msgid ""
|
7976 |
+
"Save module's settings after changing this option to see new settings fields."
|
7977 |
+
msgstr ""
|
7978 |
+
|
7979 |
+
#: includes/settings/wcj-settings-admin-tools.php:14
|
7980 |
+
msgid "Admin Tools Options"
|
7981 |
+
msgstr ""
|
7982 |
+
|
7983 |
+
#: includes/settings/wcj-settings-admin-tools.php:26
|
7984 |
+
msgid "WooCommerce Log"
|
7985 |
+
msgstr ""
|
7986 |
+
|
7987 |
+
#: includes/settings/wcj-settings-admin-tools.php:33
|
7988 |
+
msgid "Debug"
|
7989 |
+
msgstr ""
|
7990 |
+
|
7991 |
+
#: includes/settings/wcj-settings-admin-tools.php:40
|
7992 |
+
msgid "PHP Memory Limit"
|
7993 |
+
msgstr ""
|
7994 |
+
|
7995 |
+
#: includes/settings/wcj-settings-admin-tools.php:41
|
7996 |
+
msgid "megabytes."
|
7997 |
+
msgstr ""
|
7998 |
+
|
7999 |
+
#: includes/settings/wcj-settings-admin-tools.php:42
|
8000 |
+
#: includes/settings/wcj-settings-admin-tools.php:51
|
8001 |
+
#: includes/settings/wcj-settings-offer-price.php:139
|
8002 |
+
#: includes/settings/wcj-settings-offer-price.php:147
|
8003 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:43
|
8004 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-offer-price.php:52
|
8005 |
+
msgid "Set zero to disable."
|
8006 |
+
msgstr ""
|
8007 |
+
|
8008 |
+
#: includes/settings/wcj-settings-admin-tools.php:49
|
8009 |
+
msgid "PHP Time Limit"
|
8010 |
+
msgstr ""
|
8011 |
+
|
8012 |
+
#: includes/settings/wcj-settings-admin-tools.php:50
|
8013 |
+
msgid "seconds."
|
8014 |
+
msgstr ""
|
8015 |
+
|
8016 |
+
#: includes/settings/wcj-settings-admin-tools.php:66
|
8017 |
+
msgid "System Info"
|
8018 |
+
msgstr ""
|
8019 |
+
|
8020 |
+
#: includes/settings/wcj-settings-admin-tools.php:73
|
8021 |
+
msgid "Show Order Meta"
|
8022 |
+
msgstr ""
|
8023 |
+
|
8024 |
+
#: includes/settings/wcj-settings-admin-tools.php:80
|
8025 |
+
msgid "Show Product Meta"
|
8026 |
+
msgstr ""
|
8027 |
+
|
8028 |
+
#: includes/settings/wcj-settings-breadcrumbs.php:19
|
8029 |
+
msgid "Change Breadcrumbs Home URL"
|
8030 |
+
msgstr ""
|
8031 |
+
|
8032 |
+
#: includes/settings/wcj-settings-breadcrumbs.php:26
|
8033 |
+
msgid "Home URL"
|
8034 |
+
msgstr ""
|
8035 |
+
|
8036 |
+
#: includes/settings/wcj-settings-breadcrumbs.php:33
|
8037 |
+
msgid "Hide Breadcrumbs"
|
8038 |
+
msgstr ""
|
8039 |
+
|
8040 |
+
#: includes/settings/wcj-settings-call-for-price.php:14
|
8041 |
+
msgid "Call for Price Options"
|
8042 |
+
msgstr ""
|
8043 |
+
|
8044 |
+
#: includes/settings/wcj-settings-call-for-price.php:16
|
8045 |
+
msgid ""
|
8046 |
+
"Leave price empty when adding or editing products. Then set the options here."
|
8047 |
+
msgstr ""
|
8048 |
+
|
8049 |
+
#: includes/settings/wcj-settings-call-for-price.php:17
|
8050 |
+
msgid "You can use shortcodes in options."
|
8051 |
+
msgstr ""
|
8052 |
+
|
8053 |
+
#: includes/settings/wcj-settings-call-for-price.php:21
|
8054 |
+
msgid "Label to Show on Single"
|
8055 |
msgstr ""
|
8056 |
|
8057 |
#: includes/settings/wcj-settings-call-for-price.php:22
|
8058 |
#: includes/settings/wcj-settings-call-for-price.php:32
|
8059 |
#: includes/settings/wcj-settings-call-for-price.php:42
|
8060 |
#: includes/settings/wcj-settings-call-for-price.php:52
|
8061 |
+
#: includes/settings/wcj-settings-call-for-price.php:62
|
8062 |
msgid "This sets the html to output on empty price. Leave blank to disable."
|
8063 |
msgstr ""
|
8064 |
|
8075 |
msgstr ""
|
8076 |
|
8077 |
#: includes/settings/wcj-settings-call-for-price.php:61
|
8078 |
+
msgid "Label to Show for Variations"
|
8079 |
+
msgstr ""
|
8080 |
+
|
8081 |
+
#: includes/settings/wcj-settings-call-for-price.php:71
|
8082 |
msgid "Hide Sale! Tag"
|
8083 |
msgstr ""
|
8084 |
|
8085 |
+
#: includes/settings/wcj-settings-call-for-price.php:72
|
8086 |
msgid "Hide the tag"
|
8087 |
msgstr ""
|
8088 |
|
8089 |
+
#: includes/settings/wcj-settings-call-for-price.php:78
|
8090 |
msgid "Make All Products Call for Price"
|
8091 |
msgstr ""
|
8092 |
|
8093 |
+
#: includes/settings/wcj-settings-call-for-price.php:80
|
8094 |
msgid ""
|
8095 |
+
"Enable this to make all products prices empty. When checkbox disabled, all "
|
8096 |
+
"prices go back to normal."
|
8097 |
msgstr ""
|
8098 |
|
8099 |
#: includes/settings/wcj-settings-cart-customization.php:19
|
8226 |
msgstr ""
|
8227 |
|
8228 |
#: includes/settings/wcj-settings-checkout-core-fields.php:66
|
8229 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:330
|
8230 |
msgid "required"
|
8231 |
msgstr ""
|
8232 |
|
8325 |
msgid "State"
|
8326 |
msgstr ""
|
8327 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8328 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:164
|
8329 |
msgid "Section"
|
8330 |
msgstr ""
|
8362 |
msgid "Clear"
|
8363 |
msgstr ""
|
8364 |
|
8365 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:193
|
8366 |
+
msgid "Customer Meta Fields"
|
8367 |
msgstr ""
|
8368 |
|
8369 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:201
|
8370 |
+
msgid "One option per line"
|
8371 |
+
msgstr ""
|
8372 |
+
|
8373 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:208
|
8374 |
msgid "Select: Use select2 Library"
|
8375 |
msgstr ""
|
8376 |
|
8377 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:216
|
8378 |
msgid "Checkbox: Value for ON"
|
8379 |
msgstr ""
|
8380 |
|
8381 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:222
|
8382 |
msgid "Checkbox: Value for OFF"
|
8383 |
msgstr ""
|
8384 |
|
8385 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:228
|
8386 |
msgid "Checkbox: Default Value"
|
8387 |
msgstr ""
|
8388 |
|
8389 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:237
|
8390 |
msgid "Datepicker/Weekpicker: Date Format"
|
8391 |
msgstr ""
|
8392 |
|
8393 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:238
|
8394 |
msgid ""
|
8395 |
"Visit <a href=\"https://codex.wordpress.org/Formatting_Date_and_Time\" "
|
8396 |
"target=\"_blank\">documentation on date and time formatting</a> for valid "
|
8397 |
"date formats"
|
8398 |
msgstr ""
|
8399 |
|
8400 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:245
|
8401 |
msgid "Datepicker/Weekpicker: Min Date"
|
8402 |
msgstr ""
|
8403 |
|
|
|
8404 |
#: includes/settings/wcj-settings-checkout-custom-fields.php:246
|
8405 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:253
|
8406 |
msgid "days"
|
8407 |
msgstr ""
|
8408 |
|
8409 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:252
|
8410 |
msgid "Datepicker/Weekpicker: Max Date"
|
8411 |
msgstr ""
|
8412 |
|
8413 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:259
|
8414 |
msgid "Datepicker/Weekpicker: Add Year Selector"
|
8415 |
msgstr ""
|
8416 |
|
8417 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:265
|
8418 |
msgid "Datepicker/Weekpicker: Year Selector: Year Range"
|
8419 |
msgstr ""
|
8420 |
|
8421 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:266
|
8422 |
msgid ""
|
8423 |
"The range of years displayed in the year drop-down: either relative to "
|
8424 |
"today's year (\"-nn:+nn\"), relative to the currently selected year (\"c-nn:c"
|
8427 |
"restrict which dates may be selected use the minDate and/or maxDate options."
|
8428 |
msgstr ""
|
8429 |
|
8430 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:272
|
8431 |
msgid "Datepicker/Weekpicker: First Week Day"
|
8432 |
msgstr ""
|
8433 |
|
8434 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:287
|
8435 |
msgid "Timepicker: Time Format"
|
8436 |
msgstr ""
|
8437 |
|
8438 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:288
|
8439 |
msgid ""
|
8440 |
"Visit <a href=\"http://timepicker.co/options/\" target=\"_blank\">timepicker "
|
8441 |
"options page</a> for valid time formats"
|
8442 |
msgstr ""
|
8443 |
|
8444 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:295
|
8445 |
msgid "minutes"
|
8446 |
msgstr ""
|
8447 |
|
8448 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:301
|
8449 |
+
#: includes/settings/wcj-settings-product-listings.php:47
|
8450 |
msgid "Exclude Categories"
|
8451 |
msgstr ""
|
8452 |
|
8453 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:302
|
8454 |
msgid "Hide this field if there is a product of selected category in cart."
|
8455 |
msgstr ""
|
8456 |
|
8457 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:310
|
8458 |
msgid "Include Categories"
|
8459 |
msgstr ""
|
8460 |
|
8461 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:311
|
8462 |
msgid ""
|
8463 |
"Show this field only if there is a product of selected category in cart."
|
8464 |
msgstr ""
|
8465 |
|
8466 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:319
|
8467 |
#: includes/settings/wcj-settings-global-discount.php:137
|
8468 |
#: includes/settings/wcj-settings-product-addons.php:140
|
8469 |
#: includes/settings/wcj-settings-related-products.php:223
|
8470 |
msgid "Exclude Products"
|
8471 |
msgstr ""
|
8472 |
|
8473 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:320
|
8474 |
msgid "Hide this field if there is a selected product in cart."
|
8475 |
msgstr ""
|
8476 |
|
8477 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:328
|
8478 |
#: includes/settings/wcj-settings-global-discount.php:126
|
8479 |
#: includes/settings/wcj-settings-related-products.php:212
|
8480 |
msgid "Include Products"
|
8481 |
msgstr ""
|
8482 |
|
8483 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:329
|
8484 |
msgid "Show this field only if there is a selected product in cart."
|
8485 |
msgstr ""
|
8486 |
|
8487 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:337
|
8488 |
+
msgid "Min Cart Amount"
|
8489 |
+
msgstr ""
|
8490 |
+
|
8491 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:338
|
8492 |
+
msgid ""
|
8493 |
+
"Show this field only if cart total is at least this amount. Set zero to "
|
8494 |
+
"disable."
|
8495 |
+
msgstr ""
|
8496 |
+
|
8497 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:345
|
8498 |
+
msgid "Max Cart Amount"
|
8499 |
+
msgstr ""
|
8500 |
+
|
8501 |
+
#: includes/settings/wcj-settings-checkout-custom-fields.php:346
|
8502 |
+
msgid ""
|
8503 |
+
"Show this field only if cart total is not more than this amount. Set zero to "
|
8504 |
+
"disable."
|
8505 |
+
msgstr ""
|
8506 |
+
|
8507 |
#: includes/settings/wcj-settings-checkout-custom-info.php:14
|
8508 |
msgid "Checkout Custom Info Blocks"
|
8509 |
msgstr ""
|
8669 |
msgstr ""
|
8670 |
|
8671 |
#: includes/settings/wcj-settings-checkout-customization.php:84
|
8672 |
+
#: includes/settings/wcj-settings-sale-flash.php:27
|
8673 |
+
#: includes/settings/wcj-settings-sale-flash.php:102
|
8674 |
msgid "You can use HTML and/or shortcodes here."
|
8675 |
msgstr ""
|
8676 |
|
8677 |
#: includes/settings/wcj-settings-checkout-files-upload.php:22
|
8678 |
+
#: includes/settings/wcj-settings-products-xml.php:23
|
8679 |
msgid "Total Files"
|
8680 |
msgstr ""
|
8681 |
|
8809 |
msgstr ""
|
8810 |
|
8811 |
#: includes/settings/wcj-settings-checkout-files-upload.php:219
|
8812 |
+
#: includes/settings/wcj-settings-product-input-fields.php:286
|
8813 |
msgid "Emails Options"
|
8814 |
msgstr ""
|
8815 |
|
8816 |
#: includes/settings/wcj-settings-checkout-files-upload.php:224
|
8817 |
+
#: includes/settings/wcj-settings-product-input-fields.php:291
|
8818 |
msgid "Attach Files to Admin's New Order Emails"
|
8819 |
msgstr ""
|
8820 |
|
8821 |
#: includes/settings/wcj-settings-checkout-files-upload.php:225
|
8822 |
#: includes/settings/wcj-settings-checkout-files-upload.php:232
|
|
|
8823 |
#: includes/settings/wcj-settings-product-input-fields.php:292
|
8824 |
+
#: includes/settings/wcj-settings-product-input-fields.php:299
|
8825 |
msgid "Attach"
|
8826 |
msgstr ""
|
8827 |
|
8828 |
#: includes/settings/wcj-settings-checkout-files-upload.php:231
|
8829 |
+
#: includes/settings/wcj-settings-product-input-fields.php:298
|
8830 |
msgid "Attach Files to Customer's Processing Order Emails"
|
8831 |
msgstr ""
|
8832 |
|
8863 |
|
8864 |
#: includes/settings/wcj-settings-checkout-files-upload.php:285
|
8865 |
#: includes/settings/wcj-settings-eu-vat-number.php:203
|
8866 |
+
#: includes/settings/wcj-settings-general.php:77
|
8867 |
#: includes/settings/wcj-settings-product-custom-info.php:188
|
8868 |
+
#: includes/settings/wcj-settings-shipping-by-condition.php:78
|
8869 |
msgid "Advanced Options"
|
8870 |
msgstr ""
|
8871 |
|
8941 |
msgstr ""
|
8942 |
|
8943 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:20
|
8944 |
+
#: includes/settings/wcj-settings-products-xml.php:55
|
8945 |
#, php-format
|
8946 |
msgid "%s seconds till next update."
|
8947 |
msgstr ""
|
8957 |
#: includes/settings/wcj-settings-currency-per-product.php:102
|
8958 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:24
|
8959 |
#: includes/settings/wcj-settings-multicurrency.php:22
|
8960 |
+
#: includes/settings/wcj-settings-payment-gateways-currency.php:59
|
8961 |
#: includes/settings/wcj-settings-price-by-country.php:244
|
8962 |
msgid "Exchange Rates Updates"
|
8963 |
msgstr ""
|
8964 |
|
|
|
|
|
|
|
|
|
8965 |
#: includes/settings/wcj-settings-currency-exchange-rates.php:53
|
8966 |
msgid "Exchange Rates Rounding"
|
8967 |
msgstr ""
|
9115 |
#: includes/settings/wcj-settings-currency-per-product.php:107
|
9116 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:29
|
9117 |
#: includes/settings/wcj-settings-multicurrency.php:28
|
9118 |
+
#: includes/settings/wcj-settings-payment-gateways-currency.php:64
|
9119 |
#: includes/settings/wcj-settings-price-by-country.php:249
|
9120 |
msgid "Enter Rates Manually"
|
9121 |
msgstr ""
|
9123 |
#: includes/settings/wcj-settings-currency-per-product.php:108
|
9124 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:30
|
9125 |
#: includes/settings/wcj-settings-multicurrency.php:29
|
9126 |
+
#: includes/settings/wcj-settings-payment-gateways-currency.php:65
|
9127 |
#: includes/settings/wcj-settings-price-by-country.php:250
|
9128 |
msgid "Automatically via Currency Exchange Rates module"
|
9129 |
msgstr ""
|
9131 |
#: includes/settings/wcj-settings-currency-per-product.php:111
|
9132 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:33
|
9133 |
#: includes/settings/wcj-settings-multicurrency.php:32
|
9134 |
+
#: includes/settings/wcj-settings-payment-gateways-currency.php:68
|
9135 |
#: includes/settings/wcj-settings-price-by-country.php:253
|
9136 |
msgid "Visit"
|
9137 |
msgstr ""
|
9139 |
#: includes/settings/wcj-settings-currency-per-product.php:111
|
9140 |
#: includes/settings/wcj-settings-multicurrency-base-price.php:33
|
9141 |
#: includes/settings/wcj-settings-multicurrency.php:32
|
9142 |
+
#: includes/settings/wcj-settings-payment-gateways-currency.php:68
|
9143 |
#: includes/settings/wcj-settings-price-by-country.php:253
|
9144 |
msgid "Currency Exchange Rates module"
|
9145 |
msgstr ""
|
9163 |
msgid "Total Currencies"
|
9164 |
msgstr ""
|
9165 |
|
9166 |
+
#: includes/settings/wcj-settings-currency-per-product.php:182
|
9167 |
msgid "Product Authors"
|
9168 |
msgstr ""
|
9169 |
|
9170 |
+
#: includes/settings/wcj-settings-currency-per-product.php:194
|
9171 |
msgid "Product Authors User Roles"
|
9172 |
msgstr ""
|
9173 |
|
9217 |
msgstr ""
|
9218 |
|
9219 |
#: includes/settings/wcj-settings-custom-css.php:36
|
9220 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:179
|
9221 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:210
|
9222 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:227
|
9223 |
msgid "This will add meta box to each product's edit page"
|
9224 |
msgstr ""
|
9225 |
|
9361 |
msgid "Button position on the Cart page"
|
9362 |
msgstr ""
|
9363 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9364 |
#: includes/settings/wcj-settings-empty-cart.php:41
|
9365 |
msgid "After Cart"
|
9366 |
msgstr ""
|
9517 |
msgstr ""
|
9518 |
|
9519 |
#: includes/settings/wcj-settings-export.php:20
|
9520 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:125
|
9521 |
msgid "CSV Separator"
|
9522 |
msgstr ""
|
9523 |
|
9661 |
msgstr ""
|
9662 |
|
9663 |
#: includes/settings/wcj-settings-free-price.php:16
|
9664 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:237
|
9665 |
msgid "External Products"
|
9666 |
msgstr ""
|
9667 |
|
9689 |
msgid "Variations"
|
9690 |
msgstr ""
|
9691 |
|
9692 |
+
#: includes/settings/wcj-settings-general.php:36
|
9693 |
msgid "Shortcodes Options"
|
9694 |
msgstr ""
|
9695 |
|
9696 |
+
#: includes/settings/wcj-settings-general.php:41
|
9697 |
msgid "Enable All Shortcodes in WordPress Text Widgets"
|
9698 |
msgstr ""
|
9699 |
|
9700 |
+
#: includes/settings/wcj-settings-general.php:42
|
9701 |
msgid ""
|
9702 |
"This will enable all (including non Booster's) shortcodes in WordPress text "
|
9703 |
"widgets."
|
9704 |
msgstr ""
|
9705 |
|
9706 |
+
#: includes/settings/wcj-settings-general.php:49
|
9707 |
msgid "Disable Booster's Shortcodes"
|
9708 |
msgstr ""
|
9709 |
|
9710 |
+
#: includes/settings/wcj-settings-general.php:50
|
9711 |
msgid "Disable all Booster's shortcodes (for memory saving)."
|
9712 |
msgstr ""
|
9713 |
|
9714 |
+
#: includes/settings/wcj-settings-general.php:51
|
9715 |
+
#: includes/settings/wcj-settings-general.php:100
|
9716 |
+
#: includes/settings/wcj-settings-general.php:114
|
9717 |
+
#: includes/settings/wcj-settings-general.php:121
|
9718 |
+
#: includes/settings/wcj-settings-general.php:128
|
9719 |
+
#: includes/settings/wcj-settings-general.php:135
|
9720 |
#: includes/settings/wcj-settings-pdf-invoicing-styling.php:126
|
9721 |
#: includes/settings/wcj-settings-price-by-user-role.php:56
|
9722 |
#: includes/settings/wcj-settings-price-by-user-role.php:88
|
9727 |
msgid "Disable"
|
9728 |
msgstr ""
|
9729 |
|
9730 |
+
#: includes/settings/wcj-settings-general.php:61
|
9731 |
+
#: includes/settings/wcj-settings-general.php:66
|
9732 |
msgid "Product Revisions"
|
9733 |
msgstr ""
|
9734 |
|
9735 |
+
#: includes/settings/wcj-settings-general.php:82
|
9736 |
msgid "Recalculate Cart Totals on Every Page Load"
|
9737 |
msgstr ""
|
9738 |
|
9739 |
+
#: includes/settings/wcj-settings-general.php:89
|
9740 |
msgid "Session Type in Booster"
|
9741 |
msgstr ""
|
9742 |
|
9743 |
+
#: includes/settings/wcj-settings-general.php:94
|
9744 |
msgid "Standard PHP sessions"
|
9745 |
msgstr ""
|
9746 |
|
9747 |
+
#: includes/settings/wcj-settings-general.php:95
|
9748 |
msgid "WC sessions"
|
9749 |
msgstr ""
|
9750 |
|
9751 |
+
#: includes/settings/wcj-settings-general.php:99
|
9752 |
msgid "Disable Loading Datepicker/Weekpicker CSS"
|
9753 |
msgstr ""
|
9754 |
|
9755 |
+
#: includes/settings/wcj-settings-general.php:106
|
9756 |
msgid "Datepicker/Weekpicker CSS"
|
9757 |
msgstr ""
|
9758 |
|
9759 |
+
#: includes/settings/wcj-settings-general.php:113
|
9760 |
msgid "Disable Loading Datepicker/Weekpicker JavaScript"
|
9761 |
msgstr ""
|
9762 |
|
9763 |
+
#: includes/settings/wcj-settings-general.php:120
|
9764 |
msgid "Disable Loading Timepicker CSS"
|
9765 |
msgstr ""
|
9766 |
|
9767 |
+
#: includes/settings/wcj-settings-general.php:127
|
9768 |
msgid "Disable Loading Timepicker JavaScript"
|
9769 |
msgstr ""
|
9770 |
|
9771 |
+
#: includes/settings/wcj-settings-general.php:134
|
9772 |
msgid "Disable Saving PDFs in PHP directory for temporary files"
|
9773 |
msgstr ""
|
9774 |
|
9775 |
+
#: includes/settings/wcj-settings-general.php:145
|
9776 |
msgid "PayPal Email per Product Options"
|
9777 |
msgstr ""
|
9778 |
|
9779 |
+
#: includes/settings/wcj-settings-general.php:150
|
9780 |
msgid "PayPal Email per Product"
|
9781 |
msgstr ""
|
9782 |
|
9783 |
+
#: includes/settings/wcj-settings-general.php:152
|
9784 |
#: includes/settings/wcj-settings-product-by-date.php:54
|
9785 |
#: includes/settings/wcj-settings-product-by-time.php:54
|
9786 |
msgid "This will add new meta box to each product's edit page."
|
9787 |
msgstr ""
|
9788 |
|
9789 |
+
#: includes/settings/wcj-settings-general.php:162
|
9790 |
msgid "Session Expiration Options"
|
9791 |
msgstr ""
|
9792 |
|
9793 |
+
#: includes/settings/wcj-settings-general.php:167
|
9794 |
+
#: includes/settings/wcj-settings-general.php:182
|
9795 |
msgid "Session Expiration"
|
9796 |
msgstr ""
|
9797 |
|
9798 |
+
#: includes/settings/wcj-settings-general.php:174
|
9799 |
msgid "Session Expiring"
|
9800 |
msgstr ""
|
9801 |
|
9802 |
+
#: includes/settings/wcj-settings-general.php:175
|
9803 |
msgid "In seconds. Default: 47 hours (60 * 60 * 47)"
|
9804 |
msgstr ""
|
9805 |
|
9806 |
+
#: includes/settings/wcj-settings-general.php:183
|
9807 |
msgid "In seconds. Default: 48 hours (60 * 60 * 48)"
|
9808 |
msgstr ""
|
9809 |
|
9810 |
+
#: includes/settings/wcj-settings-general.php:194
|
9811 |
msgid "Booster User Roles Changer Options"
|
9812 |
msgstr ""
|
9813 |
|
9814 |
+
#: includes/settings/wcj-settings-general.php:195
|
9815 |
msgid "This will add user roles changer tool to admin bar."
|
9816 |
msgstr ""
|
9817 |
|
9818 |
+
#: includes/settings/wcj-settings-general.php:201
|
9819 |
msgid "Booster User Roles Changer"
|
9820 |
msgstr ""
|
9821 |
|
9822 |
+
#: includes/settings/wcj-settings-general.php:210
|
9823 |
msgid "Enabled for"
|
9824 |
msgstr ""
|
9825 |
|
9829 |
|
9830 |
#: includes/settings/wcj-settings-global-discount.php:28
|
9831 |
#: includes/settings/wcj-settings-product-by-user.php:138
|
9832 |
+
#: includes/settings/wcj-settings-products-xml.php:27
|
9833 |
#: includes/shipping/class-wc-shipping-wcj-custom.php:157
|
9834 |
msgid "Press Save changes after you change this number."
|
9835 |
msgstr ""
|
9879 |
|
9880 |
#: includes/settings/wcj-settings-global-discount.php:83
|
9881 |
#: includes/settings/wcj-settings-product-add-to-cart.php:65
|
9882 |
+
#: includes/settings/wcj-settings-products-xml.php:204
|
9883 |
msgid "All products"
|
9884 |
msgstr ""
|
9885 |
|
9888 |
msgstr ""
|
9889 |
|
9890 |
#: includes/settings/wcj-settings-global-discount.php:85
|
9891 |
+
#: includes/settings/wcj-settings-products-xml.php:206
|
9892 |
msgid "Only products that are not on sale"
|
9893 |
msgstr ""
|
9894 |
|
10157 |
"added."
|
10158 |
msgstr ""
|
10159 |
|
10160 |
+
#: includes/settings/wcj-settings-multicurrency.php:160
|
10161 |
msgid "Role Defaults"
|
10162 |
msgstr ""
|
10163 |
|
10164 |
+
#: includes/settings/wcj-settings-multicurrency.php:167
|
10165 |
msgid "Roles"
|
10166 |
msgstr ""
|
10167 |
|
10168 |
+
#: includes/settings/wcj-settings-multicurrency.php:168
|
10169 |
#: includes/settings/wcj-settings-wholesale-price.php:137
|
10170 |
msgid "Save settings after you change this option. Leave blank to disable."
|
10171 |
msgstr ""
|
10172 |
|
10173 |
+
#: includes/settings/wcj-settings-multicurrency.php:191
|
10174 |
msgid "No default currency"
|
10175 |
msgstr ""
|
10176 |
|
10431 |
msgstr ""
|
10432 |
|
10433 |
#: includes/settings/wcj-settings-order-min-amount.php:29
|
10434 |
+
#: includes/settings/wcj-settings-order-min-amount.php:36
|
10435 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:99
|
10436 |
msgid "Exclude"
|
10437 |
msgstr ""
|
10438 |
|
10439 |
#: includes/settings/wcj-settings-order-min-amount.php:35
|
10440 |
+
msgid "Exclude Discounts from Cart Total"
|
10441 |
+
msgstr ""
|
10442 |
+
|
10443 |
+
#: includes/settings/wcj-settings-order-min-amount.php:42
|
10444 |
msgid "Error message"
|
10445 |
msgstr ""
|
10446 |
|
10447 |
+
#: includes/settings/wcj-settings-order-min-amount.php:44
|
10448 |
+
#: includes/settings/wcj-settings-order-min-amount.php:61
|
10449 |
#, php-format
|
10450 |
msgid ""
|
10451 |
"Message to customer if order is below minimum amount. Default: You must have "
|
10453 |
"is %s."
|
10454 |
msgstr ""
|
10455 |
|
10456 |
+
#: includes/settings/wcj-settings-order-min-amount.php:52
|
10457 |
msgid "Add notice to cart page also"
|
10458 |
msgstr ""
|
10459 |
|
10460 |
+
#: includes/settings/wcj-settings-order-min-amount.php:59
|
10461 |
msgid "Message on cart page"
|
10462 |
msgstr ""
|
10463 |
|
10464 |
+
#: includes/settings/wcj-settings-order-min-amount.php:69
|
10465 |
#: includes/settings/wcj-settings-pdf-invoicing.php:87
|
10466 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:101
|
10467 |
msgid "Advanced"
|
10468 |
msgstr ""
|
10469 |
|
10470 |
+
#: includes/settings/wcj-settings-order-min-amount.php:70
|
10471 |
msgid "Cart notice method"
|
10472 |
msgstr ""
|
10473 |
|
10474 |
+
#: includes/settings/wcj-settings-order-min-amount.php:75
|
10475 |
msgid "Print notice"
|
10476 |
msgstr ""
|
10477 |
|
10478 |
+
#: includes/settings/wcj-settings-order-min-amount.php:76
|
10479 |
msgid "Add notice"
|
10480 |
msgstr ""
|
10481 |
|
10482 |
+
#: includes/settings/wcj-settings-order-min-amount.php:80
|
10483 |
msgid "Cart notice type"
|
10484 |
msgstr ""
|
10485 |
|
10486 |
+
#: includes/settings/wcj-settings-order-min-amount.php:85
|
10487 |
#: includes/settings/wcj-settings-payment-gateways-min-max.php:55
|
10488 |
msgid "Notice"
|
10489 |
msgstr ""
|
10490 |
|
10491 |
+
#: includes/settings/wcj-settings-order-min-amount.php:86
|
10492 |
#: includes/settings/wcj-settings-payment-gateways-min-max.php:56
|
10493 |
msgid "Error"
|
10494 |
msgstr ""
|
10495 |
|
10496 |
+
#: includes/settings/wcj-settings-order-min-amount.php:90
|
10497 |
msgid ""
|
10498 |
"Stop customer from seeing the Checkout page if minimum amount not reached"
|
10499 |
msgstr ""
|
10500 |
|
10501 |
+
#: includes/settings/wcj-settings-order-min-amount.php:91
|
10502 |
msgid "Redirect back to Cart page"
|
10503 |
msgstr ""
|
10504 |
|
10505 |
+
#: includes/settings/wcj-settings-order-min-amount.php:101
|
10506 |
msgid "Order Minimum Amount by User Role"
|
10507 |
msgstr ""
|
10508 |
|
10660 |
msgid "Minimum Quantity"
|
10661 |
msgstr ""
|
10662 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10663 |
#: includes/settings/wcj-settings-order-quantities.php:27
|
10664 |
#: includes/settings/wcj-settings-order-quantities.php:85
|
10665 |
msgid "Cart Total Quantity"
|
10690 |
|
10691 |
#: includes/settings/wcj-settings-order-quantities.php:54
|
10692 |
#: includes/settings/wcj-settings-order-quantities.php:112
|
10693 |
+
#: includes/settings/wcj-settings-sale-flash.php:66
|
10694 |
msgid "This will add meta box to each product's edit page."
|
10695 |
msgstr ""
|
10696 |
|
10744 |
msgid "Force quantity correction on add to cart button click"
|
10745 |
msgstr ""
|
10746 |
|
|
|
10747 |
#: includes/settings/wcj-settings-orders.php:19
|
10748 |
+
#: includes/settings/wcj-settings-orders.php:24
|
10749 |
msgid "Admin Order Currency"
|
10750 |
msgstr ""
|
10751 |
|
10752 |
+
#: includes/settings/wcj-settings-orders.php:26
|
10753 |
msgid ""
|
10754 |
"When enabled this will add \"Booster: Orders\" metabox to each order's edit "
|
10755 |
"page."
|
10756 |
msgstr ""
|
10757 |
|
10758 |
+
#: includes/settings/wcj-settings-orders.php:32
|
10759 |
msgid "Admin Order Currency Method"
|
10760 |
msgstr ""
|
10761 |
|
10762 |
+
#: includes/settings/wcj-settings-orders.php:33
|
10763 |
msgid ""
|
10764 |
"Choose if you want changed order currency to be saved directly to DB, or if "
|
10765 |
"you want to use filter. When using <em>filter</em> method, changes will be "
|
10768 |
"Booster plugin is removed."
|
10769 |
msgstr ""
|
10770 |
|
10771 |
+
#: includes/settings/wcj-settings-orders.php:39
|
10772 |
msgid "Directly to DB"
|
10773 |
msgstr ""
|
10774 |
|
10775 |
+
#: includes/settings/wcj-settings-orders.php:47
|
10776 |
msgid "Orders Auto-Complete"
|
10777 |
msgstr ""
|
10778 |
|
10779 |
+
#: includes/settings/wcj-settings-orders.php:49
|
10780 |
msgid "This section lets you enable orders auto-complete function."
|
10781 |
msgstr ""
|
10782 |
|
10783 |
+
#: includes/settings/wcj-settings-orders.php:53
|
10784 |
msgid "Auto-complete all WooCommerce orders"
|
10785 |
msgstr ""
|
10786 |
|
10787 |
+
#: includes/settings/wcj-settings-orders.php:55
|
10788 |
msgid ""
|
10789 |
"E.g. if you sell digital products then you are not shipping anything and you "
|
10790 |
"may want auto-complete all your orders."
|
10791 |
msgstr ""
|
10792 |
|
10793 |
+
#: includes/settings/wcj-settings-orders.php:65
|
10794 |
+
msgid "Bulk Regenerate Download Permissions for Orders"
|
|
|
10795 |
msgstr ""
|
10796 |
|
10797 |
+
#: includes/settings/wcj-settings-orders.php:70
|
10798 |
+
msgid "Bulk Regenerate Download Permissions"
|
10799 |
msgstr ""
|
10800 |
|
10801 |
+
#: includes/settings/wcj-settings-orders.php:79
|
10802 |
+
msgid "Bulk Actions"
|
|
|
10803 |
msgstr ""
|
10804 |
|
10805 |
#: includes/settings/wcj-settings-orders.php:80
|
10806 |
+
msgid ""
|
10807 |
+
"When enabled this will add \"Regenerate download permissions\" action to "
|
10808 |
+
"\"Bulk Actions\" select box on admin orders page."
|
10809 |
msgstr ""
|
10810 |
|
10811 |
+
#: includes/settings/wcj-settings-orders.php:88
|
10812 |
+
msgid "All Orders - Now"
|
|
|
10813 |
msgstr ""
|
10814 |
|
10815 |
+
#: includes/settings/wcj-settings-orders.php:89
|
10816 |
+
msgid ""
|
10817 |
+
"Check this box and press \"Save changes\" button to start regeneration. "
|
10818 |
+
"Please note that both module and current section must be enabled before that."
|
10819 |
msgstr ""
|
10820 |
|
10821 |
+
#: includes/settings/wcj-settings-orders.php:90
|
10822 |
+
msgid "Regenerate now"
|
|
|
10823 |
msgstr ""
|
10824 |
|
10825 |
+
#: includes/settings/wcj-settings-orders.php:97
|
10826 |
+
msgid "All Orders - Periodically"
|
10827 |
msgstr ""
|
10828 |
|
10829 |
+
#: includes/settings/wcj-settings-orders.php:103
|
10830 |
+
msgid "Regenerate"
|
10831 |
msgstr ""
|
10832 |
|
10833 |
+
#: includes/settings/wcj-settings-payment-gateways-by-country.php:16
|
10834 |
+
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:16
|
10835 |
+
#: includes/settings/wcj-settings-payment-gateways-by-user-role.php:16
|
10836 |
+
#: includes/settings/wcj-settings-shipping-by-condition.php:20
|
10837 |
+
msgid "Leave empty to disable."
|
10838 |
msgstr ""
|
10839 |
|
10840 |
+
#: includes/settings/wcj-settings-payment-gateways-by-country.php:39
|
10841 |
+
msgid "Include Countries"
|
10842 |
msgstr ""
|
10843 |
|
10844 |
+
#: includes/settings/wcj-settings-payment-gateways-by-country.php:51
|
10845 |
+
msgid "Exclude Countries"
|
10846 |
msgstr ""
|
10847 |
|
10848 |
+
#: includes/settings/wcj-settings-payment-gateways-by-country.php:63
|
10849 |
+
msgid "Include States (Base Country)"
|
10850 |
msgstr ""
|
10851 |
|
10852 |
+
#: includes/settings/wcj-settings-payment-gateways-by-country.php:75
|
10853 |
+
msgid "Exclude States (Base Country)"
|
10854 |
msgstr ""
|
10855 |
|
10856 |
+
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:27
|
10857 |
+
#, php-format
|
10858 |
+
msgid "PayPal allows only these currencies:<br>%s."
|
10859 |
msgstr ""
|
10860 |
|
10861 |
+
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:44
|
10862 |
+
msgid "Allowed Currencies"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10863 |
msgstr ""
|
10864 |
|
10865 |
#: includes/settings/wcj-settings-payment-gateways-by-currency.php:55
|
10906 |
|
10907 |
#: includes/settings/wcj-settings-payment-gateways-fees.php:25
|
10908 |
#: includes/settings/wcj-settings-pdf-invoicing-header.php:36
|
10909 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:83
|
10910 |
#: includes/settings/wcj-settings-purchase-data.php:67
|
10911 |
msgid "Leave blank to disable"
|
10912 |
msgstr ""
|
11326 |
msgstr ""
|
11327 |
|
11328 |
#: includes/settings/wcj-settings-pdf-invoicing-page.php:39
|
11329 |
+
msgid "Custom: width (millimeters)"
|
11330 |
+
msgstr ""
|
11331 |
+
|
11332 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:46
|
11333 |
+
msgid "Custom: height (millimeters)"
|
11334 |
+
msgstr ""
|
11335 |
+
|
11336 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:53
|
11337 |
msgid "Margin Left"
|
11338 |
msgstr ""
|
11339 |
|
11340 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:59
|
11341 |
msgid "Margin Right"
|
11342 |
msgstr ""
|
11343 |
|
11344 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:65
|
11345 |
msgid "Margin Top"
|
11346 |
msgstr ""
|
11347 |
|
11348 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:71
|
11349 |
msgid "Margin Bottom"
|
11350 |
msgstr ""
|
11351 |
|
11352 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:77
|
11353 |
msgid "Background Image"
|
11354 |
msgstr ""
|
11355 |
|
11356 |
+
#: includes/settings/wcj-settings-pdf-invoicing-page.php:81
|
11357 |
#, php-format
|
11358 |
msgid ""
|
11359 |
"Enter a local URL to an image. Upload your image using the <a href=\"%s"
|
11508 |
msgid "DOCUMENT_ROOT"
|
11509 |
msgstr ""
|
11510 |
|
11511 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:101
|
11512 |
+
msgid "Temp Directory"
|
11513 |
+
msgstr ""
|
11514 |
+
|
11515 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:102
|
11516 |
+
msgid "Leave blank to use the default temp directory."
|
11517 |
+
msgstr ""
|
11518 |
+
|
11519 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:112
|
11520 |
msgid "Report Tool Options"
|
11521 |
msgstr ""
|
11522 |
|
11523 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:117
|
11524 |
msgid "Reports Filename"
|
11525 |
msgstr ""
|
11526 |
|
11527 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:131
|
11528 |
msgid "CSV UTF-8 BOM"
|
11529 |
msgstr ""
|
11530 |
|
11531 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:138
|
11532 |
msgid "Replace Periods with Commas in CSV Data"
|
11533 |
msgstr ""
|
11534 |
|
11535 |
+
#: includes/settings/wcj-settings-pdf-invoicing.php:139
|
11536 |
msgid "Replace"
|
11537 |
msgstr ""
|
11538 |
|
11783 |
msgid "Price by User Role by Products Categories"
|
11784 |
msgstr ""
|
11785 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11786 |
#: includes/settings/wcj-settings-price-formats.php:20
|
11787 |
msgid "Trim Zeros in Prices"
|
11788 |
msgstr ""
|
11805 |
msgstr ""
|
11806 |
|
11807 |
#: includes/settings/wcj-settings-price-formats.php:72
|
11808 |
+
#: includes/settings/wcj-settings-price-formats.php:86
|
11809 |
msgid "Left"
|
11810 |
msgstr ""
|
11811 |
|
11812 |
#: includes/settings/wcj-settings-price-formats.php:73
|
11813 |
+
#: includes/settings/wcj-settings-price-formats.php:87
|
11814 |
msgid "Right"
|
11815 |
msgstr ""
|
11816 |
|
11817 |
#: includes/settings/wcj-settings-price-formats.php:74
|
11818 |
+
#: includes/settings/wcj-settings-price-formats.php:88
|
11819 |
msgid "Left with space"
|
11820 |
msgstr ""
|
11821 |
|
11822 |
#: includes/settings/wcj-settings-price-formats.php:75
|
11823 |
+
#: includes/settings/wcj-settings-price-formats.php:89
|
11824 |
msgid "Right with space"
|
11825 |
msgstr ""
|
11826 |
|
11827 |
#: includes/settings/wcj-settings-price-formats.php:80
|
11828 |
+
msgid "Additional Currency Code Position"
|
11829 |
+
msgstr ""
|
11830 |
+
|
11831 |
+
#: includes/settings/wcj-settings-price-formats.php:85
|
11832 |
+
msgid "Do not add currency code"
|
11833 |
+
msgstr ""
|
11834 |
+
|
11835 |
+
#: includes/settings/wcj-settings-price-formats.php:93
|
11836 |
msgid "Thousand Separator"
|
11837 |
msgstr ""
|
11838 |
|
11839 |
+
#: includes/settings/wcj-settings-price-formats.php:101
|
11840 |
msgid "Decimal Separator"
|
11841 |
msgstr ""
|
11842 |
|
11843 |
+
#: includes/settings/wcj-settings-price-formats.php:109
|
11844 |
msgid "Number of Decimals"
|
11845 |
msgstr ""
|
11846 |
|
11847 |
+
#: includes/settings/wcj-settings-price-formats.php:117
|
11848 |
msgid "WPML Language Code"
|
11849 |
msgstr ""
|
11850 |
|
11851 |
+
#: includes/settings/wcj-settings-price-formats.php:118
|
11852 |
msgid ""
|
11853 |
"Option to set different price formats for different WPML languages. Can be "
|
11854 |
"comma separated list. Leave empty to disable."
|
11995 |
#: includes/settings/wcj-settings-product-add-to-cart.php:39
|
11996 |
#: includes/settings/wcj-settings-product-by-date.php:52
|
11997 |
#: includes/settings/wcj-settings-product-by-time.php:52
|
11998 |
+
#: includes/settings/wcj-settings-sale-flash.php:59
|
11999 |
+
#: includes/settings/wcj-settings-sale-flash.php:64
|
12000 |
msgid "Per Product"
|
12001 |
msgstr ""
|
12002 |
|
12077 |
msgid "Disable on Cart Page"
|
12078 |
msgstr ""
|
12079 |
|
12080 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:161
|
12081 |
+
msgid "Set All Products to \"Sold individually\""
|
12082 |
+
msgstr ""
|
12083 |
+
|
12084 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:172
|
12085 |
msgid "Add to Cart Button Disabling"
|
12086 |
msgstr ""
|
12087 |
|
12088 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:177
|
12089 |
msgid "Disable Add to Cart Buttons on per Product Basis"
|
12090 |
msgstr ""
|
12091 |
|
12092 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:185
|
12093 |
msgid "Disable Add to Cart Buttons on All Category/Archives Pages"
|
12094 |
msgstr ""
|
12095 |
|
|
|
12096 |
#: includes/settings/wcj-settings-product-add-to-cart.php:186
|
12097 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:193
|
12098 |
msgid "Disable Buttons"
|
12099 |
msgstr ""
|
12100 |
|
12101 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:192
|
12102 |
msgid "Disable Add to Cart Buttons on All Single Product Pages"
|
12103 |
msgstr ""
|
12104 |
|
12105 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:203
|
12106 |
msgid "Add to Cart Button Custom URL"
|
12107 |
msgstr ""
|
12108 |
|
12109 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:208
|
12110 |
msgid "Custom Add to Cart Buttons URL on Archives on per Product Basis"
|
12111 |
msgstr ""
|
12112 |
|
12113 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:220
|
12114 |
msgid "Add to Cart Button AJAX"
|
12115 |
msgstr ""
|
12116 |
|
12117 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:225
|
12118 |
msgid "Disable/Enable Add to Cart Button AJAX on per Product Basis"
|
12119 |
msgstr ""
|
12120 |
|
12121 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:242
|
12122 |
msgid "Open External Products on Add to Cart in New Window"
|
12123 |
msgstr ""
|
12124 |
|
12125 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:243
|
12126 |
msgid "Enable on Single Product Pages"
|
12127 |
msgstr ""
|
12128 |
|
12129 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:250
|
12130 |
msgid "Enable on Category/Archive Pages"
|
12131 |
msgstr ""
|
12132 |
|
12133 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:261
|
12134 |
msgid "Add to Cart Message Options"
|
12135 |
msgstr ""
|
12136 |
|
12137 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:266
|
12138 |
msgid "Change \"Continue shopping\" Text"
|
12139 |
msgstr ""
|
12140 |
|
12141 |
+
#: includes/settings/wcj-settings-product-add-to-cart.php:280
|
12142 |
msgid "Change \"View cart\" Text"
|
12143 |
msgstr ""
|
12144 |
|
12268 |
msgid "Hide all addons"
|
12269 |
msgstr ""
|
12270 |
|
12271 |
+
#: includes/settings/wcj-settings-product-addons.php:222
|
12272 |
+
msgid "Position Priority on Frontend"
|
12273 |
+
msgstr ""
|
12274 |
+
|
12275 |
+
#: includes/settings/wcj-settings-product-addons.php:223
|
12276 |
+
#: includes/settings/wcj-settings-shipping-by-condition.php:84
|
12277 |
+
#: includes/settings/wcj-settings-shipping-options.php:41
|
12278 |
+
msgid "Set to zero to use the default priority."
|
12279 |
+
msgstr ""
|
12280 |
+
|
12281 |
#: includes/settings/wcj-settings-product-bookings.php:28
|
12282 |
msgid "Labels and Messages"
|
12283 |
msgstr ""
|
12374 |
msgstr ""
|
12375 |
|
12376 |
#: includes/settings/wcj-settings-product-by-country.php:14
|
12377 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:14
|
12378 |
msgid "Visibility Options"
|
12379 |
msgstr ""
|
12380 |
|
12381 |
#: includes/settings/wcj-settings-product-by-country.php:19
|
12382 |
#: includes/settings/wcj-settings-product-by-user-role.php:19
|
12383 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:19
|
12384 |
msgid "Hide Visibility"
|
12385 |
msgstr ""
|
12386 |
|
12387 |
#: includes/settings/wcj-settings-product-by-country.php:20
|
12388 |
#: includes/settings/wcj-settings-product-by-user-role.php:20
|
12389 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:20
|
12390 |
msgid ""
|
12391 |
"This will hide selected products in shop and search results. However product "
|
12392 |
"still will be accessible via direct link."
|
12394 |
|
12395 |
#: includes/settings/wcj-settings-product-by-country.php:27
|
12396 |
#: includes/settings/wcj-settings-product-by-user-role.php:27
|
12397 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:27
|
12398 |
msgid "Make Non-purchasable"
|
12399 |
msgstr ""
|
12400 |
|
12401 |
#: includes/settings/wcj-settings-product-by-country.php:28
|
12402 |
#: includes/settings/wcj-settings-product-by-user-role.php:28
|
12403 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:28
|
12404 |
msgid ""
|
12405 |
"This will make selected products non-purchasable (i.e. product can't be "
|
12406 |
"added to the cart)."
|
12408 |
|
12409 |
#: includes/settings/wcj-settings-product-by-country.php:35
|
12410 |
#: includes/settings/wcj-settings-product-by-user-role.php:35
|
12411 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:35
|
12412 |
msgid "Modify Query"
|
12413 |
msgstr ""
|
12414 |
|
12415 |
#: includes/settings/wcj-settings-product-by-country.php:36
|
12416 |
#: includes/settings/wcj-settings-product-by-user-role.php:36
|
12417 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:36
|
12418 |
msgid "This will hide selected products completely (including direct link)."
|
12419 |
msgstr ""
|
12420 |
|
12437 |
"to frontend with \"%s\" widget or %s shortcode."
|
12438 |
msgstr ""
|
12439 |
|
|
|
|
|
|
|
|
|
|
|
12440 |
#: includes/settings/wcj-settings-product-by-country.php:62
|
12441 |
msgid "Automatically by IP"
|
12442 |
msgstr ""
|
12571 |
msgstr ""
|
12572 |
|
12573 |
#: includes/settings/wcj-settings-product-by-user.php:15
|
12574 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:181
|
12575 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:373
|
12576 |
msgid "Image"
|
12577 |
msgstr ""
|
12578 |
|
12621 |
msgstr ""
|
12622 |
|
12623 |
#: includes/settings/wcj-settings-product-by-user.php:122
|
12624 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:291
|
12625 |
msgid "\"%product_title%\" successfully added!"
|
12626 |
msgstr ""
|
12627 |
|
12630 |
msgstr ""
|
12631 |
|
12632 |
#: includes/settings/wcj-settings-product-by-user.php:129
|
12633 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:298
|
12634 |
msgid "\"%product_title%\" successfully edited!"
|
12635 |
msgstr ""
|
12636 |
|
12655 |
msgstr ""
|
12656 |
|
12657 |
#: includes/settings/wcj-settings-product-custom-info.php:81
|
12658 |
+
#: includes/settings/wcj-settings-product-images.php:49
|
12659 |
+
#: includes/settings/wcj-settings-product-images.php:58
|
12660 |
+
#: includes/settings/wcj-settings-product-images.php:67
|
12661 |
+
#: includes/settings/wcj-settings-products-xml.php:111
|
12662 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:18
|
12663 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:25
|
12664 |
msgid "You can use shortcodes here."
|
12712 |
msgstr ""
|
12713 |
|
12714 |
#: includes/settings/wcj-settings-product-custom-info.php:160
|
12715 |
+
#: includes/settings/wcj-settings-products-xml.php:144
|
12716 |
msgid "Products to Include"
|
12717 |
msgstr ""
|
12718 |
|
12719 |
#: includes/settings/wcj-settings-product-custom-info.php:171
|
12720 |
+
#: includes/settings/wcj-settings-products-xml.php:154
|
12721 |
msgid "Products to Exclude"
|
12722 |
msgstr ""
|
12723 |
|
12731 |
"g.: <code>rehub_woo_after_compact_grid_title|Rehub: After title</code>."
|
12732 |
msgstr ""
|
12733 |
|
12734 |
+
#: includes/settings/wcj-settings-product-custom-visibility.php:44
|
12735 |
+
msgid "One per line."
|
12736 |
+
msgstr ""
|
12737 |
+
|
12738 |
#: includes/settings/wcj-settings-product-images.php:14
|
12739 |
msgid "Product Image and Thumbnails"
|
12740 |
msgstr ""
|
12741 |
|
12742 |
+
#: includes/settings/wcj-settings-product-images.php:19
|
12743 |
msgid "Image and Thumbnails on Single"
|
12744 |
msgstr ""
|
12745 |
|
12746 |
+
#: includes/settings/wcj-settings-product-images.php:26
|
12747 |
msgid "Image on Single"
|
12748 |
msgstr ""
|
12749 |
|
12750 |
+
#: includes/settings/wcj-settings-product-images.php:33
|
12751 |
msgid "Thumbnails on Single"
|
12752 |
msgstr ""
|
12753 |
|
12754 |
+
#: includes/settings/wcj-settings-product-images.php:40
|
12755 |
msgid "Image on Archives"
|
12756 |
msgstr ""
|
12757 |
|
12758 |
+
#: includes/settings/wcj-settings-product-images.php:47
|
12759 |
msgid "Replace Image on Single"
|
12760 |
msgstr ""
|
12761 |
|
12762 |
+
#: includes/settings/wcj-settings-product-images.php:48
|
12763 |
msgid ""
|
12764 |
"Replace image on single product page with custom HTML. Leave blank to "
|
12765 |
"disable."
|
12766 |
msgstr ""
|
12767 |
|
12768 |
+
#: includes/settings/wcj-settings-product-images.php:56
|
12769 |
msgid "Replace Thumbnails on Single"
|
12770 |
msgstr ""
|
12771 |
|
12772 |
+
#: includes/settings/wcj-settings-product-images.php:57
|
12773 |
msgid ""
|
12774 |
"Replace thumbnails on single product page with custom HTML. Leave blank to "
|
12775 |
"disable."
|
12776 |
msgstr ""
|
12777 |
|
12778 |
+
#: includes/settings/wcj-settings-product-images.php:65
|
12779 |
msgid "Replace Image on Archive"
|
12780 |
msgstr ""
|
12781 |
|
12782 |
+
#: includes/settings/wcj-settings-product-images.php:66
|
12783 |
msgid ""
|
12784 |
"Replace image on archive pages with custom HTML. Leave blank to disable."
|
12785 |
msgstr ""
|
12786 |
|
12787 |
+
#: includes/settings/wcj-settings-product-images.php:74
|
12788 |
msgid "Single Product Thumbnails Columns"
|
12789 |
msgstr ""
|
12790 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12791 |
#: includes/settings/wcj-settings-product-info.php:14
|
12792 |
msgid "Products Info"
|
12793 |
msgstr ""
|
12954 |
msgstr ""
|
12955 |
|
12956 |
#: includes/settings/wcj-settings-product-input-fields.php:226
|
12957 |
+
msgid "HTML Template - Radio Field"
|
12958 |
msgstr ""
|
12959 |
|
12960 |
#: includes/settings/wcj-settings-product-input-fields.php:233
|
12961 |
+
msgid "HTML to add after required field title"
|
12962 |
+
msgstr ""
|
12963 |
+
|
12964 |
+
#: includes/settings/wcj-settings-product-input-fields.php:240
|
12965 |
msgid "Cart Display Options"
|
12966 |
msgstr ""
|
12967 |
|
12968 |
+
#: includes/settings/wcj-settings-product-input-fields.php:241
|
12969 |
msgid ""
|
12970 |
"When \"Add to cart item data\" is selected, \"Cart HTML Template\" options "
|
12971 |
"below will be ignored."
|
12972 |
msgstr ""
|
12973 |
|
12974 |
+
#: includes/settings/wcj-settings-product-input-fields.php:246
|
12975 |
msgid "Add to cart item name"
|
12976 |
msgstr ""
|
12977 |
|
12978 |
+
#: includes/settings/wcj-settings-product-input-fields.php:247
|
12979 |
msgid "Add to cart item data"
|
12980 |
msgstr ""
|
12981 |
|
12982 |
+
#: includes/settings/wcj-settings-product-input-fields.php:251
|
12983 |
msgid "Cart HTML Template - Start"
|
12984 |
msgstr ""
|
12985 |
|
12986 |
+
#: includes/settings/wcj-settings-product-input-fields.php:258
|
12987 |
msgid "Cart HTML Template - Each Field"
|
12988 |
msgstr ""
|
12989 |
|
12990 |
+
#: includes/settings/wcj-settings-product-input-fields.php:265
|
12991 |
msgid "Cart HTML Template - End"
|
12992 |
msgstr ""
|
12993 |
|
12994 |
+
#: includes/settings/wcj-settings-product-input-fields.php:272
|
12995 |
msgid "Order Table Template - Each Field"
|
12996 |
msgstr ""
|
12997 |
|
12998 |
+
#: includes/settings/wcj-settings-product-input-fields.php:273
|
12999 |
msgid "Affects Order received page, Emails and Admin Orders View"
|
13000 |
msgstr ""
|
13001 |
|
13002 |
+
#: includes/settings/wcj-settings-product-input-fields.php:311
|
13003 |
msgid "Admin Order View Options"
|
13004 |
msgstr ""
|
13005 |
|
13006 |
+
#: includes/settings/wcj-settings-product-input-fields.php:316
|
13007 |
msgid "Replace Field ID with Field Label"
|
13008 |
msgstr ""
|
13009 |
|
13010 |
+
#: includes/settings/wcj-settings-product-listings.php:31
|
13011 |
msgid "Shop Page Display Options"
|
13012 |
msgstr ""
|
13013 |
|
13014 |
+
#: includes/settings/wcj-settings-product-listings.php:34
|
13015 |
#, php-format
|
13016 |
msgid ""
|
13017 |
"You can control what is shown on the product archive in <a href=\"%s"
|
13018 |
"\">WooCommerce > Settings > Products > Display > Shop page display</a>."
|
13019 |
msgstr ""
|
13020 |
|
13021 |
+
#: includes/settings/wcj-settings-product-listings.php:40
|
13022 |
msgid "Categories Count"
|
13023 |
msgstr ""
|
13024 |
|
13025 |
+
#: includes/settings/wcj-settings-product-listings.php:41
|
13026 |
msgid "Hide categories count on shop page"
|
13027 |
msgstr ""
|
13028 |
|
13029 |
+
#: includes/settings/wcj-settings-product-listings.php:48
|
13030 |
msgid ""
|
13031 |
" Excludes one or more categories from the shop page. Leave blank to disable."
|
13032 |
msgstr ""
|
13033 |
|
13034 |
+
#: includes/settings/wcj-settings-product-listings.php:57
|
13035 |
+
#: includes/settings/wcj-settings-product-listings.php:103
|
13036 |
msgid "Hide Empty"
|
13037 |
msgstr ""
|
13038 |
|
13039 |
+
#: includes/settings/wcj-settings-product-listings.php:58
|
13040 |
msgid "Hide empty categories on shop page"
|
13041 |
msgstr ""
|
13042 |
|
13043 |
+
#: includes/settings/wcj-settings-product-listings.php:64
|
13044 |
+
#: includes/settings/wcj-settings-product-listings.php:110
|
13045 |
msgid "Show Products"
|
13046 |
msgstr ""
|
13047 |
|
13048 |
+
#: includes/settings/wcj-settings-product-listings.php:65
|
13049 |
msgid "Show products if no categories are displayed on shop page"
|
13050 |
msgstr ""
|
13051 |
|
13052 |
+
#: includes/settings/wcj-settings-product-listings.php:75
|
13053 |
msgid "Category Display Options"
|
13054 |
msgstr ""
|
13055 |
|
13056 |
+
#: includes/settings/wcj-settings-product-listings.php:78
|
13057 |
#, php-format
|
13058 |
msgid ""
|
13059 |
"You can control what is shown on category archives in <a href=\"%s"
|
13061 |
"a>."
|
13062 |
msgstr ""
|
13063 |
|
13064 |
+
#: includes/settings/wcj-settings-product-listings.php:84
|
13065 |
msgid "Subcategories Count"
|
13066 |
msgstr ""
|
13067 |
|
13068 |
+
#: includes/settings/wcj-settings-product-listings.php:85
|
13069 |
msgid "Hide subcategories count on category pages"
|
13070 |
msgstr ""
|
13071 |
|
13072 |
+
#: includes/settings/wcj-settings-product-listings.php:93
|
13073 |
msgid "Exclude Subcategories"
|
13074 |
msgstr ""
|
13075 |
|
13076 |
+
#: includes/settings/wcj-settings-product-listings.php:94
|
13077 |
msgid ""
|
13078 |
" Excludes one or more categories from the category (archive) pages. Leave "
|
13079 |
"blank to disable."
|
13080 |
msgstr ""
|
13081 |
|
13082 |
+
#: includes/settings/wcj-settings-product-listings.php:104
|
13083 |
msgid "Hide empty subcategories on category pages"
|
13084 |
msgstr ""
|
13085 |
|
13086 |
+
#: includes/settings/wcj-settings-product-listings.php:111
|
13087 |
msgid "Show products if no categories are displayed on category page"
|
13088 |
msgstr ""
|
13089 |
|
13090 |
+
#: includes/settings/wcj-settings-product-listings.php:121
|
13091 |
+
#: includes/settings/wcj-settings-product-listings.php:127
|
13092 |
msgid "Product Shop Visibility by Price"
|
13093 |
msgstr ""
|
13094 |
|
13095 |
+
#: includes/settings/wcj-settings-product-listings.php:123
|
13096 |
msgid ""
|
13097 |
"Here you can set to hide products from shop and search results depending on "
|
13098 |
"product's price. Products will still be accessible via direct link."
|
13099 |
msgstr ""
|
13100 |
|
13101 |
+
#: includes/settings/wcj-settings-product-listings.php:134
|
13102 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:31
|
13103 |
msgid "Min Price"
|
13104 |
msgstr ""
|
13105 |
|
13106 |
+
#: includes/settings/wcj-settings-product-listings.php:135
|
13107 |
msgid ""
|
13108 |
"Products with price below this value will be hidden. Ignored if set to zero."
|
13109 |
msgstr ""
|
13110 |
|
13111 |
+
#: includes/settings/wcj-settings-product-listings.php:142
|
13112 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-open-pricing.php:38
|
13113 |
msgid "Max Price"
|
13114 |
msgstr ""
|
13115 |
|
13116 |
+
#: includes/settings/wcj-settings-product-listings.php:143
|
13117 |
msgid ""
|
13118 |
"Products with price above this value will be hidden. Ignored if set to zero."
|
13119 |
msgstr ""
|
13120 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13121 |
#: includes/settings/wcj-settings-product-open-pricing.php:21
|
13122 |
msgid "Frontend Label"
|
13123 |
msgstr ""
|
13218 |
msgstr ""
|
13219 |
|
13220 |
#: includes/settings/wcj-settings-product-tabs.php:60
|
13221 |
+
#: includes/settings/wcj-settings-product-tabs.php:259
|
13222 |
msgid "Make sure it's unique for each tab."
|
13223 |
msgstr ""
|
13224 |
|
13225 |
#: includes/settings/wcj-settings-product-tabs.php:73
|
13226 |
+
#: includes/settings/wcj-settings-product-tabs.php:272
|
13227 |
msgid "You can use shortcodes here..."
|
13228 |
msgstr ""
|
13229 |
|
13230 |
#: includes/settings/wcj-settings-product-tabs.php:94
|
13231 |
+
#: includes/settings/wcj-settings-product-tabs.php:293
|
13232 |
msgid "PRODUCTS to HIDE this tab"
|
13233 |
msgstr ""
|
13234 |
|
13235 |
#: includes/settings/wcj-settings-product-tabs.php:95
|
13236 |
+
#: includes/settings/wcj-settings-product-tabs.php:294
|
13237 |
msgid "To hide this tab from some products, enter products here."
|
13238 |
msgstr ""
|
13239 |
|
13240 |
#: includes/settings/wcj-settings-product-tabs.php:103
|
13241 |
+
#: includes/settings/wcj-settings-product-tabs.php:302
|
13242 |
msgid "PRODUCTS to SHOW this tab"
|
13243 |
msgstr ""
|
13244 |
|
13245 |
#: includes/settings/wcj-settings-product-tabs.php:104
|
13246 |
+
#: includes/settings/wcj-settings-product-tabs.php:303
|
13247 |
msgid "To show this tab only for some products, enter products here."
|
13248 |
msgstr ""
|
13249 |
|
13250 |
#: includes/settings/wcj-settings-product-tabs.php:112
|
13251 |
+
#: includes/settings/wcj-settings-product-tabs.php:311
|
13252 |
msgid "CATEGORIES to HIDE this tab"
|
13253 |
msgstr ""
|
13254 |
|
13255 |
#: includes/settings/wcj-settings-product-tabs.php:113
|
13256 |
+
#: includes/settings/wcj-settings-product-tabs.php:312
|
13257 |
msgid "To hide this tab from some categories, enter categories here."
|
13258 |
msgstr ""
|
13259 |
|
13260 |
#: includes/settings/wcj-settings-product-tabs.php:121
|
13261 |
+
#: includes/settings/wcj-settings-product-tabs.php:320
|
13262 |
msgid "CATEGORIES to SHOW this tab"
|
13263 |
msgstr ""
|
13264 |
|
13265 |
#: includes/settings/wcj-settings-product-tabs.php:122
|
13266 |
+
#: includes/settings/wcj-settings-product-tabs.php:321
|
13267 |
msgid "To show this tab only for some categories, enter categories here."
|
13268 |
msgstr ""
|
13269 |
|
13270 |
#: includes/settings/wcj-settings-product-tabs.php:130
|
13271 |
+
#: includes/settings/wcj-settings-product-tabs.php:329
|
13272 |
msgid "TAGS to HIDE this tab"
|
13273 |
msgstr ""
|
13274 |
|
13275 |
#: includes/settings/wcj-settings-product-tabs.php:131
|
13276 |
+
#: includes/settings/wcj-settings-product-tabs.php:330
|
13277 |
msgid "To hide this tab from some tags, enter tags here."
|
13278 |
msgstr ""
|
13279 |
|
13280 |
#: includes/settings/wcj-settings-product-tabs.php:139
|
13281 |
+
#: includes/settings/wcj-settings-product-tabs.php:338
|
13282 |
msgid "TAGS to SHOW this tab"
|
13283 |
msgstr ""
|
13284 |
|
13285 |
#: includes/settings/wcj-settings-product-tabs.php:140
|
13286 |
+
#: includes/settings/wcj-settings-product-tabs.php:339
|
13287 |
msgid "To show this tab only for some tags, enter tags here."
|
13288 |
msgstr ""
|
13289 |
|
13336 |
msgstr ""
|
13337 |
|
13338 |
#: includes/settings/wcj-settings-product-tabs.php:226
|
13339 |
+
msgid "Add Per Product Tabs Content to \"Yoast SEO\" plugin analysis"
|
13340 |
+
msgstr ""
|
13341 |
+
|
13342 |
+
#: includes/settings/wcj-settings-product-tabs.php:233
|
13343 |
msgid "Default Per Product Custom Product Tabs Number"
|
13344 |
msgstr ""
|
13345 |
|
13346 |
+
#: includes/settings/wcj-settings-product-tabs.php:251
|
13347 |
msgid "Default Title"
|
13348 |
msgstr ""
|
13349 |
|
13350 |
+
#: includes/settings/wcj-settings-product-tabs.php:258
|
13351 |
msgid "Default Key"
|
13352 |
msgstr ""
|
13353 |
|
13354 |
+
#: includes/settings/wcj-settings-product-tabs.php:265
|
13355 |
msgid "Default Priority (i.e. Order)"
|
13356 |
msgstr ""
|
13357 |
|
13358 |
+
#: includes/settings/wcj-settings-product-tabs.php:271
|
13359 |
msgid "Default Content"
|
13360 |
msgstr ""
|
13361 |
|
13362 |
+
#: includes/settings/wcj-settings-product-tabs.php:279
|
13363 |
msgid "Default Link"
|
13364 |
msgstr ""
|
13365 |
|
13366 |
+
#: includes/settings/wcj-settings-product-tabs.php:280
|
13367 |
msgid "Leave blank for default behaviour."
|
13368 |
msgstr ""
|
13369 |
|
13370 |
+
#: includes/settings/wcj-settings-product-tabs.php:287
|
13371 |
msgid "Default \"Link - Open in New Window\""
|
13372 |
msgstr ""
|
13373 |
|
13374 |
+
#: includes/settings/wcj-settings-product-tabs.php:355
|
13375 |
msgid "WooCommerce Standard Product Tabs Options"
|
13376 |
msgstr ""
|
13377 |
|
13378 |
+
#: includes/settings/wcj-settings-product-tabs.php:357
|
13379 |
msgid "This section lets you customize single product tabs."
|
13380 |
msgstr ""
|
13381 |
|
13382 |
+
#: includes/settings/wcj-settings-product-tabs.php:361
|
13383 |
msgid "Description Tab"
|
13384 |
msgstr ""
|
13385 |
|
|
|
|
|
|
|
|
|
|
|
|
|
13386 |
#: includes/settings/wcj-settings-product-tabs.php:362
|
13387 |
#: includes/settings/wcj-settings-product-tabs.php:383
|
13388 |
#: includes/settings/wcj-settings-product-tabs.php:404
|
13389 |
+
msgid "Remove tab from product page"
|
13390 |
+
msgstr ""
|
13391 |
+
|
13392 |
+
#: includes/settings/wcj-settings-product-tabs.php:369
|
13393 |
+
#: includes/settings/wcj-settings-product-tabs.php:390
|
13394 |
+
#: includes/settings/wcj-settings-product-tabs.php:411
|
13395 |
msgid "Leave blank for WooCommerce defaults"
|
13396 |
msgstr ""
|
13397 |
|
13398 |
+
#: includes/settings/wcj-settings-product-tabs.php:382
|
13399 |
msgid "Additional Information Tab"
|
13400 |
msgstr ""
|
13401 |
|
13402 |
+
#: includes/settings/wcj-settings-product-tabs.php:403
|
13403 |
msgid "Reviews Tab"
|
13404 |
msgstr ""
|
13405 |
|
13435 |
msgid "Template - After Form"
|
13436 |
msgstr ""
|
13437 |
|
13438 |
+
#: includes/settings/wcj-settings-products-xml.php:33
|
13439 |
msgid "Advanced: Block Size"
|
13440 |
msgstr ""
|
13441 |
|
13442 |
+
#: includes/settings/wcj-settings-products-xml.php:34
|
13443 |
msgid ""
|
13444 |
"If you have large number of products you may want to modify block size for "
|
13445 |
"WP_Query call. Leave default value if not sure."
|
13446 |
msgstr ""
|
13447 |
|
13448 |
+
#: includes/settings/wcj-settings-products-xml.php:58
|
13449 |
msgid "Create Now"
|
13450 |
msgstr ""
|
13451 |
|
13452 |
+
#: includes/settings/wcj-settings-products-xml.php:63
|
13453 |
#, php-format
|
13454 |
msgid "Recent file was created on %s"
|
13455 |
msgstr ""
|
13456 |
|
13457 |
+
#: includes/settings/wcj-settings-products-xml.php:70
|
13458 |
msgid "XML File"
|
13459 |
msgstr ""
|
13460 |
|
13461 |
+
#: includes/settings/wcj-settings-products-xml.php:83
|
13462 |
msgid "XML Header"
|
13463 |
msgstr ""
|
13464 |
|
13465 |
+
#: includes/settings/wcj-settings-products-xml.php:84
|
13466 |
msgid "You can use shortcodes here. For example [wcj_current_datetime]."
|
13467 |
msgstr ""
|
13468 |
|
13469 |
+
#: includes/settings/wcj-settings-products-xml.php:91
|
13470 |
msgid "XML Item"
|
13471 |
msgstr ""
|
13472 |
|
13473 |
+
#: includes/settings/wcj-settings-products-xml.php:93
|
13474 |
#, php-format
|
13475 |
msgid ""
|
13476 |
"You can use shortcodes here. Please take a look at <a target=\"_blank\" href="
|
13477 |
"\"%s\">Booster's products shortcodes</a>."
|
13478 |
msgstr ""
|
13479 |
|
13480 |
+
#: includes/settings/wcj-settings-products-xml.php:110
|
13481 |
msgid "XML Footer"
|
13482 |
msgstr ""
|
13483 |
|
13484 |
+
#: includes/settings/wcj-settings-products-xml.php:118
|
13485 |
msgid "XML File Path and Name"
|
13486 |
msgstr ""
|
13487 |
|
13488 |
+
#: includes/settings/wcj-settings-products-xml.php:119
|
13489 |
msgid "Path on server:"
|
13490 |
msgstr ""
|
13491 |
|
13492 |
+
#: includes/settings/wcj-settings-products-xml.php:127
|
13493 |
msgid "Update Period"
|
13494 |
msgstr ""
|
13495 |
|
13496 |
+
#: includes/settings/wcj-settings-products-xml.php:139
|
13497 |
msgid ""
|
13498 |
"Possible update periods are: every minute, hourly, twice daily, daily and "
|
13499 |
"weekly."
|
13500 |
msgstr ""
|
13501 |
|
13502 |
+
#: includes/settings/wcj-settings-products-xml.php:145
|
13503 |
msgid ""
|
13504 |
"To include selected products only, enter products here. Leave blank to "
|
13505 |
"include all products."
|
13506 |
msgstr ""
|
13507 |
|
13508 |
+
#: includes/settings/wcj-settings-products-xml.php:155
|
13509 |
msgid ""
|
13510 |
"To exclude selected products, enter products here. Leave blank to include "
|
13511 |
"all products."
|
13512 |
msgstr ""
|
13513 |
|
13514 |
+
#: includes/settings/wcj-settings-products-xml.php:163
|
13515 |
msgid "Categories to Include"
|
13516 |
msgstr ""
|
13517 |
|
13518 |
+
#: includes/settings/wcj-settings-products-xml.php:164
|
13519 |
msgid ""
|
13520 |
"To include products from selected categories only, enter categories here. "
|
13521 |
"Leave blank to include all products."
|
13522 |
msgstr ""
|
13523 |
|
13524 |
+
#: includes/settings/wcj-settings-products-xml.php:172
|
13525 |
msgid "Categories to Exclude"
|
13526 |
msgstr ""
|
13527 |
|
13528 |
+
#: includes/settings/wcj-settings-products-xml.php:173
|
13529 |
msgid ""
|
13530 |
"To exclude products from selected categories, enter categories here. Leave "
|
13531 |
"blank to include all products."
|
13532 |
msgstr ""
|
13533 |
|
13534 |
+
#: includes/settings/wcj-settings-products-xml.php:181
|
13535 |
msgid "Tags to Include"
|
13536 |
msgstr ""
|
13537 |
|
13538 |
+
#: includes/settings/wcj-settings-products-xml.php:182
|
13539 |
msgid ""
|
13540 |
"To include products from selected tags only, enter tags here. Leave blank to "
|
13541 |
"include all products."
|
13542 |
msgstr ""
|
13543 |
|
13544 |
+
#: includes/settings/wcj-settings-products-xml.php:190
|
13545 |
msgid "Tags to Exclude"
|
13546 |
msgstr ""
|
13547 |
|
13548 |
+
#: includes/settings/wcj-settings-products-xml.php:191
|
13549 |
msgid ""
|
13550 |
"To exclude products from selected tags, enter tags here. Leave blank to "
|
13551 |
"include all products."
|
13552 |
msgstr ""
|
13553 |
|
13554 |
+
#: includes/settings/wcj-settings-products-xml.php:199
|
13555 |
msgid "Products Scope"
|
13556 |
msgstr ""
|
13557 |
|
13558 |
+
#: includes/settings/wcj-settings-products-xml.php:205
|
13559 |
msgid "Only products that are on sale"
|
13560 |
msgstr ""
|
13561 |
|
13562 |
+
#: includes/settings/wcj-settings-products-xml.php:207
|
13563 |
msgid "Only products that are featured"
|
13564 |
msgstr ""
|
13565 |
|
13566 |
+
#: includes/settings/wcj-settings-products-xml.php:208
|
13567 |
msgid "Only products that are not featured"
|
13568 |
msgstr ""
|
13569 |
|
13637 |
"This section lets you add custom columns to WooCommerce admin products list."
|
13638 |
msgstr ""
|
13639 |
|
13640 |
+
#: includes/settings/wcj-settings-purchase-data.php:155
|
13641 |
+
msgid "Admin Orders List Custom Columns"
|
13642 |
+
msgstr ""
|
13643 |
+
|
13644 |
#: includes/settings/wcj-settings-purchase-data.php:157
|
13645 |
msgid ""
|
13646 |
"This section lets you add custom columns to WooCommerce admin orders list."
|
13880 |
msgid "View report"
|
13881 |
msgstr ""
|
13882 |
|
13883 |
+
#: includes/settings/wcj-settings-sale-flash.php:14
|
13884 |
+
#: includes/settings/wcj-settings-sale-flash.php:19
|
13885 |
+
msgid "Globally"
|
13886 |
+
msgstr ""
|
13887 |
+
|
13888 |
+
#: includes/settings/wcj-settings-sale-flash.php:34
|
13889 |
+
msgid "Hide Everywhere"
|
13890 |
+
msgstr ""
|
13891 |
+
|
13892 |
+
#: includes/settings/wcj-settings-sale-flash.php:41
|
13893 |
+
msgid "Hide on Archives (Categories) Only"
|
13894 |
+
msgstr ""
|
13895 |
+
|
13896 |
+
#: includes/settings/wcj-settings-sale-flash.php:48
|
13897 |
+
msgid "Hide on Single Page Only"
|
13898 |
+
msgstr ""
|
13899 |
+
|
13900 |
+
#: includes/settings/wcj-settings-sale-flash.php:81
|
13901 |
+
msgid "Per Category"
|
13902 |
+
msgstr ""
|
13903 |
+
|
13904 |
+
#: includes/settings/wcj-settings-sale-flash.php:81
|
13905 |
+
msgid "Per Tag"
|
13906 |
+
msgstr ""
|
13907 |
+
|
13908 |
#: includes/settings/wcj-settings-shipping-by-condition.php:18
|
13909 |
#: includes/settings/wcj-settings-shipping-by-condition.php:24
|
13910 |
#, php-format
|
13921 |
msgid "Exclude %s"
|
13922 |
msgstr ""
|
13923 |
|
13924 |
+
#: includes/settings/wcj-settings-shipping-by-condition.php:83
|
13925 |
+
msgid "Filter Priority"
|
13926 |
+
msgstr ""
|
13927 |
+
|
13928 |
#: includes/settings/wcj-settings-shipping-by-order-amount.php:44
|
13929 |
msgid "Maximum order amount"
|
13930 |
msgstr ""
|
14001 |
msgid "Hide when free is available"
|
14002 |
msgstr ""
|
14003 |
|
14004 |
+
#: includes/settings/wcj-settings-shipping-options.php:40
|
14005 |
+
msgid "Advanced: Filter Priority"
|
14006 |
+
msgstr ""
|
14007 |
+
|
14008 |
+
#: includes/settings/wcj-settings-shipping-options.php:53
|
14009 |
+
#: includes/settings/wcj-settings-shipping-options.php:62
|
14010 |
msgid "Free Shipping by Product"
|
14011 |
msgstr ""
|
14012 |
|
14013 |
+
#: includes/settings/wcj-settings-shipping-options.php:54
|
14014 |
msgid ""
|
14015 |
"In this section you can select products which grant free shipping when added "
|
14016 |
"to cart."
|
14017 |
msgstr ""
|
14018 |
|
14019 |
+
#: includes/settings/wcj-settings-shipping-options.php:55
|
14020 |
#, php-format
|
14021 |
msgid "Similar results can be achieved with %s module."
|
14022 |
msgstr ""
|
14023 |
|
14024 |
+
#: includes/settings/wcj-settings-shipping-options.php:78
|
14025 |
msgid ""
|
14026 |
"Select either <strong>all products</strong> or <strong>at least one product</"
|
14027 |
"strong> in cart must grant free shipping."
|
14028 |
msgstr ""
|
14029 |
|
14030 |
+
#: includes/settings/wcj-settings-shipping-options.php:83
|
14031 |
msgid "All products in cart must grant free shipping"
|
14032 |
msgstr ""
|
14033 |
|
14034 |
+
#: includes/settings/wcj-settings-shipping-options.php:84
|
14035 |
msgid "At least one product in cart must grant free shipping"
|
14036 |
msgstr ""
|
14037 |
|
14038 |
+
#: includes/settings/wcj-settings-shipping-options.php:96
|
14039 |
+
#: includes/settings/wcj-settings-shipping-options.php:102
|
14040 |
msgid "Shipping Descriptions"
|
14041 |
msgstr ""
|
14042 |
|
14043 |
+
#: includes/settings/wcj-settings-shipping-options.php:98
|
14044 |
#, php-format
|
14045 |
msgid ""
|
14046 |
"This section will allow you to add any text (e.g. description) for shipping "
|
14048 |
"tags here, e.g. try \"%s\""
|
14049 |
msgstr ""
|
14050 |
|
14051 |
+
#: includes/settings/wcj-settings-shipping-options.php:109
|
14052 |
msgid "Description Visibility"
|
14053 |
msgstr ""
|
14054 |
|
14055 |
+
#: includes/settings/wcj-settings-shipping-options.php:114
|
14056 |
+
#: includes/settings/wcj-settings-shipping-options.php:170
|
14057 |
msgid "On both cart and checkout pages"
|
14058 |
msgstr ""
|
14059 |
|
14060 |
+
#: includes/settings/wcj-settings-shipping-options.php:115
|
14061 |
+
#: includes/settings/wcj-settings-shipping-options.php:171
|
14062 |
msgid "Only on cart page"
|
14063 |
msgstr ""
|
14064 |
|
14065 |
+
#: includes/settings/wcj-settings-shipping-options.php:116
|
14066 |
+
#: includes/settings/wcj-settings-shipping-options.php:172
|
14067 |
msgid "Only on checkout page"
|
14068 |
msgstr ""
|
14069 |
|
14070 |
+
#: includes/settings/wcj-settings-shipping-options.php:118
|
14071 |
+
#: includes/settings/wcj-settings-shipping-options.php:174
|
14072 |
msgid ""
|
14073 |
"Possible values: on both cart and checkout pages; only on cart page; only on "
|
14074 |
"checkout page"
|
14075 |
msgstr ""
|
14076 |
|
14077 |
+
#: includes/settings/wcj-settings-shipping-options.php:142
|
14078 |
+
#: includes/settings/wcj-settings-shipping-options.php:148
|
14079 |
msgid "Shipping Icons"
|
14080 |
msgstr ""
|
14081 |
|
14082 |
+
#: includes/settings/wcj-settings-shipping-options.php:144
|
14083 |
msgid ""
|
14084 |
"This section will allow you to add icons for shipping method. Icons will be "
|
14085 |
"visible on cart and checkout pages."
|
14086 |
msgstr ""
|
14087 |
|
14088 |
+
#: includes/settings/wcj-settings-shipping-options.php:155
|
14089 |
msgid "Icon Position"
|
14090 |
msgstr ""
|
14091 |
|
14092 |
+
#: includes/settings/wcj-settings-shipping-options.php:160
|
14093 |
msgid "Before label"
|
14094 |
msgstr ""
|
14095 |
|
14096 |
+
#: includes/settings/wcj-settings-shipping-options.php:161
|
14097 |
msgid "After label"
|
14098 |
msgstr ""
|
14099 |
|
14100 |
+
#: includes/settings/wcj-settings-shipping-options.php:165
|
14101 |
msgid "Icon Visibility"
|
14102 |
msgstr ""
|
14103 |
|
14104 |
+
#: includes/settings/wcj-settings-shipping-options.php:179
|
14105 |
msgid "Icon Style"
|
14106 |
msgstr ""
|
14107 |
|
14108 |
+
#: includes/settings/wcj-settings-shipping-options.php:180
|
14109 |
msgid ""
|
14110 |
"You can also style icons with CSS class \"wcj_shipping_icon\", or id "
|
14111 |
"\"wcj_shipping_icon_method_id\""
|
14413 |
msgid "Custom Out of Stock Class"
|
14414 |
msgstr ""
|
14415 |
|
14416 |
+
#: includes/settings/wcj-settings-tax-display.php:20
|
14417 |
+
msgid "TAX Display - Toggle Button"
|
14418 |
+
msgstr ""
|
14419 |
+
|
14420 |
+
#: includes/settings/wcj-settings-tax-display.php:22
|
14421 |
+
#, php-format
|
14422 |
+
msgid "Use %s shortcode to display the button on frontend."
|
14423 |
+
msgstr ""
|
14424 |
+
|
14425 |
+
#: includes/settings/wcj-settings-tax-display.php:26
|
14426 |
+
msgid "TAX Toggle Button"
|
14427 |
+
msgstr ""
|
14428 |
+
|
14429 |
+
#: includes/settings/wcj-settings-tax-display.php:37
|
14430 |
+
#: includes/settings/wcj-settings-tax-display.php:43
|
14431 |
+
msgid "TAX Display by Product"
|
14432 |
+
msgstr ""
|
14433 |
+
|
14434 |
+
#: includes/settings/wcj-settings-tax-display.php:39
|
14435 |
+
msgid ""
|
14436 |
+
"If you want to display part of your products including TAX and another part "
|
14437 |
+
"excluding TAX, you can set it here."
|
14438 |
+
msgstr ""
|
14439 |
+
|
14440 |
+
#: includes/settings/wcj-settings-tax-display.php:50
|
14441 |
+
msgid "Products - Including TAX"
|
14442 |
+
msgstr ""
|
14443 |
+
|
14444 |
+
#: includes/settings/wcj-settings-tax-display.php:52
|
14445 |
+
msgid "Select products to display including TAX."
|
14446 |
+
msgstr ""
|
14447 |
+
|
14448 |
+
#: includes/settings/wcj-settings-tax-display.php:60
|
14449 |
+
msgid "Products - Excluding TAX"
|
14450 |
+
msgstr ""
|
14451 |
+
|
14452 |
+
#: includes/settings/wcj-settings-tax-display.php:62
|
14453 |
+
msgid "Select products to display excluding TAX."
|
14454 |
+
msgstr ""
|
14455 |
+
|
14456 |
+
#: includes/settings/wcj-settings-tax-display.php:70
|
14457 |
+
msgid "Product Categories - Including TAX"
|
14458 |
+
msgstr ""
|
14459 |
+
|
14460 |
+
#: includes/settings/wcj-settings-tax-display.php:72
|
14461 |
+
msgid "Select product categories to display including TAX."
|
14462 |
+
msgstr ""
|
14463 |
+
|
14464 |
+
#: includes/settings/wcj-settings-tax-display.php:80
|
14465 |
+
msgid "Product Categories - Excluding TAX"
|
14466 |
+
msgstr ""
|
14467 |
+
|
14468 |
+
#: includes/settings/wcj-settings-tax-display.php:82
|
14469 |
+
msgid "Select product categories to display excluding TAX."
|
14470 |
+
msgstr ""
|
14471 |
+
|
14472 |
+
#: includes/settings/wcj-settings-tax-display.php:94
|
14473 |
+
#: includes/settings/wcj-settings-tax-display.php:100
|
14474 |
+
msgid "TAX Display by User Role"
|
14475 |
+
msgstr ""
|
14476 |
+
|
14477 |
+
#: includes/settings/wcj-settings-tax-display.php:96
|
14478 |
+
msgid ""
|
14479 |
+
"If you want to display prices including TAX or excluding TAX for different "
|
14480 |
+
"user roles, you can set it here."
|
14481 |
+
msgstr ""
|
14482 |
+
|
14483 |
+
#: includes/settings/wcj-settings-tax-display.php:108
|
14484 |
+
msgid ""
|
14485 |
+
"Save changes after you change this option and new settings fields will "
|
14486 |
+
"appear."
|
14487 |
+
msgstr ""
|
14488 |
+
|
14489 |
+
#: includes/settings/wcj-settings-tax-display.php:109
|
14490 |
+
#, php-format
|
14491 |
+
msgid ""
|
14492 |
+
"Select user roles that you want to change tax display for. For all remaining "
|
14493 |
+
"(i.e. not selected) user roles - default TAX display (set in %s) will be "
|
14494 |
+
"applied."
|
14495 |
+
msgstr ""
|
14496 |
+
|
14497 |
+
#: includes/settings/wcj-settings-tax-display.php:110
|
14498 |
+
msgid "WooCommerce > Settings > Tax"
|
14499 |
+
msgstr ""
|
14500 |
+
|
14501 |
+
#: includes/settings/wcj-settings-tax-display.php:122
|
14502 |
+
#, php-format
|
14503 |
+
msgid "Role: %s"
|
14504 |
+
msgstr ""
|
14505 |
+
|
14506 |
+
#: includes/settings/wcj-settings-tax-display.php:127
|
14507 |
+
msgid "Default TAX display (no changes)"
|
14508 |
+
msgstr ""
|
14509 |
+
|
14510 |
+
#: includes/settings/wcj-settings-tax-display.php:128
|
14511 |
+
msgid "Including tax"
|
14512 |
+
msgstr ""
|
14513 |
+
|
14514 |
+
#: includes/settings/wcj-settings-tax-display.php:129
|
14515 |
+
msgid "Excluding tax"
|
14516 |
+
msgstr ""
|
14517 |
+
|
14518 |
#: includes/settings/wcj-settings-track-users.php:19
|
14519 |
msgid "Countries by Visits"
|
14520 |
msgstr ""
|
14816 |
msgid "Hold Control (Ctrl) key to select multiple roles."
|
14817 |
msgstr ""
|
14818 |
|
14819 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-product-custom-visibility.php:15
|
14820 |
+
msgid "Visible"
|
14821 |
+
msgstr ""
|
14822 |
+
|
14823 |
#: includes/settings/meta-box/wcj-settings-meta-box-product-images.php:17
|
14824 |
msgid "Replace image with custom HTML on single product page"
|
14825 |
msgstr ""
|
14872 |
msgid "Hold Control (Ctrl) key to select multiple products."
|
14873 |
msgstr ""
|
14874 |
|
14875 |
+
#: includes/settings/meta-box/wcj-settings-meta-box-sale-flash.php:24
|
14876 |
+
msgid "HTML"
|
14877 |
+
msgstr ""
|
14878 |
+
|
14879 |
#: includes/settings/meta-box/wcj-settings-meta-box-wholesale-price.php:20
|
14880 |
msgid "Price directly"
|
14881 |
msgstr ""
|
14981 |
msgid "Enable Custom Shipping"
|
14982 |
msgstr ""
|
14983 |
|
14984 |
+
#: includes/shortcodes/class-wcj-shortcodes-general.php:86
|
14985 |
+
msgid "Tax toggle (incl.)"
|
14986 |
+
msgstr ""
|
14987 |
+
|
14988 |
+
#: includes/shortcodes/class-wcj-shortcodes-general.php:87
|
14989 |
+
msgid "Tax toggle (excl.)"
|
14990 |
msgstr ""
|
14991 |
|
14992 |
+
#: includes/shortcodes/class-wcj-shortcodes-input-field.php:51
|
14993 |
msgid "Attribute \"name\" is required!"
|
14994 |
msgstr ""
|
14995 |
|
14996 |
+
#: includes/shortcodes/class-wcj-shortcodes-order-items.php:187
|
14997 |
msgid "Standard"
|
14998 |
msgstr ""
|
14999 |
|
15000 |
+
#: includes/shortcodes/class-wcj-shortcodes-orders.php:108
|
15001 |
msgid "Dollars"
|
15002 |
msgstr ""
|
15003 |
|
15004 |
+
#: includes/shortcodes/class-wcj-shortcodes-orders.php:109
|
15005 |
msgid "Cents"
|
15006 |
msgstr ""
|
15007 |
|
15008 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:53
|
15009 |
msgid "Product by User"
|
15010 |
msgstr ""
|
15011 |
|
15012 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:166
|
15013 |
msgid "Title is required!"
|
15014 |
msgstr ""
|
15015 |
|
15016 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:174
|
15017 |
msgid "Product exists!"
|
15018 |
msgstr ""
|
15019 |
|
15020 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:184
|
15021 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:399
|
15022 |
msgid "Product URL"
|
15023 |
msgstr ""
|
15024 |
|
15025 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:200
|
15026 |
#, php-format
|
15027 |
msgid "%s is required!"
|
15028 |
msgstr ""
|
15029 |
|
15030 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:206
|
15031 |
msgid "Sale price must be less than the regular price!"
|
15032 |
msgstr ""
|
15033 |
|
15034 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:283
|
15035 |
msgid "Error!"
|
15036 |
msgstr ""
|
15037 |
|
15038 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:325
|
15039 |
msgid "Add New Product"
|
15040 |
msgstr ""
|
15041 |
|
15042 |
+
#: includes/shortcodes/class-wcj-shortcodes-products-add-form.php:325
|
15043 |
msgid "Edit Product"
|
15044 |
msgstr ""
|
15045 |
|
15046 |
+
#: includes/shortcodes/class-wcj-shortcodes-products.php:273
|
15047 |
#, php-format
|
15048 |
msgid "%s ago"
|
15049 |
msgstr ""
|
15050 |
|
15051 |
+
#: includes/shortcodes/class-wcj-shortcodes-products.php:289
|
15052 |
msgid "No sales yet."
|
15053 |
msgstr ""
|
15054 |
|
15236 |
#: includes/widgets/class-wcj-widget-selector.php:59
|
15237 |
msgid "Selector Type"
|
15238 |
msgstr ""
|
15239 |
+
|
15240 |
+
#: includes/widgets/class-wcj-widget-selector.php:65
|
15241 |
+
msgid "Product custom visibility"
|
15242 |
+
msgstr ""
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: algoritmika, anbinder
|
|
3 |
Tags: woocommerce, booster for woocommerce, woocommerce jetpack
|
4 |
Requires at least: 4.4
|
5 |
Tested up to: 4.9
|
6 |
-
Stable tag: 3.2.
|
7 |
License: GNU General Public License v3.0
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
@@ -18,7 +18,7 @@ Booster for WooCommerce is a WordPress plugin that supercharges your site with a
|
|
18 |
**Prices & Currencies**
|
19 |
|
20 |
* *Bulk Price Converter* - Multiply all WooCommerce products prices by set value.
|
21 |
-
* *Currencies* - Add all world currencies to your WooCommerce store; change currency symbol.
|
22 |
* *Currency Exchange Rates* - Automatic currency exchange rates for WooCommerce.
|
23 |
* *Currency for External Products* - Set different currency for external WooCommerce products.
|
24 |
* *Currency per Product* - Display prices for WooCommerce products in different currencies.
|
@@ -43,6 +43,7 @@ Booster for WooCommerce is a WordPress plugin that supercharges your site with a
|
|
43 |
|
44 |
**Products**
|
45 |
|
|
|
46 |
* *Bookings* - Add bookings products to WooCommerce.
|
47 |
* *Cost of Goods* - Save WooCommerce product purchase costs data for admin reports.
|
48 |
* *Crowdfunding* - Add crowdfunding products to WooCommerce.
|
@@ -51,19 +52,22 @@ Booster for WooCommerce is a WordPress plugin that supercharges your site with a
|
|
51 |
* *Product Availability by Date* - WooCommerce product availability by date.
|
52 |
* *Product Availability by Time* - WooCommerce product availability by time.
|
53 |
* *Product Bulk Meta Editor* - Set WooCommerce products meta with bulk editor.
|
54 |
-
* *Product
|
|
|
55 |
* *Product Info* - Add additional info to WooCommerce category and single product pages.
|
56 |
* *Product Input Fields* - WooCommerce product input fields.
|
57 |
* *Product Listings* - Change WooCommerce display options for shop and category pages: show/hide categories count, exclude categories, show/hide empty categories.
|
58 |
* *Product Tabs* - Add custom product tabs - globally or per product. Customize or completely remove WooCommerce default product tabs.
|
59 |
* *Product Visibility by Country* - Display WooCommerce products by customer's country.
|
60 |
* *Product Visibility by User Role* - Display WooCommerce products by customer's user role.
|
61 |
-
* *Products XML* - WooCommerce products XML
|
62 |
* *Products per Page* - Add "products per page" selector to WooCommerce.
|
63 |
* *Related Products* - Change displayed WooCommerce related products number, columns, order; relate by tag, category, product attribute or manually on per product basis. Hide related products completely.
|
64 |
* *SKU* - Generate WooCommerce SKUs automatically. Search by SKU on frontend.
|
|
|
65 |
* *Sorting* - Add more WooCommerce sorting options; rename or remove default sorting options; rearrange sorting options on frontend.
|
66 |
* *Stock* - WooCommerce products stock management.
|
|
|
67 |
* *User Products* - Let users add new WooCommerce products from frontend.
|
68 |
|
69 |
**Cart & Checkout**
|
@@ -97,13 +101,14 @@ Booster for WooCommerce is a WordPress plugin that supercharges your site with a
|
|
97 |
**Shipping & Orders**
|
98 |
|
99 |
* *Address Formats* - Set address format in WooCommerce orders on per country basis. Force base country display.
|
|
|
100 |
* *Custom Shipping* - Add multiple custom shipping methods to WooCommerce.
|
101 |
* *Left to Free Shipping* - Display "left to free shipping" info in WooCommerce.
|
102 |
* *Order Custom Statuses* - Custom statuses for WooCommerce orders.
|
103 |
* *Order Min/Max Quantities* - Set min/max product quantities in WooCommerce order.
|
104 |
* *Order Minimum Amount* - Minimum WooCommerce order amount (optionally by user role).
|
105 |
* *Order Numbers* - WooCommerce sequential order numbering, custom order number prefix, suffix and number width.
|
106 |
-
* *Orders* -
|
107 |
* *Shipping Calculator* - Customize WooCommerce shipping calculator on cart page.
|
108 |
* *Shipping Methods by Min/Max Order Amount* - Set minimum and/or maximum order amount for WooCommerce shipping methods to show up.
|
109 |
* *Shipping Methods by Products* - Set products, product categories or tags to include/exclude for WooCommerce shipping methods to show up.
|
@@ -171,6 +176,68 @@ You can see the differences between versions in this [table](https://booster.io/
|
|
171 |
|
172 |
== Changelog ==
|
173 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
174 |
= 3.2.3 - 03/12/2017 =
|
175 |
* Fix - PRICES & CURRENCIES - Currency Exchange Rates - cURL option fixed for "Yahoo" and "Fixer.io" servers.
|
176 |
* Dev - PRICES & CURRENCIES - Currency Exchange Rates - Server - Default value set to "European Central Bank (ECB)".
|
@@ -191,7 +258,7 @@ You can see the differences between versions in this [table](https://booster.io/
|
|
191 |
* Dev - PDF INVOICING & PACKING SLIPS - "Default Images Directory" option moved from "Header" settings section to "General" section.
|
192 |
* Dev - PDF INVOICING & PACKING SLIPS - Page Settings - "Background Image" option added.
|
193 |
* Fix - Functions - General - `wcj_get_select_options()` - Prefix (`wcj-`) is added to the keys (to prevent issues with numeric keys).
|
194 |
-
* Fix - Settings Manager - `manage_options()` fixed.
|
195 |
|
196 |
= 3.2.2 - 12/11/2017 =
|
197 |
* Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - "Advanced: Price Filters Priority" option added.
|
3 |
Tags: woocommerce, booster for woocommerce, woocommerce jetpack
|
4 |
Requires at least: 4.4
|
5 |
Tested up to: 4.9
|
6 |
+
Stable tag: 3.2.4
|
7 |
License: GNU General Public License v3.0
|
8 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
9 |
|
18 |
**Prices & Currencies**
|
19 |
|
20 |
* *Bulk Price Converter* - Multiply all WooCommerce products prices by set value.
|
21 |
+
* *Currencies* - Add all world currencies and cryptocurrencies to your WooCommerce store; change currency symbol.
|
22 |
* *Currency Exchange Rates* - Automatic currency exchange rates for WooCommerce.
|
23 |
* *Currency for External Products* - Set different currency for external WooCommerce products.
|
24 |
* *Currency per Product* - Display prices for WooCommerce products in different currencies.
|
43 |
|
44 |
**Products**
|
45 |
|
46 |
+
* *Admin Products List* - Customize WooCommerce admin products list.
|
47 |
* *Bookings* - Add bookings products to WooCommerce.
|
48 |
* *Cost of Goods* - Save WooCommerce product purchase costs data for admin reports.
|
49 |
* *Crowdfunding* - Add crowdfunding products to WooCommerce.
|
52 |
* *Product Availability by Date* - WooCommerce product availability by date.
|
53 |
* *Product Availability by Time* - WooCommerce product availability by time.
|
54 |
* *Product Bulk Meta Editor* - Set WooCommerce products meta with bulk editor.
|
55 |
+
* *Product Custom Visibility* - Display WooCommerce products by custom param.
|
56 |
+
* *Product Images* - Customize WooCommerce products images and thumbnails.
|
57 |
* *Product Info* - Add additional info to WooCommerce category and single product pages.
|
58 |
* *Product Input Fields* - WooCommerce product input fields.
|
59 |
* *Product Listings* - Change WooCommerce display options for shop and category pages: show/hide categories count, exclude categories, show/hide empty categories.
|
60 |
* *Product Tabs* - Add custom product tabs - globally or per product. Customize or completely remove WooCommerce default product tabs.
|
61 |
* *Product Visibility by Country* - Display WooCommerce products by customer's country.
|
62 |
* *Product Visibility by User Role* - Display WooCommerce products by customer's user role.
|
63 |
+
* *Products XML Feeds* - WooCommerce products XML feeds.
|
64 |
* *Products per Page* - Add "products per page" selector to WooCommerce.
|
65 |
* *Related Products* - Change displayed WooCommerce related products number, columns, order; relate by tag, category, product attribute or manually on per product basis. Hide related products completely.
|
66 |
* *SKU* - Generate WooCommerce SKUs automatically. Search by SKU on frontend.
|
67 |
+
* *Sale Flash* - Customize WooCommerce products sale flash.
|
68 |
* *Sorting* - Add more WooCommerce sorting options; rename or remove default sorting options; rearrange sorting options on frontend.
|
69 |
* *Stock* - WooCommerce products stock management.
|
70 |
+
* *Tax Display* - Customize WooCommerce tax display.
|
71 |
* *User Products* - Let users add new WooCommerce products from frontend.
|
72 |
|
73 |
**Cart & Checkout**
|
101 |
**Shipping & Orders**
|
102 |
|
103 |
* *Address Formats* - Set address format in WooCommerce orders on per country basis. Force base country display.
|
104 |
+
* *Admin Orders List* - Customize WooCommerce admin orders list: add custom columns; add multiple status filtering.
|
105 |
* *Custom Shipping* - Add multiple custom shipping methods to WooCommerce.
|
106 |
* *Left to Free Shipping* - Display "left to free shipping" info in WooCommerce.
|
107 |
* *Order Custom Statuses* - Custom statuses for WooCommerce orders.
|
108 |
* *Order Min/Max Quantities* - Set min/max product quantities in WooCommerce order.
|
109 |
* *Order Minimum Amount* - Minimum WooCommerce order amount (optionally by user role).
|
110 |
* *Order Numbers* - WooCommerce sequential order numbering, custom order number prefix, suffix and number width.
|
111 |
+
* *Orders* - WooCommerce orders auto-complete; admin order currency; bulk regenerate download permissions for orders.
|
112 |
* *Shipping Calculator* - Customize WooCommerce shipping calculator on cart page.
|
113 |
* *Shipping Methods by Min/Max Order Amount* - Set minimum and/or maximum order amount for WooCommerce shipping methods to show up.
|
114 |
* *Shipping Methods by Products* - Set products, product categories or tags to include/exclude for WooCommerce shipping methods to show up.
|
176 |
|
177 |
== Changelog ==
|
178 |
|
179 |
+
= 3.2.4 - 27/12/2017 =
|
180 |
+
* Dev - PRICES & CURRENCIES - Currencies - More cryptocurrencies added.
|
181 |
+
* Dev - PRICES & CURRENCIES - Currency Exchange Rates - Secondary "Exchange Rates Server" option added to each currency pair.
|
182 |
+
* Fix - PRICES & CURRENCIES - Currency per Product - `change_currency_symbol()` - Changing symbol for appropriate currency code only.
|
183 |
+
* Dev - PRICES & CURRENCIES - Price Formats - "Additional Currency Code Position" option added.
|
184 |
+
* Dev - BUTTON & PRICE LABELS - Call for Price - Variable and grouped products support added.
|
185 |
+
* Dev - PRODUCTS - Admin Products List - Initial module release (moved from "Product Listings" module).
|
186 |
+
* Fix - PRODUCTS - Bookings - `wp_die()` replaced with `die()` in `price_change_ajax()`.
|
187 |
+
* Dev - PRODUCTS - Product Add to Cart - "Set All Products to Sold individually" option added.
|
188 |
+
* Dev - PRODUCTS - Product Add to Cart - External Products - Open External Products on Add to Cart in New Window - on Category/Archive Pages - Additional themes compatibility added.
|
189 |
+
* Fix - PRODUCTS - Product Addons - `wp_die()` replaced with `die()` in `price_change_ajax()`.
|
190 |
+
* Dev - PRODUCTS - Product Addons - "Position Priority on Frontend" option added.
|
191 |
+
* Dev - PRODUCTS - Product Custom Visibility - Initial module release.
|
192 |
+
* Dev - PRODUCTS - Product Images - "Enable Section" option removed. Minor setting restyling.
|
193 |
+
* Dev - PRODUCTS - Product Input Fields - `array_merge()` replaced with `array_replace()` for `wcj_get_select_options()` results (with placeholder).
|
194 |
+
* Dev - PRODUCTS - Product Input Fields - Frontend View Options - "HTML Template - Radio Field" option added.
|
195 |
+
* Dev - PRODUCTS - Product Tabs - "Add Per Product Tabs Content to Yoast SEO plugin analysis" option added.
|
196 |
+
* Fix - PRODUCTS - Product Visibility by Country - Session bug fixed.
|
197 |
+
* Dev - PRODUCTS - Products XML - "Products to Include/Exclude" options can now be set as comma separated text (optionally) (instead of list).
|
198 |
+
* Dev - PRODUCTS - Products XML - Renamed to "Products XML Feeds". Description and documentation URL updated.
|
199 |
+
* Dev - PRODUCTS - Sale Flash - "Per Product", "Per Category", "Per Tag" options added.
|
200 |
+
* Dev - PRODUCTS - Sale Flash - Initial module release (copied from "Product Images" module).
|
201 |
+
* Fix - PRODUCTS - Tax Display - by Product & by User Role - `wcj_is_frontend()` check added.
|
202 |
+
* Dev - PRODUCTS - Tax Display - "TAX Display - Toggle Button" section added.
|
203 |
+
* Dev - PRODUCTS - Tax Display - Initial module release (moved from "Product Listings" module).
|
204 |
+
* Dev - CART & CHECKOUT - Checkout Custom Fields - "Customer Meta Fields" options added.
|
205 |
+
* Dev - CART & CHECKOUT - Checkout Custom Fields - "Min Cart Amount" and "Max Cart Amount" options added.
|
206 |
+
* Dev - CART & CHECKOUT - Checkout Custom Fields - `array_merge()` replaced with `array_replace()` for `wcj_get_select_options()` results (with placeholder).
|
207 |
+
* Fix - CART & CHECKOUT - EU VAT Number - Preserve VAT in Base Country - Issue with lowercase country code n VAT ID fixed.
|
208 |
+
* Dev - SHIPPING & ORDERS - Admin Orders List - Initial module release (moved from "Orders" module).
|
209 |
+
* Dev - SHIPPING & ORDERS - Order Minimum Amount - "Exclude Discounts from Cart Total" option added.
|
210 |
+
* Dev - SHIPPING & ORDERS - Orders - Bulk Regenerate Download Permissions for Orders - All Orders - "Periodically" option added.
|
211 |
+
* Dev - SHIPPING & ORDERS - Shipping Methods by Users / Shipping Methods by Products / Shipping Options (Hide if Free Shipping is Available) - "Filter Priority" options added.
|
212 |
+
* Dev - PDF INVOICING & PACKING SLIPS - General - "Advanced: Temp Directory" option added.
|
213 |
+
* Dev - PDF INVOICING & PACKING SLIPS - Page Settings - Page Format - "Custom" options added.
|
214 |
+
* Dev - EMAILS & MISC. - Custom Emails - `%customer%` can now be used in comma separated list for multiple recipients.
|
215 |
+
* Dev - EMAILS & MISC. - Reports - Custom Ranges / Product Sales (Daily) / Reports functions (also affects Export module) - `time()` replaced with `current_time()`.
|
216 |
+
* Dev - EMAILS & MISC. - Reports - Orders - Product Sales (Monthly) - `wcj_reports_products_sales_check_product` filter added.
|
217 |
+
* Fix - EMAILS & MISC. - Reports - Orders - Product Sales (Monthly) - WooCommerce v3.0.0 compatibility - "Product `parent` property accessed directly" issue fixed.
|
218 |
+
* Dev - Shortcodes - General - `[wcj_barcode]` shortcode added.
|
219 |
+
* Dev - Shortcodes - General - `[wcj_tcpdf_barcode]` shortcode added.
|
220 |
+
* Dev - Shortcodes - Orders - `[wcj_order_date]` - `days` attribute added.
|
221 |
+
* Fix - Shortcodes - Orders - `[wcj_order_items_table]` - `item_meta` column - `is_custom` meta excluded.
|
222 |
+
* Dev - Shortcodes - Products - `[wcj_product_category_count]` shortcode added.
|
223 |
+
* Dev - Shortcodes - Products - `[wcj_product_price]` - `currency` attribute added.
|
224 |
+
* Fix - Shortcodes - Products - `[wcj_product_purchase_price]` - Using `wcj_get_product_id()` instead of `wcj_get_product_id_or_variation_parent_id()`.
|
225 |
+
* Dev - Shortcodes - Products - `[wcj_product_purchase_price]` - `hide_currency` attribute added.
|
226 |
+
* Dev - Shortcodes files renamed.
|
227 |
+
* Dev - Functions - "Crons" added.
|
228 |
+
* Dev - Functions - Debug - `wcj_log()` - `esc_url()` added.
|
229 |
+
* Dev - Functions - Exchange Rates - `wcj_get_saved_exchange_rate()` function added.
|
230 |
+
* Dev - Functions - Exchange Rates - Code refactoring (`wcj_get_currency_exchange_rates_url_response()` function added).
|
231 |
+
* Dev - Functions - Exchange Rates - Exchange Rates Server - "CoinMarketCap" server added.
|
232 |
+
* Dev - Functions - Exchange Rates - Exchange Rates Server - "Coinbase" server added.
|
233 |
+
* Dev - Functions - General - `wcj_get_select_options()` - Prefix (`wcj-`) removed (was added in v3.2.3).
|
234 |
+
* Dev - Functions - General - `wcj_get_select_options()` - `trim()` added.
|
235 |
+
* Fix - Functions - Price and Currency - `wc_get_product_purchase_price()` - `int` replaced with `float` - this fixes the issue with purchase price calculating incorrectly (cutting decimal part).
|
236 |
+
* Dev - Settings Manager - Import - Checking for `wcj_` prefix, when importing plugin settings.
|
237 |
+
* Dev - Settings Manager - Reset - Now deletes all options (also includes meta).
|
238 |
+
* Dev - Admin Settings - Custom Fields - `exchange_rate` field updated (12 decimals in `step` and code refactoring).
|
239 |
+
* Dev - Code refactoring. `core` directory added.
|
240 |
+
|
241 |
= 3.2.3 - 03/12/2017 =
|
242 |
* Fix - PRICES & CURRENCIES - Currency Exchange Rates - cURL option fixed for "Yahoo" and "Fixer.io" servers.
|
243 |
* Dev - PRICES & CURRENCIES - Currency Exchange Rates - Server - Default value set to "European Central Bank (ECB)".
|
258 |
* Dev - PDF INVOICING & PACKING SLIPS - "Default Images Directory" option moved from "Header" settings section to "General" section.
|
259 |
* Dev - PDF INVOICING & PACKING SLIPS - Page Settings - "Background Image" option added.
|
260 |
* Fix - Functions - General - `wcj_get_select_options()` - Prefix (`wcj-`) is added to the keys (to prevent issues with numeric keys).
|
261 |
+
* Fix - Settings Manager - `manage_options()` - Security issue fixed.
|
262 |
|
263 |
= 3.2.2 - 12/11/2017 =
|
264 |
* Dev - PRICES & CURRENCIES - Multicurrency (Currency Switcher) - "Advanced: Price Filters Priority" option added.
|
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.
|
6 |
-
Version: 3.2.
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: https://booster.io
|
9 |
Text Domain: woocommerce-jetpack
|
@@ -13,7 +13,9 @@ License: GNU General Public License v3.0
|
|
13 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
14 |
*/
|
15 |
|
16 |
-
if ( ! defined( 'ABSPATH' ) )
|
|
|
|
|
17 |
|
18 |
if ( ! function_exists( 'wcj_is_plugin_active' ) ) {
|
19 |
/**
|
@@ -37,34 +39,27 @@ if ( ! wcj_is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
|
|
37 |
}
|
38 |
|
39 |
// Check if Plus is active
|
40 |
-
if ( 'woocommerce-jetpack.php' === basename( __FILE__ ) ) {
|
41 |
-
|
42 |
-
return;
|
43 |
-
}
|
44 |
}
|
45 |
|
46 |
-
if ( !
|
47 |
-
|
48 |
-
if ( ! function_exists( 'wcj_plugin_file' ) ) {
|
49 |
/**
|
50 |
-
*
|
51 |
*
|
52 |
-
* @version 3.
|
53 |
-
* @since 3.
|
54 |
*/
|
55 |
-
|
56 |
-
return __FILE__;
|
57 |
-
}
|
58 |
}
|
59 |
|
60 |
-
|
61 |
-
require_once( 'includes/constants/wcj-constants.php' );
|
62 |
|
63 |
/**
|
64 |
* Main WC_Jetpack Class
|
65 |
*
|
66 |
* @class WC_Jetpack
|
67 |
-
* @version 3.2.
|
68 |
*/
|
69 |
final class WC_Jetpack {
|
70 |
|
@@ -74,7 +69,7 @@ final class WC_Jetpack {
|
|
74 |
* @var string
|
75 |
* @since 2.4.7
|
76 |
*/
|
77 |
-
public $version = '3.2.
|
78 |
|
79 |
/**
|
80 |
* @var WC_Jetpack The single instance of the class
|
@@ -100,426 +95,11 @@ final class WC_Jetpack {
|
|
100 |
/**
|
101 |
* WC_Jetpack Constructor.
|
102 |
*
|
103 |
-
* @version 3.
|
104 |
* @access public
|
105 |
*/
|
106 |
function __construct() {
|
107 |
-
|
108 |
-
// Set up localisation
|
109 |
-
load_plugin_textdomain( 'woocommerce-jetpack', false, dirname( plugin_basename( __FILE__ ) ) . '/langs/' );
|
110 |
-
|
111 |
-
// Include required files
|
112 |
-
$this->includes();
|
113 |
-
|
114 |
-
// Settings
|
115 |
-
$this->init_settings();
|
116 |
-
|
117 |
-
// Scripts
|
118 |
-
require_once( 'includes/classes/class-wcj-scripts.php' );
|
119 |
-
|
120 |
-
// Settings manager
|
121 |
-
require_once( 'includes/admin/class-wcj-settings-manager.php' );
|
122 |
-
|
123 |
-
// Loaded action
|
124 |
-
do_action( 'wcj_loaded' );
|
125 |
-
}
|
126 |
-
|
127 |
-
/**
|
128 |
-
* init_settings.
|
129 |
-
*
|
130 |
-
* @version 3.0.1
|
131 |
-
* @since 2.9.0
|
132 |
-
*/
|
133 |
-
function init_settings() {
|
134 |
-
if ( is_admin() ) {
|
135 |
-
add_filter( 'woocommerce_get_settings_pages', array( $this, 'add_wcj_settings_tab' ), 1 );
|
136 |
-
add_filter( 'booster_get_message', 'wcj_get_plus_message', 100, 3 );
|
137 |
-
add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'action_links' ) );
|
138 |
-
add_action( 'admin_menu', array( $this, 'booster_menu' ), 100 );
|
139 |
-
add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ), 2 );
|
140 |
-
if ( 'woocommerce-jetpack.php' === basename( __FILE__ ) ) {
|
141 |
-
add_action( 'admin_notices', array( $this, 'check_plus_version' ) );
|
142 |
-
}
|
143 |
-
}
|
144 |
-
}
|
145 |
-
|
146 |
-
/**
|
147 |
-
* check_plus_version.
|
148 |
-
*
|
149 |
-
* @version 3.1.1
|
150 |
-
* @since 2.5.9
|
151 |
-
*/
|
152 |
-
function check_plus_version() {
|
153 |
-
if ( ! is_admin() ) {
|
154 |
-
return;
|
155 |
-
}
|
156 |
-
// Check if Plus is installed and activated
|
157 |
-
$is_plus_active = false;
|
158 |
-
$is_plus_v3_active = false;
|
159 |
-
$active_plugins = apply_filters( 'active_plugins', get_option( 'active_plugins', array() ) );
|
160 |
-
if ( is_multisite() ) {
|
161 |
-
$active_plugins = array_merge( $active_plugins, array_keys( get_site_option( 'active_sitewide_plugins', array() ) ) );
|
162 |
-
}
|
163 |
-
foreach ( $active_plugins as $active_plugin ) {
|
164 |
-
$active_plugin = explode( '/', $active_plugin );
|
165 |
-
if ( isset( $active_plugin[1] ) ) {
|
166 |
-
if ( 'booster-plus-for-woocommerce.php' === $active_plugin[1] ) {
|
167 |
-
$is_plus_v3_active = true;
|
168 |
-
break;
|
169 |
-
} elseif ( 'woocommerce-jetpack-plus.php' === $active_plugin[1] || 'woocommerce-booster-plus.php' === $active_plugin[1] ) {
|
170 |
-
$is_plus_active = true;
|
171 |
-
}
|
172 |
-
}
|
173 |
-
}
|
174 |
-
// Check Plus version
|
175 |
-
if ( ! $is_plus_v3_active && $is_plus_active ) {
|
176 |
-
$plus_version = get_option( 'booster_plus_version', false );
|
177 |
-
$required_plus_version = '1.1.0';
|
178 |
-
$notice_type = ( version_compare( $plus_version, $required_plus_version, '<' ) ? 'error' : 'warning' );
|
179 |
-
global $pagenow;
|
180 |
-
if ( 'error' === $notice_type || 'plugins.php' === $pagenow ) {
|
181 |
-
$class = 'notice notice-' . $notice_type;
|
182 |
-
$message = ( 'error' === $notice_type ?
|
183 |
-
sprintf(
|
184 |
-
__( 'Please upgrade <strong>Booster Plus for WooCommerce</strong> plugin. Visit <a target="_blank" href="%s">your account page</a> on booster.io to download the latest Booster Plus version.', 'woocommerce-jetpack' ),
|
185 |
-
'https://booster.io/my-account/?utm_source=plus_update'
|
186 |
-
) :
|
187 |
-
sprintf(
|
188 |
-
__( 'There is new version of <strong>Booster Plus for WooCommerce</strong> plugin available. We recommend upgrading. Please visit <a target="_blank" href="%s">your account page</a> on booster.io to download the latest Booster Plus version.', 'woocommerce-jetpack' ),
|
189 |
-
'https://booster.io/my-account/?utm_source=plus_update'
|
190 |
-
)
|
191 |
-
);
|
192 |
-
echo '<div class="' . $class . '"><p>' . $message . '</p></div>';
|
193 |
-
}
|
194 |
-
}
|
195 |
-
}
|
196 |
-
|
197 |
-
/**
|
198 |
-
* admin_footer_text
|
199 |
-
*
|
200 |
-
* @version 2.9.0
|
201 |
-
*/
|
202 |
-
function admin_footer_text( $footer_text ) {
|
203 |
-
if ( isset( $_GET['page'] ) ) {
|
204 |
-
if ( 'wcj-tools' === $_GET['page'] || ( 'wc-settings' === $_GET['page'] && isset( $_GET['tab'] ) && 'jetpack' === $_GET['tab'] ) ) {
|
205 |
-
$rocket_icons = wcj_get_5_rocket_image();
|
206 |
-
$rating_link = '<a href="https://wordpress.org/support/plugin/woocommerce-jetpack/reviews/?rate=5#new-post" target="_blank">' . $rocket_icons . '</a>';
|
207 |
-
return sprintf(
|
208 |
-
__( 'If you like <strong>Booster for WooCommerce</strong> please leave us a %s rating. Thank you, we couldn\'t have done it without you!', 'woocommerce-jetpack' ),
|
209 |
-
$rating_link
|
210 |
-
);
|
211 |
-
}
|
212 |
-
}
|
213 |
-
return $footer_text;
|
214 |
-
}
|
215 |
-
|
216 |
-
/**
|
217 |
-
* Add menu item
|
218 |
-
*
|
219 |
-
* @version 2.9.0
|
220 |
-
*/
|
221 |
-
function booster_menu() {
|
222 |
-
add_submenu_page(
|
223 |
-
'woocommerce',
|
224 |
-
__( 'Booster for WooCommerce', 'woocommerce-jetpack' ),
|
225 |
-
__( 'Booster Settings', 'woocommerce-jetpack' ) ,
|
226 |
-
'manage_woocommerce',
|
227 |
-
'admin.php?page=wc-settings&tab=jetpack'
|
228 |
-
);
|
229 |
-
}
|
230 |
-
|
231 |
-
/**
|
232 |
-
* Show action links on the plugin screen
|
233 |
-
*
|
234 |
-
* @version 2.5.2
|
235 |
-
* @param mixed $links
|
236 |
-
* @return array
|
237 |
-
*/
|
238 |
-
function action_links( $links ) {
|
239 |
-
$custom_links = array(
|
240 |
-
'<a href="' . admin_url( 'admin.php?page=wc-settings&tab=jetpack' ) . '">' . __( 'Settings', 'woocommerce' ) . '</a>',
|
241 |
-
'<a href="' . esc_url( 'https://booster.io/' ) . '">' . __( 'Docs', 'woocommerce' ) . '</a>',
|
242 |
-
);
|
243 |
-
if ( 1 === apply_filters( 'booster_get_option', 1, '' ) ) {
|
244 |
-
$custom_links[] = '<a href="' . esc_url( 'https://booster.io/plus/' ) . '">' . __( 'Unlock all', 'woocommerce' ) . '</a>';
|
245 |
-
}
|
246 |
-
return array_merge( $custom_links, $links );
|
247 |
-
}
|
248 |
-
|
249 |
-
/**
|
250 |
-
* Include required core files used in admin and on the frontend.
|
251 |
-
*
|
252 |
-
* @version 3.2.2
|
253 |
-
*/
|
254 |
-
function includes() {
|
255 |
-
|
256 |
-
// Functions
|
257 |
-
$this->include_functions();
|
258 |
-
|
259 |
-
// Classes
|
260 |
-
include_once( 'includes/classes/class-wcj-module.php' );
|
261 |
-
include_once( 'includes/classes/class-wcj-module-shipping-by-condition.php' );
|
262 |
-
include_once( 'includes/classes/class-wcj-invoice.php' );
|
263 |
-
include_once( 'includes/classes/class-wcj-pdf-invoice.php' );
|
264 |
-
|
265 |
-
// Plus
|
266 |
-
if ( 'booster-plus-for-woocommerce.php' === basename( __FILE__ ) && apply_filters( 'wcj_full_pack', true ) ) {
|
267 |
-
require_once( 'includes/plus/class-wcj-plus.php' );
|
268 |
-
}
|
269 |
-
|
270 |
-
// Tools
|
271 |
-
include_once( 'includes/admin/class-wcj-tools.php' );
|
272 |
-
|
273 |
-
// Shortcodes
|
274 |
-
$this->include_shortcodes();
|
275 |
-
|
276 |
-
// Widgets
|
277 |
-
include_once( 'includes/widgets/class-wcj-widget.php' );
|
278 |
-
include_once( 'includes/widgets/class-wcj-widget-multicurrency.php' );
|
279 |
-
include_once( 'includes/widgets/class-wcj-widget-country-switcher.php' );
|
280 |
-
include_once( 'includes/widgets/class-wcj-widget-left-to-free-shipping.php' );
|
281 |
-
include_once( 'includes/widgets/class-wcj-widget-selector.php' );
|
282 |
-
|
283 |
-
// Modules and Submodules
|
284 |
-
$this->include_modules();
|
285 |
-
}
|
286 |
-
|
287 |
-
/**
|
288 |
-
* include_functions.
|
289 |
-
*
|
290 |
-
* @version 3.2.1
|
291 |
-
*/
|
292 |
-
function include_functions() {
|
293 |
-
include_once( 'includes/functions/wcj-functions-core.php' );
|
294 |
-
include_once( 'includes/functions/wcj-functions-debug.php' );
|
295 |
-
include_once( 'includes/functions/wcj-functions-admin.php' );
|
296 |
-
include_once( 'includes/functions/wcj-functions-general.php' );
|
297 |
-
include_once( 'includes/functions/wcj-functions-date-time.php' );
|
298 |
-
include_once( 'includes/functions/wcj-functions-products.php' );
|
299 |
-
include_once( 'includes/functions/wcj-functions-orders.php' );
|
300 |
-
include_once( 'includes/functions/wcj-functions-eu-vat.php' );
|
301 |
-
include_once( 'includes/functions/wcj-functions-price-currency.php' );
|
302 |
-
include_once( 'includes/functions/wcj-functions-users.php' );
|
303 |
-
include_once( 'includes/functions/wcj-functions-exchange-rates.php' );
|
304 |
-
include_once( 'includes/functions/wcj-functions-number-to-words.php' );
|
305 |
-
include_once( 'includes/functions/wcj-functions-number-to-words-bg.php' );
|
306 |
-
include_once( 'includes/functions/wcj-functions-number-to-words-lt.php' );
|
307 |
-
include_once( 'includes/functions/wcj-functions-html.php' );
|
308 |
-
include_once( 'includes/functions/wcj-functions-country.php' );
|
309 |
-
include_once( 'includes/functions/wcj-functions-invoicing.php' );
|
310 |
-
include_once( 'includes/functions/wcj-functions-reports.php' );
|
311 |
-
include_once( 'includes/functions/wcj-functions-currencies.php' );
|
312 |
-
}
|
313 |
-
|
314 |
-
/**
|
315 |
-
* include_shortcodes.
|
316 |
-
*
|
317 |
-
* @version 2.5.4
|
318 |
-
*/
|
319 |
-
function include_shortcodes() {
|
320 |
-
if ( ! wcj_is_module_enabled( 'general' ) || ( wcj_is_module_enabled( 'general' ) && 'no' === get_option( 'wcj_general_shortcodes_disable_booster_shortcodes', 'no' ) ) ) {
|
321 |
-
include_once( 'includes/shortcodes/class-wcj-shortcodes.php' );
|
322 |
-
include_once( 'includes/shortcodes/class-wcj-general-shortcodes.php' );
|
323 |
-
include_once( 'includes/shortcodes/class-wcj-invoices-shortcodes.php' );
|
324 |
-
include_once( 'includes/shortcodes/class-wcj-orders-shortcodes.php' );
|
325 |
-
include_once( 'includes/shortcodes/class-wcj-order-items-shortcodes.php' );
|
326 |
-
include_once( 'includes/shortcodes/class-wcj-products-shortcodes.php' );
|
327 |
-
include_once( 'includes/shortcodes/class-wcj-products-crowdfunding-shortcodes.php' );
|
328 |
-
include_once( 'includes/shortcodes/class-wcj-products-add-form-shortcodes.php' );
|
329 |
-
include_once( 'includes/shortcodes/class-wcj-input-field-shortcodes.php' );
|
330 |
-
}
|
331 |
-
}
|
332 |
-
|
333 |
-
/**
|
334 |
-
* Include modules and submodules
|
335 |
-
*
|
336 |
-
* @version 3.2.3
|
337 |
-
*/
|
338 |
-
function include_modules() {
|
339 |
-
$modules_files = array(
|
340 |
-
'includes/class-wcj-admin-tools.php',
|
341 |
-
'includes/class-wcj-price-labels.php',
|
342 |
-
'includes/class-wcj-call-for-price.php',
|
343 |
-
'includes/class-wcj-free-price.php',
|
344 |
-
'includes/class-wcj-product-listings.php',
|
345 |
-
'includes/class-wcj-products-per-page.php',
|
346 |
-
'includes/class-wcj-sorting.php',
|
347 |
-
'includes/class-wcj-product-custom-info.php',
|
348 |
-
'includes/class-wcj-product-info.php',
|
349 |
-
'includes/class-wcj-product-add-to-cart.php',
|
350 |
-
'includes/class-wcj-related-products.php',
|
351 |
-
'includes/class-wcj-sku.php',
|
352 |
-
'includes/class-wcj-stock.php',
|
353 |
-
'includes/class-wcj-product-tabs.php',
|
354 |
-
'includes/class-wcj-product-input-fields.php',
|
355 |
-
'includes/class-wcj-product-bulk-price-converter.php',
|
356 |
-
'includes/class-wcj-product-bulk-meta-editor.php',
|
357 |
-
'includes/class-wcj-purchase-data.php',
|
358 |
-
'includes/class-wcj-product-bookings.php',
|
359 |
-
'includes/class-wcj-crowdfunding.php',
|
360 |
-
'includes/class-wcj-product-addons.php',
|
361 |
-
'includes/class-wcj-wholesale-price.php',
|
362 |
-
'includes/class-wcj-product-open-pricing.php',
|
363 |
-
'includes/class-wcj-offer-price.php',
|
364 |
-
'includes/class-wcj-price-by-user-role.php',
|
365 |
-
'includes/class-wcj-global-discount.php',
|
366 |
-
'includes/class-wcj-product-price-by-formula.php',
|
367 |
-
'includes/class-wcj-product-images.php',
|
368 |
-
'includes/class-wcj-product-by-country.php',
|
369 |
-
'includes/class-wcj-product-by-time.php',
|
370 |
-
'includes/class-wcj-product-by-date.php',
|
371 |
-
'includes/class-wcj-product-by-user-role.php',
|
372 |
-
'includes/class-wcj-product-by-user.php',
|
373 |
-
'includes/class-wcj-add-to-cart.php',
|
374 |
-
'includes/class-wcj-more-button-labels.php',
|
375 |
-
'includes/class-wcj-cart.php',
|
376 |
-
'includes/class-wcj-cart-customization.php',
|
377 |
-
'includes/class-wcj-empty-cart-button.php',
|
378 |
-
'includes/class-wcj-mini-cart.php',
|
379 |
-
'includes/class-wcj-checkout-core-fields.php',
|
380 |
-
'includes/class-wcj-checkout-custom-fields.php',
|
381 |
-
'includes/class-wcj-checkout-files-upload.php',
|
382 |
-
'includes/class-wcj-checkout-custom-info.php',
|
383 |
-
'includes/class-wcj-checkout-customization.php',
|
384 |
-
'includes/class-wcj-payment-gateways.php',
|
385 |
-
'includes/class-wcj-payment-gateways-icons.php',
|
386 |
-
'includes/class-wcj-payment-gateways-fees.php',
|
387 |
-
'includes/class-wcj-payment-gateways-per-category.php',
|
388 |
-
'includes/class-wcj-payment-gateways-currency.php',
|
389 |
-
'includes/class-wcj-payment-gateways-by-currency.php',
|
390 |
-
'includes/class-wcj-payment-gateways-min-max.php',
|
391 |
-
'includes/class-wcj-payment-gateways-by-country.php',
|
392 |
-
'includes/class-wcj-payment-gateways-by-user-role.php',
|
393 |
-
'includes/class-wcj-payment-gateways-by-shipping.php',
|
394 |
-
'includes/class-wcj-shipping.php',
|
395 |
-
'includes/class-wcj-shipping-options.php',
|
396 |
-
'includes/class-wcj-left-to-free-shipping.php',
|
397 |
-
'includes/class-wcj-shipping-calculator.php',
|
398 |
-
'includes/class-wcj-shipping-by-user-role.php',
|
399 |
-
'includes/class-wcj-shipping-by-products.php',
|
400 |
-
'includes/class-wcj-shipping-by-order-amount.php',
|
401 |
-
'includes/class-wcj-address-formats.php',
|
402 |
-
'includes/class-wcj-orders.php',
|
403 |
-
'includes/class-wcj-order-min-amount.php',
|
404 |
-
'includes/class-wcj-order-numbers.php',
|
405 |
-
'includes/class-wcj-order-custom-statuses.php',
|
406 |
-
'includes/class-wcj-order-quantities.php',
|
407 |
-
'includes/class-wcj-pdf-invoicing.php',
|
408 |
-
'includes/class-wcj-emails.php',
|
409 |
-
'includes/class-wcj-email-options.php',
|
410 |
-
'includes/class-wcj-emails-verification.php',
|
411 |
-
'includes/class-wcj-currencies.php',
|
412 |
-
'includes/class-wcj-multicurrency.php',
|
413 |
-
'includes/class-wcj-multicurrency-product-base-price.php',
|
414 |
-
'includes/class-wcj-currency-per-product.php',
|
415 |
-
'includes/class-wcj-currency-external-products.php',
|
416 |
-
'includes/class-wcj-price-by-country.php',
|
417 |
-
'includes/class-wcj-currency-exchange-rates.php',
|
418 |
-
'includes/class-wcj-price-formats.php',
|
419 |
-
'includes/class-wcj-general.php',
|
420 |
-
'includes/class-wcj-track-users.php',
|
421 |
-
'includes/class-wcj-breadcrumbs.php',
|
422 |
-
'includes/class-wcj-url-coupons.php',
|
423 |
-
'includes/class-wcj-coupon-code-generator.php',
|
424 |
-
'includes/class-wcj-admin-bar.php',
|
425 |
-
'includes/class-wcj-my-account.php',
|
426 |
-
'includes/class-wcj-custom-css.php',
|
427 |
-
'includes/class-wcj-custom-js.php',
|
428 |
-
'includes/class-wcj-products-xml.php',
|
429 |
-
'includes/class-wcj-export-import.php',
|
430 |
-
'includes/class-wcj-eu-vat-number.php',
|
431 |
-
'includes/class-wcj-old-slugs.php',
|
432 |
-
'includes/class-wcj-reports.php',
|
433 |
-
'includes/class-wcj-wpml.php',
|
434 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-numbering.php',
|
435 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-templates.php',
|
436 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-styling.php',
|
437 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-header.php',
|
438 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-footer.php',
|
439 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-page.php',
|
440 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-emails.php',
|
441 |
-
'includes/pdf-invoices/submodules/class-wcj-pdf-invoicing-display.php',
|
442 |
-
);
|
443 |
-
$this->modules = array();
|
444 |
-
foreach ( $modules_files as $module_file ) {
|
445 |
-
$module = include_once( $module_file );
|
446 |
-
$this->modules[ $module->id ] = $module;
|
447 |
-
}
|
448 |
-
|
449 |
-
// Add and Manage options
|
450 |
-
if ( is_admin() ) {
|
451 |
-
$this->add_options();
|
452 |
-
}
|
453 |
-
}
|
454 |
-
|
455 |
-
/**
|
456 |
-
* add_options.
|
457 |
-
*
|
458 |
-
* @version 2.8.0
|
459 |
-
* @since 2.5.2
|
460 |
-
* @todo (maybe) this only loads Enable, Tools and Reset settings for each module
|
461 |
-
*/
|
462 |
-
function add_options() {
|
463 |
-
// Modules statuses
|
464 |
-
$submodules_classes = array(
|
465 |
-
'WCJ_PDF_Invoicing_Display',
|
466 |
-
'WCJ_PDF_Invoicing_Emails',
|
467 |
-
'WCJ_PDF_Invoicing_Footer',
|
468 |
-
'WCJ_PDF_Invoicing_Header',
|
469 |
-
'WCJ_PDF_Invoicing_Numbering',
|
470 |
-
'WCJ_PDF_Invoicing_Page',
|
471 |
-
'WCJ_PDF_Invoicing_Styling',
|
472 |
-
'WCJ_PDF_Invoicing_Templates',
|
473 |
-
);
|
474 |
-
foreach ( $this->modules as $module ) {
|
475 |
-
if ( ! in_array( get_class( $module ), $submodules_classes ) ) {
|
476 |
-
$status_settings = $module->add_enable_module_setting( array() );
|
477 |
-
$this->module_statuses[] = $status_settings[1];
|
478 |
-
}
|
479 |
-
if ( get_option( 'booster_for_woocommerce_version' ) === $this->version ) {
|
480 |
-
continue;
|
481 |
-
}
|
482 |
-
$values = $module->get_settings();
|
483 |
-
// Adding options
|
484 |
-
foreach ( $values as $value ) {
|
485 |
-
if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
|
486 |
-
if ( 'yes' === get_option( 'wcj_autoload_options', 'yes' ) ) {
|
487 |
-
$autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
|
488 |
-
} else {
|
489 |
-
$autoload = false;
|
490 |
-
}
|
491 |
-
add_option( $value['id'], $value['default'], '', $autoload );
|
492 |
-
}
|
493 |
-
}
|
494 |
-
}
|
495 |
-
if ( get_option( 'booster_for_woocommerce_version' ) !== $this->version ) {
|
496 |
-
update_option( 'booster_for_woocommerce_version', $this->version );
|
497 |
-
add_action( 'admin_notices', array( $this, 'admin_notices_version_updated' ) );
|
498 |
-
}
|
499 |
-
}
|
500 |
-
|
501 |
-
/**
|
502 |
-
* admin_notices_version_updated.
|
503 |
-
*
|
504 |
-
* @version 2.8.0
|
505 |
-
* @since 2.8.0
|
506 |
-
*/
|
507 |
-
function admin_notices_version_updated() {
|
508 |
-
if ( get_option( 'booster_for_woocommerce_version' ) === $this->version ) {
|
509 |
-
$class = 'notice notice-success is-dismissible';
|
510 |
-
$message = sprintf( __( '<strong>Booster for WooCommerce</strong> plugin was successfully updated to version <strong>%s</strong>.', 'woocommerce-jetpack' ), $this->version );
|
511 |
-
echo sprintf( '<div class="%1$s"><p>%2$s</p></div>', $class, $message );
|
512 |
-
}
|
513 |
-
}
|
514 |
-
|
515 |
-
/**
|
516 |
-
* Add Jetpack settings tab to WooCommerce settings.
|
517 |
-
*/
|
518 |
-
function add_wcj_settings_tab( $settings ) {
|
519 |
-
$_settings = include( 'includes/admin/class-wc-settings-jetpack.php' );
|
520 |
-
$_settings->add_module_statuses( $this->module_statuses );
|
521 |
-
$settings[] = $_settings;
|
522 |
-
return $settings;
|
523 |
}
|
524 |
|
525 |
}
|
3 |
Plugin Name: Booster for WooCommerce
|
4 |
Plugin URI: https://booster.io
|
5 |
Description: Supercharge your WooCommerce site with these awesome powerful features.
|
6 |
+
Version: 3.2.4
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: https://booster.io
|
9 |
Text Domain: woocommerce-jetpack
|
13 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
14 |
*/
|
15 |
|
16 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
17 |
+
exit; // Exit if accessed directly
|
18 |
+
}
|
19 |
|
20 |
if ( ! function_exists( 'wcj_is_plugin_active' ) ) {
|
21 |
/**
|
39 |
}
|
40 |
|
41 |
// Check if Plus is active
|
42 |
+
if ( 'woocommerce-jetpack.php' === basename( __FILE__ ) && wcj_is_plugin_active( 'booster-plus-for-woocommerce/booster-plus-for-woocommerce.php' ) ) {
|
43 |
+
return;
|
|
|
|
|
44 |
}
|
45 |
|
46 |
+
if ( ! defined( 'WCJ_PLUGIN_FILE' ) ) {
|
|
|
|
|
47 |
/**
|
48 |
+
* WCJ_PLUGIN_FILE.
|
49 |
*
|
50 |
+
* @version 3.2.4
|
51 |
+
* @since 3.2.4
|
52 |
*/
|
53 |
+
define( 'WCJ_PLUGIN_FILE', __FILE__ );
|
|
|
|
|
54 |
}
|
55 |
|
56 |
+
if ( ! class_exists( 'WC_Jetpack' ) ) :
|
|
|
57 |
|
58 |
/**
|
59 |
* Main WC_Jetpack Class
|
60 |
*
|
61 |
* @class WC_Jetpack
|
62 |
+
* @version 3.2.4
|
63 |
*/
|
64 |
final class WC_Jetpack {
|
65 |
|
69 |
* @var string
|
70 |
* @since 2.4.7
|
71 |
*/
|
72 |
+
public $version = '3.2.4';
|
73 |
|
74 |
/**
|
75 |
* @var WC_Jetpack The single instance of the class
|
95 |
/**
|
96 |
* WC_Jetpack Constructor.
|
97 |
*
|
98 |
+
* @version 3.2.4
|
99 |
* @access public
|
100 |
*/
|
101 |
function __construct() {
|
102 |
+
require_once( 'includes/core/wcj-loader.php' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
103 |
}
|
104 |
|
105 |
}
|