Version Description
(2022-09-15) = * Fixed: Both Product Query Type class missing. * Fixed: Pinterest RSS Board Feed changed from atom to RSS version 2.0. * Fixed: Feed Import & Export issue fixed. * Added: Download file module added.
Download this release
Release Info
Developer | wahid0003 |
Plugin | CTX Feed – WooCommerce Product Feed Manager Plugin |
Version | 4.5.2 |
Comparing to | |
See all releases |
Code changes from version 4.5.1 to 4.5.2
- README.txt +9 -3
- V5/Common/DownloadFiles.php +10 -10
- V5/Common/DropDownOptions.php +131 -43
- V5/Feed/GoogleFeed.php +12 -12
- V5/Filter/AdvanceFilter.php +2 -2
- V5/Filter/Filter.php +2 -2
- V5/Filter/ValidateProduct.php +10 -10
- V5/Merchant/MerchantAttributesFactory.php +2 -0
- V5/Override/Advance.php +12 -12
- V5/Product/ProductFactory.php +16 -16
- V5/Utility/CTX_WC_Log_Handler.php +63 -61
- V5/Utility/Config.php +111 -103
- V5/Utility/DropDown.php +85 -65
- V5/Utility/Logs.php +31 -44
- admin/js/localization/messages_ar.js +0 -33
- admin/js/localization/messages_ar.min.js +0 -4
- admin/js/localization/messages_bg.js +0 -33
- admin/js/localization/messages_bg.min.js +0 -4
- admin/js/localization/messages_bn_BD.js +0 -33
- admin/js/localization/messages_bn_BD.min.js +0 -4
- admin/js/localization/messages_ca.js +0 -33
- admin/js/localization/messages_ca.min.js +0 -4
- admin/js/localization/messages_cs.js +0 -33
- admin/js/localization/messages_cs.min.js +0 -4
- admin/js/localization/messages_da.js +0 -30
- admin/js/localization/messages_da.min.js +0 -4
- admin/js/localization/messages_de.js +0 -30
- admin/js/localization/messages_de.min.js +0 -4
- admin/js/localization/messages_el.js +0 -33
- admin/js/localization/messages_el.min.js +0 -4
- admin/js/localization/messages_es.js +0 -36
- admin/js/localization/messages_es.min.js +0 -4
- admin/js/localization/messages_es_AR.js +0 -37
- admin/js/localization/messages_es_AR.min.js +0 -4
- admin/js/localization/messages_es_PE.js +0 -37
- admin/js/localization/messages_es_PE.min.js +0 -4
- admin/js/localization/messages_et.js +0 -31
- admin/js/localization/messages_et.min.js +0 -4
- admin/js/localization/messages_eu.js +0 -33
- admin/js/localization/messages_eu.min.js +0 -4
- admin/js/localization/messages_fa.js +0 -36
- admin/js/localization/messages_fa.min.js +0 -4
- admin/js/localization/messages_fi.js +0 -31
- admin/js/localization/messages_fi.min.js +0 -4
- admin/js/localization/messages_fr.js +0 -59
- admin/js/localization/messages_fr.min.js +0 -4
- admin/js/localization/messages_ge.js +0 -33
- admin/js/localization/messages_ge.min.js +0 -4
- admin/js/localization/messages_gl.js +0 -38
- admin/js/localization/messages_gl.min.js +0 -4
- admin/js/localization/messages_he.js +0 -33
- admin/js/localization/messages_he.min.js +0 -4
- admin/js/localization/messages_hr.js +0 -33
- admin/js/localization/messages_hr.min.js +0 -4
- admin/js/localization/messages_hu.js +0 -32
- admin/js/localization/messages_hu.min.js +0 -4
- admin/js/localization/messages_hy_AM.js +0 -33
- admin/js/localization/messages_hy_AM.min.js +0 -4
- admin/js/localization/messages_id.js +0 -32
- admin/js/localization/messages_id.min.js +0 -4
- admin/js/localization/messages_is.js +0 -31
- admin/js/localization/messages_is.min.js +0 -4
- admin/js/localization/messages_it.js +0 -37
- admin/js/localization/messages_it.min.js +0 -4
- admin/js/localization/messages_ja.js +0 -33
- admin/js/localization/messages_ja.min.js +0 -4
- admin/js/localization/messages_ka.js +0 -33
- admin/js/localization/messages_ka.min.js +0 -4
- admin/js/localization/messages_kk.js +0 -33
- admin/js/localization/messages_kk.min.js +0 -4
- admin/js/localization/messages_ko.js +0 -33
- admin/js/localization/messages_ko.min.js +0 -4
- admin/js/localization/messages_lt.js +0 -33
- admin/js/localization/messages_lt.min.js +0 -4
- admin/js/localization/messages_lv.js +0 -33
- admin/js/localization/messages_lv.min.js +0 -4
- admin/js/localization/messages_my.js +0 -33
- admin/js/localization/messages_my.min.js +0 -4
- admin/js/localization/messages_nl.js +0 -43
- admin/js/localization/messages_nl.min.js +0 -4
- admin/js/localization/messages_no.js +0 -33
- admin/js/localization/messages_no.min.js +0 -4
- admin/js/localization/messages_pl.js +0 -33
- admin/js/localization/messages_pl.min.js +0 -4
- admin/js/localization/messages_pt_BR.js +0 -39
- admin/js/localization/messages_pt_BR.min.js +0 -4
- admin/js/localization/messages_pt_PT.js +0 -37
- admin/js/localization/messages_pt_PT.min.js +0 -4
- admin/js/localization/messages_ro.js +0 -33
- admin/js/localization/messages_ro.min.js +0 -4
- admin/js/localization/messages_ru.js +0 -33
- admin/js/localization/messages_ru.min.js +0 -4
- admin/js/localization/messages_si.js +0 -33
- admin/js/localization/messages_si.min.js +0 -4
- admin/js/localization/messages_sk.js +0 -30
- admin/js/localization/messages_sk.min.js +0 -4
- admin/js/localization/messages_sl.js +0 -33
- admin/js/localization/messages_sl.min.js +0 -4
- admin/js/localization/messages_sr.js +0 -33
- admin/js/localization/messages_sr.min.js +0 -4
- admin/js/localization/messages_sr_lat.js +0 -33
- admin/js/localization/messages_sr_lat.min.js +0 -4
- admin/js/localization/messages_sv.js +0 -31
- admin/js/localization/messages_sv.min.js +0 -4
- admin/js/localization/messages_th.js +0 -33
- admin/js/localization/messages_th.min.js +0 -4
- admin/js/localization/messages_tj.js +0 -33
- admin/js/localization/messages_tj.min.js +0 -4
- admin/js/localization/messages_tr.js +0 -34
- admin/js/localization/messages_tr.min.js +0 -4
- admin/js/localization/messages_uk.js +0 -33
- admin/js/localization/messages_uk.min.js +0 -4
- admin/js/localization/messages_vi.js +0 -33
- admin/js/localization/messages_vi.min.js +0 -4
- admin/js/localization/messages_zh.js +0 -33
- admin/js/localization/messages_zh.min.js +0 -4
- admin/js/localization/messages_zh_TW.js +0 -34
- admin/js/localization/messages_zh_TW.min.js +0 -4
- admin/js/localization/methods_de.js +0 -22
- admin/js/localization/methods_de.min.js +0 -4
- admin/js/localization/methods_es_CL.js +0 -22
- admin/js/localization/methods_es_CL.min.js +0 -4
- admin/js/localization/methods_fi.js +0 -22
- admin/js/localization/methods_fi.min.js +0 -4
- admin/js/localization/methods_nl.js +0 -19
- admin/js/localization/methods_nl.min.js +0 -4
- admin/js/localization/methods_pt.js +0 -19
- admin/js/localization/methods_pt.min.js +0 -4
- admin/js/woo-feed-admin-pro.js +173 -20
- admin/partials/woo-feed-add-option.php +5 -2
- admin/partials/woo-feed-pro-vs-free.php +1 -1
- includes/action-handler.php +17 -18
- includes/classes/class-woo-feed-constants.php +4 -2
- includes/classes/class-woo-feed-merchant.php +1 -1
- includes/helper.php +3 -3
- woo-feed.php +163 -153
README.txt
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
=== CTX Feed – WooCommerce Product Feed Manager Plugin ===
|
2 |
-
Contributors: wahid0003, webappick,
|
3 |
Donate link: https://webappick.com
|
4 |
Tags: WooCommerce Product Feed, WooCommerce, Google Shopping, Google Merchant, Facebook Catalog, Bing Shopping, Instagram Shop, Skroutz Data Feed, XML Feed, CSV Feed, TXT Feed, Product Feed
|
5 |
Requires at least: 4.4
|
6 |
Tested Up To: 6.0
|
7 |
Requires PHP: 5.6
|
8 |
-
Stable tag: 4.5.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -590,6 +590,12 @@ Using pro version:
|
|
590 |
|
591 |
== Changelog ==
|
592 |
|
|
|
|
|
|
|
|
|
|
|
|
|
593 |
= 4.5.1 (2022-08-24) =
|
594 |
* autoload file not found issue fixed.
|
595 |
|
@@ -2073,7 +2079,7 @@ Using pro version:
|
|
2073 |
* URL encoding issue with suffix fixed
|
2074 |
|
2075 |
= 2.2.21(2018-09-19) =
|
2076 |
-
* Cron schedule added to update feed individually
|
2077 |
|
2078 |
= 2.2.19(2018-07-31) =
|
2079 |
* Product description default limit set to 5000 for Google Merchant and Facebook template
|
1 |
=== CTX Feed – WooCommerce Product Feed Manager Plugin ===
|
2 |
+
Contributors: wahid0003, webappick, shuvo586, nayanchamp7, mrinal013
|
3 |
Donate link: https://webappick.com
|
4 |
Tags: WooCommerce Product Feed, WooCommerce, Google Shopping, Google Merchant, Facebook Catalog, Bing Shopping, Instagram Shop, Skroutz Data Feed, XML Feed, CSV Feed, TXT Feed, Product Feed
|
5 |
Requires at least: 4.4
|
6 |
Tested Up To: 6.0
|
7 |
Requires PHP: 5.6
|
8 |
+
Stable tag: 4.5.2
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
590 |
|
591 |
== Changelog ==
|
592 |
|
593 |
+
= 4.5.2 (2022-09-15) =
|
594 |
+
* Fixed: Both Product Query Type class missing.
|
595 |
+
* Fixed: Pinterest RSS Board Feed changed from atom to RSS version 2.0.
|
596 |
+
* Fixed: Feed Import & Export issue fixed.
|
597 |
+
* Added: Download file module added.
|
598 |
+
|
599 |
= 4.5.1 (2022-08-24) =
|
600 |
* autoload file not found issue fixed.
|
601 |
|
2079 |
* URL encoding issue with suffix fixed
|
2080 |
|
2081 |
= 2.2.21(2018-09-19) =
|
2082 |
+
* Cron schedule added to update feed individually
|
2083 |
|
2084 |
= 2.2.19(2018-07-31) =
|
2085 |
* Product description default limit set to 5000 for Google Merchant and Facebook template
|
V5/Common/DownloadFiles.php
CHANGED
@@ -13,12 +13,12 @@ use CTXFeed\V5\Utility\CTX_WC_Log_Handler;
|
|
13 |
* @subpackage CTXFeed\V5\Common
|
14 |
*/
|
15 |
class DownloadFiles {
|
16 |
-
|
17 |
public function __construct() {
|
18 |
add_action( 'admin_post_wf_download_feed_log', [ $this, 'download_log' ], 10 );
|
19 |
add_action( 'admin_post_wf_download_feed', [ $this, 'download_feed' ], 10 );
|
20 |
}
|
21 |
-
|
22 |
/**
|
23 |
* Download Feed Log.
|
24 |
*
|
@@ -34,25 +34,25 @@ class DownloadFiles {
|
|
34 |
$feed_name = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
35 |
$feed_name = str_replace( 'wf_feed_', '', $feed_name );
|
36 |
$log_file_path = CTX_WC_Log_Handler::get_log_file_path( $feed_name );
|
37 |
-
|
38 |
$file_name = sprintf(
|
39 |
'%s-%s-%s.log',
|
40 |
sanitize_title( $feed_name ),
|
41 |
gmdate( 'Y-m-d', time() ),
|
42 |
time()
|
43 |
);
|
44 |
-
|
45 |
if ( ! file_exists( $log_file_path ) ) {
|
46 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'log_file_not_found', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
47 |
}
|
48 |
-
|
49 |
$fileDownload = new FileDownload( fopen( $log_file_path, 'rb' ) );
|
50 |
$fileDownload->sendDownload( $file_name );
|
51 |
} else {
|
52 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'log_file_not_found', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
53 |
}
|
54 |
}
|
55 |
-
|
56 |
/**
|
57 |
* Download feed.
|
58 |
*
|
@@ -66,11 +66,11 @@ class DownloadFiles {
|
|
66 |
$feed_name = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
67 |
/* your file, somewhere opened with fopen() or tmpfile(), etc.. */
|
68 |
$config = Factory::get_feed_info( $feed_name );
|
69 |
-
|
70 |
if ( ! file_exists( $config->get_feed_path() ) ) {
|
71 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'feed_download_failed', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
72 |
}
|
73 |
-
|
74 |
$fileData = fopen( $config->get_feed_path(), 'rb' );
|
75 |
$fileDownload = new FileDownload( $fileData );
|
76 |
$fileDownload->sendDownload( $config->get_feed_file_name() );
|
@@ -78,5 +78,5 @@ class DownloadFiles {
|
|
78 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'feed_download_failed', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
79 |
}
|
80 |
}
|
81 |
-
|
82 |
-
}
|
13 |
* @subpackage CTXFeed\V5\Common
|
14 |
*/
|
15 |
class DownloadFiles {
|
16 |
+
|
17 |
public function __construct() {
|
18 |
add_action( 'admin_post_wf_download_feed_log', [ $this, 'download_log' ], 10 );
|
19 |
add_action( 'admin_post_wf_download_feed', [ $this, 'download_feed' ], 10 );
|
20 |
}
|
21 |
+
|
22 |
/**
|
23 |
* Download Feed Log.
|
24 |
*
|
34 |
$feed_name = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
35 |
$feed_name = str_replace( 'wf_feed_', '', $feed_name );
|
36 |
$log_file_path = CTX_WC_Log_Handler::get_log_file_path( $feed_name );
|
37 |
+
|
38 |
$file_name = sprintf(
|
39 |
'%s-%s-%s.log',
|
40 |
sanitize_title( $feed_name ),
|
41 |
gmdate( 'Y-m-d', time() ),
|
42 |
time()
|
43 |
);
|
44 |
+
|
45 |
if ( ! file_exists( $log_file_path ) ) {
|
46 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'log_file_not_found', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
47 |
}
|
48 |
+
|
49 |
$fileDownload = new FileDownload( fopen( $log_file_path, 'rb' ) );
|
50 |
$fileDownload->sendDownload( $file_name );
|
51 |
} else {
|
52 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'log_file_not_found', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
53 |
}
|
54 |
}
|
55 |
+
|
56 |
/**
|
57 |
* Download feed.
|
58 |
*
|
66 |
$feed_name = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
67 |
/* your file, somewhere opened with fopen() or tmpfile(), etc.. */
|
68 |
$config = Factory::get_feed_info( $feed_name );
|
69 |
+
|
70 |
if ( ! file_exists( $config->get_feed_path() ) ) {
|
71 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'feed_download_failed', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
72 |
}
|
73 |
+
|
74 |
$fileData = fopen( $config->get_feed_path(), 'rb' );
|
75 |
$fileDownload = new FileDownload( $fileData );
|
76 |
$fileDownload->sendDownload( $config->get_feed_file_name() );
|
78 |
exit( wp_redirect( add_query_arg( 'wpf_notice_code', 'feed_download_failed', admin_url( 'admin.php?page=webappick-manage-feeds' ) ) ) );
|
79 |
}
|
80 |
}
|
81 |
+
|
82 |
+
}
|
V5/Common/DropDownOptions.php
CHANGED
@@ -1,14 +1,21 @@
|
|
1 |
<?php
|
2 |
|
3 |
namespace CTXFeed\V5\Common;
|
|
|
4 |
use CTXFeed\V5\Product\ProductAttributeFactory;
|
5 |
use CTXFeed\V5\Utility\DropDown;
|
6 |
|
7 |
/**
|
8 |
-
* @package
|
9 |
* @subpackage CTXFeed\V5\Common\DropDownOptions
|
10 |
*/
|
11 |
class DropDownOptions {
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
/**
|
13 |
* Country List
|
14 |
*
|
@@ -20,7 +27,7 @@ class DropDownOptions {
|
|
20 |
* @author Nazrul Islam Nayan
|
21 |
* @updated 15-07-2022
|
22 |
*/
|
23 |
-
public static function feed_country( $
|
24 |
$countries = array(
|
25 |
'AF' => 'Afghanistan',
|
26 |
'AX' => 'Aland Islands',
|
@@ -269,10 +276,10 @@ class DropDownOptions {
|
|
269 |
'ZM' => 'Zambia',
|
270 |
'ZW' => 'Zimbabwe',
|
271 |
);
|
272 |
-
|
273 |
return self::Create_DropDown_IF_Needed( $countries, $dropdown, $selected );
|
274 |
}
|
275 |
-
|
276 |
/**
|
277 |
* Feed Template List.
|
278 |
*
|
@@ -281,7 +288,7 @@ class DropDownOptions {
|
|
281 |
*
|
282 |
* @return array|false|mixed|string|string[]
|
283 |
*/
|
284 |
-
public static function provider( $
|
285 |
$merchant = [
|
286 |
1 => [
|
287 |
'optionGroup' => 'Custom Templates',
|
@@ -417,10 +424,10 @@ class DropDownOptions {
|
|
417 |
]
|
418 |
],
|
419 |
];
|
420 |
-
|
421 |
return self::Create_DropDown_IF_Needed( $merchant, $dropdown, $selected );
|
422 |
}
|
423 |
-
|
424 |
/**
|
425 |
* Feed File Type List.
|
426 |
*
|
@@ -429,7 +436,7 @@ class DropDownOptions {
|
|
429 |
*
|
430 |
* @return array|false|mixed|string|string[]
|
431 |
*/
|
432 |
-
public static function file_types( $
|
433 |
$types = array(
|
434 |
'xml' => 'XML',
|
435 |
'csv' => 'CSV',
|
@@ -438,10 +445,10 @@ class DropDownOptions {
|
|
438 |
'txt' => 'TXT',
|
439 |
'json' => 'JSON',
|
440 |
);
|
441 |
-
|
442 |
return self::Create_DropDown_IF_Needed( $types, $dropdown, $selected );
|
443 |
}
|
444 |
-
|
445 |
/**
|
446 |
* Variation Options.
|
447 |
*
|
@@ -450,7 +457,7 @@ class DropDownOptions {
|
|
450 |
*
|
451 |
* @return array|false|mixed|string|string[]
|
452 |
*/
|
453 |
-
public static function include_variation( $
|
454 |
$variation_options = array(
|
455 |
'n' => esc_html__( 'Variable Products (Parent)', 'woo-feed' ),
|
456 |
'y' => esc_html__( 'All Variations', 'woo-feed' ),
|
@@ -460,10 +467,10 @@ class DropDownOptions {
|
|
460 |
'last' => esc_html__( 'Last Variation', 'woo-feed' ),
|
461 |
'both' => esc_html__( 'Variable + Variations', 'woo-feed' ),
|
462 |
);
|
463 |
-
|
464 |
return self::Create_DropDown_IF_Needed( $variation_options, $dropdown, $selected );
|
465 |
}
|
466 |
-
|
467 |
/**
|
468 |
* Variation Price Options.
|
469 |
*
|
@@ -472,16 +479,16 @@ class DropDownOptions {
|
|
472 |
*
|
473 |
* @return array|false|mixed|string|string[]
|
474 |
*/
|
475 |
-
public static function variation_price( $
|
476 |
$variation_price = array(
|
477 |
'first' => esc_html__( 'First Variation Price', 'woo-feed' ),
|
478 |
'max' => esc_html__( 'Max Variation Price', 'woo-feed' ),
|
479 |
'min' => esc_html__( 'Min Variation Price', 'woo-feed' ),
|
480 |
);
|
481 |
-
|
482 |
return self::Create_DropDown_IF_Needed( $variation_price, $dropdown, $selected );
|
483 |
}
|
484 |
-
|
485 |
/**
|
486 |
* Variation Quantity Options.
|
487 |
*
|
@@ -490,16 +497,16 @@ class DropDownOptions {
|
|
490 |
*
|
491 |
* @return array|false|mixed|string|string[]
|
492 |
*/
|
493 |
-
public static function variation_quantity( $
|
494 |
$variation_quantity = array(
|
495 |
'first' => esc_html__( 'First Variation Price', 'woo-feed' ),
|
496 |
'max' => esc_html__( 'Max Variation Price', 'woo-feed' ),
|
497 |
'min' => esc_html__( 'Min Variation Price', 'woo-feed' ),
|
498 |
);
|
499 |
-
|
500 |
return self::Create_DropDown_IF_Needed( $variation_quantity, $dropdown, $selected );
|
501 |
}
|
502 |
-
|
503 |
/**
|
504 |
* CSV Feed Delimiters.
|
505 |
*
|
@@ -508,7 +515,7 @@ class DropDownOptions {
|
|
508 |
*
|
509 |
* @return array|false|mixed|string|string[]
|
510 |
*/
|
511 |
-
public static function delimiters( $
|
512 |
$delimiters = [
|
513 |
',' => 'Comma',
|
514 |
':' => 'Colon',
|
@@ -517,10 +524,10 @@ class DropDownOptions {
|
|
517 |
';' => 'Semi Colon',
|
518 |
"\t" => 'TAB',
|
519 |
];
|
520 |
-
|
521 |
return self::Create_DropDown_IF_Needed( $delimiters, $dropdown, $selected );
|
522 |
}
|
523 |
-
|
524 |
/**
|
525 |
* CSV Feed Enclosure.
|
526 |
*
|
@@ -529,16 +536,31 @@ class DropDownOptions {
|
|
529 |
*
|
530 |
* @return array|false|mixed|string|string[]
|
531 |
*/
|
532 |
-
public static function enclosure( $
|
533 |
$enclosure = [
|
534 |
'double' => '"',
|
535 |
'single' => '\'',
|
536 |
' ' => 'None',
|
537 |
];
|
538 |
-
|
539 |
return self::Create_DropDown_IF_Needed( $enclosure, $dropdown, $selected );
|
540 |
}
|
541 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
/**
|
543 |
* Product Attributes.
|
544 |
*
|
@@ -547,13 +569,13 @@ class DropDownOptions {
|
|
547 |
*
|
548 |
* @return array|false|mixed|string|string[]
|
549 |
*/
|
550 |
-
public static function product_attributes( $
|
551 |
$attributes = ProductAttributeFactory::getAttributes();
|
552 |
$cache_key = 'woo_feed_product_attribute_dropdown';
|
553 |
-
|
554 |
return self::Create_DropDown_IF_Needed( $attributes, $dropdown, $selected, $cache_key, true );
|
555 |
}
|
556 |
-
|
557 |
/**
|
558 |
* Comparing Condition. Used on Dynamic Attributes and
|
559 |
*
|
@@ -562,8 +584,9 @@ class DropDownOptions {
|
|
562 |
*
|
563 |
* @return array|false|mixed|string|string[]
|
564 |
*/
|
565 |
-
public static function conditions( $
|
566 |
$conditions = array(
|
|
|
567 |
'==' => __( 'is / equal', 'woo-feed' ),
|
568 |
'!=' => __( 'is not / not equal', 'woo-feed' ),
|
569 |
'>=' => __( 'equals or greater than', 'woo-feed' ),
|
@@ -574,10 +597,10 @@ class DropDownOptions {
|
|
574 |
'nContains' => __( 'does not contain', 'woo-feed' ),
|
575 |
'between' => __( 'between', 'woo-feed' ),
|
576 |
);
|
577 |
-
|
578 |
return self::Create_DropDown_IF_Needed( $conditions, $dropdown, $selected );
|
579 |
}
|
580 |
-
|
581 |
/**
|
582 |
* Variation Query Type at Settings.
|
583 |
*
|
@@ -586,15 +609,15 @@ class DropDownOptions {
|
|
586 |
*
|
587 |
* @return array|false|mixed|string|string[]
|
588 |
*/
|
589 |
-
public static function variation_query_type( $
|
590 |
$variation_query_type = [
|
591 |
'individual' => __( 'Individual', 'woo-feed' ),
|
592 |
'variable' => __( 'Variable Dependable', 'woo-feed' ),
|
593 |
];
|
594 |
-
|
595 |
return self::Create_DropDown_IF_Needed( $variation_query_type, $dropdown, $selected );
|
596 |
}
|
597 |
-
|
598 |
/**
|
599 |
* Product Query Type at Settings.
|
600 |
*
|
@@ -603,34 +626,99 @@ class DropDownOptions {
|
|
603 |
*
|
604 |
* @return array|false|mixed|string|string[]
|
605 |
*/
|
606 |
-
public static function product_query_type( $
|
607 |
$product_query_type = [
|
608 |
'wc' => __( 'WC_Product_Query', 'woo-feed' ),
|
609 |
'wp' => __( 'WP_Query', 'woo-feed' ),
|
610 |
'both' => __( 'Both', 'woo-feed' ),
|
611 |
];
|
612 |
-
|
613 |
return self::Create_DropDown_IF_Needed( $product_query_type, $dropdown, $selected );
|
614 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
|
616 |
-
|
|
|
|
|
|
|
|
|
617 |
/**
|
618 |
* Make DropDown Option from array if needed else return the array.
|
619 |
*
|
620 |
-
* @param
|
621 |
-
* @param
|
622 |
-
* @param
|
623 |
* @param string $cache_key
|
624 |
-
* @param bool
|
625 |
*
|
626 |
* @return array|false|mixed|string|string[]
|
627 |
*/
|
628 |
public static function Create_DropDown_IF_Needed( $array, $DropDownStatus, $selected, $cache_key = '', $cache = false ) {
|
|
|
629 |
if ( $DropDownStatus ) {
|
630 |
return Dropdown::Create( $array, $selected, $cache_key, $cache );
|
631 |
}
|
632 |
-
|
633 |
return $array;
|
634 |
}
|
635 |
-
|
636 |
}
|
1 |
<?php
|
2 |
|
3 |
namespace CTXFeed\V5\Common;
|
4 |
+
|
5 |
use CTXFeed\V5\Product\ProductAttributeFactory;
|
6 |
use CTXFeed\V5\Utility\DropDown;
|
7 |
|
8 |
/**
|
9 |
+
* @package CTXFeed
|
10 |
* @subpackage CTXFeed\V5\Common\DropDownOptions
|
11 |
*/
|
12 |
class DropDownOptions {
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Product Category
|
16 |
+
*/
|
17 |
+
private static $cats;
|
18 |
+
|
19 |
/**
|
20 |
* Country List
|
21 |
*
|
27 |
* @author Nazrul Islam Nayan
|
28 |
* @updated 15-07-2022
|
29 |
*/
|
30 |
+
public static function feed_country( $selected = '', $dropdown = true ) {
|
31 |
$countries = array(
|
32 |
'AF' => 'Afghanistan',
|
33 |
'AX' => 'Aland Islands',
|
276 |
'ZM' => 'Zambia',
|
277 |
'ZW' => 'Zimbabwe',
|
278 |
);
|
279 |
+
|
280 |
return self::Create_DropDown_IF_Needed( $countries, $dropdown, $selected );
|
281 |
}
|
282 |
+
|
283 |
/**
|
284 |
* Feed Template List.
|
285 |
*
|
288 |
*
|
289 |
* @return array|false|mixed|string|string[]
|
290 |
*/
|
291 |
+
public static function provider( $selected = '', $dropdown = true ) {
|
292 |
$merchant = [
|
293 |
1 => [
|
294 |
'optionGroup' => 'Custom Templates',
|
424 |
]
|
425 |
],
|
426 |
];
|
427 |
+
|
428 |
return self::Create_DropDown_IF_Needed( $merchant, $dropdown, $selected );
|
429 |
}
|
430 |
+
|
431 |
/**
|
432 |
* Feed File Type List.
|
433 |
*
|
436 |
*
|
437 |
* @return array|false|mixed|string|string[]
|
438 |
*/
|
439 |
+
public static function file_types( $selected = '', $dropdown = true ) {
|
440 |
$types = array(
|
441 |
'xml' => 'XML',
|
442 |
'csv' => 'CSV',
|
445 |
'txt' => 'TXT',
|
446 |
'json' => 'JSON',
|
447 |
);
|
448 |
+
|
449 |
return self::Create_DropDown_IF_Needed( $types, $dropdown, $selected );
|
450 |
}
|
451 |
+
|
452 |
/**
|
453 |
* Variation Options.
|
454 |
*
|
457 |
*
|
458 |
* @return array|false|mixed|string|string[]
|
459 |
*/
|
460 |
+
public static function include_variation( $selected = '', $dropdown = true ) {
|
461 |
$variation_options = array(
|
462 |
'n' => esc_html__( 'Variable Products (Parent)', 'woo-feed' ),
|
463 |
'y' => esc_html__( 'All Variations', 'woo-feed' ),
|
467 |
'last' => esc_html__( 'Last Variation', 'woo-feed' ),
|
468 |
'both' => esc_html__( 'Variable + Variations', 'woo-feed' ),
|
469 |
);
|
470 |
+
|
471 |
return self::Create_DropDown_IF_Needed( $variation_options, $dropdown, $selected );
|
472 |
}
|
473 |
+
|
474 |
/**
|
475 |
* Variation Price Options.
|
476 |
*
|
479 |
*
|
480 |
* @return array|false|mixed|string|string[]
|
481 |
*/
|
482 |
+
public static function variation_price( $selected = '', $dropdown = true ) {
|
483 |
$variation_price = array(
|
484 |
'first' => esc_html__( 'First Variation Price', 'woo-feed' ),
|
485 |
'max' => esc_html__( 'Max Variation Price', 'woo-feed' ),
|
486 |
'min' => esc_html__( 'Min Variation Price', 'woo-feed' ),
|
487 |
);
|
488 |
+
|
489 |
return self::Create_DropDown_IF_Needed( $variation_price, $dropdown, $selected );
|
490 |
}
|
491 |
+
|
492 |
/**
|
493 |
* Variation Quantity Options.
|
494 |
*
|
497 |
*
|
498 |
* @return array|false|mixed|string|string[]
|
499 |
*/
|
500 |
+
public static function variation_quantity( $selected = '', $dropdown = true ) {
|
501 |
$variation_quantity = array(
|
502 |
'first' => esc_html__( 'First Variation Price', 'woo-feed' ),
|
503 |
'max' => esc_html__( 'Max Variation Price', 'woo-feed' ),
|
504 |
'min' => esc_html__( 'Min Variation Price', 'woo-feed' ),
|
505 |
);
|
506 |
+
|
507 |
return self::Create_DropDown_IF_Needed( $variation_quantity, $dropdown, $selected );
|
508 |
}
|
509 |
+
|
510 |
/**
|
511 |
* CSV Feed Delimiters.
|
512 |
*
|
515 |
*
|
516 |
* @return array|false|mixed|string|string[]
|
517 |
*/
|
518 |
+
public static function delimiters( $selected = '', $dropdown = true ) {
|
519 |
$delimiters = [
|
520 |
',' => 'Comma',
|
521 |
':' => 'Colon',
|
524 |
';' => 'Semi Colon',
|
525 |
"\t" => 'TAB',
|
526 |
];
|
527 |
+
|
528 |
return self::Create_DropDown_IF_Needed( $delimiters, $dropdown, $selected );
|
529 |
}
|
530 |
+
|
531 |
/**
|
532 |
* CSV Feed Enclosure.
|
533 |
*
|
536 |
*
|
537 |
* @return array|false|mixed|string|string[]
|
538 |
*/
|
539 |
+
public static function enclosure( $selected = '', $dropdown = true ) {
|
540 |
$enclosure = [
|
541 |
'double' => '"',
|
542 |
'single' => '\'',
|
543 |
' ' => 'None',
|
544 |
];
|
545 |
+
|
546 |
return self::Create_DropDown_IF_Needed( $enclosure, $dropdown, $selected );
|
547 |
}
|
548 |
+
|
549 |
+
/**
|
550 |
+
* Get Merchant attribute dropdown.
|
551 |
+
*
|
552 |
+
* @param $attributes
|
553 |
+
* @param string $selected
|
554 |
+
* @param bool $dropdown
|
555 |
+
*
|
556 |
+
* @return string|false
|
557 |
+
*/
|
558 |
+
public static function merchant_attributes( $attributes, $selected = '', $dropdown = true ) {
|
559 |
+
$cache_key = 'ctx_merchant_attribute_dropdown_' . $selected;
|
560 |
+
|
561 |
+
return self::Create_DropDown_IF_Needed( $attributes, $dropdown, $selected, $cache_key, true );
|
562 |
+
}
|
563 |
+
|
564 |
/**
|
565 |
* Product Attributes.
|
566 |
*
|
569 |
*
|
570 |
* @return array|false|mixed|string|string[]
|
571 |
*/
|
572 |
+
public static function product_attributes( $selected = '', $dropdown = true ) {
|
573 |
$attributes = ProductAttributeFactory::getAttributes();
|
574 |
$cache_key = 'woo_feed_product_attribute_dropdown';
|
575 |
+
|
576 |
return self::Create_DropDown_IF_Needed( $attributes, $dropdown, $selected, $cache_key, true );
|
577 |
}
|
578 |
+
|
579 |
/**
|
580 |
* Comparing Condition. Used on Dynamic Attributes and
|
581 |
*
|
584 |
*
|
585 |
* @return array|false|mixed|string|string[]
|
586 |
*/
|
587 |
+
public static function conditions( $selected = '', $dropdown = true ) {
|
588 |
$conditions = array(
|
589 |
+
'' => __( 'Select Condition' ),
|
590 |
'==' => __( 'is / equal', 'woo-feed' ),
|
591 |
'!=' => __( 'is not / not equal', 'woo-feed' ),
|
592 |
'>=' => __( 'equals or greater than', 'woo-feed' ),
|
597 |
'nContains' => __( 'does not contain', 'woo-feed' ),
|
598 |
'between' => __( 'between', 'woo-feed' ),
|
599 |
);
|
600 |
+
|
601 |
return self::Create_DropDown_IF_Needed( $conditions, $dropdown, $selected );
|
602 |
}
|
603 |
+
|
604 |
/**
|
605 |
* Variation Query Type at Settings.
|
606 |
*
|
609 |
*
|
610 |
* @return array|false|mixed|string|string[]
|
611 |
*/
|
612 |
+
public static function variation_query_type( $selected = '', $dropdown = false ) {
|
613 |
$variation_query_type = [
|
614 |
'individual' => __( 'Individual', 'woo-feed' ),
|
615 |
'variable' => __( 'Variable Dependable', 'woo-feed' ),
|
616 |
];
|
617 |
+
|
618 |
return self::Create_DropDown_IF_Needed( $variation_query_type, $dropdown, $selected );
|
619 |
}
|
620 |
+
|
621 |
/**
|
622 |
* Product Query Type at Settings.
|
623 |
*
|
626 |
*
|
627 |
* @return array|false|mixed|string|string[]
|
628 |
*/
|
629 |
+
public static function product_query_type( $selected = '', $dropdown = false ) {
|
630 |
$product_query_type = [
|
631 |
'wc' => __( 'WC_Product_Query', 'woo-feed' ),
|
632 |
'wp' => __( 'WP_Query', 'woo-feed' ),
|
633 |
'both' => __( 'Both', 'woo-feed' ),
|
634 |
];
|
635 |
+
|
636 |
return self::Create_DropDown_IF_Needed( $product_query_type, $dropdown, $selected );
|
637 |
}
|
638 |
+
|
639 |
+
/**
|
640 |
+
* Get all WP Options list.
|
641 |
+
*
|
642 |
+
* @param $dropdown
|
643 |
+
* @param $selected
|
644 |
+
*
|
645 |
+
* @return array|false|mixed|string|string[]
|
646 |
+
*/
|
647 |
+
public static function get_options( $selected = '', $dropdown = false ) {
|
648 |
+
$options = [];
|
649 |
+
$getOptions = wp_load_alloptions();
|
650 |
+
|
651 |
+
if ( ! empty( $getOptions ) ) {
|
652 |
+
$options[''] = "Select an Option";
|
653 |
+
foreach ( $getOptions as $key => $option ) {
|
654 |
+
$options[ $key ] = $key;
|
655 |
+
}
|
656 |
+
}
|
657 |
+
|
658 |
+
return self::Create_DropDown_IF_Needed( $options, $dropdown, $selected );
|
659 |
+
}
|
660 |
+
|
661 |
+
/**
|
662 |
+
* Get Product Categories
|
663 |
+
*
|
664 |
+
* @param $dropdown
|
665 |
+
* @param $selected
|
666 |
+
*
|
667 |
+
* @return void
|
668 |
+
*/
|
669 |
+
/**
|
670 |
+
* Get All Product Categories
|
671 |
+
*
|
672 |
+
* @param int $parent Category Parent ID.
|
673 |
+
* @param $dropdown
|
674 |
+
* @param $selected
|
675 |
+
*
|
676 |
+
* @return array
|
677 |
+
*/
|
678 |
+
public static function get_categories( $parent = 0, $dropdown = true, $selected = [] ) {
|
679 |
+
|
680 |
+
$args = [
|
681 |
+
'taxonomy' => 'product_cat',
|
682 |
+
'parent' => $parent,
|
683 |
+
'orderby' => 'term_group',
|
684 |
+
'show_count' => 1,
|
685 |
+
'pad_counts' => 1,
|
686 |
+
'hierarchical' => 1,
|
687 |
+
'title_li' => '',
|
688 |
+
'hide_empty' => 0,
|
689 |
+
];
|
690 |
+
|
691 |
+
$categories = get_categories( $args );
|
692 |
+
if ( ! empty( $categories ) ) {
|
693 |
+
foreach ( $categories as $cat ) {
|
694 |
+
self::$cats[ $cat->slug ] = $cat->name;
|
695 |
+
self::get_categories( $cat->term_id );
|
696 |
+
}
|
697 |
+
}
|
698 |
|
699 |
+
// return self::$cats;
|
700 |
+
return self::Create_DropDown_IF_Needed( self::$cats, $dropdown, $selected );
|
701 |
+
}
|
702 |
+
|
703 |
+
|
704 |
/**
|
705 |
* Make DropDown Option from array if needed else return the array.
|
706 |
*
|
707 |
+
* @param $array
|
708 |
+
* @param $DropDownStatus
|
709 |
+
* @param $selected
|
710 |
* @param string $cache_key
|
711 |
+
* @param bool $cache
|
712 |
*
|
713 |
* @return array|false|mixed|string|string[]
|
714 |
*/
|
715 |
public static function Create_DropDown_IF_Needed( $array, $DropDownStatus, $selected, $cache_key = '', $cache = false ) {
|
716 |
+
|
717 |
if ( $DropDownStatus ) {
|
718 |
return Dropdown::Create( $array, $selected, $cache_key, $cache );
|
719 |
}
|
720 |
+
|
721 |
return $array;
|
722 |
}
|
723 |
+
|
724 |
}
|
V5/Feed/GoogleFeed.php
CHANGED
@@ -22,13 +22,13 @@ class GoogleFeed implements FeedInterface {
|
|
22 |
* @var array $structure Contain Feed Structure.
|
23 |
*/
|
24 |
private $structure;
|
25 |
-
|
26 |
public function __construct( $ids, $config ) {
|
27 |
$this->ids = $ids;
|
28 |
$this->config = $config;
|
29 |
$this->structure = FeedFactory::get_structure( $config );
|
30 |
}
|
31 |
-
|
32 |
/**
|
33 |
* Get Feed Body.
|
34 |
*
|
@@ -36,10 +36,10 @@ class GoogleFeed implements FeedInterface {
|
|
36 |
*/
|
37 |
public function get_feed() {
|
38 |
$feed = ProductFactory::get_content( $this->ids, $this->config, $this->structure );
|
39 |
-
|
40 |
return $feed->make_body();
|
41 |
}
|
42 |
-
|
43 |
/**
|
44 |
* Get Feed Header.
|
45 |
*
|
@@ -48,10 +48,10 @@ class GoogleFeed implements FeedInterface {
|
|
48 |
public function get_header() {
|
49 |
$feed = FileFactory::GetData( $this->structure, $this->config );
|
50 |
$feed = $feed->make_header_footer();
|
51 |
-
|
52 |
return $feed['header'];
|
53 |
}
|
54 |
-
|
55 |
/**
|
56 |
* Get Feed Footer.
|
57 |
*
|
@@ -60,10 +60,10 @@ class GoogleFeed implements FeedInterface {
|
|
60 |
public function get_footer() {
|
61 |
$feed = FileFactory::GetData( $this->ids, $this->config );
|
62 |
$feed = $feed->make_header_footer();
|
63 |
-
|
64 |
return $feed['footer'];
|
65 |
}
|
66 |
-
|
67 |
/**
|
68 |
* @param $ids
|
69 |
* @param $config
|
@@ -73,8 +73,8 @@ class GoogleFeed implements FeedInterface {
|
|
73 |
*/
|
74 |
// private function get_content( $ids, $config, $structure ) {
|
75 |
// $info = [];
|
76 |
-
// Logs::
|
77 |
-
// Logs::
|
78 |
//
|
79 |
// foreach ( $ids as $id ) {
|
80 |
// $product = wc_get_product( $id );
|
@@ -88,7 +88,7 @@ class GoogleFeed implements FeedInterface {
|
|
88 |
//
|
89 |
// return FileFactory::GetData( $info, $config );
|
90 |
// }
|
91 |
-
|
92 |
/**
|
93 |
* @param $product
|
94 |
* @param $structure
|
@@ -118,4 +118,4 @@ class GoogleFeed implements FeedInterface {
|
|
118 |
//
|
119 |
// return $value;
|
120 |
// }
|
121 |
-
}
|
22 |
* @var array $structure Contain Feed Structure.
|
23 |
*/
|
24 |
private $structure;
|
25 |
+
|
26 |
public function __construct( $ids, $config ) {
|
27 |
$this->ids = $ids;
|
28 |
$this->config = $config;
|
29 |
$this->structure = FeedFactory::get_structure( $config );
|
30 |
}
|
31 |
+
|
32 |
/**
|
33 |
* Get Feed Body.
|
34 |
*
|
36 |
*/
|
37 |
public function get_feed() {
|
38 |
$feed = ProductFactory::get_content( $this->ids, $this->config, $this->structure );
|
39 |
+
|
40 |
return $feed->make_body();
|
41 |
}
|
42 |
+
|
43 |
/**
|
44 |
* Get Feed Header.
|
45 |
*
|
48 |
public function get_header() {
|
49 |
$feed = FileFactory::GetData( $this->structure, $this->config );
|
50 |
$feed = $feed->make_header_footer();
|
51 |
+
|
52 |
return $feed['header'];
|
53 |
}
|
54 |
+
|
55 |
/**
|
56 |
* Get Feed Footer.
|
57 |
*
|
60 |
public function get_footer() {
|
61 |
$feed = FileFactory::GetData( $this->ids, $this->config );
|
62 |
$feed = $feed->make_header_footer();
|
63 |
+
|
64 |
return $feed['footer'];
|
65 |
}
|
66 |
+
|
67 |
/**
|
68 |
* @param $ids
|
69 |
* @param $config
|
73 |
*/
|
74 |
// private function get_content( $ids, $config, $structure ) {
|
75 |
// $info = [];
|
76 |
+
// Logs::write_log( $config->filename, 'Getting Products Information.' );
|
77 |
+
// Logs::write_log( $config->filename, 'Validating Product' );
|
78 |
//
|
79 |
// foreach ( $ids as $id ) {
|
80 |
// $product = wc_get_product( $id );
|
88 |
//
|
89 |
// return FileFactory::GetData( $info, $config );
|
90 |
// }
|
91 |
+
|
92 |
/**
|
93 |
* @param $product
|
94 |
* @param $structure
|
118 |
//
|
119 |
// return $value;
|
120 |
// }
|
121 |
+
}
|
V5/Filter/AdvanceFilter.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
namespace CTXFeed\V5\Filter;
|
3 |
-
use CTXFeed\V5\
|
4 |
use CTXFeed\V5\Helper\ProductHelper;
|
5 |
use WC_Product;
|
6 |
|
@@ -131,4 +131,4 @@ class AdvanceFilter {
|
|
131 |
}
|
132 |
|
133 |
|
134 |
-
}
|
1 |
<?php
|
2 |
namespace CTXFeed\V5\Filter;
|
3 |
+
use CTXFeed\V5\Utility\Config;
|
4 |
use CTXFeed\V5\Helper\ProductHelper;
|
5 |
use WC_Product;
|
6 |
|
131 |
}
|
132 |
|
133 |
|
134 |
+
}
|
V5/Filter/Filter.php
CHANGED
@@ -59,7 +59,7 @@ class Filter {
|
|
59 |
return apply_filters( 'ctx_filter_product_before_include', $exclude, $this->product, $this->config );
|
60 |
}
|
61 |
|
62 |
-
|
63 |
$id = $this->product->get_id();
|
64 |
if ( $this->product->is_type( 'variation' ) ) {
|
65 |
$id = $this->product->get_parent_id();
|
@@ -91,4 +91,4 @@ class Filter {
|
|
91 |
|
92 |
return $exclude;
|
93 |
}
|
94 |
-
}
|
59 |
return apply_filters( 'ctx_filter_product_before_include', $exclude, $this->product, $this->config );
|
60 |
}
|
61 |
|
62 |
+
private function exclude_variation( $exclude ) {
|
63 |
$id = $this->product->get_id();
|
64 |
if ( $this->product->is_type( 'variation' ) ) {
|
65 |
$id = $this->product->get_parent_id();
|
91 |
|
92 |
return $exclude;
|
93 |
}
|
94 |
+
}
|
V5/Filter/ValidateProduct.php
CHANGED
@@ -25,31 +25,31 @@ class ValidateProduct {
|
|
25 |
// Skip for invalid products
|
26 |
if ( ! is_object( $product ) ) {
|
27 |
$valid = false;
|
28 |
-
Logs::
|
29 |
}
|
30 |
-
|
31 |
// Skip orphaned variation.
|
32 |
if ( $product->is_type( 'variation' ) && ! $product->get_parent_id() ) {
|
33 |
$valid = false;
|
34 |
-
Logs::
|
35 |
}
|
36 |
-
|
37 |
// Skip for invisible products.
|
38 |
if ( ! $product->is_visible() ) {
|
39 |
$valid = false;
|
40 |
-
Logs::
|
41 |
}
|
42 |
-
|
43 |
// Remove unsupported product types.
|
44 |
if ( ! in_array( $product->get_type(), CommonHelper::supported_product_types(), true ) ) {
|
45 |
$valid = false;
|
46 |
-
Logs::
|
47 |
}
|
48 |
-
|
49 |
/**
|
50 |
* This filter hook should return false to exclude the product from feed.
|
51 |
*/
|
52 |
-
|
53 |
return apply_filters( 'ctx_validate_product_before_include', $valid, $product, $config );
|
54 |
}
|
55 |
-
}
|
25 |
// Skip for invalid products
|
26 |
if ( ! is_object( $product ) ) {
|
27 |
$valid = false;
|
28 |
+
Logs::write_log( $config->filename, sprintf( 'Product with id: %s is not a valid object', $id ) );
|
29 |
}
|
30 |
+
|
31 |
// Skip orphaned variation.
|
32 |
if ( $product->is_type( 'variation' ) && ! $product->get_parent_id() ) {
|
33 |
$valid = false;
|
34 |
+
Logs::write_log( $config->filename, sprintf( 'Orphaned Variation %s is skipped', $id ) );
|
35 |
}
|
36 |
+
|
37 |
// Skip for invisible products.
|
38 |
if ( ! $product->is_visible() ) {
|
39 |
$valid = false;
|
40 |
+
Logs::write_log( $config->filename, sprintf( 'Product with id: %s is not visible on catalog.', $id ) );
|
41 |
}
|
42 |
+
|
43 |
// Remove unsupported product types.
|
44 |
if ( ! in_array( $product->get_type(), CommonHelper::supported_product_types(), true ) ) {
|
45 |
$valid = false;
|
46 |
+
Logs::write_log( $config->filename, sprintf( 'Product with id: %s is a %s product. Product Type %s is not supported.', $id, $product->get_type(), $product->get_type() ) );
|
47 |
}
|
48 |
+
|
49 |
/**
|
50 |
* This filter hook should return false to exclude the product from feed.
|
51 |
*/
|
52 |
+
|
53 |
return apply_filters( 'ctx_validate_product_before_include', $valid, $product, $config );
|
54 |
}
|
55 |
+
}
|
V5/Merchant/MerchantAttributesFactory.php
CHANGED
@@ -10,6 +10,8 @@ class MerchantAttributesFactory {
|
|
10 |
return $data;
|
11 |
}
|
12 |
|
|
|
|
|
13 |
if ( in_array( $template, [ 'pinterest', 'adroll', 'smartly.io' ] ) ) {
|
14 |
$template = 'google';
|
15 |
} elseif ( in_array( $template, [ 'connexity', 'shopzilla' ] ) ) {
|
10 |
return $data;
|
11 |
}
|
12 |
|
13 |
+
// Override Merchant Template.
|
14 |
+
|
15 |
if ( in_array( $template, [ 'pinterest', 'adroll', 'smartly.io' ] ) ) {
|
16 |
$template = 'google';
|
17 |
} elseif ( in_array( $template, [ 'connexity', 'shopzilla' ] ) ) {
|
V5/Override/Advance.php
CHANGED
@@ -14,48 +14,48 @@ class Advance {
|
|
14 |
public function __construct() {
|
15 |
add_filter( 'woo_feed_filter_product_attribute', [ $this, 'get_product_variation_attribute' ], 10, 4 );
|
16 |
}
|
17 |
-
|
18 |
/**
|
19 |
* Get Variation attribute values for only in stock variations.
|
20 |
*
|
21 |
-
* @param
|
22 |
-
* @param
|
23 |
-
* @param \WC_Product
|
24 |
-
* @param \CTXFeed\V5\Utility\Config
|
25 |
*
|
26 |
* @return mixed|string
|
27 |
*/
|
28 |
public function get_product_variation_attribute( $value, $attr, $product, $config ) {
|
29 |
//TODO: Make an Option on Filter tab and apply the logic here.
|
30 |
// Also add the option to settings class
|
31 |
-
|
32 |
if ( $config instanceof Config ) {
|
33 |
$outOfStockEnabled = $config->remove_outofstock_product();
|
34 |
} else {
|
35 |
$outOfStockEnabled = $config['is_outOfStock'];
|
36 |
}
|
37 |
-
|
38 |
if ( $outOfStockEnabled && $product->is_type( 'variable' ) && $product->has_child() ) {
|
39 |
$attr = "pa_" . $attr;
|
40 |
$child_ids = $product->get_children();
|
41 |
$variationAttributes = array_keys( $product->get_variation_attributes() );
|
42 |
-
|
43 |
if ( ! in_array( $attr, $variationAttributes, true ) ) {
|
44 |
return $value;
|
45 |
}
|
46 |
-
|
47 |
$newValue = []; //reset the value to concat by child values
|
48 |
foreach ( $child_ids as $id ) {
|
49 |
$child_product = wc_get_product( $id );
|
50 |
$attr_value = $child_product->get_attribute( $attr );
|
51 |
-
|
52 |
if ( ! empty( $attr_value ) && ( $child_product->is_in_stock() || ( $child_product->managing_stock() && 0 < $child_product->get_stock_quantity() ) ) ) {
|
53 |
$newValue [] = $attr_value;
|
54 |
}
|
55 |
}
|
56 |
$value = ! empty( $newValue ) ? implode( ', ', $newValue ) : $value;
|
57 |
}
|
58 |
-
|
59 |
return $value;
|
60 |
}
|
61 |
-
}
|
14 |
public function __construct() {
|
15 |
add_filter( 'woo_feed_filter_product_attribute', [ $this, 'get_product_variation_attribute' ], 10, 4 );
|
16 |
}
|
17 |
+
|
18 |
/**
|
19 |
* Get Variation attribute values for only in stock variations.
|
20 |
*
|
21 |
+
* @param $value
|
22 |
+
* @param $attr
|
23 |
+
* @param \WC_Product|\WC_Product_Variable $product
|
24 |
+
* @param \CTXFeed\V5\Utility\Config $config
|
25 |
*
|
26 |
* @return mixed|string
|
27 |
*/
|
28 |
public function get_product_variation_attribute( $value, $attr, $product, $config ) {
|
29 |
//TODO: Make an Option on Filter tab and apply the logic here.
|
30 |
// Also add the option to settings class
|
31 |
+
|
32 |
if ( $config instanceof Config ) {
|
33 |
$outOfStockEnabled = $config->remove_outofstock_product();
|
34 |
} else {
|
35 |
$outOfStockEnabled = $config['is_outOfStock'];
|
36 |
}
|
37 |
+
|
38 |
if ( $outOfStockEnabled && $product->is_type( 'variable' ) && $product->has_child() ) {
|
39 |
$attr = "pa_" . $attr;
|
40 |
$child_ids = $product->get_children();
|
41 |
$variationAttributes = array_keys( $product->get_variation_attributes() );
|
42 |
+
|
43 |
if ( ! in_array( $attr, $variationAttributes, true ) ) {
|
44 |
return $value;
|
45 |
}
|
46 |
+
|
47 |
$newValue = []; //reset the value to concat by child values
|
48 |
foreach ( $child_ids as $id ) {
|
49 |
$child_product = wc_get_product( $id );
|
50 |
$attr_value = $child_product->get_attribute( $attr );
|
51 |
+
|
52 |
if ( ! empty( $attr_value ) && ( $child_product->is_in_stock() || ( $child_product->managing_stock() && 0 < $child_product->get_stock_quantity() ) ) ) {
|
53 |
$newValue [] = $attr_value;
|
54 |
}
|
55 |
}
|
56 |
$value = ! empty( $newValue ) ? implode( ', ', $newValue ) : $value;
|
57 |
}
|
58 |
+
|
59 |
return $value;
|
60 |
}
|
61 |
+
}
|
V5/Product/ProductFactory.php
CHANGED
@@ -11,7 +11,7 @@ use CTXFeed\V5\Utility\Logs;
|
|
11 |
*
|
12 |
*/
|
13 |
class ProductFactory {
|
14 |
-
|
15 |
/**
|
16 |
* @param $ids
|
17 |
* @param $config
|
@@ -21,22 +21,22 @@ class ProductFactory {
|
|
21 |
*/
|
22 |
public static function get_content( $ids, $config, $structure ) {
|
23 |
$info = [];
|
24 |
-
Logs::
|
25 |
-
Logs::
|
26 |
-
|
27 |
foreach ( $ids as $id ) {
|
28 |
$product = wc_get_product( $id );
|
29 |
-
|
30 |
// Validate Product and add for feed.
|
31 |
if ( ValidateProduct::is_valid( $product, $config, $id ) ) {
|
32 |
$info1 = [];
|
33 |
$info [] = self::get_product_info( $product, $structure, $config, $info1 );
|
34 |
}
|
35 |
}
|
36 |
-
|
37 |
return FileFactory::GetData( $info, $config );
|
38 |
}
|
39 |
-
|
40 |
/**
|
41 |
* @param $product
|
42 |
* @param $structure
|
@@ -59,10 +59,10 @@ class ProductFactory {
|
|
59 |
} else {
|
60 |
return $info;
|
61 |
}
|
62 |
-
|
63 |
return $value;
|
64 |
}
|
65 |
-
|
66 |
/**
|
67 |
* @param $attribute
|
68 |
* @param $product
|
@@ -72,7 +72,7 @@ class ProductFactory {
|
|
72 |
* @return mixed|void
|
73 |
*/
|
74 |
public static function get_csv_attribute_value( $attribute, $product, $config, $merchant_attribute ) {
|
75 |
-
|
76 |
$value = [];
|
77 |
if ( strpos( $attribute, ',' ) ) {
|
78 |
$separator = ',';
|
@@ -84,21 +84,21 @@ class ProductFactory {
|
|
84 |
$value[] = ProductHelper::getAttributeValueByType( $data2, $product, $config, $merchant_attribute );
|
85 |
}
|
86 |
}
|
87 |
-
|
88 |
return implode( $separator, array_filter( $value ) );
|
89 |
}
|
90 |
-
|
91 |
if ( strpos( $attribute, ':' ) ) {
|
92 |
$separator = ':';
|
93 |
$attribute = explode( ':', $attribute );
|
94 |
foreach ( $attribute as $data ) {
|
95 |
$value [] = ProductHelper::getAttributeValueByType( $data, $product, $config );
|
96 |
}
|
97 |
-
|
98 |
return implode( $separator, array_filter( $value ) );
|
99 |
}
|
100 |
-
|
101 |
return ProductHelper::getAttributeValueByType( $attribute, $product, $config );
|
102 |
}
|
103 |
-
|
104 |
-
}
|
11 |
*
|
12 |
*/
|
13 |
class ProductFactory {
|
14 |
+
|
15 |
/**
|
16 |
* @param $ids
|
17 |
* @param $config
|
21 |
*/
|
22 |
public static function get_content( $ids, $config, $structure ) {
|
23 |
$info = [];
|
24 |
+
Logs::write_log( $config->filename, 'Getting Products Information.' );
|
25 |
+
Logs::write_log( $config->filename, 'Validating Product' );
|
26 |
+
|
27 |
foreach ( $ids as $id ) {
|
28 |
$product = wc_get_product( $id );
|
29 |
+
|
30 |
// Validate Product and add for feed.
|
31 |
if ( ValidateProduct::is_valid( $product, $config, $id ) ) {
|
32 |
$info1 = [];
|
33 |
$info [] = self::get_product_info( $product, $structure, $config, $info1 );
|
34 |
}
|
35 |
}
|
36 |
+
|
37 |
return FileFactory::GetData( $info, $config );
|
38 |
}
|
39 |
+
|
40 |
/**
|
41 |
* @param $product
|
42 |
* @param $structure
|
59 |
} else {
|
60 |
return $info;
|
61 |
}
|
62 |
+
|
63 |
return $value;
|
64 |
}
|
65 |
+
|
66 |
/**
|
67 |
* @param $attribute
|
68 |
* @param $product
|
72 |
* @return mixed|void
|
73 |
*/
|
74 |
public static function get_csv_attribute_value( $attribute, $product, $config, $merchant_attribute ) {
|
75 |
+
|
76 |
$value = [];
|
77 |
if ( strpos( $attribute, ',' ) ) {
|
78 |
$separator = ',';
|
84 |
$value[] = ProductHelper::getAttributeValueByType( $data2, $product, $config, $merchant_attribute );
|
85 |
}
|
86 |
}
|
87 |
+
|
88 |
return implode( $separator, array_filter( $value ) );
|
89 |
}
|
90 |
+
|
91 |
if ( strpos( $attribute, ':' ) ) {
|
92 |
$separator = ':';
|
93 |
$attribute = explode( ':', $attribute );
|
94 |
foreach ( $attribute as $data ) {
|
95 |
$value [] = ProductHelper::getAttributeValueByType( $data, $product, $config );
|
96 |
}
|
97 |
+
|
98 |
return implode( $separator, array_filter( $value ) );
|
99 |
}
|
100 |
+
|
101 |
return ProductHelper::getAttributeValueByType( $attribute, $product, $config );
|
102 |
}
|
103 |
+
|
104 |
+
}
|
V5/Utility/CTX_WC_Log_Handler.php
CHANGED
@@ -18,21 +18,21 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
18 |
}
|
19 |
|
20 |
class CTX_WC_Log_Handler extends WC_Log_Handler {
|
21 |
-
|
22 |
/**
|
23 |
* Stores open file handles.
|
24 |
*
|
25 |
* @var array
|
26 |
*/
|
27 |
protected $handles = array();
|
28 |
-
|
29 |
/**
|
30 |
* File size limit for log files in bytes.
|
31 |
*
|
32 |
* @var int
|
33 |
*/
|
34 |
protected $log_size_limit;
|
35 |
-
|
36 |
/**
|
37 |
* Cache logs that could not be written.
|
38 |
*
|
@@ -42,7 +42,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
42 |
* @var array
|
43 |
*/
|
44 |
protected $cached_logs = array();
|
45 |
-
|
46 |
/**
|
47 |
* Constructor for the logger.
|
48 |
*
|
@@ -52,12 +52,12 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
52 |
if ( null === $log_size_limit ) {
|
53 |
$log_size_limit = 5 * 1024 * 1024;
|
54 |
}
|
55 |
-
|
56 |
$this->log_size_limit = apply_filters( 'woo_feed_log_file_size_limit', $log_size_limit );
|
57 |
-
|
58 |
add_action( 'plugins_loaded', array( $this, 'write_cached_logs' ) );
|
59 |
}
|
60 |
-
|
61 |
/**
|
62 |
* Destructor.
|
63 |
*
|
@@ -70,7 +70,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
70 |
}
|
71 |
}
|
72 |
}
|
73 |
-
|
74 |
/**
|
75 |
* Handle a log entry.
|
76 |
*
|
@@ -88,18 +88,18 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
88 |
* @return bool False if value was not handled and true if value was handled.
|
89 |
*/
|
90 |
public function handle( $timestamp, $level, $message, $context ) {
|
91 |
-
|
92 |
if ( isset( $context['source'] ) && $context['source'] ) {
|
93 |
$handle = $context['source'];
|
94 |
} else {
|
95 |
$handle = 'log';
|
96 |
}
|
97 |
-
|
98 |
$entry = self::format_entry( $timestamp, $level, $message, $context );
|
99 |
-
|
100 |
return $this->add( $entry, $handle );
|
101 |
}
|
102 |
-
|
103 |
/**
|
104 |
* Builds a log entry text from timestamp, level and message.
|
105 |
*
|
@@ -111,7 +111,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
111 |
* @return string Formatted log entry.
|
112 |
*/
|
113 |
protected static function format_entry( $timestamp, $level, $message, $context ) {
|
114 |
-
|
115 |
if ( isset( $context['_legacy'] ) && true === $context['_legacy'] ) {
|
116 |
if ( isset( $context['source'] ) && $context['source'] ) {
|
117 |
$handle = $context['source'];
|
@@ -124,10 +124,10 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
124 |
} else {
|
125 |
$entry = parent::format_entry( $timestamp, $level, $message, $context );
|
126 |
}
|
127 |
-
|
128 |
return $entry;
|
129 |
}
|
130 |
-
|
131 |
/**
|
132 |
* Open log file for writing.
|
133 |
*
|
@@ -139,30 +139,30 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
139 |
if ( $this->is_open( $handle ) ) {
|
140 |
return true;
|
141 |
}
|
142 |
-
|
143 |
$file = self::get_log_file_path( $handle );
|
144 |
-
|
145 |
if ( $file ) {
|
146 |
if ( ! file_exists( $file ) ) {
|
147 |
$temp_handle = fopen( $file, 'w+' ); // phpcs:ignore
|
148 |
fclose( $temp_handle ); // phpcs:ignore
|
149 |
-
|
150 |
if ( defined( 'FS_CHMOD_FILE' ) ) {
|
151 |
chmod( $file, FS_CHMOD_FILE ); // phpcs:ignore
|
152 |
}
|
153 |
}
|
154 |
-
|
155 |
$resource = fopen( $file, $mode ); // phpcs:ignore
|
156 |
-
|
157 |
if ( $resource ) {
|
158 |
$this->handles[ $handle ] = $resource;
|
159 |
return true;
|
160 |
}
|
161 |
}
|
162 |
-
|
163 |
return false;
|
164 |
}
|
165 |
-
|
166 |
/**
|
167 |
* Check if a handle is open.
|
168 |
*
|
@@ -172,7 +172,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
172 |
protected function is_open( $handle ) {
|
173 |
return array_key_exists( $handle, $this->handles ) && is_resource( $this->handles[ $handle ] );
|
174 |
}
|
175 |
-
|
176 |
/**
|
177 |
* Close a handle.
|
178 |
*
|
@@ -181,15 +181,15 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
181 |
*/
|
182 |
protected function close( $handle ) {
|
183 |
$result = false;
|
184 |
-
|
185 |
if ( $this->is_open( $handle ) ) {
|
186 |
$result = fclose( $this->handles[ $handle ] ); // phpcs:ignore
|
187 |
unset( $this->handles[ $handle ] );
|
188 |
}
|
189 |
-
|
190 |
return $result;
|
191 |
}
|
192 |
-
|
193 |
/**
|
194 |
* Add a log entry to chosen file.
|
195 |
*
|
@@ -199,9 +199,9 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
199 |
* @return bool True if write was successful.
|
200 |
*/
|
201 |
protected function add( $entry, $handle ) {
|
202 |
-
|
203 |
$result = false;
|
204 |
-
|
205 |
if ( $this->should_rotate( $handle ) ) {
|
206 |
$this->log_rotate( $handle );
|
207 |
}
|
@@ -211,10 +211,10 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
211 |
} else {
|
212 |
$this->cache_log( $entry, $handle );
|
213 |
}
|
214 |
-
|
215 |
return false !== $result;
|
216 |
}
|
217 |
-
|
218 |
/**
|
219 |
* Clear entries from chosen file.
|
220 |
*
|
@@ -224,10 +224,10 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
224 |
*/
|
225 |
public function clear( $handle ) {
|
226 |
$result = false;
|
227 |
-
|
228 |
// Close the file if it's already open.
|
229 |
$this->close( $handle );
|
230 |
-
|
231 |
/**
|
232 |
* $this->open( $handle, 'w' ) == Open the file for writing only. Place the file pointer at
|
233 |
* the beginning of the file, and truncate the file to zero length.
|
@@ -235,12 +235,12 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
235 |
if ( $this->open( $handle, 'w' ) && is_resource( $this->handles[ $handle ] ) ) {
|
236 |
$result = true;
|
237 |
}
|
238 |
-
|
239 |
do_action( 'woo_feed_log_clear', $handle );
|
240 |
-
|
241 |
return $result;
|
242 |
}
|
243 |
-
|
244 |
/**
|
245 |
* Remove/delete the chosen file.
|
246 |
*
|
@@ -262,7 +262,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
262 |
}
|
263 |
return $removed;
|
264 |
}
|
265 |
-
|
266 |
/**
|
267 |
* Check if log file should be rotated.
|
268 |
*
|
@@ -286,7 +286,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
286 |
return false;
|
287 |
}
|
288 |
}
|
289 |
-
|
290 |
/**
|
291 |
* Rotate log files.
|
292 |
*
|
@@ -307,7 +307,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
307 |
}
|
308 |
$this->increment_log_infix( $handle );
|
309 |
}
|
310 |
-
|
311 |
/**
|
312 |
* Increment a log file suffix.
|
313 |
*
|
@@ -323,22 +323,22 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
323 |
$suffix = '.' . $number;
|
324 |
$next_suffix = '.' . ( $number + 1 );
|
325 |
}
|
326 |
-
|
327 |
$rename_from = self::get_log_file_path( "{$handle}{$suffix}" );
|
328 |
$rename_to = self::get_log_file_path( "{$handle}{$next_suffix}" );
|
329 |
-
|
330 |
if ( $this->is_open( $rename_from ) ) {
|
331 |
$this->close( $rename_from );
|
332 |
}
|
333 |
-
|
334 |
if ( is_writable( $rename_from ) ) { // phpcs:ignore
|
335 |
return rename( $rename_from, $rename_to ); // phpcs:ignore
|
336 |
} else {
|
337 |
return false;
|
338 |
}
|
339 |
-
|
340 |
}
|
341 |
-
|
342 |
/**
|
343 |
* Get a log file path.
|
344 |
*
|
@@ -348,12 +348,13 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
348 |
public static function get_log_file_path( $handle ) {
|
349 |
if ( function_exists( 'wp_hash' ) ) {
|
350 |
return trailingslashit( WOO_FEED_LOG_DIR ) . self::get_log_file_name( $handle );
|
351 |
-
} else {
|
352 |
-
woo_feed_doing_it_wrong( __METHOD__, __( 'This method should not be called before plugins_loaded.', 'woo-feed' ), '3.0' );
|
353 |
-
return false;
|
354 |
}
|
|
|
|
|
|
|
|
|
355 |
}
|
356 |
-
|
357 |
/**
|
358 |
* Get a log file name.
|
359 |
*
|
@@ -373,7 +374,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
373 |
return false;
|
374 |
}
|
375 |
}
|
376 |
-
|
377 |
/**
|
378 |
* Cache log to write later.
|
379 |
*
|
@@ -386,7 +387,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
386 |
'handle' => $handle,
|
387 |
);
|
388 |
}
|
389 |
-
|
390 |
/**
|
391 |
* Write cached logs.
|
392 |
*/
|
@@ -395,7 +396,7 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
395 |
$this->add( $log['entry'], $log['handle'] );
|
396 |
}
|
397 |
}
|
398 |
-
|
399 |
/**
|
400 |
* Delete all logs older than a defined timestamp.
|
401 |
*
|
@@ -406,18 +407,18 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
406 |
if ( ! $timestamp ) {
|
407 |
return;
|
408 |
}
|
409 |
-
|
410 |
$log_files = self::get_log_files();
|
411 |
-
|
412 |
foreach ( $log_files as $log_file ) {
|
413 |
$last_modified = filemtime( trailingslashit( WOO_FEED_LOG_DIR ) . $log_file );
|
414 |
-
|
415 |
if ( $last_modified < $timestamp ) {
|
416 |
unlink( trailingslashit( WOO_FEED_LOG_DIR ) . $log_file ); // phpcs:ignore
|
417 |
}
|
418 |
}
|
419 |
}
|
420 |
-
|
421 |
/**
|
422 |
* Get all log files in the log directory.
|
423 |
*
|
@@ -427,17 +428,18 @@ class CTX_WC_Log_Handler extends WC_Log_Handler {
|
|
427 |
public static function get_log_files() {
|
428 |
$files = scandir( WOO_FEED_LOG_DIR );
|
429 |
$result = array();
|
430 |
-
|
431 |
if ( ! empty( $files ) && is_array( $files ) ) {
|
432 |
-
foreach ( $files as $
|
433 |
-
if ( ! in_array( $
|
434 |
-
|
435 |
-
|
|
|
|
|
436 |
}
|
437 |
-
}
|
438 |
}
|
439 |
}
|
440 |
-
|
441 |
return $result;
|
442 |
}
|
443 |
}
|
18 |
}
|
19 |
|
20 |
class CTX_WC_Log_Handler extends WC_Log_Handler {
|
21 |
+
|
22 |
/**
|
23 |
* Stores open file handles.
|
24 |
*
|
25 |
* @var array
|
26 |
*/
|
27 |
protected $handles = array();
|
28 |
+
|
29 |
/**
|
30 |
* File size limit for log files in bytes.
|
31 |
*
|
32 |
* @var int
|
33 |
*/
|
34 |
protected $log_size_limit;
|
35 |
+
|
36 |
/**
|
37 |
* Cache logs that could not be written.
|
38 |
*
|
42 |
* @var array
|
43 |
*/
|
44 |
protected $cached_logs = array();
|
45 |
+
|
46 |
/**
|
47 |
* Constructor for the logger.
|
48 |
*
|
52 |
if ( null === $log_size_limit ) {
|
53 |
$log_size_limit = 5 * 1024 * 1024;
|
54 |
}
|
55 |
+
|
56 |
$this->log_size_limit = apply_filters( 'woo_feed_log_file_size_limit', $log_size_limit );
|
57 |
+
|
58 |
add_action( 'plugins_loaded', array( $this, 'write_cached_logs' ) );
|
59 |
}
|
60 |
+
|
61 |
/**
|
62 |
* Destructor.
|
63 |
*
|
70 |
}
|
71 |
}
|
72 |
}
|
73 |
+
|
74 |
/**
|
75 |
* Handle a log entry.
|
76 |
*
|
88 |
* @return bool False if value was not handled and true if value was handled.
|
89 |
*/
|
90 |
public function handle( $timestamp, $level, $message, $context ) {
|
91 |
+
|
92 |
if ( isset( $context['source'] ) && $context['source'] ) {
|
93 |
$handle = $context['source'];
|
94 |
} else {
|
95 |
$handle = 'log';
|
96 |
}
|
97 |
+
|
98 |
$entry = self::format_entry( $timestamp, $level, $message, $context );
|
99 |
+
|
100 |
return $this->add( $entry, $handle );
|
101 |
}
|
102 |
+
|
103 |
/**
|
104 |
* Builds a log entry text from timestamp, level and message.
|
105 |
*
|
111 |
* @return string Formatted log entry.
|
112 |
*/
|
113 |
protected static function format_entry( $timestamp, $level, $message, $context ) {
|
114 |
+
|
115 |
if ( isset( $context['_legacy'] ) && true === $context['_legacy'] ) {
|
116 |
if ( isset( $context['source'] ) && $context['source'] ) {
|
117 |
$handle = $context['source'];
|
124 |
} else {
|
125 |
$entry = parent::format_entry( $timestamp, $level, $message, $context );
|
126 |
}
|
127 |
+
|
128 |
return $entry;
|
129 |
}
|
130 |
+
|
131 |
/**
|
132 |
* Open log file for writing.
|
133 |
*
|
139 |
if ( $this->is_open( $handle ) ) {
|
140 |
return true;
|
141 |
}
|
142 |
+
|
143 |
$file = self::get_log_file_path( $handle );
|
144 |
+
|
145 |
if ( $file ) {
|
146 |
if ( ! file_exists( $file ) ) {
|
147 |
$temp_handle = fopen( $file, 'w+' ); // phpcs:ignore
|
148 |
fclose( $temp_handle ); // phpcs:ignore
|
149 |
+
|
150 |
if ( defined( 'FS_CHMOD_FILE' ) ) {
|
151 |
chmod( $file, FS_CHMOD_FILE ); // phpcs:ignore
|
152 |
}
|
153 |
}
|
154 |
+
|
155 |
$resource = fopen( $file, $mode ); // phpcs:ignore
|
156 |
+
|
157 |
if ( $resource ) {
|
158 |
$this->handles[ $handle ] = $resource;
|
159 |
return true;
|
160 |
}
|
161 |
}
|
162 |
+
|
163 |
return false;
|
164 |
}
|
165 |
+
|
166 |
/**
|
167 |
* Check if a handle is open.
|
168 |
*
|
172 |
protected function is_open( $handle ) {
|
173 |
return array_key_exists( $handle, $this->handles ) && is_resource( $this->handles[ $handle ] );
|
174 |
}
|
175 |
+
|
176 |
/**
|
177 |
* Close a handle.
|
178 |
*
|
181 |
*/
|
182 |
protected function close( $handle ) {
|
183 |
$result = false;
|
184 |
+
|
185 |
if ( $this->is_open( $handle ) ) {
|
186 |
$result = fclose( $this->handles[ $handle ] ); // phpcs:ignore
|
187 |
unset( $this->handles[ $handle ] );
|
188 |
}
|
189 |
+
|
190 |
return $result;
|
191 |
}
|
192 |
+
|
193 |
/**
|
194 |
* Add a log entry to chosen file.
|
195 |
*
|
199 |
* @return bool True if write was successful.
|
200 |
*/
|
201 |
protected function add( $entry, $handle ) {
|
202 |
+
|
203 |
$result = false;
|
204 |
+
|
205 |
if ( $this->should_rotate( $handle ) ) {
|
206 |
$this->log_rotate( $handle );
|
207 |
}
|
211 |
} else {
|
212 |
$this->cache_log( $entry, $handle );
|
213 |
}
|
214 |
+
|
215 |
return false !== $result;
|
216 |
}
|
217 |
+
|
218 |
/**
|
219 |
* Clear entries from chosen file.
|
220 |
*
|
224 |
*/
|
225 |
public function clear( $handle ) {
|
226 |
$result = false;
|
227 |
+
|
228 |
// Close the file if it's already open.
|
229 |
$this->close( $handle );
|
230 |
+
|
231 |
/**
|
232 |
* $this->open( $handle, 'w' ) == Open the file for writing only. Place the file pointer at
|
233 |
* the beginning of the file, and truncate the file to zero length.
|
235 |
if ( $this->open( $handle, 'w' ) && is_resource( $this->handles[ $handle ] ) ) {
|
236 |
$result = true;
|
237 |
}
|
238 |
+
|
239 |
do_action( 'woo_feed_log_clear', $handle );
|
240 |
+
|
241 |
return $result;
|
242 |
}
|
243 |
+
|
244 |
/**
|
245 |
* Remove/delete the chosen file.
|
246 |
*
|
262 |
}
|
263 |
return $removed;
|
264 |
}
|
265 |
+
|
266 |
/**
|
267 |
* Check if log file should be rotated.
|
268 |
*
|
286 |
return false;
|
287 |
}
|
288 |
}
|
289 |
+
|
290 |
/**
|
291 |
* Rotate log files.
|
292 |
*
|
307 |
}
|
308 |
$this->increment_log_infix( $handle );
|
309 |
}
|
310 |
+
|
311 |
/**
|
312 |
* Increment a log file suffix.
|
313 |
*
|
323 |
$suffix = '.' . $number;
|
324 |
$next_suffix = '.' . ( $number + 1 );
|
325 |
}
|
326 |
+
|
327 |
$rename_from = self::get_log_file_path( "{$handle}{$suffix}" );
|
328 |
$rename_to = self::get_log_file_path( "{$handle}{$next_suffix}" );
|
329 |
+
|
330 |
if ( $this->is_open( $rename_from ) ) {
|
331 |
$this->close( $rename_from );
|
332 |
}
|
333 |
+
|
334 |
if ( is_writable( $rename_from ) ) { // phpcs:ignore
|
335 |
return rename( $rename_from, $rename_to ); // phpcs:ignore
|
336 |
} else {
|
337 |
return false;
|
338 |
}
|
339 |
+
|
340 |
}
|
341 |
+
|
342 |
/**
|
343 |
* Get a log file path.
|
344 |
*
|
348 |
public static function get_log_file_path( $handle ) {
|
349 |
if ( function_exists( 'wp_hash' ) ) {
|
350 |
return trailingslashit( WOO_FEED_LOG_DIR ) . self::get_log_file_name( $handle );
|
|
|
|
|
|
|
351 |
}
|
352 |
+
|
353 |
+
woo_feed_doing_it_wrong( __METHOD__, __( 'This method should not be called before plugins_loaded.', 'woo-feed' ), '3.0' );
|
354 |
+
|
355 |
+
return false;
|
356 |
}
|
357 |
+
|
358 |
/**
|
359 |
* Get a log file name.
|
360 |
*
|
374 |
return false;
|
375 |
}
|
376 |
}
|
377 |
+
|
378 |
/**
|
379 |
* Cache log to write later.
|
380 |
*
|
387 |
'handle' => $handle,
|
388 |
);
|
389 |
}
|
390 |
+
|
391 |
/**
|
392 |
* Write cached logs.
|
393 |
*/
|
396 |
$this->add( $log['entry'], $log['handle'] );
|
397 |
}
|
398 |
}
|
399 |
+
|
400 |
/**
|
401 |
* Delete all logs older than a defined timestamp.
|
402 |
*
|
407 |
if ( ! $timestamp ) {
|
408 |
return;
|
409 |
}
|
410 |
+
|
411 |
$log_files = self::get_log_files();
|
412 |
+
|
413 |
foreach ( $log_files as $log_file ) {
|
414 |
$last_modified = filemtime( trailingslashit( WOO_FEED_LOG_DIR ) . $log_file );
|
415 |
+
|
416 |
if ( $last_modified < $timestamp ) {
|
417 |
unlink( trailingslashit( WOO_FEED_LOG_DIR ) . $log_file ); // phpcs:ignore
|
418 |
}
|
419 |
}
|
420 |
}
|
421 |
+
|
422 |
/**
|
423 |
* Get all log files in the log directory.
|
424 |
*
|
428 |
public static function get_log_files() {
|
429 |
$files = scandir( WOO_FEED_LOG_DIR );
|
430 |
$result = array();
|
431 |
+
|
432 |
if ( ! empty( $files ) && is_array( $files ) ) {
|
433 |
+
foreach ( $files as $file ) {
|
434 |
+
if ( ! in_array( $file, array(
|
435 |
+
'.',
|
436 |
+
'..'
|
437 |
+
), true ) && ! is_dir( $file ) && strpos( $file, '.log' ) !== false ) {
|
438 |
+
$result[ sanitize_title( $file ) ] = $file;
|
439 |
}
|
|
|
440 |
}
|
441 |
}
|
442 |
+
|
443 |
return $result;
|
444 |
}
|
445 |
}
|
V5/Utility/Config.php
CHANGED
@@ -9,7 +9,7 @@ class Config {
|
|
9 |
* @var array|bool
|
10 |
*/
|
11 |
private $feedInfo;
|
12 |
-
|
13 |
/**
|
14 |
* @var array|bool
|
15 |
*/
|
@@ -18,34 +18,34 @@ class Config {
|
|
18 |
* @var mixed
|
19 |
*/
|
20 |
private $context;
|
21 |
-
|
22 |
/**
|
23 |
* @param array $feedInfo
|
24 |
* @param string $context
|
25 |
*/
|
26 |
public function __construct( $feedInfo, $context = 'view' ) {
|
27 |
-
|
28 |
$this->feedInfo = $feedInfo;
|
29 |
$this->context = $context;
|
30 |
$this->config = isset( $this->feedInfo['feedrules'] ) ? $this->feedInfo['feedrules'] : $this->feedInfo;
|
31 |
}
|
32 |
-
|
33 |
public function __isset( $name ) {
|
34 |
if ( isset( $this->config[ $name ] ) ) {
|
35 |
return true;
|
36 |
}
|
37 |
-
|
38 |
return false;
|
39 |
}
|
40 |
-
|
41 |
public function __get( $name ) {
|
42 |
return $this->config[ $name ];
|
43 |
}
|
44 |
-
|
45 |
public function __set( $name, $value ) {
|
46 |
return $this->config[ $name ] = $value;
|
47 |
}
|
48 |
-
|
49 |
/**
|
50 |
*
|
51 |
* @return array
|
@@ -53,7 +53,7 @@ class Config {
|
|
53 |
public function get_feed_rules() {
|
54 |
return isset( $this->feedInfo['feedrules'] ) ? $this->feedInfo['feedrules'] : $this->feedInfo;
|
55 |
}
|
56 |
-
|
57 |
/**
|
58 |
* Get Feed name.
|
59 |
*
|
@@ -62,7 +62,7 @@ class Config {
|
|
62 |
public function get_feed_id() {
|
63 |
return $this->config['feed_id'];
|
64 |
}
|
65 |
-
|
66 |
/**
|
67 |
* Get Feed name.
|
68 |
*
|
@@ -71,8 +71,25 @@ class Config {
|
|
71 |
public function get_feed_name() {
|
72 |
return $this->config['filename'];
|
73 |
}
|
74 |
-
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
/**
|
77 |
* Get Feed Template.
|
78 |
*
|
@@ -81,7 +98,7 @@ class Config {
|
|
81 |
public function get_feed_template() {
|
82 |
return $this->config['provider'];
|
83 |
}
|
84 |
-
|
85 |
/**
|
86 |
* Get Feed Language.
|
87 |
*
|
@@ -90,7 +107,7 @@ class Config {
|
|
90 |
public function get_feed_language() {
|
91 |
return $this->config['feedLanguage'];
|
92 |
}
|
93 |
-
|
94 |
/**
|
95 |
* Get Feed Currency.
|
96 |
*
|
@@ -100,7 +117,7 @@ class Config {
|
|
100 |
if ( $this->config['feedCurrency'] ) {
|
101 |
return $this->config['feedCurrency'];
|
102 |
}
|
103 |
-
|
104 |
$attributes = $this->config['attributes'];
|
105 |
$priceAttrs = [ 'price', 'current_price', 'price_with_tax', 'current_price_with_tax' ];
|
106 |
foreach ( $priceAttrs as $price_attr ) {
|
@@ -109,10 +126,10 @@ class Config {
|
|
109 |
break;
|
110 |
}
|
111 |
}
|
112 |
-
|
113 |
return isset( $this->config['suffix'][ $key ] ) ? $this->config['suffix'][ $key ] : get_woocommerce_currency();
|
114 |
}
|
115 |
-
|
116 |
/**
|
117 |
* Get Feed Country.
|
118 |
*
|
@@ -121,7 +138,7 @@ class Config {
|
|
121 |
public function get_feed_country() {
|
122 |
return $this->config['feed_country'];
|
123 |
}
|
124 |
-
|
125 |
/**
|
126 |
* Get Feed File Type.
|
127 |
*
|
@@ -130,27 +147,27 @@ class Config {
|
|
130 |
public function get_feed_file_type() {
|
131 |
return $this->config['feedType'];
|
132 |
}
|
133 |
-
|
134 |
/**
|
135 |
* Get Feed File Type.
|
136 |
*
|
137 |
* @return string
|
138 |
*/
|
139 |
public function get_delimiter() {
|
140 |
-
|
141 |
if ( 'tsv' === $this->config['feedType'] ) {
|
142 |
$this->config['delimiter'] = "\t";
|
143 |
-
|
144 |
return $this->config['delimiter'];
|
145 |
}
|
146 |
-
|
147 |
if ( ' ' === $this->config['delimiter'] ) {
|
148 |
$this->config['delimiter'] = "\s";
|
149 |
}
|
150 |
-
|
151 |
return $this->config['delimiter'];
|
152 |
}
|
153 |
-
|
154 |
/**
|
155 |
* Get Feed File Type.
|
156 |
*
|
@@ -160,10 +177,10 @@ class Config {
|
|
160 |
if ( in_array( $this->config['enclosure'], [ 'double', 'single' ] ) ) {
|
161 |
return ( 'double' === $this->config['enclosure'] ) ? '"' : "'";
|
162 |
}
|
163 |
-
|
164 |
return '';
|
165 |
}
|
166 |
-
|
167 |
/**
|
168 |
* Get Feed items wrapper.
|
169 |
*
|
@@ -172,7 +189,7 @@ class Config {
|
|
172 |
public function get_feed_items_wrapper() {
|
173 |
return $this->config['itemsWrapper'];
|
174 |
}
|
175 |
-
|
176 |
/**
|
177 |
* Get Feed item wrapper.
|
178 |
*
|
@@ -181,7 +198,7 @@ class Config {
|
|
181 |
public function get_feed_item_wrapper() {
|
182 |
return $this->config['itemWrapper'];
|
183 |
}
|
184 |
-
|
185 |
/**
|
186 |
* Get Feed Extra Header.
|
187 |
*
|
@@ -190,16 +207,16 @@ class Config {
|
|
190 |
public function get_feed_extra_header() {
|
191 |
return $this->config['extraHeader'];
|
192 |
}
|
193 |
-
|
194 |
/**
|
195 |
* Get Feed Shipping Country.
|
196 |
*
|
197 |
* @return string
|
198 |
*/
|
199 |
public function get_shipping_country() {
|
200 |
-
return $this->config['
|
201 |
}
|
202 |
-
|
203 |
/**
|
204 |
* Get Feed Tax Country.
|
205 |
*
|
@@ -208,7 +225,7 @@ class Config {
|
|
208 |
public function get_tax_country() {
|
209 |
return $this->config['tax_country'];
|
210 |
}
|
211 |
-
|
212 |
/**
|
213 |
* Get String Replace config
|
214 |
*
|
@@ -218,10 +235,10 @@ class Config {
|
|
218 |
if ( ! empty( $this->config['str_replace'] ) ) {
|
219 |
return $this->config['str_replace'];
|
220 |
}
|
221 |
-
|
222 |
return false;
|
223 |
}
|
224 |
-
|
225 |
/**
|
226 |
* Get URL campaign parameter.
|
227 |
*
|
@@ -230,7 +247,7 @@ class Config {
|
|
230 |
public function get_campaign_parameters() {
|
231 |
return $this->config['campaign_parameters'];
|
232 |
}
|
233 |
-
|
234 |
/**
|
235 |
* Status to remove backorder products.
|
236 |
*
|
@@ -239,7 +256,7 @@ class Config {
|
|
239 |
public function remove_backorder_product() {
|
240 |
return 'y' === $this->config['is_backorder'];
|
241 |
}
|
242 |
-
|
243 |
/**
|
244 |
* Status to remove outofstock products.
|
245 |
*
|
@@ -248,7 +265,7 @@ class Config {
|
|
248 |
public function remove_outofstock_product() {
|
249 |
return 'y' === $this->config['is_outOfStock'];
|
250 |
}
|
251 |
-
|
252 |
/**
|
253 |
* Status to remove empty description products.
|
254 |
*
|
@@ -257,7 +274,7 @@ class Config {
|
|
257 |
public function remove_empty_description() {
|
258 |
return 'y' === $this->config['is_outOfStock'];
|
259 |
}
|
260 |
-
|
261 |
/**
|
262 |
* Status to remove empty image products.
|
263 |
*
|
@@ -266,7 +283,7 @@ class Config {
|
|
266 |
public function remove_empty_image() {
|
267 |
return 'y' === $this->config['is_emptyImage'];
|
268 |
}
|
269 |
-
|
270 |
/**
|
271 |
* Status to remove empty price products.
|
272 |
*
|
@@ -275,7 +292,7 @@ class Config {
|
|
275 |
public function remove_empty_price() {
|
276 |
return 'y' === $this->config['is_emptyPrice'];
|
277 |
}
|
278 |
-
|
279 |
/**
|
280 |
* Get Price Number Format.
|
281 |
*
|
@@ -288,82 +305,82 @@ class Config {
|
|
288 |
'thousand_separator' => apply_filters( 'ctx_feed_number_format_thousand_separator', $this->config['thousand_separator'], $this->config ),
|
289 |
'decimals' => apply_filters( 'ctx_feed_number_format_decimals', $this->config['decimals'], $this->config ),
|
290 |
];
|
291 |
-
|
292 |
return apply_filters( 'ctx_feed_number_format', $number_format, $this->config );
|
293 |
}
|
294 |
-
|
295 |
return false;
|
296 |
}
|
297 |
-
|
298 |
/**
|
299 |
* Get product Ids to exclude.
|
300 |
*
|
301 |
* @return array|bool
|
302 |
*/
|
303 |
public function get_products_to_exclude() {
|
304 |
-
|
305 |
if ( isset( $this->config['filter_mode'] ) ) {
|
306 |
$mode = $this->config['filter_mode'];
|
307 |
if ( 'exclude' === $mode['product_ids'] && ! empty( $this->config['product_ids'] ) ) {
|
308 |
return explode( ',', $this->config['product_ids'] );
|
309 |
}
|
310 |
}
|
311 |
-
|
312 |
return false;
|
313 |
}
|
314 |
-
|
315 |
/**
|
316 |
* Get product Ids to include.
|
317 |
*
|
318 |
* @return array|bool
|
319 |
*/
|
320 |
public function get_products_to_include() {
|
321 |
-
|
322 |
if ( isset( $this->config['filter_mode'] ) ) {
|
323 |
$mode = $this->config['filter_mode'];
|
324 |
if ( 'include' === $mode['product_ids'] && ! empty( $this->config['product_ids'] ) ) {
|
325 |
return explode( ',', $this->config['product_ids'] );
|
326 |
}
|
327 |
}
|
328 |
-
|
329 |
return false;
|
330 |
}
|
331 |
-
|
332 |
/**
|
333 |
* Get categories to exclude.
|
334 |
*
|
335 |
* @return mixed
|
336 |
*/
|
337 |
public function get_categories_to_exclude() {
|
338 |
-
|
339 |
if ( isset( $this->config['filter_mode'] ) ) {
|
340 |
$mode = $this->config['filter_mode'];
|
341 |
if ( 'exclude' === $mode['categories'] && ! empty( $this->config['categories'] ) ) {
|
342 |
return $this->config['categories'];
|
343 |
}
|
344 |
}
|
345 |
-
|
346 |
return false;
|
347 |
}
|
348 |
-
|
349 |
/**
|
350 |
* Get categories to include.
|
351 |
*
|
352 |
* @return mixed
|
353 |
*/
|
354 |
public function get_categories_to_include() {
|
355 |
-
|
356 |
if ( isset( $this->config['filter_mode'] ) ) {
|
357 |
$mode = $this->config['filter_mode'];
|
358 |
if ( 'include' === $mode['categories'] && ! empty( $this->config['categories'] ) ) {
|
359 |
return $this->config['categories'];
|
360 |
}
|
361 |
}
|
362 |
-
|
363 |
return false;
|
364 |
}
|
365 |
-
|
366 |
-
|
367 |
/**
|
368 |
* Get post statuses to include.
|
369 |
*
|
@@ -376,39 +393,39 @@ class Config {
|
|
376 |
if ( 'include' === $mode['post_status'] ) {
|
377 |
return $this->config['post_status'];
|
378 |
}
|
379 |
-
|
380 |
if ( 'exclude' === $mode['post_status'] ) {
|
381 |
return array_merge( array_diff( $status, $this->config['post_status'] ), array_diff( $status, $this->config['post_status'] ) );
|
382 |
}
|
383 |
}
|
384 |
-
|
385 |
return false;
|
386 |
}
|
387 |
-
|
388 |
/**
|
389 |
* Get post statuses to include.
|
390 |
*
|
391 |
* @return string|bool
|
392 |
*/
|
393 |
public function get_vendors_to_include() {
|
394 |
-
|
395 |
if ( isset( $this->config['vendors'] ) && ! empty( $this->config['vendors'] ) ) {
|
396 |
return implode( ',', $this->config['vendors'] );
|
397 |
}
|
398 |
-
|
399 |
return false;
|
400 |
}
|
401 |
-
|
402 |
/**
|
403 |
* Get post statuses to include.
|
404 |
*
|
405 |
* @return bool
|
406 |
*/
|
407 |
public function get_variations_to_include() {
|
408 |
-
|
409 |
return isset( $this->config['is_variations'] ) && in_array( $this->config['is_variations'], [ 'y', 'both' ] );
|
410 |
}
|
411 |
-
|
412 |
/**
|
413 |
* Get Advance Filter Config.
|
414 |
*
|
@@ -423,10 +440,10 @@ class Config {
|
|
423 |
"concatType" => $this->config['concatType'],
|
424 |
];
|
425 |
}
|
426 |
-
|
427 |
return false;
|
428 |
}
|
429 |
-
|
430 |
/**
|
431 |
* Get FTP Config.
|
432 |
*
|
@@ -437,7 +454,7 @@ class Config {
|
|
437 |
if ( '0' === $this->config['ftpenabled'] ) {
|
438 |
return false;
|
439 |
}
|
440 |
-
|
441 |
return [
|
442 |
"type" => $this->config['ftporsftp'],
|
443 |
"host" => $this->config['ftphost'],
|
@@ -448,10 +465,10 @@ class Config {
|
|
448 |
"mode" => $this->config['ftpmode'],
|
449 |
];
|
450 |
}
|
451 |
-
|
452 |
return false;
|
453 |
}
|
454 |
-
|
455 |
/**
|
456 |
* Get variable product config.
|
457 |
*
|
@@ -465,10 +482,10 @@ class Config {
|
|
465 |
"variable_quantity" => $this->config['variable_quantity'],
|
466 |
];
|
467 |
}
|
468 |
-
|
469 |
return false;
|
470 |
}
|
471 |
-
|
472 |
/**
|
473 |
* Get composite product price settings.
|
474 |
*
|
@@ -477,7 +494,7 @@ class Config {
|
|
477 |
public function get_composite_price_type() {
|
478 |
return $this->config['composite_price'];
|
479 |
}
|
480 |
-
|
481 |
/**
|
482 |
* Get Feed Info
|
483 |
*
|
@@ -486,7 +503,7 @@ class Config {
|
|
486 |
public function get_feed() {
|
487 |
return $this->feedInfo;
|
488 |
}
|
489 |
-
|
490 |
/**
|
491 |
* Get Feed Info
|
492 |
*
|
@@ -497,7 +514,7 @@ class Config {
|
|
497 |
public function set_feed( $feedInfo ) {
|
498 |
return $this->feedInfo = $feedInfo;
|
499 |
}
|
500 |
-
|
501 |
/**
|
502 |
* Get Feed Configuration.
|
503 |
*
|
@@ -507,10 +524,10 @@ class Config {
|
|
507 |
if ( $this->feedInfo ) {
|
508 |
return ( new Config( $this->feedInfo['feedrules'] ) );
|
509 |
}
|
510 |
-
|
511 |
return false;
|
512 |
}
|
513 |
-
|
514 |
/**
|
515 |
* Get Feed Configuration.
|
516 |
*
|
@@ -519,7 +536,7 @@ class Config {
|
|
519 |
public function get_config() {
|
520 |
return $this->config;
|
521 |
}
|
522 |
-
|
523 |
/**
|
524 |
* Set Feed Configuration.
|
525 |
*
|
@@ -530,7 +547,7 @@ class Config {
|
|
530 |
// if ( empty( $this->config ) ) {
|
531 |
// $this->config = array();
|
532 |
// }
|
533 |
-
|
534 |
$defaults = array(
|
535 |
'provider' => '',
|
536 |
'feed_country' => '',
|
@@ -577,6 +594,8 @@ class Config {
|
|
577 |
'is_emptyImage' => 'n',
|
578 |
'is_emptyPrice' => 'n',
|
579 |
'product_visibility' => 0,
|
|
|
|
|
580 |
// include hidden ? 1 yes 0 no
|
581 |
'outofstock_visibility' => 0,
|
582 |
// override wc global option for out-of-stock product hidden from catalog? 1 yes 0 no
|
@@ -585,7 +604,7 @@ class Config {
|
|
585 |
'thousand_separator' => stripslashes( apply_filters( 'wc_get_price_thousand_separator', get_option( 'woocommerce_price_thousand_sep' ) ) ),
|
586 |
'decimals' => absint( apply_filters( 'wc_get_price_decimals', get_option( 'woocommerce_price_num_decimals', 2 ) ) ),
|
587 |
);
|
588 |
-
|
589 |
$this->config = wp_parse_args( $config, $defaults );
|
590 |
$this->config['filter_mode'] = wp_parse_args(
|
591 |
$this->config['filter_mode'],
|
@@ -595,7 +614,7 @@ class Config {
|
|
595 |
'post_status' => 'include',
|
596 |
)
|
597 |
);
|
598 |
-
|
599 |
$this->config['campaign_parameters'] = wp_parse_args(
|
600 |
$this->config['campaign_parameters'],
|
601 |
array(
|
@@ -606,7 +625,7 @@ class Config {
|
|
606 |
'utm_content' => '',
|
607 |
)
|
608 |
);
|
609 |
-
|
610 |
if ( ! empty( $this->config['provider'] ) && is_string( $this->config['provider'] ) ) {
|
611 |
/**
|
612 |
* filter parsed rules for provider
|
@@ -618,7 +637,7 @@ class Config {
|
|
618 |
*/
|
619 |
$this->config = apply_filters( "woo_feed_{$this->config['provider']}_parsed_rules", $this->config, $this->context );
|
620 |
}
|
621 |
-
|
622 |
/**
|
623 |
* filter parsed rules
|
624 |
*
|
@@ -628,10 +647,10 @@ class Config {
|
|
628 |
* @since 3.3.7 $provider parameter removed
|
629 |
*/
|
630 |
$this->config = apply_filters( 'woo_feed_parsed_rules', $this->config, $this->context );
|
631 |
-
|
632 |
return $this->config;
|
633 |
}
|
634 |
-
|
635 |
/**
|
636 |
* Get Feed URL.
|
637 |
*
|
@@ -641,10 +660,10 @@ class Config {
|
|
641 |
if ( isset( $this->feedInfo['url'] ) ) {
|
642 |
return $this->feedInfo['url'];
|
643 |
}
|
644 |
-
|
645 |
return false;
|
646 |
}
|
647 |
-
|
648 |
/**
|
649 |
* Get Feed File Path.
|
650 |
*
|
@@ -654,26 +673,15 @@ class Config {
|
|
654 |
$upload_dir = wp_get_upload_dir();
|
655 |
$url = $this->get_feed_url();
|
656 |
$file_name = basename( $url );
|
657 |
-
|
658 |
if ( ! isset( $this->config['provider'] ) && ! isset( $this->config['feedType'] ) ) {
|
659 |
return false;
|
660 |
}
|
661 |
-
|
662 |
return sprintf( '%s/woo-feed/%s/%s/%s', $upload_dir['basedir'], $this->config['provider'], $this->config['feedType'], $file_name );
|
663 |
}
|
664 |
-
|
665 |
-
|
666 |
-
* Get Feed name.
|
667 |
-
*
|
668 |
-
* @return string
|
669 |
-
*/
|
670 |
-
public function get_feed_file_name() {
|
671 |
-
$path = $this->get_feed_path();
|
672 |
-
|
673 |
-
return basename( $path );
|
674 |
-
}
|
675 |
-
|
676 |
-
|
677 |
/**
|
678 |
* Get Feed Status.
|
679 |
*
|
@@ -683,7 +691,7 @@ class Config {
|
|
683 |
if ( isset( $this->feedInfo['status'] ) ) {
|
684 |
return $this->feedInfo['status'];
|
685 |
}
|
686 |
-
|
687 |
return false;
|
688 |
}
|
689 |
-
}
|
9 |
* @var array|bool
|
10 |
*/
|
11 |
private $feedInfo;
|
12 |
+
|
13 |
/**
|
14 |
* @var array|bool
|
15 |
*/
|
18 |
* @var mixed
|
19 |
*/
|
20 |
private $context;
|
21 |
+
|
22 |
/**
|
23 |
* @param array $feedInfo
|
24 |
* @param string $context
|
25 |
*/
|
26 |
public function __construct( $feedInfo, $context = 'view' ) {
|
27 |
+
|
28 |
$this->feedInfo = $feedInfo;
|
29 |
$this->context = $context;
|
30 |
$this->config = isset( $this->feedInfo['feedrules'] ) ? $this->feedInfo['feedrules'] : $this->feedInfo;
|
31 |
}
|
32 |
+
|
33 |
public function __isset( $name ) {
|
34 |
if ( isset( $this->config[ $name ] ) ) {
|
35 |
return true;
|
36 |
}
|
37 |
+
|
38 |
return false;
|
39 |
}
|
40 |
+
|
41 |
public function __get( $name ) {
|
42 |
return $this->config[ $name ];
|
43 |
}
|
44 |
+
|
45 |
public function __set( $name, $value ) {
|
46 |
return $this->config[ $name ] = $value;
|
47 |
}
|
48 |
+
|
49 |
/**
|
50 |
*
|
51 |
* @return array
|
53 |
public function get_feed_rules() {
|
54 |
return isset( $this->feedInfo['feedrules'] ) ? $this->feedInfo['feedrules'] : $this->feedInfo;
|
55 |
}
|
56 |
+
|
57 |
/**
|
58 |
* Get Feed name.
|
59 |
*
|
62 |
public function get_feed_id() {
|
63 |
return $this->config['feed_id'];
|
64 |
}
|
65 |
+
|
66 |
/**
|
67 |
* Get Feed name.
|
68 |
*
|
71 |
public function get_feed_name() {
|
72 |
return $this->config['filename'];
|
73 |
}
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Get Feed file name.
|
77 |
+
*
|
78 |
+
* @return string
|
79 |
+
*/
|
80 |
+
public function get_feed_file_name( $array = false ) {
|
81 |
+
if ( isset( $this->feedInfo['url'] ) ) {
|
82 |
+
$fileInfo = pathinfo( $this->feedInfo['url'] );
|
83 |
+
if ( $array ) {
|
84 |
+
return $fileInfo;
|
85 |
+
}
|
86 |
+
|
87 |
+
return $fileInfo['basename'];
|
88 |
+
}
|
89 |
+
|
90 |
+
return false;
|
91 |
+
}
|
92 |
+
|
93 |
/**
|
94 |
* Get Feed Template.
|
95 |
*
|
98 |
public function get_feed_template() {
|
99 |
return $this->config['provider'];
|
100 |
}
|
101 |
+
|
102 |
/**
|
103 |
* Get Feed Language.
|
104 |
*
|
107 |
public function get_feed_language() {
|
108 |
return $this->config['feedLanguage'];
|
109 |
}
|
110 |
+
|
111 |
/**
|
112 |
* Get Feed Currency.
|
113 |
*
|
117 |
if ( $this->config['feedCurrency'] ) {
|
118 |
return $this->config['feedCurrency'];
|
119 |
}
|
120 |
+
|
121 |
$attributes = $this->config['attributes'];
|
122 |
$priceAttrs = [ 'price', 'current_price', 'price_with_tax', 'current_price_with_tax' ];
|
123 |
foreach ( $priceAttrs as $price_attr ) {
|
126 |
break;
|
127 |
}
|
128 |
}
|
129 |
+
|
130 |
return isset( $this->config['suffix'][ $key ] ) ? $this->config['suffix'][ $key ] : get_woocommerce_currency();
|
131 |
}
|
132 |
+
|
133 |
/**
|
134 |
* Get Feed Country.
|
135 |
*
|
138 |
public function get_feed_country() {
|
139 |
return $this->config['feed_country'];
|
140 |
}
|
141 |
+
|
142 |
/**
|
143 |
* Get Feed File Type.
|
144 |
*
|
147 |
public function get_feed_file_type() {
|
148 |
return $this->config['feedType'];
|
149 |
}
|
150 |
+
|
151 |
/**
|
152 |
* Get Feed File Type.
|
153 |
*
|
154 |
* @return string
|
155 |
*/
|
156 |
public function get_delimiter() {
|
157 |
+
|
158 |
if ( 'tsv' === $this->config['feedType'] ) {
|
159 |
$this->config['delimiter'] = "\t";
|
160 |
+
|
161 |
return $this->config['delimiter'];
|
162 |
}
|
163 |
+
|
164 |
if ( ' ' === $this->config['delimiter'] ) {
|
165 |
$this->config['delimiter'] = "\s";
|
166 |
}
|
167 |
+
|
168 |
return $this->config['delimiter'];
|
169 |
}
|
170 |
+
|
171 |
/**
|
172 |
* Get Feed File Type.
|
173 |
*
|
177 |
if ( in_array( $this->config['enclosure'], [ 'double', 'single' ] ) ) {
|
178 |
return ( 'double' === $this->config['enclosure'] ) ? '"' : "'";
|
179 |
}
|
180 |
+
|
181 |
return '';
|
182 |
}
|
183 |
+
|
184 |
/**
|
185 |
* Get Feed items wrapper.
|
186 |
*
|
189 |
public function get_feed_items_wrapper() {
|
190 |
return $this->config['itemsWrapper'];
|
191 |
}
|
192 |
+
|
193 |
/**
|
194 |
* Get Feed item wrapper.
|
195 |
*
|
198 |
public function get_feed_item_wrapper() {
|
199 |
return $this->config['itemWrapper'];
|
200 |
}
|
201 |
+
|
202 |
/**
|
203 |
* Get Feed Extra Header.
|
204 |
*
|
207 |
public function get_feed_extra_header() {
|
208 |
return $this->config['extraHeader'];
|
209 |
}
|
210 |
+
|
211 |
/**
|
212 |
* Get Feed Shipping Country.
|
213 |
*
|
214 |
* @return string
|
215 |
*/
|
216 |
public function get_shipping_country() {
|
217 |
+
return $this->config['shipping_country'];
|
218 |
}
|
219 |
+
|
220 |
/**
|
221 |
* Get Feed Tax Country.
|
222 |
*
|
225 |
public function get_tax_country() {
|
226 |
return $this->config['tax_country'];
|
227 |
}
|
228 |
+
|
229 |
/**
|
230 |
* Get String Replace config
|
231 |
*
|
235 |
if ( ! empty( $this->config['str_replace'] ) ) {
|
236 |
return $this->config['str_replace'];
|
237 |
}
|
238 |
+
|
239 |
return false;
|
240 |
}
|
241 |
+
|
242 |
/**
|
243 |
* Get URL campaign parameter.
|
244 |
*
|
247 |
public function get_campaign_parameters() {
|
248 |
return $this->config['campaign_parameters'];
|
249 |
}
|
250 |
+
|
251 |
/**
|
252 |
* Status to remove backorder products.
|
253 |
*
|
256 |
public function remove_backorder_product() {
|
257 |
return 'y' === $this->config['is_backorder'];
|
258 |
}
|
259 |
+
|
260 |
/**
|
261 |
* Status to remove outofstock products.
|
262 |
*
|
265 |
public function remove_outofstock_product() {
|
266 |
return 'y' === $this->config['is_outOfStock'];
|
267 |
}
|
268 |
+
|
269 |
/**
|
270 |
* Status to remove empty description products.
|
271 |
*
|
274 |
public function remove_empty_description() {
|
275 |
return 'y' === $this->config['is_outOfStock'];
|
276 |
}
|
277 |
+
|
278 |
/**
|
279 |
* Status to remove empty image products.
|
280 |
*
|
283 |
public function remove_empty_image() {
|
284 |
return 'y' === $this->config['is_emptyImage'];
|
285 |
}
|
286 |
+
|
287 |
/**
|
288 |
* Status to remove empty price products.
|
289 |
*
|
292 |
public function remove_empty_price() {
|
293 |
return 'y' === $this->config['is_emptyPrice'];
|
294 |
}
|
295 |
+
|
296 |
/**
|
297 |
* Get Price Number Format.
|
298 |
*
|
305 |
'thousand_separator' => apply_filters( 'ctx_feed_number_format_thousand_separator', $this->config['thousand_separator'], $this->config ),
|
306 |
'decimals' => apply_filters( 'ctx_feed_number_format_decimals', $this->config['decimals'], $this->config ),
|
307 |
];
|
308 |
+
|
309 |
return apply_filters( 'ctx_feed_number_format', $number_format, $this->config );
|
310 |
}
|
311 |
+
|
312 |
return false;
|
313 |
}
|
314 |
+
|
315 |
/**
|
316 |
* Get product Ids to exclude.
|
317 |
*
|
318 |
* @return array|bool
|
319 |
*/
|
320 |
public function get_products_to_exclude() {
|
321 |
+
|
322 |
if ( isset( $this->config['filter_mode'] ) ) {
|
323 |
$mode = $this->config['filter_mode'];
|
324 |
if ( 'exclude' === $mode['product_ids'] && ! empty( $this->config['product_ids'] ) ) {
|
325 |
return explode( ',', $this->config['product_ids'] );
|
326 |
}
|
327 |
}
|
328 |
+
|
329 |
return false;
|
330 |
}
|
331 |
+
|
332 |
/**
|
333 |
* Get product Ids to include.
|
334 |
*
|
335 |
* @return array|bool
|
336 |
*/
|
337 |
public function get_products_to_include() {
|
338 |
+
|
339 |
if ( isset( $this->config['filter_mode'] ) ) {
|
340 |
$mode = $this->config['filter_mode'];
|
341 |
if ( 'include' === $mode['product_ids'] && ! empty( $this->config['product_ids'] ) ) {
|
342 |
return explode( ',', $this->config['product_ids'] );
|
343 |
}
|
344 |
}
|
345 |
+
|
346 |
return false;
|
347 |
}
|
348 |
+
|
349 |
/**
|
350 |
* Get categories to exclude.
|
351 |
*
|
352 |
* @return mixed
|
353 |
*/
|
354 |
public function get_categories_to_exclude() {
|
355 |
+
|
356 |
if ( isset( $this->config['filter_mode'] ) ) {
|
357 |
$mode = $this->config['filter_mode'];
|
358 |
if ( 'exclude' === $mode['categories'] && ! empty( $this->config['categories'] ) ) {
|
359 |
return $this->config['categories'];
|
360 |
}
|
361 |
}
|
362 |
+
|
363 |
return false;
|
364 |
}
|
365 |
+
|
366 |
/**
|
367 |
* Get categories to include.
|
368 |
*
|
369 |
* @return mixed
|
370 |
*/
|
371 |
public function get_categories_to_include() {
|
372 |
+
|
373 |
if ( isset( $this->config['filter_mode'] ) ) {
|
374 |
$mode = $this->config['filter_mode'];
|
375 |
if ( 'include' === $mode['categories'] && ! empty( $this->config['categories'] ) ) {
|
376 |
return $this->config['categories'];
|
377 |
}
|
378 |
}
|
379 |
+
|
380 |
return false;
|
381 |
}
|
382 |
+
|
383 |
+
|
384 |
/**
|
385 |
* Get post statuses to include.
|
386 |
*
|
393 |
if ( 'include' === $mode['post_status'] ) {
|
394 |
return $this->config['post_status'];
|
395 |
}
|
396 |
+
|
397 |
if ( 'exclude' === $mode['post_status'] ) {
|
398 |
return array_merge( array_diff( $status, $this->config['post_status'] ), array_diff( $status, $this->config['post_status'] ) );
|
399 |
}
|
400 |
}
|
401 |
+
|
402 |
return false;
|
403 |
}
|
404 |
+
|
405 |
/**
|
406 |
* Get post statuses to include.
|
407 |
*
|
408 |
* @return string|bool
|
409 |
*/
|
410 |
public function get_vendors_to_include() {
|
411 |
+
|
412 |
if ( isset( $this->config['vendors'] ) && ! empty( $this->config['vendors'] ) ) {
|
413 |
return implode( ',', $this->config['vendors'] );
|
414 |
}
|
415 |
+
|
416 |
return false;
|
417 |
}
|
418 |
+
|
419 |
/**
|
420 |
* Get post statuses to include.
|
421 |
*
|
422 |
* @return bool
|
423 |
*/
|
424 |
public function get_variations_to_include() {
|
425 |
+
|
426 |
return isset( $this->config['is_variations'] ) && in_array( $this->config['is_variations'], [ 'y', 'both' ] );
|
427 |
}
|
428 |
+
|
429 |
/**
|
430 |
* Get Advance Filter Config.
|
431 |
*
|
440 |
"concatType" => $this->config['concatType'],
|
441 |
];
|
442 |
}
|
443 |
+
|
444 |
return false;
|
445 |
}
|
446 |
+
|
447 |
/**
|
448 |
* Get FTP Config.
|
449 |
*
|
454 |
if ( '0' === $this->config['ftpenabled'] ) {
|
455 |
return false;
|
456 |
}
|
457 |
+
|
458 |
return [
|
459 |
"type" => $this->config['ftporsftp'],
|
460 |
"host" => $this->config['ftphost'],
|
465 |
"mode" => $this->config['ftpmode'],
|
466 |
];
|
467 |
}
|
468 |
+
|
469 |
return false;
|
470 |
}
|
471 |
+
|
472 |
/**
|
473 |
* Get variable product config.
|
474 |
*
|
482 |
"variable_quantity" => $this->config['variable_quantity'],
|
483 |
];
|
484 |
}
|
485 |
+
|
486 |
return false;
|
487 |
}
|
488 |
+
|
489 |
/**
|
490 |
* Get composite product price settings.
|
491 |
*
|
494 |
public function get_composite_price_type() {
|
495 |
return $this->config['composite_price'];
|
496 |
}
|
497 |
+
|
498 |
/**
|
499 |
* Get Feed Info
|
500 |
*
|
503 |
public function get_feed() {
|
504 |
return $this->feedInfo;
|
505 |
}
|
506 |
+
|
507 |
/**
|
508 |
* Get Feed Info
|
509 |
*
|
514 |
public function set_feed( $feedInfo ) {
|
515 |
return $this->feedInfo = $feedInfo;
|
516 |
}
|
517 |
+
|
518 |
/**
|
519 |
* Get Feed Configuration.
|
520 |
*
|
524 |
if ( $this->feedInfo ) {
|
525 |
return ( new Config( $this->feedInfo['feedrules'] ) );
|
526 |
}
|
527 |
+
|
528 |
return false;
|
529 |
}
|
530 |
+
|
531 |
/**
|
532 |
* Get Feed Configuration.
|
533 |
*
|
536 |
public function get_config() {
|
537 |
return $this->config;
|
538 |
}
|
539 |
+
|
540 |
/**
|
541 |
* Set Feed Configuration.
|
542 |
*
|
547 |
// if ( empty( $this->config ) ) {
|
548 |
// $this->config = array();
|
549 |
// }
|
550 |
+
|
551 |
$defaults = array(
|
552 |
'provider' => '',
|
553 |
'feed_country' => '',
|
594 |
'is_emptyImage' => 'n',
|
595 |
'is_emptyPrice' => 'n',
|
596 |
'product_visibility' => 0,
|
597 |
+
'shipping_country' => '',
|
598 |
+
'tax_country' => '',
|
599 |
// include hidden ? 1 yes 0 no
|
600 |
'outofstock_visibility' => 0,
|
601 |
// override wc global option for out-of-stock product hidden from catalog? 1 yes 0 no
|
604 |
'thousand_separator' => stripslashes( apply_filters( 'wc_get_price_thousand_separator', get_option( 'woocommerce_price_thousand_sep' ) ) ),
|
605 |
'decimals' => absint( apply_filters( 'wc_get_price_decimals', get_option( 'woocommerce_price_num_decimals', 2 ) ) ),
|
606 |
);
|
607 |
+
|
608 |
$this->config = wp_parse_args( $config, $defaults );
|
609 |
$this->config['filter_mode'] = wp_parse_args(
|
610 |
$this->config['filter_mode'],
|
614 |
'post_status' => 'include',
|
615 |
)
|
616 |
);
|
617 |
+
|
618 |
$this->config['campaign_parameters'] = wp_parse_args(
|
619 |
$this->config['campaign_parameters'],
|
620 |
array(
|
625 |
'utm_content' => '',
|
626 |
)
|
627 |
);
|
628 |
+
|
629 |
if ( ! empty( $this->config['provider'] ) && is_string( $this->config['provider'] ) ) {
|
630 |
/**
|
631 |
* filter parsed rules for provider
|
637 |
*/
|
638 |
$this->config = apply_filters( "woo_feed_{$this->config['provider']}_parsed_rules", $this->config, $this->context );
|
639 |
}
|
640 |
+
|
641 |
/**
|
642 |
* filter parsed rules
|
643 |
*
|
647 |
* @since 3.3.7 $provider parameter removed
|
648 |
*/
|
649 |
$this->config = apply_filters( 'woo_feed_parsed_rules', $this->config, $this->context );
|
650 |
+
|
651 |
return $this->config;
|
652 |
}
|
653 |
+
|
654 |
/**
|
655 |
* Get Feed URL.
|
656 |
*
|
660 |
if ( isset( $this->feedInfo['url'] ) ) {
|
661 |
return $this->feedInfo['url'];
|
662 |
}
|
663 |
+
|
664 |
return false;
|
665 |
}
|
666 |
+
|
667 |
/**
|
668 |
* Get Feed File Path.
|
669 |
*
|
673 |
$upload_dir = wp_get_upload_dir();
|
674 |
$url = $this->get_feed_url();
|
675 |
$file_name = basename( $url );
|
676 |
+
|
677 |
if ( ! isset( $this->config['provider'] ) && ! isset( $this->config['feedType'] ) ) {
|
678 |
return false;
|
679 |
}
|
680 |
+
|
681 |
return sprintf( '%s/woo-feed/%s/%s/%s', $upload_dir['basedir'], $this->config['provider'], $this->config['feedType'], $file_name );
|
682 |
}
|
683 |
+
|
684 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
685 |
/**
|
686 |
* Get Feed Status.
|
687 |
*
|
691 |
if ( isset( $this->feedInfo['status'] ) ) {
|
692 |
return $this->feedInfo['status'];
|
693 |
}
|
694 |
+
|
695 |
return false;
|
696 |
}
|
697 |
+
}
|
V5/Utility/DropDown.php
CHANGED
@@ -1,69 +1,89 @@
|
|
1 |
<?php
|
2 |
-
namespace CTXFeed\V5\Utility;
|
3 |
-
class DropDown
|
4 |
-
{
|
5 |
-
/**
|
6 |
-
* Create Dropdown from array.
|
7 |
-
*
|
8 |
-
* @param array $data Array to Create Dropdown.
|
9 |
-
* @param string $cache_key Cache Key if dropdown need to be cached or get the dropdown from cache.
|
10 |
-
* @param string $selected Option value that need to be selected.
|
11 |
-
* @param bool $cache Cache Status.
|
12 |
-
*
|
13 |
-
* @return array|false|mixed|string|string[]
|
14 |
-
*/
|
15 |
-
public static function Create($data, $selected = null, $cache_key = null, $cache = false)
|
16 |
-
{
|
17 |
-
//TODO: Option to set disabled options.
|
18 |
-
|
19 |
-
$options = "";
|
20 |
-
if (empty($data) || !is_array($data)) {
|
21 |
-
return "<option class='disabled' selected>No data available.</option>";
|
22 |
-
}
|
23 |
-
|
24 |
-
// If $cache true then return cached data.
|
25 |
-
if ($cache) {
|
26 |
-
$options = Cache::get($cache_key);
|
27 |
-
if ($options) {
|
28 |
-
if ($selected !== '') {
|
29 |
-
$selected = esc_attr($selected);
|
30 |
-
$options = str_replace("value=\"{$selected}\"", "value=\"{$selected}\" selected", $options);
|
31 |
-
}
|
32 |
-
return $options;
|
33 |
-
}
|
34 |
-
}
|
35 |
-
|
36 |
-
// Create Cache.
|
37 |
-
if (array_key_exists('optionGroup', $data) && array_key_exists('option', $data)) {
|
38 |
-
foreach ($data as $value) {
|
39 |
-
if (isset($value['optionGroup'])) {
|
40 |
-
$options .= "<optgroup label=\"{$value['optionGroup']}\">";
|
41 |
-
}
|
42 |
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
|
67 |
-
|
68 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
}
|
1 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
+
namespace CTXFeed\V5\Utility;
|
4 |
+
class DropDown {
|
5 |
+
/**
|
6 |
+
* @var string $options Hold Options
|
7 |
+
*/
|
8 |
+
private static $options;
|
9 |
+
|
10 |
+
public function __construct() {
|
11 |
+
self::$options = '';
|
12 |
+
}
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Create Dropdown from array.
|
16 |
+
*
|
17 |
+
* @param array $data Array to Create Dropdown.
|
18 |
+
* @param string $cache_key Cache Key if dropdown need to be cached or get the dropdown from cache.
|
19 |
+
* @param string|array $selected Option value that need to be selected.
|
20 |
+
* @param bool $cache Cache Status.
|
21 |
+
*
|
22 |
+
* @return array|false|mixed|string|string[]
|
23 |
+
*/
|
24 |
+
public static function Create( $data, $selected, $cache_key = null, $cache = false ) {
|
25 |
+
//TODO: Option to set disabled options.
|
26 |
+
|
27 |
+
self::$options = "";
|
28 |
+
|
29 |
+
if ( empty( $data ) || ! is_array( $data ) ) {
|
30 |
+
return "<option class='disabled' selected>No data available.</option>";
|
31 |
+
}
|
32 |
+
|
33 |
+
// If $cache true then return cached data.
|
34 |
+
if ( $cache ) {
|
35 |
+
self::$options = Cache::get( $cache_key );
|
36 |
+
if ( self::$options ) {
|
37 |
+
if ( $selected !== '' && is_string( $selected ) ) {
|
38 |
+
$selected = esc_attr( $selected );
|
39 |
+
self::$options = str_replace( "value=\"$selected\"", "value=\"$selected\" selected", self::$options );
|
40 |
+
} elseif ( $selected !== '' && is_array( $selected ) ) {
|
41 |
+
foreach ( $selected as $selectedValue ) {
|
42 |
+
$selectedValue = esc_attr( $selectedValue );
|
43 |
+
self::$options = str_replace( "value=\"$selectedValue\"", "value=\"$selectedValue\" selected", self::$options );
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
return self::$options;
|
48 |
+
}
|
49 |
+
}
|
50 |
|
51 |
+
if ( count($data) !== count($data, COUNT_RECURSIVE) ) {
|
52 |
+
|
53 |
+
foreach ( $data as $value ) {
|
54 |
+
if ( isset( $value['optionGroup'] ) ) {
|
55 |
+
self::$options .= "<optgroup label=\"{$value['optionGroup']}\">";
|
56 |
+
}
|
57 |
+
|
58 |
+
if ( isset( $value['options'] ) && ! empty( $value['options'] ) ) {
|
59 |
+
foreach ( $value['options'] as $optionKey => $option ) {
|
60 |
+
self::$options .= sprintf( '<option value="%s">%s</option>', $optionKey, $option );
|
61 |
+
}
|
62 |
+
|
63 |
+
self::$options .= isset( $value['optionGroup'] ) ? '</optgroup>' : '';
|
64 |
+
}
|
65 |
+
}
|
66 |
+
} else {
|
67 |
+
foreach ( $data as $optionKey => $option ) {
|
68 |
+
self::$options .= sprintf( '<option value="%s">%s</option>', $optionKey, $option );
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
+
// If $cache true then set cache.
|
73 |
+
if ( $cache ) {
|
74 |
+
Cache::set( $cache_key, self::$options );
|
75 |
+
}
|
76 |
+
|
77 |
+
if ( $selected !== '' && is_string( $selected ) ) {
|
78 |
+
$selected = esc_attr( $selected );
|
79 |
+
self::$options = str_replace( "value=\"$selected\"", "value=\"$selected\" selected", self::$options );
|
80 |
+
} elseif ( $selected !== '' && is_array( $selected ) ) {
|
81 |
+
foreach ( $selected as $selectedValue ) {
|
82 |
+
$selectedValue = esc_attr( $selectedValue );
|
83 |
+
self::$options = str_replace( "value=\"$selectedValue\"", "value=\"$selectedValue\" selected", self::$options );
|
84 |
+
}
|
85 |
+
}
|
86 |
+
|
87 |
+
return self::$options;
|
88 |
+
}
|
89 |
}
|
V5/Utility/Logs.php
CHANGED
@@ -4,6 +4,7 @@ namespace CTXFeed\V5\Utility;
|
|
4 |
|
5 |
use Exception;
|
6 |
use WC_Logger;
|
|
|
7 |
|
8 |
/**
|
9 |
* Log Helper Functions
|
@@ -12,37 +13,37 @@ use WC_Logger;
|
|
12 |
* @subpackage CTX_WC_Log_Handler
|
13 |
* @since WooFeed 3.3.0
|
14 |
* @version 1.0.0
|
15 |
-
* @author
|
16 |
* @copyright WebAppick
|
17 |
*/
|
18 |
class Logs {
|
19 |
-
|
20 |
private static $is_debug_enabled;
|
21 |
-
|
22 |
public function __construct() {
|
23 |
self::$is_debug_enabled = woo_feed_get_options( 'enable_error_debugging', false ) === 'on';
|
24 |
-
|
25 |
}
|
26 |
-
|
27 |
public static function get_logger() {
|
28 |
if ( ! class_exists( CTX_WC_Log_Handler::class ) ) {
|
29 |
return false;
|
30 |
}
|
31 |
-
|
32 |
static $logger = null;
|
33 |
if ( $logger instanceof \WC_Logger ) {
|
34 |
return $logger;
|
35 |
}
|
36 |
-
|
37 |
if ( ! class_exists( 'WC_Logger' ) ) {
|
38 |
return $logger;
|
39 |
}
|
40 |
-
|
41 |
-
|
42 |
return new WC_Logger( [ new CTX_WC_Log_Handler() ] );
|
43 |
}
|
44 |
-
|
45 |
-
|
46 |
/**
|
47 |
* Write message to log file.
|
48 |
* Write log message if debugging is enabled
|
@@ -68,7 +69,7 @@ class Logs {
|
|
68 |
*/
|
69 |
public static function write_log( $source, $message, $level = 'debug', $data = null, $force_log = true, $wc_log = false ) {
|
70 |
if ( true === $force_log || woo_feed_is_debugging_enabled() ) {
|
71 |
-
|
72 |
if ( ! in_array( $level, [
|
73 |
'emergency',
|
74 |
'alert',
|
@@ -91,13 +92,13 @@ class Logs {
|
|
91 |
} else {
|
92 |
$context['data'] = $data;
|
93 |
}
|
94 |
-
|
95 |
$loggers = [ self::get_logger() ];
|
96 |
if ( true === $wc_log && function_exists( 'wc_get_logger' ) ) {
|
97 |
$loggers[] = wc_get_logger();
|
98 |
}
|
99 |
-
|
100 |
-
|
101 |
foreach ( $loggers as $logger ) {
|
102 |
if ( is_callable( [ $logger, $level ] ) ) {
|
103 |
$logger->$level( $message . PHP_EOL, $context );
|
@@ -105,7 +106,7 @@ class Logs {
|
|
105 |
}
|
106 |
}
|
107 |
}
|
108 |
-
|
109 |
/**
|
110 |
* Log Fatal Errors in both wc-logs and woo-feed/logs
|
111 |
*
|
@@ -115,9 +116,9 @@ class Logs {
|
|
115 |
public static function write_fatal_log( $message, $data = null ) {
|
116 |
// woocommerce use 'fatal-errors' as log handler...
|
117 |
// make no conflicts with woocommerce fatal-errors logs
|
118 |
-
self::write_log( '
|
119 |
}
|
120 |
-
|
121 |
/**
|
122 |
* Log Fatal Errors in both wc-logs and woo-feed/logs
|
123 |
*
|
@@ -127,9 +128,9 @@ class Logs {
|
|
127 |
public static function write_debug_log( $message, $data = null ) {
|
128 |
// woocommerce use 'fatal-errors' as log handler...
|
129 |
// make no conflicts with woocommerce fatal-errors logs
|
130 |
-
self::write_log( '
|
131 |
}
|
132 |
-
|
133 |
/**
|
134 |
* Delete Log file by source or handle name
|
135 |
*
|
@@ -142,9 +143,9 @@ class Logs {
|
|
142 |
if ( ! class_exists( "CTX_WC_Log_Handler" ) ) {
|
143 |
return false;
|
144 |
}
|
145 |
-
|
146 |
try {
|
147 |
-
if ( '
|
148 |
// fatal error are also logged in wc-logs dir.
|
149 |
if ( class_exists( 'WC_Log_Handler_File', false ) ) {
|
150 |
$log_handler = new WC_Log_Handler_File();
|
@@ -156,10 +157,10 @@ class Logs {
|
|
156 |
} catch ( Exception $e ) {
|
157 |
return false;
|
158 |
}
|
159 |
-
|
160 |
return false;
|
161 |
}
|
162 |
-
|
163 |
/**
|
164 |
* Delete all log files.
|
165 |
*
|
@@ -167,30 +168,16 @@ class Logs {
|
|
167 |
*/
|
168 |
public static function delete_all_logs() {
|
169 |
// delete the fatal error log
|
170 |
-
self::delete_log( '
|
171 |
// get all logs
|
172 |
$logs = CTX_WC_Log_Handler::get_log_files();
|
173 |
foreach ( $logs as $log ) {
|
174 |
self::delete_log( $log, true );
|
175 |
}
|
176 |
}
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
*
|
181 |
-
* @param string $feed_name Feed name, will be use for log file name.
|
182 |
-
* @param string $message Log message.
|
183 |
-
* @param mixed $data Extra data for the log handler.
|
184 |
-
* @param bool $force_log ignore debugging settings
|
185 |
-
*
|
186 |
-
* @return void
|
187 |
-
* @since 3.2.1
|
188 |
-
*
|
189 |
-
*/
|
190 |
-
public static function log_feed_process( $feed_name, $message, $data = null, $force_log = false ) {
|
191 |
-
self::write_log( $feed_name, $message, 'debug', $data, $force_log, false );
|
192 |
-
}
|
193 |
-
|
194 |
/**
|
195 |
* Trigger logging cleanup using the logging class.
|
196 |
*
|
@@ -202,7 +189,7 @@ class Logs {
|
|
202 |
$logger->clear_expired_logs();
|
203 |
}
|
204 |
}
|
205 |
-
|
206 |
-
|
207 |
}
|
208 |
// End of file logs class.
|
4 |
|
5 |
use Exception;
|
6 |
use WC_Logger;
|
7 |
+
use CTXFeed\V5\Utility\CTX_WC_Log_Handler;
|
8 |
|
9 |
/**
|
10 |
* Log Helper Functions
|
13 |
* @subpackage CTX_WC_Log_Handler
|
14 |
* @since WooFeed 3.3.0
|
15 |
* @version 1.0.0
|
16 |
+
* @author Ohidul Islam <wahid0003@gmail.com>
|
17 |
* @copyright WebAppick
|
18 |
*/
|
19 |
class Logs {
|
20 |
+
|
21 |
private static $is_debug_enabled;
|
22 |
+
|
23 |
public function __construct() {
|
24 |
self::$is_debug_enabled = woo_feed_get_options( 'enable_error_debugging', false ) === 'on';
|
25 |
+
|
26 |
}
|
27 |
+
|
28 |
public static function get_logger() {
|
29 |
if ( ! class_exists( CTX_WC_Log_Handler::class ) ) {
|
30 |
return false;
|
31 |
}
|
32 |
+
|
33 |
static $logger = null;
|
34 |
if ( $logger instanceof \WC_Logger ) {
|
35 |
return $logger;
|
36 |
}
|
37 |
+
|
38 |
if ( ! class_exists( 'WC_Logger' ) ) {
|
39 |
return $logger;
|
40 |
}
|
41 |
+
|
42 |
+
|
43 |
return new WC_Logger( [ new CTX_WC_Log_Handler() ] );
|
44 |
}
|
45 |
+
|
46 |
+
|
47 |
/**
|
48 |
* Write message to log file.
|
49 |
* Write log message if debugging is enabled
|
69 |
*/
|
70 |
public static function write_log( $source, $message, $level = 'debug', $data = null, $force_log = true, $wc_log = false ) {
|
71 |
if ( true === $force_log || woo_feed_is_debugging_enabled() ) {
|
72 |
+
|
73 |
if ( ! in_array( $level, [
|
74 |
'emergency',
|
75 |
'alert',
|
92 |
} else {
|
93 |
$context['data'] = $data;
|
94 |
}
|
95 |
+
|
96 |
$loggers = [ self::get_logger() ];
|
97 |
if ( true === $wc_log && function_exists( 'wc_get_logger' ) ) {
|
98 |
$loggers[] = wc_get_logger();
|
99 |
}
|
100 |
+
|
101 |
+
|
102 |
foreach ( $loggers as $logger ) {
|
103 |
if ( is_callable( [ $logger, $level ] ) ) {
|
104 |
$logger->$level( $message . PHP_EOL, $context );
|
106 |
}
|
107 |
}
|
108 |
}
|
109 |
+
|
110 |
/**
|
111 |
* Log Fatal Errors in both wc-logs and woo-feed/logs
|
112 |
*
|
116 |
public static function write_fatal_log( $message, $data = null ) {
|
117 |
// woocommerce use 'fatal-errors' as log handler...
|
118 |
// make no conflicts with woocommerce fatal-errors logs
|
119 |
+
self::write_log( 'ctx-feed-fatal-errors', $message, 'critical', $data, true, true );
|
120 |
}
|
121 |
+
|
122 |
/**
|
123 |
* Log Fatal Errors in both wc-logs and woo-feed/logs
|
124 |
*
|
128 |
public static function write_debug_log( $message, $data = null ) {
|
129 |
// woocommerce use 'fatal-errors' as log handler...
|
130 |
// make no conflicts with woocommerce fatal-errors logs
|
131 |
+
self::write_log( 'ctx-feed-fatal-errors', $message, 'debug', $data, true, true );
|
132 |
}
|
133 |
+
|
134 |
/**
|
135 |
* Delete Log file by source or handle name
|
136 |
*
|
143 |
if ( ! class_exists( "CTX_WC_Log_Handler" ) ) {
|
144 |
return false;
|
145 |
}
|
146 |
+
|
147 |
try {
|
148 |
+
if ( 'ctx-feed-fatal-errors' === $source ) {
|
149 |
// fatal error are also logged in wc-logs dir.
|
150 |
if ( class_exists( 'WC_Log_Handler_File', false ) ) {
|
151 |
$log_handler = new WC_Log_Handler_File();
|
157 |
} catch ( Exception $e ) {
|
158 |
return false;
|
159 |
}
|
160 |
+
|
161 |
return false;
|
162 |
}
|
163 |
+
|
164 |
/**
|
165 |
* Delete all log files.
|
166 |
*
|
168 |
*/
|
169 |
public static function delete_all_logs() {
|
170 |
// delete the fatal error log
|
171 |
+
self::delete_log( 'ctx-feed-fatal-errors' );
|
172 |
// get all logs
|
173 |
$logs = CTX_WC_Log_Handler::get_log_files();
|
174 |
foreach ( $logs as $log ) {
|
175 |
self::delete_log( $log, true );
|
176 |
}
|
177 |
}
|
178 |
+
|
179 |
+
|
180 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
181 |
/**
|
182 |
* Trigger logging cleanup using the logging class.
|
183 |
*
|
189 |
$logger->clear_expired_logs();
|
190 |
}
|
191 |
}
|
192 |
+
|
193 |
+
|
194 |
}
|
195 |
// End of file logs class.
|
admin/js/localization/messages_ar.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: AR (Arabic; العربية)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "هذا الحقل إلزامي",
|
15 |
-
remote: "يرجى تصحيح هذا الحقل للمتابعة",
|
16 |
-
email: "رجاء إدخال عنوان بريد إلكتروني صحيح",
|
17 |
-
url: "رجاء إدخال عنوان موقع إلكتروني صحيح",
|
18 |
-
date: "رجاء إدخال تاريخ صحيح",
|
19 |
-
dateISO: "رجاء إدخال تاريخ صحيح (ISO)",
|
20 |
-
number: "رجاء إدخال عدد بطريقة صحيحة",
|
21 |
-
digits: "رجاء إدخال أرقام فقط",
|
22 |
-
creditcard: "رجاء إدخال رقم بطاقة ائتمان صحيح",
|
23 |
-
equalTo: "رجاء إدخال نفس القيمة",
|
24 |
-
extension: "رجاء إدخال ملف بامتداد موافق عليه",
|
25 |
-
maxlength: $.validator.format("الحد الأقصى لعدد الحروف هو {0}"),
|
26 |
-
minlength: $.validator.format("الحد الأدنى لعدد الحروف هو {0}"),
|
27 |
-
rangelength: $.validator.format("عدد الحروف يجب أن يكون بين {0} و {1}"),
|
28 |
-
range: $.validator.format("رجاء إدخال عدد قيمته بين {0} و {1}"),
|
29 |
-
max: $.validator.format("رجاء إدخال عدد أقل من أو يساوي (0}"),
|
30 |
-
min: $.validator.format("رجاء إدخال عدد أكبر من أو يساوي (0}")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ar.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"هذا الحقل إلزامي",remote:"يرجى تصحيح هذا الحقل للمتابعة",email:"رجاء إدخال عنوان بريد إلكتروني صحيح",url:"رجاء إدخال عنوان موقع إلكتروني صحيح",date:"رجاء إدخال تاريخ صحيح",dateISO:"رجاء إدخال تاريخ صحيح (ISO)",number:"رجاء إدخال عدد بطريقة صحيحة",digits:"رجاء إدخال أرقام فقط",creditcard:"رجاء إدخال رقم بطاقة ائتمان صحيح",equalTo:"رجاء إدخال نفس القيمة",extension:"رجاء إدخال ملف بامتداد موافق عليه",maxlength:a.validator.format("الحد الأقصى لعدد الحروف هو {0}"),minlength:a.validator.format("الحد الأدنى لعدد الحروف هو {0}"),rangelength:a.validator.format("عدد الحروف يجب أن يكون بين {0} و {1}"),range:a.validator.format("رجاء إدخال عدد قيمته بين {0} و {1}"),max:a.validator.format("رجاء إدخال عدد أقل من أو يساوي (0}"),min:a.validator.format("رجاء إدخال عدد أكبر من أو يساوي (0}")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_bg.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: BG (Bulgarian; български език)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Полето е задължително.",
|
15 |
-
remote: "Моля, въведете правилната стойност.",
|
16 |
-
email: "Моля, въведете валиден email.",
|
17 |
-
url: "Моля, въведете валидно URL.",
|
18 |
-
date: "Моля, въведете валидна дата.",
|
19 |
-
dateISO: "Моля, въведете валидна дата (ISO).",
|
20 |
-
number: "Моля, въведете валиден номер.",
|
21 |
-
digits: "Моля, въведете само цифри.",
|
22 |
-
creditcard: "Моля, въведете валиден номер на кредитна карта.",
|
23 |
-
equalTo: "Моля, въведете същата стойност отново.",
|
24 |
-
extension: "Моля, въведете стойност с валидно разширение.",
|
25 |
-
maxlength: $.validator.format("Моля, въведете повече от {0} символа."),
|
26 |
-
minlength: $.validator.format("Моля, въведете поне {0} символа."),
|
27 |
-
rangelength: $.validator.format("Моля, въведете стойност с дължина между {0} и {1} символа."),
|
28 |
-
range: $.validator.format("Моля, въведете стойност между {0} и {1}."),
|
29 |
-
max: $.validator.format("Моля, въведете стойност по-малка или равна на {0}."),
|
30 |
-
min: $.validator.format("Моля, въведете стойност по-голяма или равна на {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_bg.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Полето е задължително.",remote:"Моля, въведете правилната стойност.",email:"Моля, въведете валиден email.",url:"Моля, въведете валидно URL.",date:"Моля, въведете валидна дата.",dateISO:"Моля, въведете валидна дата (ISO).",number:"Моля, въведете валиден номер.",digits:"Моля, въведете само цифри.",creditcard:"Моля, въведете валиден номер на кредитна карта.",equalTo:"Моля, въведете същата стойност отново.",extension:"Моля, въведете стойност с валидно разширение.",maxlength:a.validator.format("Моля, въведете повече от {0} символа."),minlength:a.validator.format("Моля, въведете поне {0} символа."),rangelength:a.validator.format("Моля, въведете стойност с дължина между {0} и {1} символа."),range:a.validator.format("Моля, въведете стойност между {0} и {1}."),max:a.validator.format("Моля, въведете стойност по-малка или равна на {0}."),min:a.validator.format("Моля, въведете стойност по-голяма или равна на {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_bn_BD.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: bn_BD (Bengali, Bangladesh)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "এই তথ্যটি আবশ্যক।",
|
15 |
-
remote: "এই তথ্যটি ঠিক করুন।",
|
16 |
-
email: "অনুগ্রহ করে একটি সঠিক মেইল ঠিকানা লিখুন।",
|
17 |
-
url: "অনুগ্রহ করে একটি সঠিক লিঙ্ক দিন।",
|
18 |
-
date: "তারিখ সঠিক নয়।",
|
19 |
-
dateISO: "অনুগ্রহ করে একটি সঠিক (ISO) তারিখ লিখুন।",
|
20 |
-
number: "অনুগ্রহ করে একটি সঠিক নম্বর লিখুন।",
|
21 |
-
digits: "এখানে শুধু সংখ্যা ব্যবহার করা যাবে।",
|
22 |
-
creditcard: "অনুগ্রহ করে একটি ক্রেডিট কার্ডের সঠিক নম্বর লিখুন।",
|
23 |
-
equalTo: "একই মান আবার লিখুন।",
|
24 |
-
extension: "সঠিক ধরনের ফাইল আপলোড করুন।",
|
25 |
-
maxlength: $.validator.format("{0}টির বেশি অক্ষর লেখা যাবে না।"),
|
26 |
-
minlength: $.validator.format("{0}টির কম অক্ষর লেখা যাবে না।"),
|
27 |
-
rangelength: $.validator.format("{0} থেকে {1} টি অক্ষর সম্বলিত মান লিখুন।"),
|
28 |
-
range: $.validator.format("{0} থেকে {1} এর মধ্যে একটি মান ব্যবহার করুন।"),
|
29 |
-
max: $.validator.format("অনুগ্রহ করে {0} বা তার চাইতে কম মান ব্যবহার করুন।"),
|
30 |
-
min: $.validator.format("অনুগ্রহ করে {0} বা তার চাইতে বেশি মান ব্যবহার করুন।")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_bn_BD.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"এই তথ্যটি আবশ্যক।",remote:"এই তথ্যটি ঠিক করুন।",email:"অনুগ্রহ করে একটি সঠিক মেইল ঠিকানা লিখুন।",url:"অনুগ্রহ করে একটি সঠিক লিঙ্ক দিন।",date:"তারিখ সঠিক নয়।",dateISO:"অনুগ্রহ করে একটি সঠিক (ISO) তারিখ লিখুন।",number:"অনুগ্রহ করে একটি সঠিক নম্বর লিখুন।",digits:"এখানে শুধু সংখ্যা ব্যবহার করা যাবে।",creditcard:"অনুগ্রহ করে একটি ক্রেডিট কার্ডের সঠিক নম্বর লিখুন।",equalTo:"একই মান আবার লিখুন।",extension:"সঠিক ধরনের ফাইল আপলোড করুন।",maxlength:a.validator.format("{0}টির বেশি অক্ষর লেখা যাবে না।"),minlength:a.validator.format("{0}টির কম অক্ষর লেখা যাবে না।"),rangelength:a.validator.format("{0} থেকে {1} টি অক্ষর সম্বলিত মান লিখুন।"),range:a.validator.format("{0} থেকে {1} এর মধ্যে একটি মান ব্যবহার করুন।"),max:a.validator.format("অনুগ্রহ করে {0} বা তার চাইতে কম মান ব্যবহার করুন।"),min:a.validator.format("অনুগ্রহ করে {0} বা তার চাইতে বেশি মান ব্যবহার করুন।")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ca.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: CA (Catalan; català)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Aquest camp és obligatori.",
|
15 |
-
remote: "Si us plau, omple aquest camp.",
|
16 |
-
email: "Si us plau, escriu una adreça de correu-e vàlida",
|
17 |
-
url: "Si us plau, escriu una URL vàlida.",
|
18 |
-
date: "Si us plau, escriu una data vàlida.",
|
19 |
-
dateISO: "Si us plau, escriu una data (ISO) vàlida.",
|
20 |
-
number: "Si us plau, escriu un número enter vàlid.",
|
21 |
-
digits: "Si us plau, escriu només dígits.",
|
22 |
-
creditcard: "Si us plau, escriu un número de tarjeta vàlid.",
|
23 |
-
equalTo: "Si us plau, escriu el mateix valor de nou.",
|
24 |
-
extension: "Si us plau, escriu un valor amb una extensió acceptada.",
|
25 |
-
maxlength: $.validator.format("Si us plau, no escriguis més de {0} caracters."),
|
26 |
-
minlength: $.validator.format("Si us plau, no escriguis menys de {0} caracters."),
|
27 |
-
rangelength: $.validator.format("Si us plau, escriu un valor entre {0} i {1} caracters."),
|
28 |
-
range: $.validator.format("Si us plau, escriu un valor entre {0} i {1}."),
|
29 |
-
max: $.validator.format("Si us plau, escriu un valor menor o igual a {0}."),
|
30 |
-
min: $.validator.format("Si us plau, escriu un valor major o igual a {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ca.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Aquest camp és obligatori.",remote:"Si us plau, omple aquest camp.",email:"Si us plau, escriu una adreça de correu-e vàlida",url:"Si us plau, escriu una URL vàlida.",date:"Si us plau, escriu una data vàlida.",dateISO:"Si us plau, escriu una data (ISO) vàlida.",number:"Si us plau, escriu un número enter vàlid.",digits:"Si us plau, escriu només dígits.",creditcard:"Si us plau, escriu un número de tarjeta vàlid.",equalTo:"Si us plau, escriu el mateix valor de nou.",extension:"Si us plau, escriu un valor amb una extensió acceptada.",maxlength:a.validator.format("Si us plau, no escriguis més de {0} caracters."),minlength:a.validator.format("Si us plau, no escriguis menys de {0} caracters."),rangelength:a.validator.format("Si us plau, escriu un valor entre {0} i {1} caracters."),range:a.validator.format("Si us plau, escriu un valor entre {0} i {1}."),max:a.validator.format("Si us plau, escriu un valor menor o igual a {0}."),min:a.validator.format("Si us plau, escriu un valor major o igual a {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_cs.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: CS (Czech; čeština, český jazyk)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Tento údaj je povinný.",
|
15 |
-
remote: "Prosím, opravte tento údaj.",
|
16 |
-
email: "Prosím, zadejte platný e-mail.",
|
17 |
-
url: "Prosím, zadejte platné URL.",
|
18 |
-
date: "Prosím, zadejte platné datum.",
|
19 |
-
dateISO: "Prosím, zadejte platné datum (ISO).",
|
20 |
-
number: "Prosím, zadejte číslo.",
|
21 |
-
digits: "Prosím, zadávejte pouze číslice.",
|
22 |
-
creditcard: "Prosím, zadejte číslo kreditní karty.",
|
23 |
-
equalTo: "Prosím, zadejte znovu stejnou hodnotu.",
|
24 |
-
extension: "Prosím, zadejte soubor se správnou příponou.",
|
25 |
-
maxlength: $.validator.format("Prosím, zadejte nejvíce {0} znaků."),
|
26 |
-
minlength: $.validator.format("Prosím, zadejte nejméně {0} znaků."),
|
27 |
-
rangelength: $.validator.format("Prosím, zadejte od {0} do {1} znaků."),
|
28 |
-
range: $.validator.format("Prosím, zadejte hodnotu od {0} do {1}."),
|
29 |
-
max: $.validator.format("Prosím, zadejte hodnotu menší nebo rovnu {0}."),
|
30 |
-
min: $.validator.format("Prosím, zadejte hodnotu větší nebo rovnu {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_cs.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Tento údaj je povinný.",remote:"Prosím, opravte tento údaj.",email:"Prosím, zadejte platný e-mail.",url:"Prosím, zadejte platné URL.",date:"Prosím, zadejte platné datum.",dateISO:"Prosím, zadejte platné datum (ISO).",number:"Prosím, zadejte číslo.",digits:"Prosím, zadávejte pouze číslice.",creditcard:"Prosím, zadejte číslo kreditní karty.",equalTo:"Prosím, zadejte znovu stejnou hodnotu.",extension:"Prosím, zadejte soubor se správnou příponou.",maxlength:a.validator.format("Prosím, zadejte nejvíce {0} znaků."),minlength:a.validator.format("Prosím, zadejte nejméně {0} znaků."),rangelength:a.validator.format("Prosím, zadejte od {0} do {1} znaků."),range:a.validator.format("Prosím, zadejte hodnotu od {0} do {1}."),max:a.validator.format("Prosím, zadejte hodnotu menší nebo rovnu {0}."),min:a.validator.format("Prosím, zadejte hodnotu větší nebo rovnu {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_da.js
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: DA (Danish; dansk)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Dette felt er påkrævet.",
|
15 |
-
maxlength: $.validator.format("Indtast højst {0} tegn."),
|
16 |
-
minlength: $.validator.format("Indtast mindst {0} tegn."),
|
17 |
-
rangelength: $.validator.format("Indtast mindst {0} og højst {1} tegn."),
|
18 |
-
email: "Indtast en gyldig email-adresse.",
|
19 |
-
url: "Indtast en gyldig URL.",
|
20 |
-
date: "Indtast en gyldig dato.",
|
21 |
-
number: "Indtast et tal.",
|
22 |
-
digits: "Indtast kun cifre.",
|
23 |
-
equalTo: "Indtast den samme værdi igen.",
|
24 |
-
range: $.validator.format("Angiv en værdi mellem {0} og {1}."),
|
25 |
-
max: $.validator.format("Angiv en værdi der højst er {0}."),
|
26 |
-
min: $.validator.format("Angiv en værdi der mindst er {0}."),
|
27 |
-
creditcard: "Indtast et gyldigt kreditkortnummer."
|
28 |
-
});
|
29 |
-
|
30 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_da.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Dette felt er påkrævet.",maxlength:a.validator.format("Indtast højst {0} tegn."),minlength:a.validator.format("Indtast mindst {0} tegn."),rangelength:a.validator.format("Indtast mindst {0} og højst {1} tegn."),email:"Indtast en gyldig email-adresse.",url:"Indtast en gyldig URL.",date:"Indtast en gyldig dato.",number:"Indtast et tal.",digits:"Indtast kun cifre.",equalTo:"Indtast den samme værdi igen.",range:a.validator.format("Angiv en værdi mellem {0} og {1}."),max:a.validator.format("Angiv en værdi der højst er {0}."),min:a.validator.format("Angiv en værdi der mindst er {0}."),creditcard:"Indtast et gyldigt kreditkortnummer."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_de.js
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: DE (German, Deutsch)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Dieses Feld ist ein Pflichtfeld.",
|
15 |
-
maxlength: $.validator.format("Geben Sie bitte maximal {0} Zeichen ein."),
|
16 |
-
minlength: $.validator.format("Geben Sie bitte mindestens {0} Zeichen ein."),
|
17 |
-
rangelength: $.validator.format("Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein."),
|
18 |
-
email: "Geben Sie bitte eine gültige E-Mail Adresse ein.",
|
19 |
-
url: "Geben Sie bitte eine gültige URL ein.",
|
20 |
-
date: "Bitte geben Sie ein gültiges Datum ein.",
|
21 |
-
number: "Geben Sie bitte eine Nummer ein.",
|
22 |
-
digits: "Geben Sie bitte nur Ziffern ein.",
|
23 |
-
equalTo: "Bitte denselben Wert wiederholen.",
|
24 |
-
range: $.validator.format("Geben Sie bitte einen Wert zwischen {0} und {1} ein."),
|
25 |
-
max: $.validator.format("Geben Sie bitte einen Wert kleiner oder gleich {0} ein."),
|
26 |
-
min: $.validator.format("Geben Sie bitte einen Wert größer oder gleich {0} ein."),
|
27 |
-
creditcard: "Geben Sie bitte eine gültige Kreditkarten-Nummer ein."
|
28 |
-
});
|
29 |
-
|
30 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_de.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Dieses Feld ist ein Pflichtfeld.",maxlength:a.validator.format("Geben Sie bitte maximal {0} Zeichen ein."),minlength:a.validator.format("Geben Sie bitte mindestens {0} Zeichen ein."),rangelength:a.validator.format("Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein."),email:"Geben Sie bitte eine gültige E-Mail Adresse ein.",url:"Geben Sie bitte eine gültige URL ein.",date:"Bitte geben Sie ein gültiges Datum ein.",number:"Geben Sie bitte eine Nummer ein.",digits:"Geben Sie bitte nur Ziffern ein.",equalTo:"Bitte denselben Wert wiederholen.",range:a.validator.format("Geben Sie bitte einen Wert zwischen {0} und {1} ein."),max:a.validator.format("Geben Sie bitte einen Wert kleiner oder gleich {0} ein."),min:a.validator.format("Geben Sie bitte einen Wert größer oder gleich {0} ein."),creditcard:"Geben Sie bitte eine gültige Kreditkarten-Nummer ein."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_el.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: EL (Greek; ελληνικά)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Αυτό το πεδίο είναι υποχρεωτικό.",
|
15 |
-
remote: "Παρακαλώ διορθώστε αυτό το πεδίο.",
|
16 |
-
email: "Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email.",
|
17 |
-
url: "Παρακαλώ εισάγετε ένα έγκυρο URL.",
|
18 |
-
date: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία.",
|
19 |
-
dateISO: "Παρακαλώ εισάγετε μια έγκυρη ημερομηνία (ISO).",
|
20 |
-
number: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό.",
|
21 |
-
digits: "Παρακαλώ εισάγετε μόνο αριθμητικά ψηφία.",
|
22 |
-
creditcard: "Παρακαλώ εισάγετε έναν έγκυρο αριθμό πιστωτικής κάρτας.",
|
23 |
-
equalTo: "Παρακαλώ εισάγετε την ίδια τιμή ξανά.",
|
24 |
-
extension: "Παρακαλώ εισάγετε μια τιμή με έγκυρη επέκταση αρχείου.",
|
25 |
-
maxlength: $.validator.format("Παρακαλώ εισάγετε μέχρι και {0} χαρακτήρες."),
|
26 |
-
minlength: $.validator.format("Παρακαλώ εισάγετε τουλάχιστον {0} χαρακτήρες."),
|
27 |
-
rangelength: $.validator.format("Παρακαλώ εισάγετε μια τιμή με μήκος μεταξύ {0} και {1} χαρακτήρων."),
|
28 |
-
range: $.validator.format("Παρακαλώ εισάγετε μια τιμή μεταξύ {0} και {1}."),
|
29 |
-
max: $.validator.format("Παρακαλώ εισάγετε μια τιμή μικρότερη ή ίση του {0}."),
|
30 |
-
min: $.validator.format("Παρακαλώ εισάγετε μια τιμή μεγαλύτερη ή ίση του {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_el.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Αυτό το πεδίο είναι υποχρεωτικό.",remote:"Παρακαλώ διορθώστε αυτό το πεδίο.",email:"Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email.",url:"Παρακαλώ εισάγετε ένα έγκυρο URL.",date:"Παρακαλώ εισάγετε μια έγκυρη ημερομηνία.",dateISO:"Παρακαλώ εισάγετε μια έγκυρη ημερομηνία (ISO).",number:"Παρακαλώ εισάγετε έναν έγκυρο αριθμό.",digits:"Παρακαλώ εισάγετε μόνο αριθμητικά ψηφία.",creditcard:"Παρακαλώ εισάγετε έναν έγκυρο αριθμό πιστωτικής κάρτας.",equalTo:"Παρακαλώ εισάγετε την ίδια τιμή ξανά.",extension:"Παρακαλώ εισάγετε μια τιμή με έγκυρη επέκταση αρχείου.",maxlength:a.validator.format("Παρακαλώ εισάγετε μέχρι και {0} χαρακτήρες."),minlength:a.validator.format("Παρακαλώ εισάγετε τουλάχιστον {0} χαρακτήρες."),rangelength:a.validator.format("Παρακαλώ εισάγετε μια τιμή με μήκος μεταξύ {0} και {1} χαρακτήρων."),range:a.validator.format("Παρακαλώ εισάγετε μια τιμή μεταξύ {0} και {1}."),max:a.validator.format("Παρακαλώ εισάγετε μια τιμή μικρότερη ή ίση του {0}."),min:a.validator.format("Παρακαλώ εισάγετε μια τιμή μεγαλύτερη ή ίση του {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_es.js
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ES (Spanish; Español)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Este campo es obligatorio.",
|
15 |
-
remote: "Por favor, rellena este campo.",
|
16 |
-
email: "Por favor, escribe una dirección de correo válida.",
|
17 |
-
url: "Por favor, escribe una URL válida.",
|
18 |
-
date: "Por favor, escribe una fecha válida.",
|
19 |
-
dateISO: "Por favor, escribe una fecha (ISO) válida.",
|
20 |
-
number: "Por favor, escribe un número válido.",
|
21 |
-
digits: "Por favor, escribe sólo dígitos.",
|
22 |
-
creditcard: "Por favor, escribe un número de tarjeta válido.",
|
23 |
-
equalTo: "Por favor, escribe el mismo valor de nuevo.",
|
24 |
-
extension: "Por favor, escribe un valor con una extensión aceptada.",
|
25 |
-
maxlength: $.validator.format("Por favor, no escribas más de {0} caracteres."),
|
26 |
-
minlength: $.validator.format("Por favor, no escribas menos de {0} caracteres."),
|
27 |
-
rangelength: $.validator.format("Por favor, escribe un valor entre {0} y {1} caracteres."),
|
28 |
-
range: $.validator.format("Por favor, escribe un valor entre {0} y {1}."),
|
29 |
-
max: $.validator.format("Por favor, escribe un valor menor o igual a {0}."),
|
30 |
-
min: $.validator.format("Por favor, escribe un valor mayor o igual a {0}."),
|
31 |
-
nifES: "Por favor, escribe un NIF válido.",
|
32 |
-
nieES: "Por favor, escribe un NIE válido.",
|
33 |
-
cifES: "Por favor, escribe un CIF válido."
|
34 |
-
});
|
35 |
-
|
36 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_es.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Este campo es obligatorio.",remote:"Por favor, rellena este campo.",email:"Por favor, escribe una dirección de correo válida.",url:"Por favor, escribe una URL válida.",date:"Por favor, escribe una fecha válida.",dateISO:"Por favor, escribe una fecha (ISO) válida.",number:"Por favor, escribe un número válido.",digits:"Por favor, escribe sólo dígitos.",creditcard:"Por favor, escribe un número de tarjeta válido.",equalTo:"Por favor, escribe el mismo valor de nuevo.",extension:"Por favor, escribe un valor con una extensión aceptada.",maxlength:a.validator.format("Por favor, no escribas más de {0} caracteres."),minlength:a.validator.format("Por favor, no escribas menos de {0} caracteres."),rangelength:a.validator.format("Por favor, escribe un valor entre {0} y {1} caracteres."),range:a.validator.format("Por favor, escribe un valor entre {0} y {1}."),max:a.validator.format("Por favor, escribe un valor menor o igual a {0}."),min:a.validator.format("Por favor, escribe un valor mayor o igual a {0}."),nifES:"Por favor, escribe un NIF válido.",nieES:"Por favor, escribe un NIE válido.",cifES:"Por favor, escribe un CIF válido."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_es_AR.js
DELETED
@@ -1,37 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ES (Spanish; Español)
|
12 |
-
* Region: AR (Argentina)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "Este campo es obligatorio.",
|
16 |
-
remote: "Por favor, completá este campo.",
|
17 |
-
email: "Por favor, escribí una dirección de correo válida.",
|
18 |
-
url: "Por favor, escribí una URL válida.",
|
19 |
-
date: "Por favor, escribí una fecha válida.",
|
20 |
-
dateISO: "Por favor, escribí una fecha (ISO) válida.",
|
21 |
-
number: "Por favor, escribí un número entero válido.",
|
22 |
-
digits: "Por favor, escribí sólo dígitos.",
|
23 |
-
creditcard: "Por favor, escribí un número de tarjeta válido.",
|
24 |
-
equalTo: "Por favor, escribí el mismo valor de nuevo.",
|
25 |
-
extension: "Por favor, escribí un valor con una extensión aceptada.",
|
26 |
-
maxlength: $.validator.format("Por favor, no escribas más de {0} caracteres."),
|
27 |
-
minlength: $.validator.format("Por favor, no escribas menos de {0} caracteres."),
|
28 |
-
rangelength: $.validator.format("Por favor, escribí un valor entre {0} y {1} caracteres."),
|
29 |
-
range: $.validator.format("Por favor, escribí un valor entre {0} y {1}."),
|
30 |
-
max: $.validator.format("Por favor, escribí un valor menor o igual a {0}."),
|
31 |
-
min: $.validator.format("Por favor, escribí un valor mayor o igual a {0}."),
|
32 |
-
nifES: "Por favor, escribí un NIF válido.",
|
33 |
-
nieES: "Por favor, escribí un NIE válido.",
|
34 |
-
cifES: "Por favor, escribí un CIF válido."
|
35 |
-
});
|
36 |
-
|
37 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_es_AR.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Este campo es obligatorio.",remote:"Por favor, completá este campo.",email:"Por favor, escribí una dirección de correo válida.",url:"Por favor, escribí una URL válida.",date:"Por favor, escribí una fecha válida.",dateISO:"Por favor, escribí una fecha (ISO) válida.",number:"Por favor, escribí un número entero válido.",digits:"Por favor, escribí sólo dígitos.",creditcard:"Por favor, escribí un número de tarjeta válido.",equalTo:"Por favor, escribí el mismo valor de nuevo.",extension:"Por favor, escribí un valor con una extensión aceptada.",maxlength:a.validator.format("Por favor, no escribas más de {0} caracteres."),minlength:a.validator.format("Por favor, no escribas menos de {0} caracteres."),rangelength:a.validator.format("Por favor, escribí un valor entre {0} y {1} caracteres."),range:a.validator.format("Por favor, escribí un valor entre {0} y {1}."),max:a.validator.format("Por favor, escribí un valor menor o igual a {0}."),min:a.validator.format("Por favor, escribí un valor mayor o igual a {0}."),nifES:"Por favor, escribí un NIF válido.",nieES:"Por favor, escribí un NIE válido.",cifES:"Por favor, escribí un CIF válido."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_es_PE.js
DELETED
@@ -1,37 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ES (Spanish; Español)
|
12 |
-
* Region: PE (Perú)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "Este campo es obligatorio.",
|
16 |
-
remote: "Por favor, llene este campo.",
|
17 |
-
email: "Por favor, escriba un correo electrónico válido.",
|
18 |
-
url: "Por favor, escriba una URL válida.",
|
19 |
-
date: "Por favor, escriba una fecha válida.",
|
20 |
-
dateISO: "Por favor, escriba una fecha (ISO) válida.",
|
21 |
-
number: "Por favor, escriba un número válido.",
|
22 |
-
digits: "Por favor, escriba sólo dígitos.",
|
23 |
-
creditcard: "Por favor, escriba un número de tarjeta válido.",
|
24 |
-
equalTo: "Por favor, escriba el mismo valor de nuevo.",
|
25 |
-
extension: "Por favor, escriba un valor con una extensión permitida.",
|
26 |
-
maxlength: $.validator.format("Por favor, no escriba más de {0} caracteres."),
|
27 |
-
minlength: $.validator.format("Por favor, no escriba menos de {0} caracteres."),
|
28 |
-
rangelength: $.validator.format("Por favor, escriba un valor entre {0} y {1} caracteres."),
|
29 |
-
range: $.validator.format("Por favor, escriba un valor entre {0} y {1}."),
|
30 |
-
max: $.validator.format("Por favor, escriba un valor menor o igual a {0}."),
|
31 |
-
min: $.validator.format("Por favor, escriba un valor mayor o igual a {0}."),
|
32 |
-
nifES: "Por favor, escriba un NIF válido.",
|
33 |
-
nieES: "Por favor, escriba un NIE válido.",
|
34 |
-
cifES: "Por favor, escriba un CIF válido."
|
35 |
-
});
|
36 |
-
|
37 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_es_PE.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Este campo es obligatorio.",remote:"Por favor, llene este campo.",email:"Por favor, escriba un correo electrónico válido.",url:"Por favor, escriba una URL válida.",date:"Por favor, escriba una fecha válida.",dateISO:"Por favor, escriba una fecha (ISO) válida.",number:"Por favor, escriba un número válido.",digits:"Por favor, escriba sólo dígitos.",creditcard:"Por favor, escriba un número de tarjeta válido.",equalTo:"Por favor, escriba el mismo valor de nuevo.",extension:"Por favor, escriba un valor con una extensión permitida.",maxlength:a.validator.format("Por favor, no escriba más de {0} caracteres."),minlength:a.validator.format("Por favor, no escriba menos de {0} caracteres."),rangelength:a.validator.format("Por favor, escriba un valor entre {0} y {1} caracteres."),range:a.validator.format("Por favor, escriba un valor entre {0} y {1}."),max:a.validator.format("Por favor, escriba un valor menor o igual a {0}."),min:a.validator.format("Por favor, escriba un valor mayor o igual a {0}."),nifES:"Por favor, escriba un NIF válido.",nieES:"Por favor, escriba un NIE válido.",cifES:"Por favor, escriba un CIF válido."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_et.js
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ET (Estonian; eesti, eesti keel)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "See väli peab olema täidetud.",
|
15 |
-
maxlength: $.validator.format("Palun sisestage vähem kui {0} tähemärki."),
|
16 |
-
minlength: $.validator.format("Palun sisestage vähemalt {0} tähemärki."),
|
17 |
-
rangelength: $.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1} tähemärki."),
|
18 |
-
email: "Palun sisestage korrektne e-maili aadress.",
|
19 |
-
url: "Palun sisestage korrektne URL.",
|
20 |
-
date: "Palun sisestage korrektne kuupäev.",
|
21 |
-
dateISO: "Palun sisestage korrektne kuupäev (YYYY-MM-DD).",
|
22 |
-
number: "Palun sisestage korrektne number.",
|
23 |
-
digits: "Palun sisestage ainult numbreid.",
|
24 |
-
equalTo: "Palun sisestage sama väärtus uuesti.",
|
25 |
-
range: $.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1}."),
|
26 |
-
max: $.validator.format("Palun sisestage väärtus, mis on väiksem või võrdne arvuga {0}."),
|
27 |
-
min: $.validator.format("Palun sisestage väärtus, mis on suurem või võrdne arvuga {0}."),
|
28 |
-
creditcard: "Palun sisestage korrektne krediitkaardi number."
|
29 |
-
});
|
30 |
-
|
31 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_et.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"See väli peab olema täidetud.",maxlength:a.validator.format("Palun sisestage vähem kui {0} tähemärki."),minlength:a.validator.format("Palun sisestage vähemalt {0} tähemärki."),rangelength:a.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1} tähemärki."),email:"Palun sisestage korrektne e-maili aadress.",url:"Palun sisestage korrektne URL.",date:"Palun sisestage korrektne kuupäev.",dateISO:"Palun sisestage korrektne kuupäev (YYYY-MM-DD).",number:"Palun sisestage korrektne number.",digits:"Palun sisestage ainult numbreid.",equalTo:"Palun sisestage sama väärtus uuesti.",range:a.validator.format("Palun sisestage väärtus vahemikus {0} kuni {1}."),max:a.validator.format("Palun sisestage väärtus, mis on väiksem või võrdne arvuga {0}."),min:a.validator.format("Palun sisestage väärtus, mis on suurem või võrdne arvuga {0}."),creditcard:"Palun sisestage korrektne krediitkaardi number."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_eu.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: EU (Basque; euskara, euskera)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Eremu hau beharrezkoa da.",
|
15 |
-
remote: "Mesedez, bete eremu hau.",
|
16 |
-
email: "Mesedez, idatzi baliozko posta helbide bat.",
|
17 |
-
url: "Mesedez, idatzi baliozko URL bat.",
|
18 |
-
date: "Mesedez, idatzi baliozko data bat.",
|
19 |
-
dateISO: "Mesedez, idatzi baliozko (ISO) data bat.",
|
20 |
-
number: "Mesedez, idatzi baliozko zenbaki oso bat.",
|
21 |
-
digits: "Mesedez, idatzi digituak soilik.",
|
22 |
-
creditcard: "Mesedez, idatzi baliozko txartel zenbaki bat.",
|
23 |
-
equalTo: "Mesedez, idatzi berdina berriro ere.",
|
24 |
-
extension: "Mesedez, idatzi onartutako luzapena duen balio bat.",
|
25 |
-
maxlength: $.validator.format("Mesedez, ez idatzi {0} karaktere baino gehiago."),
|
26 |
-
minlength: $.validator.format("Mesedez, ez idatzi {0} karaktere baino gutxiago."),
|
27 |
-
rangelength: $.validator.format("Mesedez, idatzi {0} eta {1} karaktere arteko balio bat."),
|
28 |
-
range: $.validator.format("Mesedez, idatzi {0} eta {1} arteko balio bat."),
|
29 |
-
max: $.validator.format("Mesedez, idatzi {0} edo txikiagoa den balio bat."),
|
30 |
-
min: $.validator.format("Mesedez, idatzi {0} edo handiagoa den balio bat.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_eu.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Eremu hau beharrezkoa da.",remote:"Mesedez, bete eremu hau.",email:"Mesedez, idatzi baliozko posta helbide bat.",url:"Mesedez, idatzi baliozko URL bat.",date:"Mesedez, idatzi baliozko data bat.",dateISO:"Mesedez, idatzi baliozko (ISO) data bat.",number:"Mesedez, idatzi baliozko zenbaki oso bat.",digits:"Mesedez, idatzi digituak soilik.",creditcard:"Mesedez, idatzi baliozko txartel zenbaki bat.",equalTo:"Mesedez, idatzi berdina berriro ere.",extension:"Mesedez, idatzi onartutako luzapena duen balio bat.",maxlength:a.validator.format("Mesedez, ez idatzi {0} karaktere baino gehiago."),minlength:a.validator.format("Mesedez, ez idatzi {0} karaktere baino gutxiago."),rangelength:a.validator.format("Mesedez, idatzi {0} eta {1} karaktere arteko balio bat."),range:a.validator.format("Mesedez, idatzi {0} eta {1} arteko balio bat."),max:a.validator.format("Mesedez, idatzi {0} edo txikiagoa den balio bat."),min:a.validator.format("Mesedez, idatzi {0} edo handiagoa den balio bat.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_fa.js
DELETED
@@ -1,36 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: FA (Persian; فارسی)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "تکمیل این فیلد اجباری است.",
|
15 |
-
remote: "لطفا این فیلد را تصحیح کنید.",
|
16 |
-
email: ".لطفا یک ایمیل صحیح وارد کنید",
|
17 |
-
url: "لطفا آدرس صحیح وارد کنید.",
|
18 |
-
date: "لطفا یک تاریخ صحیح وارد کنید",
|
19 |
-
dateFA: "لطفا یک تاریخ صحیح وارد کنید",
|
20 |
-
dateISO: "لطفا تاریخ صحیح وارد کنید (ISO).",
|
21 |
-
number: "لطفا عدد صحیح وارد کنید.",
|
22 |
-
digits: "لطفا تنها رقم وارد کنید",
|
23 |
-
creditcard: "لطفا کریدیت کارت صحیح وارد کنید.",
|
24 |
-
equalTo: "لطفا مقدار برابری وارد کنید",
|
25 |
-
extension: "لطفا مقداری وارد کنید که ",
|
26 |
-
maxlength: $.validator.format("لطفا بیشتر از {0} حرف وارد نکنید."),
|
27 |
-
minlength: $.validator.format("لطفا کمتر از {0} حرف وارد نکنید."),
|
28 |
-
rangelength: $.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."),
|
29 |
-
range: $.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."),
|
30 |
-
max: $.validator.format("لطفا مقداری کمتر از {0} حرف وارد کنید."),
|
31 |
-
min: $.validator.format("لطفا مقداری بیشتر از {0} حرف وارد کنید."),
|
32 |
-
minWords: $.validator.format("لطفا حداقل {0} کلمه وارد کنید."),
|
33 |
-
maxWords: $.validator.format("لطفا حداکثر {0} کلمه وارد کنید.")
|
34 |
-
});
|
35 |
-
|
36 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_fa.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"تکمیل این فیلد اجباری است.",remote:"لطفا این فیلد را تصحیح کنید.",email:".لطفا یک ایمیل صحیح وارد کنید",url:"لطفا آدرس صحیح وارد کنید.",date:"لطفا یک تاریخ صحیح وارد کنید",dateFA:"لطفا یک تاریخ صحیح وارد کنید",dateISO:"لطفا تاریخ صحیح وارد کنید (ISO).",number:"لطفا عدد صحیح وارد کنید.",digits:"لطفا تنها رقم وارد کنید",creditcard:"لطفا کریدیت کارت صحیح وارد کنید.",equalTo:"لطفا مقدار برابری وارد کنید",extension:"لطفا مقداری وارد کنید که ",maxlength:a.validator.format("لطفا بیشتر از {0} حرف وارد نکنید."),minlength:a.validator.format("لطفا کمتر از {0} حرف وارد نکنید."),rangelength:a.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."),range:a.validator.format("لطفا مقداری بین {0} تا {1} حرف وارد کنید."),max:a.validator.format("لطفا مقداری کمتر از {0} حرف وارد کنید."),min:a.validator.format("لطفا مقداری بیشتر از {0} حرف وارد کنید."),minWords:a.validator.format("لطفا حداقل {0} کلمه وارد کنید."),maxWords:a.validator.format("لطفا حداکثر {0} کلمه وارد کنید.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_fi.js
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: FI (Finnish; suomi, suomen kieli)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Tämä kenttä on pakollinen.",
|
15 |
-
email: "Syötä oikea sähköpostiosoite.",
|
16 |
-
url: "Syötä oikea URL-osoite.",
|
17 |
-
date: "Syötä oikea päivämäärä.",
|
18 |
-
dateISO: "Syötä oikea päivämäärä muodossa VVVV-KK-PP.",
|
19 |
-
number: "Syötä luku.",
|
20 |
-
creditcard: "Syötä voimassa oleva luottokorttinumero.",
|
21 |
-
digits: "Syötä pelkästään numeroita.",
|
22 |
-
equalTo: "Syötä sama arvo uudestaan.",
|
23 |
-
maxlength: $.validator.format("Voit syöttää enintään {0} merkkiä."),
|
24 |
-
minlength: $.validator.format("Vähintään {0} merkkiä."),
|
25 |
-
rangelength: $.validator.format("Syötä vähintään {0} ja enintään {1} merkkiä."),
|
26 |
-
range: $.validator.format("Syötä arvo väliltä {0}–{1}."),
|
27 |
-
max: $.validator.format("Syötä arvo, joka on enintään {0}."),
|
28 |
-
min: $.validator.format("Syötä arvo, joka on vähintään {0}.")
|
29 |
-
});
|
30 |
-
|
31 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_fi.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Tämä kenttä on pakollinen.",email:"Syötä oikea sähköpostiosoite.",url:"Syötä oikea URL-osoite.",date:"Syötä oikea päivämäärä.",dateISO:"Syötä oikea päivämäärä muodossa VVVV-KK-PP.",number:"Syötä luku.",creditcard:"Syötä voimassa oleva luottokorttinumero.",digits:"Syötä pelkästään numeroita.",equalTo:"Syötä sama arvo uudestaan.",maxlength:a.validator.format("Voit syöttää enintään {0} merkkiä."),minlength:a.validator.format("Vähintään {0} merkkiä."),rangelength:a.validator.format("Syötä vähintään {0} ja enintään {1} merkkiä."),range:a.validator.format("Syötä arvo väliltä {0}–{1}."),max:a.validator.format("Syötä arvo, joka on enintään {0}."),min:a.validator.format("Syötä arvo, joka on vähintään {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_fr.js
DELETED
@@ -1,59 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: FR (French; français)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Ce champ est obligatoire.",
|
15 |
-
remote: "Veuillez corriger ce champ.",
|
16 |
-
email: "Veuillez fournir une adresse électronique valide.",
|
17 |
-
url: "Veuillez fournir une adresse URL valide.",
|
18 |
-
date: "Veuillez fournir une date valide.",
|
19 |
-
dateISO: "Veuillez fournir une date valide (ISO).",
|
20 |
-
number: "Veuillez fournir un numéro valide.",
|
21 |
-
digits: "Veuillez fournir seulement des chiffres.",
|
22 |
-
creditcard: "Veuillez fournir un numéro de carte de crédit valide.",
|
23 |
-
equalTo: "Veuillez fournir encore la même valeur.",
|
24 |
-
extension: "Veuillez fournir une valeur avec une extension valide.",
|
25 |
-
maxlength: $.validator.format("Veuillez fournir au plus {0} caractères."),
|
26 |
-
minlength: $.validator.format("Veuillez fournir au moins {0} caractères."),
|
27 |
-
rangelength: $.validator.format("Veuillez fournir une valeur qui contient entre {0} et {1} caractères."),
|
28 |
-
range: $.validator.format("Veuillez fournir une valeur entre {0} et {1}."),
|
29 |
-
max: $.validator.format("Veuillez fournir une valeur inférieure ou égale à {0}."),
|
30 |
-
min: $.validator.format("Veuillez fournir une valeur supérieure ou égale à {0}."),
|
31 |
-
maxWords: $.validator.format("Veuillez fournir au plus {0} mots."),
|
32 |
-
minWords: $.validator.format("Veuillez fournir au moins {0} mots."),
|
33 |
-
rangeWords: $.validator.format("Veuillez fournir entre {0} et {1} mots."),
|
34 |
-
letterswithbasicpunc: "Veuillez fournir seulement des lettres et des signes de ponctuation.",
|
35 |
-
alphanumeric: "Veuillez fournir seulement des lettres, nombres, espaces et soulignages.",
|
36 |
-
lettersonly: "Veuillez fournir seulement des lettres.",
|
37 |
-
nowhitespace: "Veuillez ne pas inscrire d'espaces blancs.",
|
38 |
-
ziprange: "Veuillez fournir un code postal entre 902xx-xxxx et 905-xx-xxxx.",
|
39 |
-
integer: "Veuillez fournir un nombre non décimal qui est positif ou négatif.",
|
40 |
-
vinUS: "Veuillez fournir un numéro d'identification du véhicule (VIN).",
|
41 |
-
dateITA: "Veuillez fournir une date valide.",
|
42 |
-
time: "Veuillez fournir une heure valide entre 00:00 et 23:59.",
|
43 |
-
phoneUS: "Veuillez fournir un numéro de téléphone valide.",
|
44 |
-
phoneUK: "Veuillez fournir un numéro de téléphone valide.",
|
45 |
-
mobileUK: "Veuillez fournir un numéro de téléphone mobile valide.",
|
46 |
-
strippedminlength: $.validator.format("Veuillez fournir au moins {0} caractères."),
|
47 |
-
email2: "Veuillez fournir une adresse électronique valide.",
|
48 |
-
url2: "Veuillez fournir une adresse URL valide.",
|
49 |
-
creditcardtypes: "Veuillez fournir un numéro de carte de crédit valide.",
|
50 |
-
ipv4: "Veuillez fournir une adresse IP v4 valide.",
|
51 |
-
ipv6: "Veuillez fournir une adresse IP v6 valide.",
|
52 |
-
require_from_group: "Veuillez fournir au moins {0} de ces champs.",
|
53 |
-
nifES: "Veuillez fournir un numéro NIF valide.",
|
54 |
-
nieES: "Veuillez fournir un numéro NIE valide.",
|
55 |
-
cifES: "Veuillez fournir un numéro CIF valide.",
|
56 |
-
postalCodeCA: "Veuillez fournir un code postal valide."
|
57 |
-
});
|
58 |
-
|
59 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_fr.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Ce champ est obligatoire.",remote:"Veuillez corriger ce champ.",email:"Veuillez fournir une adresse électronique valide.",url:"Veuillez fournir une adresse URL valide.",date:"Veuillez fournir une date valide.",dateISO:"Veuillez fournir une date valide (ISO).",number:"Veuillez fournir un numéro valide.",digits:"Veuillez fournir seulement des chiffres.",creditcard:"Veuillez fournir un numéro de carte de crédit valide.",equalTo:"Veuillez fournir encore la même valeur.",extension:"Veuillez fournir une valeur avec une extension valide.",maxlength:a.validator.format("Veuillez fournir au plus {0} caractères."),minlength:a.validator.format("Veuillez fournir au moins {0} caractères."),rangelength:a.validator.format("Veuillez fournir une valeur qui contient entre {0} et {1} caractères."),range:a.validator.format("Veuillez fournir une valeur entre {0} et {1}."),max:a.validator.format("Veuillez fournir une valeur inférieure ou égale à {0}."),min:a.validator.format("Veuillez fournir une valeur supérieure ou égale à {0}."),maxWords:a.validator.format("Veuillez fournir au plus {0} mots."),minWords:a.validator.format("Veuillez fournir au moins {0} mots."),rangeWords:a.validator.format("Veuillez fournir entre {0} et {1} mots."),letterswithbasicpunc:"Veuillez fournir seulement des lettres et des signes de ponctuation.",alphanumeric:"Veuillez fournir seulement des lettres, nombres, espaces et soulignages.",lettersonly:"Veuillez fournir seulement des lettres.",nowhitespace:"Veuillez ne pas inscrire d'espaces blancs.",ziprange:"Veuillez fournir un code postal entre 902xx-xxxx et 905-xx-xxxx.",integer:"Veuillez fournir un nombre non décimal qui est positif ou négatif.",vinUS:"Veuillez fournir un numéro d'identification du véhicule (VIN).",dateITA:"Veuillez fournir une date valide.",time:"Veuillez fournir une heure valide entre 00:00 et 23:59.",phoneUS:"Veuillez fournir un numéro de téléphone valide.",phoneUK:"Veuillez fournir un numéro de téléphone valide.",mobileUK:"Veuillez fournir un numéro de téléphone mobile valide.",strippedminlength:a.validator.format("Veuillez fournir au moins {0} caractères."),email2:"Veuillez fournir une adresse électronique valide.",url2:"Veuillez fournir une adresse URL valide.",creditcardtypes:"Veuillez fournir un numéro de carte de crédit valide.",ipv4:"Veuillez fournir une adresse IP v4 valide.",ipv6:"Veuillez fournir une adresse IP v6 valide.",require_from_group:"Veuillez fournir au moins {0} de ces champs.",nifES:"Veuillez fournir un numéro NIF valide.",nieES:"Veuillez fournir un numéro NIE valide.",cifES:"Veuillez fournir un numéro CIF valide.",postalCodeCA:"Veuillez fournir un code postal valide."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ge.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/**
|
10 |
-
* @author @tatocaster <kutaliatato@gmail.com>
|
11 |
-
* Translated default messages for the jQuery validation plugin.
|
12 |
-
* Locale: GE (Georgian; ქართული)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "ეს ველი სავალდებულოა",
|
16 |
-
remote: "გთხოვთ შეასწოროთ.",
|
17 |
-
email: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
|
18 |
-
url: "გთხოვთ შეიყვანოთ სწორი ფორმატით.",
|
19 |
-
date: "გთხოვთ შეიყვანოთ სწორი თარიღი.",
|
20 |
-
dateISO: "გთხოვთ შეიყვანოთ სწორი ფორმატით ( ISO ).",
|
21 |
-
number: "გთხოვთ შეიყვანოთ რიცხვი.",
|
22 |
-
digits: "დაშვებულია მხოლოდ ციფრები.",
|
23 |
-
creditcard: "გთხოვთ შეიყვანოთ სწორი ფორმატის ბარათის კოდი.",
|
24 |
-
equalTo: "გთხოვთ შეიყვანოთ იგივე მნიშვნელობა.",
|
25 |
-
maxlength: $.validator.format( "გთხოვთ შეიყვანოთ არა უმეტეს {0} სიმბოლოსი." ),
|
26 |
-
minlength: $.validator.format( "შეიყვანეთ მინიმუმ {0} სიმბოლო." ),
|
27 |
-
rangelength: $.validator.format( "გთხოვთ შეიყვანოთ {0} -დან {1} -მდე რაოდენობის სიმბოლოები." ),
|
28 |
-
range: $.validator.format( "შეიყვანეთ {0} -სა {1} -ს შორის." ),
|
29 |
-
max: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა ნაკლები ან ტოლი {0} -ს." ),
|
30 |
-
min: $.validator.format( "გთხოვთ შეიყვანოთ მნიშვნელობა მეტი ან ტოლი {0} -ს." )
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ge.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"ეს ველი სავალდებულოა",remote:"გთხოვთ შეასწოროთ.",email:"გთხოვთ შეიყვანოთ სწორი ფორმატით.",url:"გთხოვთ შეიყვანოთ სწორი ფორმატით.",date:"გთხოვთ შეიყვანოთ სწორი თარიღი.",dateISO:"გთხოვთ შეიყვანოთ სწორი ფორმატით ( ISO ).",number:"გთხოვთ შეიყვანოთ რიცხვი.",digits:"დაშვებულია მხოლოდ ციფრები.",creditcard:"გთხოვთ შეიყვანოთ სწორი ფორმატის ბარათის კოდი.",equalTo:"გთხოვთ შეიყვანოთ იგივე მნიშვნელობა.",maxlength:a.validator.format("გთხოვთ შეიყვანოთ არა უმეტეს {0} სიმბოლოსი."),minlength:a.validator.format("შეიყვანეთ მინიმუმ {0} სიმბოლო."),rangelength:a.validator.format("გთხოვთ შეიყვანოთ {0} -დან {1} -მდე რაოდენობის სიმბოლოები."),range:a.validator.format("შეიყვანეთ {0} -სა {1} -ს შორის."),max:a.validator.format("გთხოვთ შეიყვანოთ მნიშვნელობა ნაკლები ან ტოლი {0} -ს."),min:a.validator.format("გთხოვთ შეიყვანოთ მნიშვნელობა მეტი ან ტოლი {0} -ს.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_gl.js
DELETED
@@ -1,38 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: GL (Galician; Galego)
|
12 |
-
*/
|
13 |
-
(function($) {
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "Este campo é obrigatorio.",
|
16 |
-
remote: "Por favor, cubre este campo.",
|
17 |
-
email: "Por favor, escribe unha dirección de correo válida.",
|
18 |
-
url: "Por favor, escribe unha URL válida.",
|
19 |
-
date: "Por favor, escribe unha data válida.",
|
20 |
-
dateISO: "Por favor, escribe unha data (ISO) válida.",
|
21 |
-
number: "Por favor, escribe un número válido.",
|
22 |
-
digits: "Por favor, escribe só díxitos.",
|
23 |
-
creditcard: "Por favor, escribe un número de tarxeta válido.",
|
24 |
-
equalTo: "Por favor, escribe o mesmo valor de novo.",
|
25 |
-
extension: "Por favor, escribe un valor cunha extensión aceptada.",
|
26 |
-
maxlength: $.validator.format("Por favor, non escribas máis de {0} caracteres."),
|
27 |
-
minlength: $.validator.format("Por favor, non escribas menos de {0} caracteres."),
|
28 |
-
rangelength: $.validator.format("Por favor, escribe un valor entre {0} e {1} caracteres."),
|
29 |
-
range: $.validator.format("Por favor, escribe un valor entre {0} e {1}."),
|
30 |
-
max: $.validator.format("Por favor, escribe un valor menor ou igual a {0}."),
|
31 |
-
min: $.validator.format("Por favor, escribe un valor maior ou igual a {0}."),
|
32 |
-
nifES: "Por favor, escribe un NIF válido.",
|
33 |
-
nieES: "Por favor, escribe un NIE válido.",
|
34 |
-
cifES: "Por favor, escribe un CIF válido."
|
35 |
-
});
|
36 |
-
}(jQuery));
|
37 |
-
|
38 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_gl.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){!function(a){a.extend(a.validator.messages,{required:"Este campo é obrigatorio.",remote:"Por favor, cubre este campo.",email:"Por favor, escribe unha dirección de correo válida.",url:"Por favor, escribe unha URL válida.",date:"Por favor, escribe unha data válida.",dateISO:"Por favor, escribe unha data (ISO) válida.",number:"Por favor, escribe un número válido.",digits:"Por favor, escribe só díxitos.",creditcard:"Por favor, escribe un número de tarxeta válido.",equalTo:"Por favor, escribe o mesmo valor de novo.",extension:"Por favor, escribe un valor cunha extensión aceptada.",maxlength:a.validator.format("Por favor, non escribas máis de {0} caracteres."),minlength:a.validator.format("Por favor, non escribas menos de {0} caracteres."),rangelength:a.validator.format("Por favor, escribe un valor entre {0} e {1} caracteres."),range:a.validator.format("Por favor, escribe un valor entre {0} e {1}."),max:a.validator.format("Por favor, escribe un valor menor ou igual a {0}."),min:a.validator.format("Por favor, escribe un valor maior ou igual a {0}."),nifES:"Por favor, escribe un NIF válido.",nieES:"Por favor, escribe un NIE válido.",cifES:"Por favor, escribe un CIF válido."})}(jQuery)});
|
|
|
|
|
|
|
|
admin/js/localization/messages_he.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: HE (Hebrew; עברית)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "השדה הזה הינו שדה חובה",
|
15 |
-
remote: "נא לתקן שדה זה",
|
16 |
-
email: "נא למלא כתובת דוא\"ל חוקית",
|
17 |
-
url: "נא למלא כתובת אינטרנט חוקית",
|
18 |
-
date: "נא למלא תאריך חוקי",
|
19 |
-
dateISO: "נא למלא תאריך חוקי (ISO)",
|
20 |
-
number: "נא למלא מספר",
|
21 |
-
digits: "נא למלא רק מספרים",
|
22 |
-
creditcard: "נא למלא מספר כרטיס אשראי חוקי",
|
23 |
-
equalTo: "נא למלא את אותו ערך שוב",
|
24 |
-
extension: "נא למלא ערך עם סיומת חוקית",
|
25 |
-
maxlength: $.validator.format(".נא לא למלא יותר מ- {0} תווים"),
|
26 |
-
minlength: $.validator.format("נא למלא לפחות {0} תווים"),
|
27 |
-
rangelength: $.validator.format("נא למלא ערך בין {0} ל- {1} תווים"),
|
28 |
-
range: $.validator.format("נא למלא ערך בין {0} ל- {1}"),
|
29 |
-
max: $.validator.format("נא למלא ערך קטן או שווה ל- {0}"),
|
30 |
-
min: $.validator.format("נא למלא ערך גדול או שווה ל- {0}")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_he.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"השדה הזה הינו שדה חובה",remote:"נא לתקן שדה זה",email:'נא למלא כתובת דוא"ל חוקית',url:"נא למלא כתובת אינטרנט חוקית",date:"נא למלא תאריך חוקי",dateISO:"נא למלא תאריך חוקי (ISO)",number:"נא למלא מספר",digits:"נא למלא רק מספרים",creditcard:"נא למלא מספר כרטיס אשראי חוקי",equalTo:"נא למלא את אותו ערך שוב",extension:"נא למלא ערך עם סיומת חוקית",maxlength:a.validator.format(".נא לא למלא יותר מ- {0} תווים"),minlength:a.validator.format("נא למלא לפחות {0} תווים"),rangelength:a.validator.format("נא למלא ערך בין {0} ל- {1} תווים"),range:a.validator.format("נא למלא ערך בין {0} ל- {1}"),max:a.validator.format("נא למלא ערך קטן או שווה ל- {0}"),min:a.validator.format("נא למלא ערך גדול או שווה ל- {0}")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_hr.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: HR (Croatia; hrvatski jezik)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Ovo polje je obavezno.",
|
15 |
-
remote: "Ovo polje treba popraviti.",
|
16 |
-
email: "Unesite ispravnu e-mail adresu.",
|
17 |
-
url: "Unesite ispravan URL.",
|
18 |
-
date: "Unesite ispravan datum.",
|
19 |
-
dateISO: "Unesite ispravan datum (ISO).",
|
20 |
-
number: "Unesite ispravan broj.",
|
21 |
-
digits: "Unesite samo brojeve.",
|
22 |
-
creditcard: "Unesite ispravan broj kreditne kartice.",
|
23 |
-
equalTo: "Unesite ponovo istu vrijednost.",
|
24 |
-
extension: "Unesite vrijednost sa ispravnom ekstenzijom.",
|
25 |
-
maxlength: $.validator.format("Maksimalni broj znakova je {0} ."),
|
26 |
-
minlength: $.validator.format("Minimalni broj znakova je {0} ."),
|
27 |
-
rangelength: $.validator.format("Unesite vrijednost između {0} i {1} znakova."),
|
28 |
-
range: $.validator.format("Unesite vrijednost između {0} i {1}."),
|
29 |
-
max: $.validator.format("Unesite vrijednost manju ili jednaku {0}."),
|
30 |
-
min: $.validator.format("Unesite vrijednost veću ili jednaku {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_hr.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Ovo polje je obavezno.",remote:"Ovo polje treba popraviti.",email:"Unesite ispravnu e-mail adresu.",url:"Unesite ispravan URL.",date:"Unesite ispravan datum.",dateISO:"Unesite ispravan datum (ISO).",number:"Unesite ispravan broj.",digits:"Unesite samo brojeve.",creditcard:"Unesite ispravan broj kreditne kartice.",equalTo:"Unesite ponovo istu vrijednost.",extension:"Unesite vrijednost sa ispravnom ekstenzijom.",maxlength:a.validator.format("Maksimalni broj znakova je {0} ."),minlength:a.validator.format("Minimalni broj znakova je {0} ."),rangelength:a.validator.format("Unesite vrijednost između {0} i {1} znakova."),range:a.validator.format("Unesite vrijednost između {0} i {1}."),max:a.validator.format("Unesite vrijednost manju ili jednaku {0}."),min:a.validator.format("Unesite vrijednost veću ili jednaku {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_hu.js
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: HU (Hungarian; Magyar)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Kötelező megadni.",
|
15 |
-
maxlength: $.validator.format("Legfeljebb {0} karakter hosszú legyen."),
|
16 |
-
minlength: $.validator.format("Legalább {0} karakter hosszú legyen."),
|
17 |
-
rangelength: $.validator.format("Legalább {0} és legfeljebb {1} karakter hosszú legyen."),
|
18 |
-
email: "Érvényes e-mail címnek kell lennie.",
|
19 |
-
url: "Érvényes URL-nek kell lennie.",
|
20 |
-
date: "Dátumnak kell lennie.",
|
21 |
-
number: "Számnak kell lennie.",
|
22 |
-
digits: "Csak számjegyek lehetnek.",
|
23 |
-
equalTo: "Meg kell egyeznie a két értéknek.",
|
24 |
-
range: $.validator.format("{0} és {1} közé kell esnie."),
|
25 |
-
max: $.validator.format("Nem lehet nagyobb, mint {0}."),
|
26 |
-
min: $.validator.format("Nem lehet kisebb, mint {0}."),
|
27 |
-
creditcard: "Érvényes hitelkártyaszámnak kell lennie.",
|
28 |
-
remote: "Kérem javítsa ki ezt a mezőt.",
|
29 |
-
dateISO: "Kérem írjon be egy érvényes dátumot (ISO)."
|
30 |
-
});
|
31 |
-
|
32 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_hu.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Kötelező megadni.",maxlength:a.validator.format("Legfeljebb {0} karakter hosszú legyen."),minlength:a.validator.format("Legalább {0} karakter hosszú legyen."),rangelength:a.validator.format("Legalább {0} és legfeljebb {1} karakter hosszú legyen."),email:"Érvényes e-mail címnek kell lennie.",url:"Érvényes URL-nek kell lennie.",date:"Dátumnak kell lennie.",number:"Számnak kell lennie.",digits:"Csak számjegyek lehetnek.",equalTo:"Meg kell egyeznie a két értéknek.",range:a.validator.format("{0} és {1} közé kell esnie."),max:a.validator.format("Nem lehet nagyobb, mint {0}."),min:a.validator.format("Nem lehet kisebb, mint {0}."),creditcard:"Érvényes hitelkártyaszámnak kell lennie.",remote:"Kérem javítsa ki ezt a mezőt.",dateISO:"Kérem írjon be egy érvényes dátumot (ISO)."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_hy_AM.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: HY_AM (Armenian; հայերեն լեզու)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Պարտադիր լրացման դաշտ",
|
15 |
-
remote: "Ներմուծեք ճիշտ արժեքը",
|
16 |
-
email: "Ներմուծեք վավեր էլեկտրոնային փոստի հասցե",
|
17 |
-
url: "Ներմուծեք վավեր URL",
|
18 |
-
date: "Ներմուծեք վավեր ամսաթիվ",
|
19 |
-
dateISO: "Ներմուծեք ISO ֆորմատով վավեր ամսաթիվ։",
|
20 |
-
number: "Ներմուծեք թիվ",
|
21 |
-
digits: "Ներմուծեք միայն թվեր",
|
22 |
-
creditcard: "Ներմուծեք ճիշտ բանկային քարտի համար",
|
23 |
-
equalTo: "Ներմուծեք միևնուն արժեքը ևս մեկ անգամ",
|
24 |
-
extension: "Ընտրեք ճիշտ ընդլանումով ֆայլ",
|
25 |
-
maxlength: $.validator.format("Ներմուծեք ոչ ավել քան {0} նիշ"),
|
26 |
-
minlength: $.validator.format("Ներմուծեք ոչ պակաս քան {0} նիշ"),
|
27 |
-
rangelength: $.validator.format("Ներմուծեք {0}֊ից {1} երկարությամբ արժեք"),
|
28 |
-
range: $.validator.format("Ներմուծեք թիվ {0}֊ից {1} միջակայքում"),
|
29 |
-
max: $.validator.format("Ներմուծեք թիվ, որը փոքր կամ հավասար է {0}֊ին"),
|
30 |
-
min: $.validator.format("Ներմուծեք թիվ, որը մեծ կամ հավասար է {0}֊ին")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_hy_AM.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Պարտադիր լրացման դաշտ",remote:"Ներմուծեք ճիշտ արժեքը",email:"Ներմուծեք վավեր էլեկտրոնային փոստի հասցե",url:"Ներմուծեք վավեր URL",date:"Ներմուծեք վավեր ամսաթիվ",dateISO:"Ներմուծեք ISO ֆորմատով վավեր ամսաթիվ։",number:"Ներմուծեք թիվ",digits:"Ներմուծեք միայն թվեր",creditcard:"Ներմուծեք ճիշտ բանկային քարտի համար",equalTo:"Ներմուծեք միևնուն արժեքը ևս մեկ անգամ",extension:"Ընտրեք ճիշտ ընդլանումով ֆայլ",maxlength:a.validator.format("Ներմուծեք ոչ ավել քան {0} նիշ"),minlength:a.validator.format("Ներմուծեք ոչ պակաս քան {0} նիշ"),rangelength:a.validator.format("Ներմուծեք {0}֊ից {1} երկարությամբ արժեք"),range:a.validator.format("Ներմուծեք թիվ {0}֊ից {1} միջակայքում"),max:a.validator.format("Ներմուծեք թիվ, որը փոքր կամ հավասար է {0}֊ին"),min:a.validator.format("Ներմուծեք թիվ, որը մեծ կամ հավասար է {0}֊ին")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_id.js
DELETED
@@ -1,32 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ID (Indonesia; Indonesian)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Kolom ini diperlukan.",
|
15 |
-
remote: "Harap benarkan kolom ini.",
|
16 |
-
email: "Silakan masukkan format email yang benar.",
|
17 |
-
url: "Silakan masukkan format URL yang benar.",
|
18 |
-
date: "Silakan masukkan format tanggal yang benar.",
|
19 |
-
dateISO: "Silakan masukkan format tanggal(ISO) yang benar.",
|
20 |
-
number: "Silakan masukkan angka yang benar.",
|
21 |
-
digits: "Harap masukan angka saja.",
|
22 |
-
creditcard: "Harap masukkan format kartu kredit yang benar.",
|
23 |
-
equalTo: "Harap masukkan nilai yg sama dengan sebelumnya.",
|
24 |
-
maxlength: $.validator.format("Input dibatasi hanya {0} karakter."),
|
25 |
-
minlength: $.validator.format("Input tidak kurang dari {0} karakter."),
|
26 |
-
rangelength: $.validator.format("Panjang karakter yg diizinkan antara {0} dan {1} karakter."),
|
27 |
-
range: $.validator.format("Harap masukkan nilai antara {0} dan {1}."),
|
28 |
-
max: $.validator.format("Harap masukkan nilai lebih kecil atau sama dengan {0}."),
|
29 |
-
min: $.validator.format("Harap masukkan nilai lebih besar atau sama dengan {0}.")
|
30 |
-
});
|
31 |
-
|
32 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_id.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Kolom ini diperlukan.",remote:"Harap benarkan kolom ini.",email:"Silakan masukkan format email yang benar.",url:"Silakan masukkan format URL yang benar.",date:"Silakan masukkan format tanggal yang benar.",dateISO:"Silakan masukkan format tanggal(ISO) yang benar.",number:"Silakan masukkan angka yang benar.",digits:"Harap masukan angka saja.",creditcard:"Harap masukkan format kartu kredit yang benar.",equalTo:"Harap masukkan nilai yg sama dengan sebelumnya.",maxlength:a.validator.format("Input dibatasi hanya {0} karakter."),minlength:a.validator.format("Input tidak kurang dari {0} karakter."),rangelength:a.validator.format("Panjang karakter yg diizinkan antara {0} dan {1} karakter."),range:a.validator.format("Harap masukkan nilai antara {0} dan {1}."),max:a.validator.format("Harap masukkan nilai lebih kecil atau sama dengan {0}."),min:a.validator.format("Harap masukkan nilai lebih besar atau sama dengan {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_is.js
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: IS (Icelandic; íslenska)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Þessi reitur er nauðsynlegur.",
|
15 |
-
remote: "Lagaðu þennan reit.",
|
16 |
-
maxlength: $.validator.format("Sláðu inn mest {0} stafi."),
|
17 |
-
minlength: $.validator.format("Sláðu inn minnst {0} stafi."),
|
18 |
-
rangelength: $.validator.format("Sláðu inn minnst {0} og mest {1} stafi."),
|
19 |
-
email: "Sláðu inn gilt netfang.",
|
20 |
-
url: "Sláðu inn gilda vefslóð.",
|
21 |
-
date: "Sláðu inn gilda dagsetningu.",
|
22 |
-
number: "Sláðu inn tölu.",
|
23 |
-
digits: "Sláðu inn tölustafi eingöngu.",
|
24 |
-
equalTo: "Sláðu sama gildi inn aftur.",
|
25 |
-
range: $.validator.format("Sláðu inn gildi milli {0} og {1}."),
|
26 |
-
max: $.validator.format("Sláðu inn gildi sem er minna en eða jafnt og {0}."),
|
27 |
-
min: $.validator.format("Sláðu inn gildi sem er stærra en eða jafnt og {0}."),
|
28 |
-
creditcard: "Sláðu inn gilt greiðslukortanúmer."
|
29 |
-
});
|
30 |
-
|
31 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_is.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Þessi reitur er nauðsynlegur.",remote:"Lagaðu þennan reit.",maxlength:a.validator.format("Sláðu inn mest {0} stafi."),minlength:a.validator.format("Sláðu inn minnst {0} stafi."),rangelength:a.validator.format("Sláðu inn minnst {0} og mest {1} stafi."),email:"Sláðu inn gilt netfang.",url:"Sláðu inn gilda vefslóð.",date:"Sláðu inn gilda dagsetningu.",number:"Sláðu inn tölu.",digits:"Sláðu inn tölustafi eingöngu.",equalTo:"Sláðu sama gildi inn aftur.",range:a.validator.format("Sláðu inn gildi milli {0} og {1}."),max:a.validator.format("Sláðu inn gildi sem er minna en eða jafnt og {0}."),min:a.validator.format("Sláðu inn gildi sem er stærra en eða jafnt og {0}."),creditcard:"Sláðu inn gilt greiðslukortanúmer."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_it.js
DELETED
@@ -1,37 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: IT (Italian; Italiano)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Campo obbligatorio",
|
15 |
-
remote: "Controlla questo campo",
|
16 |
-
email: "Inserisci un indirizzo email valido",
|
17 |
-
url: "Inserisci un indirizzo web valido",
|
18 |
-
date: "Inserisci una data valida",
|
19 |
-
dateISO: "Inserisci una data valida (ISO)",
|
20 |
-
number: "Inserisci un numero valido",
|
21 |
-
digits: "Inserisci solo numeri",
|
22 |
-
creditcard: "Inserisci un numero di carta di credito valido",
|
23 |
-
equalTo: "Il valore non corrisponde",
|
24 |
-
extension: "Inserisci un valore con un'estensione valida",
|
25 |
-
maxlength: $.validator.format("Non inserire più di {0} caratteri"),
|
26 |
-
minlength: $.validator.format("Inserisci almeno {0} caratteri"),
|
27 |
-
rangelength: $.validator.format("Inserisci un valore compreso tra {0} e {1} caratteri"),
|
28 |
-
range: $.validator.format("Inserisci un valore compreso tra {0} e {1}"),
|
29 |
-
max: $.validator.format("Inserisci un valore minore o uguale a {0}"),
|
30 |
-
min: $.validator.format("Inserisci un valore maggiore o uguale a {0}"),
|
31 |
-
nifES: "Inserisci un NIF valido",
|
32 |
-
nieES: "Inserisci un NIE valido",
|
33 |
-
cifES: "Inserisci un CIF valido",
|
34 |
-
currency: "Inserisci una valuta valida"
|
35 |
-
});
|
36 |
-
|
37 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_it.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Campo obbligatorio",remote:"Controlla questo campo",email:"Inserisci un indirizzo email valido",url:"Inserisci un indirizzo web valido",date:"Inserisci una data valida",dateISO:"Inserisci una data valida (ISO)",number:"Inserisci un numero valido",digits:"Inserisci solo numeri",creditcard:"Inserisci un numero di carta di credito valido",equalTo:"Il valore non corrisponde",extension:"Inserisci un valore con un'estensione valida",maxlength:a.validator.format("Non inserire più di {0} caratteri"),minlength:a.validator.format("Inserisci almeno {0} caratteri"),rangelength:a.validator.format("Inserisci un valore compreso tra {0} e {1} caratteri"),range:a.validator.format("Inserisci un valore compreso tra {0} e {1}"),max:a.validator.format("Inserisci un valore minore o uguale a {0}"),min:a.validator.format("Inserisci un valore maggiore o uguale a {0}"),nifES:"Inserisci un NIF valido",nieES:"Inserisci un NIE valido",cifES:"Inserisci un CIF valido",currency:"Inserisci una valuta valida"})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ja.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: JA (Japanese; 日本語)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "このフィールドは必須です。",
|
15 |
-
remote: "このフィールドを修正してください。",
|
16 |
-
email: "有効なEメールアドレスを入力してください。",
|
17 |
-
url: "有効なURLを入力してください。",
|
18 |
-
date: "有効な日付を入力してください。",
|
19 |
-
dateISO: "有効な日付(ISO)を入力してください。",
|
20 |
-
number: "有効な数字を入力してください。",
|
21 |
-
digits: "数字のみを入力してください。",
|
22 |
-
creditcard: "有効なクレジットカード番号を入力してください。",
|
23 |
-
equalTo: "同じ値をもう一度入力してください。",
|
24 |
-
extension: "有効な拡張子を含む値を入力してください。",
|
25 |
-
maxlength: $.validator.format("{0} 文字以内で入力してください。"),
|
26 |
-
minlength: $.validator.format("{0} 文字以上で入力してください。"),
|
27 |
-
rangelength: $.validator.format("{0} 文字から {1} 文字までの値を入力してください。"),
|
28 |
-
range: $.validator.format("{0} から {1} までの値を入力してください。"),
|
29 |
-
max: $.validator.format("{0} 以下の値を入力してください。"),
|
30 |
-
min: $.validator.format("{0} 以上の値を入力してください。")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ja.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"このフィールドは必須です。",remote:"このフィールドを修正してください。",email:"有効なEメールアドレスを入力してください。",url:"有効なURLを入力してください。",date:"有効な日付を入力してください。",dateISO:"有効な日付(ISO)を入力してください。",number:"有効な数字を入力してください。",digits:"数字のみを入力してください。",creditcard:"有効なクレジットカード番号を入力してください。",equalTo:"同じ値をもう一度入力してください。",extension:"有効な拡張子を含む値を入力してください。",maxlength:a.validator.format("{0} 文字以内で入力してください。"),minlength:a.validator.format("{0} 文字以上で入力してください。"),rangelength:a.validator.format("{0} 文字から {1} 文字までの値を入力してください。"),range:a.validator.format("{0} から {1} までの値を入力してください。"),max:a.validator.format("{0} 以下の値を入力してください。"),min:a.validator.format("{0} 以上の値を入力してください。")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ka.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: KA (Georgian; ქართული)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "ამ ველის შევსება აუცილებელია.",
|
15 |
-
remote: "გთხოვთ მიუთითოთ სწორი მნიშვნელობა.",
|
16 |
-
email: "გთხოვთ მიუთითოთ ელ-ფოსტის კორექტული მისამართი.",
|
17 |
-
url: "გთხოვთ მიუთითოთ კორექტული URL.",
|
18 |
-
date: "გთხოვთ მიუთითოთ კორექტული თარიღი.",
|
19 |
-
dateISO: "გთხოვთ მიუთითოთ კორექტული თარიღი ISO ფორმატში.",
|
20 |
-
number: "გთხოვთ მიუთითოთ ციფრი.",
|
21 |
-
digits: "გთხოვთ მიუთითოთ მხოლოდ ციფრები.",
|
22 |
-
creditcard: "გთხოვთ მიუთითოთ საკრედიტო ბარათის კორექტული ნომერი.",
|
23 |
-
equalTo: "გთხოვთ მიუთითოთ ასეთივე მნიშვნელობა კიდევ ერთხელ.",
|
24 |
-
extension: "გთხოვთ აირჩიოთ ფაილი კორექტული გაფართოებით.",
|
25 |
-
maxlength: $.validator.format("დასაშვებია არაუმეტეს {0} სიმბოლო."),
|
26 |
-
minlength: $.validator.format("აუცილებელია შეიყვანოთ მინიმუმ {0} სიმბოლო."),
|
27 |
-
rangelength: $.validator.format("ტექსტში სიმბოლოების რაოდენობა უნდა იყოს {0}-დან {1}-მდე."),
|
28 |
-
range: $.validator.format("გთხოვთ შეიყვანოთ ციფრი {0}-დან {1}-მდე."),
|
29 |
-
max: $.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც ნაკლებია ან უდრის {0}-ს."),
|
30 |
-
min: $.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც მეტია ან უდრის {0}-ს.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ka.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"ამ ველის შევსება აუცილებელია.",remote:"გთხოვთ მიუთითოთ სწორი მნიშვნელობა.",email:"გთხოვთ მიუთითოთ ელ-ფოსტის კორექტული მისამართი.",url:"გთხოვთ მიუთითოთ კორექტული URL.",date:"გთხოვთ მიუთითოთ კორექტული თარიღი.",dateISO:"გთხოვთ მიუთითოთ კორექტული თარიღი ISO ფორმატში.",number:"გთხოვთ მიუთითოთ ციფრი.",digits:"გთხოვთ მიუთითოთ მხოლოდ ციფრები.",creditcard:"გთხოვთ მიუთითოთ საკრედიტო ბარათის კორექტული ნომერი.",equalTo:"გთხოვთ მიუთითოთ ასეთივე მნიშვნელობა კიდევ ერთხელ.",extension:"გთხოვთ აირჩიოთ ფაილი კორექტული გაფართოებით.",maxlength:a.validator.format("დასაშვებია არაუმეტეს {0} სიმბოლო."),minlength:a.validator.format("აუცილებელია შეიყვანოთ მინიმუმ {0} სიმბოლო."),rangelength:a.validator.format("ტექსტში სიმბოლოების რაოდენობა უნდა იყოს {0}-დან {1}-მდე."),range:a.validator.format("გთხოვთ შეიყვანოთ ციფრი {0}-დან {1}-მდე."),max:a.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც ნაკლებია ან უდრის {0}-ს."),min:a.validator.format("გთხოვთ შეიყვანოთ ციფრი რომელიც მეტია ან უდრის {0}-ს.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_kk.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: KK (Kazakh; қазақ тілі)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Бұл өрісті міндетті түрде толтырыңыз.",
|
15 |
-
remote: "Дұрыс мағына енгізуіңізді сұраймыз.",
|
16 |
-
email: "Нақты электронды поштаңызды енгізуіңізді сұраймыз.",
|
17 |
-
url: "Нақты URL-ды енгізуіңізді сұраймыз.",
|
18 |
-
date: "Нақты URL-ды енгізуіңізді сұраймыз.",
|
19 |
-
dateISO: "Нақты ISO форматымен сәйкес датасын енгізуіңізді сұраймыз.",
|
20 |
-
number: "Күнді енгізуіңізді сұраймыз.",
|
21 |
-
digits: "Тек қана сандарды енгізуіңізді сұраймыз.",
|
22 |
-
creditcard: "Несие картасының нөмірін дұрыс енгізуіңізді сұраймыз.",
|
23 |
-
equalTo: "Осы мәнді қайта енгізуіңізді сұраймыз.",
|
24 |
-
extension: "Файлдың кеңейтуін дұрыс таңдаңыз.",
|
25 |
-
maxlength: $.validator.format("Ұзындығы {0} символдан көр болмасын."),
|
26 |
-
minlength: $.validator.format("Ұзындығы {0} символдан аз болмасын."),
|
27 |
-
rangelength: $.validator.format("Ұзындығы {0}-{1} дейін мән енгізуіңізді сұраймыз."),
|
28 |
-
range: $.validator.format("Пожалуйста, введите число от {0} до {1}. - {0} - {1} санын енгізуіңізді сұраймыз."),
|
29 |
-
max: $.validator.format("{0} аз немесе тең санын енгізуіңіді сұраймыз."),
|
30 |
-
min: $.validator.format("{0} көп немесе тең санын енгізуіңізді сұраймыз.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_kk.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Бұл өрісті міндетті түрде толтырыңыз.",remote:"Дұрыс мағына енгізуіңізді сұраймыз.",email:"Нақты электронды поштаңызды енгізуіңізді сұраймыз.",url:"Нақты URL-ды енгізуіңізді сұраймыз.",date:"Нақты URL-ды енгізуіңізді сұраймыз.",dateISO:"Нақты ISO форматымен сәйкес датасын енгізуіңізді сұраймыз.",number:"Күнді енгізуіңізді сұраймыз.",digits:"Тек қана сандарды енгізуіңізді сұраймыз.",creditcard:"Несие картасының нөмірін дұрыс енгізуіңізді сұраймыз.",equalTo:"Осы мәнді қайта енгізуіңізді сұраймыз.",extension:"Файлдың кеңейтуін дұрыс таңдаңыз.",maxlength:a.validator.format("Ұзындығы {0} символдан көр болмасын."),minlength:a.validator.format("Ұзындығы {0} символдан аз болмасын."),rangelength:a.validator.format("Ұзындығы {0}-{1} дейін мән енгізуіңізді сұраймыз."),range:a.validator.format("Пожалуйста, введите число от {0} до {1}. - {0} - {1} санын енгізуіңізді сұраймыз."),max:a.validator.format("{0} аз немесе тең санын енгізуіңіді сұраймыз."),min:a.validator.format("{0} көп немесе тең санын енгізуіңізді сұраймыз.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ko.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: KO (Korean; 한국어)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "필수 항목입니다.",
|
15 |
-
remote: "항목을 수정하세요.",
|
16 |
-
email: "유효하지 않은 E-Mail주소입니다.",
|
17 |
-
url: "유효하지 않은 URL입니다.",
|
18 |
-
date: "올바른 날짜를 입력하세요.",
|
19 |
-
dateISO: "올바른 날짜(ISO)를 입력하세요.",
|
20 |
-
number: "유효한 숫자가 아닙니다.",
|
21 |
-
digits: "숫자만 입력 가능합니다.",
|
22 |
-
creditcard: "신용카드 번호가 바르지 않습니다.",
|
23 |
-
equalTo: "같은 값을 다시 입력하세요.",
|
24 |
-
extension: "올바른 확장자가 아닙니다.",
|
25 |
-
maxlength: $.validator.format("{0}자를 넘을 수 없습니다. "),
|
26 |
-
minlength: $.validator.format("{0}자 이상 입력하세요."),
|
27 |
-
rangelength: $.validator.format("문자 길이가 {0} 에서 {1} 사이의 값을 입력하세요."),
|
28 |
-
range: $.validator.format("{0} 에서 {1} 사이의 값을 입력하세요."),
|
29 |
-
max: $.validator.format("{0} 이하의 값을 입력하세요."),
|
30 |
-
min: $.validator.format("{0} 이상의 값을 입력하세요.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ko.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"필수 항목입니다.",remote:"항목을 수정하세요.",email:"유효하지 않은 E-Mail주소입니다.",url:"유효하지 않은 URL입니다.",date:"올바른 날짜를 입력하세요.",dateISO:"올바른 날짜(ISO)를 입력하세요.",number:"유효한 숫자가 아닙니다.",digits:"숫자만 입력 가능합니다.",creditcard:"신용카드 번호가 바르지 않습니다.",equalTo:"같은 값을 다시 입력하세요.",extension:"올바른 확장자가 아닙니다.",maxlength:a.validator.format("{0}자를 넘을 수 없습니다. "),minlength:a.validator.format("{0}자 이상 입력하세요."),rangelength:a.validator.format("문자 길이가 {0} 에서 {1} 사이의 값을 입력하세요."),range:a.validator.format("{0} 에서 {1} 사이의 값을 입력하세요."),max:a.validator.format("{0} 이하의 값을 입력하세요."),min:a.validator.format("{0} 이상의 값을 입력하세요.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_lt.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: LT (Lithuanian; lietuvių kalba)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Šis laukas yra privalomas.",
|
15 |
-
remote: "Prašau pataisyti šį lauką.",
|
16 |
-
email: "Prašau įvesti teisingą elektroninio pašto adresą.",
|
17 |
-
url: "Prašau įvesti teisingą URL.",
|
18 |
-
date: "Prašau įvesti teisingą datą.",
|
19 |
-
dateISO: "Prašau įvesti teisingą datą (ISO).",
|
20 |
-
number: "Prašau įvesti teisingą skaičių.",
|
21 |
-
digits: "Prašau naudoti tik skaitmenis.",
|
22 |
-
creditcard: "Prašau įvesti teisingą kreditinės kortelės numerį.",
|
23 |
-
equalTo: "Prašau įvestį tą pačią reikšmę dar kartą.",
|
24 |
-
extension: "Prašau įvesti reikšmę su teisingu plėtiniu.",
|
25 |
-
maxlength: $.validator.format("Prašau įvesti ne daugiau kaip {0} simbolių."),
|
26 |
-
minlength: $.validator.format("Prašau įvesti bent {0} simbolius."),
|
27 |
-
rangelength: $.validator.format("Prašau įvesti reikšmes, kurių ilgis nuo {0} iki {1} simbolių."),
|
28 |
-
range: $.validator.format("Prašau įvesti reikšmę intervale nuo {0} iki {1}."),
|
29 |
-
max: $.validator.format("Prašau įvesti reikšmę mažesnę arba lygią {0}."),
|
30 |
-
min: $.validator.format("Prašau įvesti reikšmę didesnę arba lygią {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_lt.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Šis laukas yra privalomas.",remote:"Prašau pataisyti šį lauką.",email:"Prašau įvesti teisingą elektroninio pašto adresą.",url:"Prašau įvesti teisingą URL.",date:"Prašau įvesti teisingą datą.",dateISO:"Prašau įvesti teisingą datą (ISO).",number:"Prašau įvesti teisingą skaičių.",digits:"Prašau naudoti tik skaitmenis.",creditcard:"Prašau įvesti teisingą kreditinės kortelės numerį.",equalTo:"Prašau įvestį tą pačią reikšmę dar kartą.",extension:"Prašau įvesti reikšmę su teisingu plėtiniu.",maxlength:a.validator.format("Prašau įvesti ne daugiau kaip {0} simbolių."),minlength:a.validator.format("Prašau įvesti bent {0} simbolius."),rangelength:a.validator.format("Prašau įvesti reikšmes, kurių ilgis nuo {0} iki {1} simbolių."),range:a.validator.format("Prašau įvesti reikšmę intervale nuo {0} iki {1}."),max:a.validator.format("Prašau įvesti reikšmę mažesnę arba lygią {0}."),min:a.validator.format("Prašau įvesti reikšmę didesnę arba lygią {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_lv.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: LV (Latvian; latviešu valoda)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Šis lauks ir obligāts.",
|
15 |
-
remote: "Lūdzu, pārbaudiet šo lauku.",
|
16 |
-
email: "Lūdzu, ievadiet derīgu e-pasta adresi.",
|
17 |
-
url: "Lūdzu, ievadiet derīgu URL adresi.",
|
18 |
-
date: "Lūdzu, ievadiet derīgu datumu.",
|
19 |
-
dateISO: "Lūdzu, ievadiet derīgu datumu (ISO).",
|
20 |
-
number: "Lūdzu, ievadiet derīgu numuru.",
|
21 |
-
digits: "Lūdzu, ievadiet tikai ciparus.",
|
22 |
-
creditcard: "Lūdzu, ievadiet derīgu kredītkartes numuru.",
|
23 |
-
equalTo: "Lūdzu, ievadiet to pašu vēlreiz.",
|
24 |
-
extension: "Lūdzu, ievadiet vērtību ar derīgu paplašinājumu.",
|
25 |
-
maxlength: $.validator.format("Lūdzu, ievadiet ne vairāk kā {0} rakstzīmes."),
|
26 |
-
minlength: $.validator.format("Lūdzu, ievadiet vismaz {0} rakstzīmes."),
|
27 |
-
rangelength: $.validator.format("Lūdzu ievadiet {0} līdz {1} rakstzīmes."),
|
28 |
-
range: $.validator.format("Lūdzu, ievadiet skaitli no {0} līdz {1}."),
|
29 |
-
max: $.validator.format("Lūdzu, ievadiet skaitli, kurš ir mazāks vai vienāds ar {0}."),
|
30 |
-
min: $.validator.format("Lūdzu, ievadiet skaitli, kurš ir lielāks vai vienāds ar {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_lv.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Šis lauks ir obligāts.",remote:"Lūdzu, pārbaudiet šo lauku.",email:"Lūdzu, ievadiet derīgu e-pasta adresi.",url:"Lūdzu, ievadiet derīgu URL adresi.",date:"Lūdzu, ievadiet derīgu datumu.",dateISO:"Lūdzu, ievadiet derīgu datumu (ISO).",number:"Lūdzu, ievadiet derīgu numuru.",digits:"Lūdzu, ievadiet tikai ciparus.",creditcard:"Lūdzu, ievadiet derīgu kredītkartes numuru.",equalTo:"Lūdzu, ievadiet to pašu vēlreiz.",extension:"Lūdzu, ievadiet vērtību ar derīgu paplašinājumu.",maxlength:a.validator.format("Lūdzu, ievadiet ne vairāk kā {0} rakstzīmes."),minlength:a.validator.format("Lūdzu, ievadiet vismaz {0} rakstzīmes."),rangelength:a.validator.format("Lūdzu ievadiet {0} līdz {1} rakstzīmes."),range:a.validator.format("Lūdzu, ievadiet skaitli no {0} līdz {1}."),max:a.validator.format("Lūdzu, ievadiet skaitli, kurš ir mazāks vai vienāds ar {0}."),min:a.validator.format("Lūdzu, ievadiet skaitli, kurš ir lielāks vai vienāds ar {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_my.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: MY (Malay; Melayu)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Medan ini diperlukan.",
|
15 |
-
remote: "Sila betulkan medan ini.",
|
16 |
-
email: "Sila masukkan alamat emel yang betul.",
|
17 |
-
url: "Sila masukkan URL yang betul.",
|
18 |
-
date: "Sila masukkan tarikh yang betul.",
|
19 |
-
dateISO: "Sila masukkan tarikh(ISO) yang betul.",
|
20 |
-
number: "Sila masukkan nombor yang betul.",
|
21 |
-
digits: "Sila masukkan nilai digit sahaja.",
|
22 |
-
creditcard: "Sila masukkan nombor kredit kad yang betul.",
|
23 |
-
equalTo: "Sila masukkan nilai yang sama semula.",
|
24 |
-
extension: "Sila masukkan nilai yang telah diterima.",
|
25 |
-
maxlength: $.validator.format("Sila masukkan nilai tidak lebih dari {0} aksara."),
|
26 |
-
minlength: $.validator.format("Sila masukkan nilai sekurang-kurangnya {0} aksara."),
|
27 |
-
rangelength: $.validator.format("Sila masukkan panjang nilai antara {0} dan {1} aksara."),
|
28 |
-
range: $.validator.format("Sila masukkan nilai antara {0} dan {1} aksara."),
|
29 |
-
max: $.validator.format("Sila masukkan nilai yang kurang atau sama dengan {0}."),
|
30 |
-
min: $.validator.format("Sila masukkan nilai yang lebih atau sama dengan {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_my.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Medan ini diperlukan.",remote:"Sila betulkan medan ini.",email:"Sila masukkan alamat emel yang betul.",url:"Sila masukkan URL yang betul.",date:"Sila masukkan tarikh yang betul.",dateISO:"Sila masukkan tarikh(ISO) yang betul.",number:"Sila masukkan nombor yang betul.",digits:"Sila masukkan nilai digit sahaja.",creditcard:"Sila masukkan nombor kredit kad yang betul.",equalTo:"Sila masukkan nilai yang sama semula.",extension:"Sila masukkan nilai yang telah diterima.",maxlength:a.validator.format("Sila masukkan nilai tidak lebih dari {0} aksara."),minlength:a.validator.format("Sila masukkan nilai sekurang-kurangnya {0} aksara."),rangelength:a.validator.format("Sila masukkan panjang nilai antara {0} dan {1} aksara."),range:a.validator.format("Sila masukkan nilai antara {0} dan {1} aksara."),max:a.validator.format("Sila masukkan nilai yang kurang atau sama dengan {0}."),min:a.validator.format("Sila masukkan nilai yang lebih atau sama dengan {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_nl.js
DELETED
@@ -1,43 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: NL (Dutch; Nederlands, Vlaams)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Dit is een verplicht veld.",
|
15 |
-
remote: "Controleer dit veld.",
|
16 |
-
email: "Vul hier een geldig e-mailadres in.",
|
17 |
-
url: "Vul hier een geldige URL in.",
|
18 |
-
date: "Vul hier een geldige datum in.",
|
19 |
-
dateISO: "Vul hier een geldige datum in (ISO-formaat).",
|
20 |
-
number: "Vul hier een geldig getal in.",
|
21 |
-
digits: "Vul hier alleen getallen in.",
|
22 |
-
creditcard: "Vul hier een geldig creditcardnummer in.",
|
23 |
-
equalTo: "Vul hier dezelfde waarde in.",
|
24 |
-
extension: "Vul hier een waarde in met een geldige extensie.",
|
25 |
-
maxlength: $.validator.format("Vul hier maximaal {0} tekens in."),
|
26 |
-
minlength: $.validator.format("Vul hier minimaal {0} tekens in."),
|
27 |
-
rangelength: $.validator.format("Vul hier een waarde in van minimaal {0} en maximaal {1} tekens."),
|
28 |
-
range: $.validator.format("Vul hier een waarde in van minimaal {0} en maximaal {1}."),
|
29 |
-
max: $.validator.format("Vul hier een waarde in kleiner dan of gelijk aan {0}."),
|
30 |
-
min: $.validator.format("Vul hier een waarde in groter dan of gelijk aan {0}."),
|
31 |
-
|
32 |
-
// for validations in additional-methods.js
|
33 |
-
iban: "Vul hier een geldig IBAN in.",
|
34 |
-
dateNL: "Vul hier een geldige datum in.",
|
35 |
-
phoneNL: "Vul hier een geldig Nederlands telefoonnummer in.",
|
36 |
-
mobileNL: "Vul hier een geldig Nederlands mobiel telefoonnummer in.",
|
37 |
-
postalcodeNL: "Vul hier een geldige postcode in.",
|
38 |
-
bankaccountNL: "Vul hier een geldig bankrekeningnummer in.",
|
39 |
-
giroaccountNL: "Vul hier een geldig gironummer in.",
|
40 |
-
bankorgiroaccountNL: "Vul hier een geldig bank- of gironummer in."
|
41 |
-
});
|
42 |
-
|
43 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_nl.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Dit is een verplicht veld.",remote:"Controleer dit veld.",email:"Vul hier een geldig e-mailadres in.",url:"Vul hier een geldige URL in.",date:"Vul hier een geldige datum in.",dateISO:"Vul hier een geldige datum in (ISO-formaat).",number:"Vul hier een geldig getal in.",digits:"Vul hier alleen getallen in.",creditcard:"Vul hier een geldig creditcardnummer in.",equalTo:"Vul hier dezelfde waarde in.",extension:"Vul hier een waarde in met een geldige extensie.",maxlength:a.validator.format("Vul hier maximaal {0} tekens in."),minlength:a.validator.format("Vul hier minimaal {0} tekens in."),rangelength:a.validator.format("Vul hier een waarde in van minimaal {0} en maximaal {1} tekens."),range:a.validator.format("Vul hier een waarde in van minimaal {0} en maximaal {1}."),max:a.validator.format("Vul hier een waarde in kleiner dan of gelijk aan {0}."),min:a.validator.format("Vul hier een waarde in groter dan of gelijk aan {0}."),iban:"Vul hier een geldig IBAN in.",dateNL:"Vul hier een geldige datum in.",phoneNL:"Vul hier een geldig Nederlands telefoonnummer in.",mobileNL:"Vul hier een geldig Nederlands mobiel telefoonnummer in.",postalcodeNL:"Vul hier een geldige postcode in.",bankaccountNL:"Vul hier een geldig bankrekeningnummer in.",giroaccountNL:"Vul hier een geldig gironummer in.",bankorgiroaccountNL:"Vul hier een geldig bank- of gironummer in."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_no.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: NO (Norwegian; Norsk)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Dette feltet er obligatorisk.",
|
15 |
-
maxlength: $.validator.format("Maksimalt {0} tegn."),
|
16 |
-
minlength: $.validator.format("Minimum {0} tegn."),
|
17 |
-
rangelength: $.validator.format("Angi minimum {0} og maksimum {1} tegn."),
|
18 |
-
email: "Oppgi en gyldig epostadresse.",
|
19 |
-
url: "Angi en gyldig URL.",
|
20 |
-
date: "Angi en gyldig dato.",
|
21 |
-
dateISO: "Angi en gyldig dato (&ARING;&ARING;&ARING;&ARING;-MM-DD).",
|
22 |
-
dateSE: "Angi en gyldig dato.",
|
23 |
-
number: "Angi et gyldig nummer.",
|
24 |
-
numberSE: "Angi et gyldig nummer.",
|
25 |
-
digits: "Skriv kun tall.",
|
26 |
-
equalTo: "Skriv samme verdi igjen.",
|
27 |
-
range: $.validator.format("Angi en verdi mellom {0} og {1}."),
|
28 |
-
max: $.validator.format("Angi en verdi som er mindre eller lik {0}."),
|
29 |
-
min: $.validator.format("Angi en verdi som er større eller lik {0}."),
|
30 |
-
creditcard: "Angi et gyldig kredittkortnummer."
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_no.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Dette feltet er obligatorisk.",maxlength:a.validator.format("Maksimalt {0} tegn."),minlength:a.validator.format("Minimum {0} tegn."),rangelength:a.validator.format("Angi minimum {0} og maksimum {1} tegn."),email:"Oppgi en gyldig epostadresse.",url:"Angi en gyldig URL.",date:"Angi en gyldig dato.",dateISO:"Angi en gyldig dato (&ARING;&ARING;&ARING;&ARING;-MM-DD).",dateSE:"Angi en gyldig dato.",number:"Angi et gyldig nummer.",numberSE:"Angi et gyldig nummer.",digits:"Skriv kun tall.",equalTo:"Skriv samme verdi igjen.",range:a.validator.format("Angi en verdi mellom {0} og {1}."),max:a.validator.format("Angi en verdi som er mindre eller lik {0}."),min:a.validator.format("Angi en verdi som er større eller lik {0}."),creditcard:"Angi et gyldig kredittkortnummer."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_pl.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: PL (Polish; język polski, polszczyzna)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "To pole jest wymagane.",
|
15 |
-
remote: "Proszę o wypełnienie tego pola.",
|
16 |
-
email: "Proszę o podanie prawidłowego adresu email.",
|
17 |
-
url: "Proszę o podanie prawidłowego URL.",
|
18 |
-
date: "Proszę o podanie prawidłowej daty.",
|
19 |
-
dateISO: "Proszę o podanie prawidłowej daty (ISO).",
|
20 |
-
number: "Proszę o podanie prawidłowej liczby.",
|
21 |
-
digits: "Proszę o podanie samych cyfr.",
|
22 |
-
creditcard: "Proszę o podanie prawidłowej karty kredytowej.",
|
23 |
-
equalTo: "Proszę o podanie tej samej wartości ponownie.",
|
24 |
-
extension: "Proszę o podanie wartości z prawidłowym rozszerzeniem.",
|
25 |
-
maxlength: $.validator.format("Proszę o podanie nie więcej niż {0} znaków."),
|
26 |
-
minlength: $.validator.format("Proszę o podanie przynajmniej {0} znaków."),
|
27 |
-
rangelength: $.validator.format("Proszę o podanie wartości o długości od {0} do {1} znaków."),
|
28 |
-
range: $.validator.format("Proszę o podanie wartości z przedziału od {0} do {1}."),
|
29 |
-
max: $.validator.format("Proszę o podanie wartości mniejszej bądź równej {0}."),
|
30 |
-
min: $.validator.format("Proszę o podanie wartości większej bądź równej {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_pl.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"To pole jest wymagane.",remote:"Proszę o wypełnienie tego pola.",email:"Proszę o podanie prawidłowego adresu email.",url:"Proszę o podanie prawidłowego URL.",date:"Proszę o podanie prawidłowej daty.",dateISO:"Proszę o podanie prawidłowej daty (ISO).",number:"Proszę o podanie prawidłowej liczby.",digits:"Proszę o podanie samych cyfr.",creditcard:"Proszę o podanie prawidłowej karty kredytowej.",equalTo:"Proszę o podanie tej samej wartości ponownie.",extension:"Proszę o podanie wartości z prawidłowym rozszerzeniem.",maxlength:a.validator.format("Proszę o podanie nie więcej niż {0} znaków."),minlength:a.validator.format("Proszę o podanie przynajmniej {0} znaków."),rangelength:a.validator.format("Proszę o podanie wartości o długości od {0} do {1} znaków."),range:a.validator.format("Proszę o podanie wartości z przedziału od {0} do {1}."),max:a.validator.format("Proszę o podanie wartości mniejszej bądź równej {0}."),min:a.validator.format("Proszę o podanie wartości większej bądź równej {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_pt_BR.js
DELETED
@@ -1,39 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: PT (Portuguese; português)
|
12 |
-
* Region: BR (Brazil)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "Este campo é requerido.",
|
16 |
-
remote: "Por favor, corrija este campo.",
|
17 |
-
email: "Por favor, forneça um endereço de email válido.",
|
18 |
-
url: "Por favor, forneça uma URL válida.",
|
19 |
-
date: "Por favor, forneça uma data válida.",
|
20 |
-
dateISO: "Por favor, forneça uma data válida (ISO).",
|
21 |
-
number: "Por favor, forneça um número válido.",
|
22 |
-
digits: "Por favor, forneça somente dígitos.",
|
23 |
-
creditcard: "Por favor, forneça um cartão de crédito válido.",
|
24 |
-
equalTo: "Por favor, forneça o mesmo valor novamente.",
|
25 |
-
extension: "Por favor, forneça um valor com uma extensão válida.",
|
26 |
-
maxlength: $.validator.format("Por favor, forneça não mais que {0} caracteres."),
|
27 |
-
minlength: $.validator.format("Por favor, forneça ao menos {0} caracteres."),
|
28 |
-
rangelength: $.validator.format("Por favor, forneça um valor entre {0} e {1} caracteres de comprimento."),
|
29 |
-
range: $.validator.format("Por favor, forneça um valor entre {0} e {1}."),
|
30 |
-
max: $.validator.format("Por favor, forneça um valor menor ou igual a {0}."),
|
31 |
-
min: $.validator.format("Por favor, forneça um valor maior ou igual a {0}."),
|
32 |
-
nifES: "Por favor, forneça um NIF válido.",
|
33 |
-
nieES: "Por favor, forneça um NIE válido.",
|
34 |
-
cifEE: "Por favor, forneça um CIF válido.",
|
35 |
-
postalcodeBR: "Por favor, forneça um CEP válido.",
|
36 |
-
cpfBR: "Por favor, forneça um CPF válido."
|
37 |
-
});
|
38 |
-
|
39 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_pt_BR.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Este campo é requerido.",remote:"Por favor, corrija este campo.",email:"Por favor, forneça um endereço de email válido.",url:"Por favor, forneça uma URL válida.",date:"Por favor, forneça uma data válida.",dateISO:"Por favor, forneça uma data válida (ISO).",number:"Por favor, forneça um número válido.",digits:"Por favor, forneça somente dígitos.",creditcard:"Por favor, forneça um cartão de crédito válido.",equalTo:"Por favor, forneça o mesmo valor novamente.",extension:"Por favor, forneça um valor com uma extensão válida.",maxlength:a.validator.format("Por favor, forneça não mais que {0} caracteres."),minlength:a.validator.format("Por favor, forneça ao menos {0} caracteres."),rangelength:a.validator.format("Por favor, forneça um valor entre {0} e {1} caracteres de comprimento."),range:a.validator.format("Por favor, forneça um valor entre {0} e {1}."),max:a.validator.format("Por favor, forneça um valor menor ou igual a {0}."),min:a.validator.format("Por favor, forneça um valor maior ou igual a {0}."),nifES:"Por favor, forneça um NIF válido.",nieES:"Por favor, forneça um NIE válido.",cifEE:"Por favor, forneça um CIF válido.",postalcodeBR:"Por favor, forneça um CEP válido.",cpfBR:"Por favor, forneça um CPF válido."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_pt_PT.js
DELETED
@@ -1,37 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: PT (Portuguese; português)
|
12 |
-
* Region: PT (Portugal)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "Campo de preenchimento obrigatório.",
|
16 |
-
remote: "Por favor, corrija este campo.",
|
17 |
-
email: "Por favor, introduza um endereço eletrónico válido.",
|
18 |
-
url: "Por favor, introduza um URL válido.",
|
19 |
-
date: "Por favor, introduza uma data válida.",
|
20 |
-
dateISO: "Por favor, introduza uma data válida (ISO).",
|
21 |
-
number: "Por favor, introduza um número válido.",
|
22 |
-
digits: "Por favor, introduza apenas dígitos.",
|
23 |
-
creditcard: "Por favor, introduza um número de cartão de crédito válido.",
|
24 |
-
equalTo: "Por favor, introduza de novo o mesmo valor.",
|
25 |
-
extension: "Por favor, introduza um ficheiro com uma extensão válida.",
|
26 |
-
maxlength: $.validator.format("Por favor, não introduza mais do que {0} caracteres."),
|
27 |
-
minlength: $.validator.format("Por favor, introduza pelo menos {0} caracteres."),
|
28 |
-
rangelength: $.validator.format("Por favor, introduza entre {0} e {1} caracteres."),
|
29 |
-
range: $.validator.format("Por favor, introduza um valor entre {0} e {1}."),
|
30 |
-
max: $.validator.format("Por favor, introduza um valor menor ou igual a {0}."),
|
31 |
-
min: $.validator.format("Por favor, introduza um valor maior ou igual a {0}."),
|
32 |
-
nifES: "Por favor, introduza um NIF válido.",
|
33 |
-
nieES: "Por favor, introduza um NIE válido.",
|
34 |
-
cifES: "Por favor, introduza um CIF válido."
|
35 |
-
});
|
36 |
-
|
37 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_pt_PT.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Campo de preenchimento obrigatório.",remote:"Por favor, corrija este campo.",email:"Por favor, introduza um endereço eletrónico válido.",url:"Por favor, introduza um URL válido.",date:"Por favor, introduza uma data válida.",dateISO:"Por favor, introduza uma data válida (ISO).",number:"Por favor, introduza um número válido.",digits:"Por favor, introduza apenas dígitos.",creditcard:"Por favor, introduza um número de cartão de crédito válido.",equalTo:"Por favor, introduza de novo o mesmo valor.",extension:"Por favor, introduza um ficheiro com uma extensão válida.",maxlength:a.validator.format("Por favor, não introduza mais do que {0} caracteres."),minlength:a.validator.format("Por favor, introduza pelo menos {0} caracteres."),rangelength:a.validator.format("Por favor, introduza entre {0} e {1} caracteres."),range:a.validator.format("Por favor, introduza um valor entre {0} e {1}."),max:a.validator.format("Por favor, introduza um valor menor ou igual a {0}."),min:a.validator.format("Por favor, introduza um valor maior ou igual a {0}."),nifES:"Por favor, introduza um NIF válido.",nieES:"Por favor, introduza um NIE válido.",cifES:"Por favor, introduza um CIF válido."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ro.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: RO (Romanian, limba română)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Acest câmp este obligatoriu.",
|
15 |
-
remote: "Te rugăm să completezi acest câmp.",
|
16 |
-
email: "Te rugăm să introduci o adresă de email validă",
|
17 |
-
url: "Te rugăm sa introduci o adresă URL validă.",
|
18 |
-
date: "Te rugăm să introduci o dată corectă.",
|
19 |
-
dateISO: "Te rugăm să introduci o dată (ISO) corectă.",
|
20 |
-
number: "Te rugăm să introduci un număr întreg valid.",
|
21 |
-
digits: "Te rugăm să introduci doar cifre.",
|
22 |
-
creditcard: "Te rugăm să introduci un numar de carte de credit valid.",
|
23 |
-
equalTo: "Te rugăm să reintroduci valoarea.",
|
24 |
-
extension: "Te rugăm să introduci o valoare cu o extensie validă.",
|
25 |
-
maxlength: $.validator.format("Te rugăm să nu introduci mai mult de {0} caractere."),
|
26 |
-
minlength: $.validator.format("Te rugăm să introduci cel puțin {0} caractere."),
|
27 |
-
rangelength: $.validator.format("Te rugăm să introduci o valoare între {0} și {1} caractere."),
|
28 |
-
range: $.validator.format("Te rugăm să introduci o valoare între {0} și {1}."),
|
29 |
-
max: $.validator.format("Te rugăm să introduci o valoare egal sau mai mică decât {0}."),
|
30 |
-
min: $.validator.format("Te rugăm să introduci o valoare egal sau mai mare decât {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ro.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Acest câmp este obligatoriu.",remote:"Te rugăm să completezi acest câmp.",email:"Te rugăm să introduci o adresă de email validă",url:"Te rugăm sa introduci o adresă URL validă.",date:"Te rugăm să introduci o dată corectă.",dateISO:"Te rugăm să introduci o dată (ISO) corectă.",number:"Te rugăm să introduci un număr întreg valid.",digits:"Te rugăm să introduci doar cifre.",creditcard:"Te rugăm să introduci un numar de carte de credit valid.",equalTo:"Te rugăm să reintroduci valoarea.",extension:"Te rugăm să introduci o valoare cu o extensie validă.",maxlength:a.validator.format("Te rugăm să nu introduci mai mult de {0} caractere."),minlength:a.validator.format("Te rugăm să introduci cel puțin {0} caractere."),rangelength:a.validator.format("Te rugăm să introduci o valoare între {0} și {1} caractere."),range:a.validator.format("Te rugăm să introduci o valoare între {0} și {1}."),max:a.validator.format("Te rugăm să introduci o valoare egal sau mai mică decât {0}."),min:a.validator.format("Te rugăm să introduci o valoare egal sau mai mare decât {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_ru.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: RU (Russian; русский язык)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Это поле необходимо заполнить.",
|
15 |
-
remote: "Пожалуйста, введите правильное значение.",
|
16 |
-
email: "Пожалуйста, введите корректный адрес электронной почты.",
|
17 |
-
url: "Пожалуйста, введите корректный URL.",
|
18 |
-
date: "Пожалуйста, введите корректную дату.",
|
19 |
-
dateISO: "Пожалуйста, введите корректную дату в формате ISO.",
|
20 |
-
number: "Пожалуйста, введите число.",
|
21 |
-
digits: "Пожалуйста, вводите только цифры.",
|
22 |
-
creditcard: "Пожалуйста, введите правильный номер кредитной карты.",
|
23 |
-
equalTo: "Пожалуйста, введите такое же значение ещё раз.",
|
24 |
-
extension: "Пожалуйста, выберите файл с правильным расширением.",
|
25 |
-
maxlength: $.validator.format("Пожалуйста, введите не больше {0} символов."),
|
26 |
-
minlength: $.validator.format("Пожалуйста, введите не меньше {0} символов."),
|
27 |
-
rangelength: $.validator.format("Пожалуйста, введите значение длиной от {0} до {1} символов."),
|
28 |
-
range: $.validator.format("Пожалуйста, введите число от {0} до {1}."),
|
29 |
-
max: $.validator.format("Пожалуйста, введите число, меньшее или равное {0}."),
|
30 |
-
min: $.validator.format("Пожалуйста, введите число, большее или равное {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_ru.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Это поле необходимо заполнить.",remote:"Пожалуйста, введите правильное значение.",email:"Пожалуйста, введите корректный адрес электронной почты.",url:"Пожалуйста, введите корректный URL.",date:"Пожалуйста, введите корректную дату.",dateISO:"Пожалуйста, введите корректную дату в формате ISO.",number:"Пожалуйста, введите число.",digits:"Пожалуйста, вводите только цифры.",creditcard:"Пожалуйста, введите правильный номер кредитной карты.",equalTo:"Пожалуйста, введите такое же значение ещё раз.",extension:"Пожалуйста, выберите файл с правильным расширением.",maxlength:a.validator.format("Пожалуйста, введите не больше {0} символов."),minlength:a.validator.format("Пожалуйста, введите не меньше {0} символов."),rangelength:a.validator.format("Пожалуйста, введите значение длиной от {0} до {1} символов."),range:a.validator.format("Пожалуйста, введите число от {0} до {1}."),max:a.validator.format("Пожалуйста, введите число, меньшее или равное {0}."),min:a.validator.format("Пожалуйста, введите число, большее или равное {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_si.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: SI (Slovenian)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "To polje je obvezno.",
|
15 |
-
remote: "Vpis v tem polju ni v pravi obliki.",
|
16 |
-
email: "Prosimo, vnesite pravi email naslov.",
|
17 |
-
url: "Prosimo, vnesite pravi URL.",
|
18 |
-
date: "Prosimo, vnesite pravi datum.",
|
19 |
-
dateISO: "Prosimo, vnesite pravi datum (ISO).",
|
20 |
-
number: "Prosimo, vnesite pravo številko.",
|
21 |
-
digits: "Prosimo, vnesite samo številke.",
|
22 |
-
creditcard: "Prosimo, vnesite pravo številko kreditne kartice.",
|
23 |
-
equalTo: "Prosimo, ponovno vnesite enako vsebino.",
|
24 |
-
extension: "Prosimo, vnesite vsebino z pravo končnico.",
|
25 |
-
maxlength: $.validator.format("Prosimo, da ne vnašate več kot {0} znakov."),
|
26 |
-
minlength: $.validator.format("Prosimo, vnesite vsaj {0} znakov."),
|
27 |
-
rangelength: $.validator.format("Prosimo, vnesite od {0} do {1} znakov."),
|
28 |
-
range: $.validator.format("Prosimo, vnesite vrednost med {0} in {1}."),
|
29 |
-
max: $.validator.format("Prosimo, vnesite vrednost manjšo ali enako {0}."),
|
30 |
-
min: $.validator.format("Prosimo, vnesite vrednost večjo ali enako {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_si.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"To polje je obvezno.",remote:"Vpis v tem polju ni v pravi obliki.",email:"Prosimo, vnesite pravi email naslov.",url:"Prosimo, vnesite pravi URL.",date:"Prosimo, vnesite pravi datum.",dateISO:"Prosimo, vnesite pravi datum (ISO).",number:"Prosimo, vnesite pravo številko.",digits:"Prosimo, vnesite samo številke.",creditcard:"Prosimo, vnesite pravo številko kreditne kartice.",equalTo:"Prosimo, ponovno vnesite enako vsebino.",extension:"Prosimo, vnesite vsebino z pravo končnico.",maxlength:a.validator.format("Prosimo, da ne vnašate več kot {0} znakov."),minlength:a.validator.format("Prosimo, vnesite vsaj {0} znakov."),rangelength:a.validator.format("Prosimo, vnesite od {0} do {1} znakov."),range:a.validator.format("Prosimo, vnesite vrednost med {0} in {1}."),max:a.validator.format("Prosimo, vnesite vrednost manjšo ali enako {0}."),min:a.validator.format("Prosimo, vnesite vrednost večjo ali enako {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_sk.js
DELETED
@@ -1,30 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: SK (Slovak; slovenčina, slovenský jazyk)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Povinné zadať.",
|
15 |
-
maxlength: $.validator.format("Maximálne {0} znakov."),
|
16 |
-
minlength: $.validator.format("Minimálne {0} znakov."),
|
17 |
-
rangelength: $.validator.format("Minimálne {0} a Maximálne {1} znakov."),
|
18 |
-
email: "E-mailová adresa musí byť platná.",
|
19 |
-
url: "URL musí byť platný.",
|
20 |
-
date: "Musí byť dátum.",
|
21 |
-
number: "Musí byť číslo.",
|
22 |
-
digits: "Môže obsahovať iba číslice.",
|
23 |
-
equalTo: "Dva hodnoty sa musia rovnať.",
|
24 |
-
range: $.validator.format("Musí byť medzi {0} a {1}."),
|
25 |
-
max: $.validator.format("Nemôže byť viac ako{0}."),
|
26 |
-
min: $.validator.format("Nemôže byť menej ako{0}."),
|
27 |
-
creditcard: "Číslo platobnej karty musí byť platné."
|
28 |
-
});
|
29 |
-
|
30 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_sk.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Povinné zadať.",maxlength:a.validator.format("Maximálne {0} znakov."),minlength:a.validator.format("Minimálne {0} znakov."),rangelength:a.validator.format("Minimálne {0} a Maximálne {1} znakov."),email:"E-mailová adresa musí byť platná.",url:"URL musí byť platný.",date:"Musí byť dátum.",number:"Musí byť číslo.",digits:"Môže obsahovať iba číslice.",equalTo:"Dva hodnoty sa musia rovnať.",range:a.validator.format("Musí byť medzi {0} a {1}."),max:a.validator.format("Nemôže byť viac ako{0}."),min:a.validator.format("Nemôže byť menej ako{0}."),creditcard:"Číslo platobnej karty musí byť platné."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_sl.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Language: SL (Slovenian; slovenski jezik)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "To polje je obvezno.",
|
15 |
-
remote: "Prosimo popravite to polje.",
|
16 |
-
email: "Prosimo vnesite veljaven email naslov.",
|
17 |
-
url: "Prosimo vnesite veljaven URL naslov.",
|
18 |
-
date: "Prosimo vnesite veljaven datum.",
|
19 |
-
dateISO: "Prosimo vnesite veljaven ISO datum.",
|
20 |
-
number: "Prosimo vnesite veljavno število.",
|
21 |
-
digits: "Prosimo vnesite samo števila.",
|
22 |
-
creditcard: "Prosimo vnesite veljavno številko kreditne kartice.",
|
23 |
-
equalTo: "Prosimo ponovno vnesite vrednost.",
|
24 |
-
extension: "Prosimo vnesite vrednost z veljavno končnico.",
|
25 |
-
maxlength: $.validator.format("Prosimo vnesite največ {0} znakov."),
|
26 |
-
minlength: $.validator.format("Prosimo vnesite najmanj {0} znakov."),
|
27 |
-
rangelength: $.validator.format("Prosimo vnesite najmanj {0} in največ {1} znakov."),
|
28 |
-
range: $.validator.format("Prosimo vnesite vrednost med {0} in {1}."),
|
29 |
-
max: $.validator.format("Prosimo vnesite vrednost manjše ali enako {0}."),
|
30 |
-
min: $.validator.format("Prosimo vnesite vrednost večje ali enako {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_sl.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"To polje je obvezno.",remote:"Prosimo popravite to polje.",email:"Prosimo vnesite veljaven email naslov.",url:"Prosimo vnesite veljaven URL naslov.",date:"Prosimo vnesite veljaven datum.",dateISO:"Prosimo vnesite veljaven ISO datum.",number:"Prosimo vnesite veljavno število.",digits:"Prosimo vnesite samo števila.",creditcard:"Prosimo vnesite veljavno številko kreditne kartice.",equalTo:"Prosimo ponovno vnesite vrednost.",extension:"Prosimo vnesite vrednost z veljavno končnico.",maxlength:a.validator.format("Prosimo vnesite največ {0} znakov."),minlength:a.validator.format("Prosimo vnesite najmanj {0} znakov."),rangelength:a.validator.format("Prosimo vnesite najmanj {0} in največ {1} znakov."),range:a.validator.format("Prosimo vnesite vrednost med {0} in {1}."),max:a.validator.format("Prosimo vnesite vrednost manjše ali enako {0}."),min:a.validator.format("Prosimo vnesite vrednost večje ali enako {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_sr.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: SR (Serbian; српски језик)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Поље је обавезно.",
|
15 |
-
remote: "Средите ово поље.",
|
16 |
-
email: "Унесите исправну и-мејл адресу.",
|
17 |
-
url: "Унесите исправан URL.",
|
18 |
-
date: "Унесите исправан датум.",
|
19 |
-
dateISO: "Унесите исправан датум (ISO).",
|
20 |
-
number: "Унесите исправан број.",
|
21 |
-
digits: "Унесите само цифе.",
|
22 |
-
creditcard: "Унесите исправан број кредитне картице.",
|
23 |
-
equalTo: "Унесите исту вредност поново.",
|
24 |
-
extension: "Унесите вредност са одговарајућом екстензијом.",
|
25 |
-
maxlength: $.validator.format("Унесите мање од {0} карактера."),
|
26 |
-
minlength: $.validator.format("Унесите барем {0} карактера."),
|
27 |
-
rangelength: $.validator.format("Унесите вредност дугачку између {0} и {1} карактера."),
|
28 |
-
range: $.validator.format("Унесите вредност између {0} и {1}."),
|
29 |
-
max: $.validator.format("Унесите вредност мању или једнаку {0}."),
|
30 |
-
min: $.validator.format("Унесите вредност већу или једнаку {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_sr.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Поље је обавезно.",remote:"Средите ово поље.",email:"Унесите исправну и-мејл адресу.",url:"Унесите исправан URL.",date:"Унесите исправан датум.",dateISO:"Унесите исправан датум (ISO).",number:"Унесите исправан број.",digits:"Унесите само цифе.",creditcard:"Унесите исправан број кредитне картице.",equalTo:"Унесите исту вредност поново.",extension:"Унесите вредност са одговарајућом екстензијом.",maxlength:a.validator.format("Унесите мање од {0} карактера."),minlength:a.validator.format("Унесите барем {0} карактера."),rangelength:a.validator.format("Унесите вредност дугачку између {0} и {1} карактера."),range:a.validator.format("Унесите вредност између {0} и {1}."),max:a.validator.format("Унесите вредност мању или једнаку {0}."),min:a.validator.format("Унесите вредност већу или једнаку {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_sr_lat.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: SR (Serbian - Latin alphabet; srpski jezik - latinica)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Polje je obavezno.",
|
15 |
-
remote: "Sredite ovo polje.",
|
16 |
-
email: "Unesite ispravnu e-mail adresu",
|
17 |
-
url: "Unesite ispravan URL.",
|
18 |
-
date: "Unesite ispravan datum.",
|
19 |
-
dateISO: "Unesite ispravan datum (ISO).",
|
20 |
-
number: "Unesite ispravan broj.",
|
21 |
-
digits: "Unesite samo cifre.",
|
22 |
-
creditcard: "Unesite ispravan broj kreditne kartice.",
|
23 |
-
equalTo: "Unesite istu vrednost ponovo.",
|
24 |
-
extension: "Unesite vrednost sa odgovarajućom ekstenzijom.",
|
25 |
-
maxlength: $.validator.format("Unesite manje od {0} karaktera."),
|
26 |
-
minlength: $.validator.format("Unesite barem {0} karaktera."),
|
27 |
-
rangelength: $.validator.format("Unesite vrednost dugačku između {0} i {1} karaktera."),
|
28 |
-
range: $.validator.format("Unesite vrednost između {0} i {1}."),
|
29 |
-
max: $.validator.format("Unesite vrednost manju ili jednaku {0}."),
|
30 |
-
min: $.validator.format("Unesite vrednost veću ili jednaku {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_sr_lat.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Polje je obavezno.",remote:"Sredite ovo polje.",email:"Unesite ispravnu e-mail adresu",url:"Unesite ispravan URL.",date:"Unesite ispravan datum.",dateISO:"Unesite ispravan datum (ISO).",number:"Unesite ispravan broj.",digits:"Unesite samo cifre.",creditcard:"Unesite ispravan broj kreditne kartice.",equalTo:"Unesite istu vrednost ponovo.",extension:"Unesite vrednost sa odgovarajućom ekstenzijom.",maxlength:a.validator.format("Unesite manje od {0} karaktera."),minlength:a.validator.format("Unesite barem {0} karaktera."),rangelength:a.validator.format("Unesite vrednost dugačku između {0} i {1} karaktera."),range:a.validator.format("Unesite vrednost između {0} i {1}."),max:a.validator.format("Unesite vrednost manju ili jednaku {0}."),min:a.validator.format("Unesite vrednost veću ili jednaku {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_sv.js
DELETED
@@ -1,31 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: SV (Swedish; Svenska)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Detta fält är obligatoriskt.",
|
15 |
-
maxlength: $.validator.format("Du får ange högst {0} tecken."),
|
16 |
-
minlength: $.validator.format("Du måste ange minst {0} tecken."),
|
17 |
-
rangelength: $.validator.format("Ange minst {0} och max {1} tecken."),
|
18 |
-
email: "Ange en korrekt e-postadress.",
|
19 |
-
url: "Ange en korrekt URL.",
|
20 |
-
date: "Ange ett korrekt datum.",
|
21 |
-
dateISO: "Ange ett korrekt datum (ÅÅÅÅ-MM-DD).",
|
22 |
-
number: "Ange ett korrekt nummer.",
|
23 |
-
digits: "Ange endast siffror.",
|
24 |
-
equalTo: "Ange samma värde igen.",
|
25 |
-
range: $.validator.format("Ange ett värde mellan {0} och {1}."),
|
26 |
-
max: $.validator.format("Ange ett värde som är mindre eller lika med {0}."),
|
27 |
-
min: $.validator.format("Ange ett värde som är större eller lika med {0}."),
|
28 |
-
creditcard: "Ange ett korrekt kreditkortsnummer."
|
29 |
-
});
|
30 |
-
|
31 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_sv.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Detta fält är obligatoriskt.",maxlength:a.validator.format("Du får ange högst {0} tecken."),minlength:a.validator.format("Du måste ange minst {0} tecken."),rangelength:a.validator.format("Ange minst {0} och max {1} tecken."),email:"Ange en korrekt e-postadress.",url:"Ange en korrekt URL.",date:"Ange ett korrekt datum.",dateISO:"Ange ett korrekt datum (ÅÅÅÅ-MM-DD).",number:"Ange ett korrekt nummer.",digits:"Ange endast siffror.",equalTo:"Ange samma värde igen.",range:a.validator.format("Ange ett värde mellan {0} och {1}."),max:a.validator.format("Ange ett värde som är mindre eller lika med {0}."),min:a.validator.format("Ange ett värde som är större eller lika med {0}."),creditcard:"Ange ett korrekt kreditkortsnummer."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_th.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: TH (Thai; ไทย)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "โปรดระบุ",
|
15 |
-
remote: "โปรดแก้ไขให้ถูกต้อง",
|
16 |
-
email: "โปรดระบุที่อยู่อีเมล์ที่ถูกต้อง",
|
17 |
-
url: "โปรดระบุ URL ที่ถูกต้อง",
|
18 |
-
date: "โปรดระบุวันที่ ที่ถูกต้อง",
|
19 |
-
dateISO: "โปรดระบุวันที่ ที่ถูกต้อง (ระบบ ISO).",
|
20 |
-
number: "โปรดระบุทศนิยมที่ถูกต้อง",
|
21 |
-
digits: "โปรดระบุจำนวนเต็มที่ถูกต้อง",
|
22 |
-
creditcard: "โปรดระบุรหัสบัตรเครดิตที่ถูกต้อง",
|
23 |
-
equalTo: "โปรดระบุค่าเดิมอีกครั้ง",
|
24 |
-
extension: "โปรดระบุค่าที่มีส่วนขยายที่ถูกต้อง",
|
25 |
-
maxlength: $.validator.format("โปรดอย่าระบุค่าที่ยาวกว่า {0} อักขระ"),
|
26 |
-
minlength: $.validator.format("โปรดอย่าระบุค่าที่สั้นกว่า {0} อักขระ"),
|
27 |
-
rangelength: $.validator.format("โปรดอย่าระบุค่าความยาวระหว่าง {0} ถึง {1} อักขระ"),
|
28 |
-
range: $.validator.format("โปรดระบุค่าระหว่าง {0} และ {1}"),
|
29 |
-
max: $.validator.format("โปรดระบุค่าน้อยกว่าหรือเท่ากับ {0}"),
|
30 |
-
min: $.validator.format("โปรดระบุค่ามากกว่าหรือเท่ากับ {0}")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_th.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"โปรดระบุ",remote:"โปรดแก้ไขให้ถูกต้อง",email:"โปรดระบุที่อยู่อีเมล์ที่ถูกต้อง",url:"โปรดระบุ URL ที่ถูกต้อง",date:"โปรดระบุวันที่ ที่ถูกต้อง",dateISO:"โปรดระบุวันที่ ที่ถูกต้อง (ระบบ ISO).",number:"โปรดระบุทศนิยมที่ถูกต้อง",digits:"โปรดระบุจำนวนเต็มที่ถูกต้อง",creditcard:"โปรดระบุรหัสบัตรเครดิตที่ถูกต้อง",equalTo:"โปรดระบุค่าเดิมอีกครั้ง",extension:"โปรดระบุค่าที่มีส่วนขยายที่ถูกต้อง",maxlength:a.validator.format("โปรดอย่าระบุค่าที่ยาวกว่า {0} อักขระ"),minlength:a.validator.format("โปรดอย่าระบุค่าที่สั้นกว่า {0} อักขระ"),rangelength:a.validator.format("โปรดอย่าระบุค่าความยาวระหว่าง {0} ถึง {1} อักขระ"),range:a.validator.format("โปรดระบุค่าระหว่าง {0} และ {1}"),max:a.validator.format("โปรดระบุค่าน้อยกว่าหรือเท่ากับ {0}"),min:a.validator.format("โปรดระบุค่ามากกว่าหรือเท่ากับ {0}")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_tj.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: TJ (Tajikistan; Забони тоҷикӣ)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Ворид кардани ин филд маҷбури аст.",
|
15 |
-
remote: "Илтимос, маълумоти саҳеҳ ворид кунед.",
|
16 |
-
email: "Илтимос, почтаи электронии саҳеҳ ворид кунед.",
|
17 |
-
url: "Илтимос, URL адреси саҳеҳ ворид кунед.",
|
18 |
-
date: "Илтимос, таърихи саҳеҳ ворид кунед.",
|
19 |
-
dateISO: "Илтимос, таърихи саҳеҳи (ISO)ӣ ворид кунед.",
|
20 |
-
number: "Илтимос, рақамҳои саҳеҳ ворид кунед.",
|
21 |
-
digits: "Илтимос, танҳо рақам ворид кунед.",
|
22 |
-
creditcard: "Илтимос, кредит карди саҳеҳ ворид кунед.",
|
23 |
-
equalTo: "Илтимос, миқдори баробар ворид кунед.",
|
24 |
-
extension: "Илтимос, қофияи файлро дуруст интихоб кунед",
|
25 |
-
maxlength: $.validator.format("Илтимос, бештар аз {0} рамз ворид накунед."),
|
26 |
-
minlength: $.validator.format("Илтимос, камтар аз {0} рамз ворид накунед."),
|
27 |
-
rangelength: $.validator.format("Илтимос, камтар аз {0} ва зиёда аз {1} рамз ворид кунед."),
|
28 |
-
range: $.validator.format("Илтимос, аз {0} то {1} рақам зиёд ворид кунед."),
|
29 |
-
max: $.validator.format("Илтимос, бештар аз {0} рақам ворид накунед."),
|
30 |
-
min: $.validator.format("Илтимос, камтар аз {0} рақам ворид накунед.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_tj.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Ворид кардани ин филд маҷбури аст.",remote:"Илтимос, маълумоти саҳеҳ ворид кунед.",email:"Илтимос, почтаи электронии саҳеҳ ворид кунед.",url:"Илтимос, URL адреси саҳеҳ ворид кунед.",date:"Илтимос, таърихи саҳеҳ ворид кунед.",dateISO:"Илтимос, таърихи саҳеҳи (ISO)ӣ ворид кунед.",number:"Илтимос, рақамҳои саҳеҳ ворид кунед.",digits:"Илтимос, танҳо рақам ворид кунед.",creditcard:"Илтимос, кредит карди саҳеҳ ворид кунед.",equalTo:"Илтимос, миқдори баробар ворид кунед.",extension:"Илтимос, қофияи файлро дуруст интихоб кунед",maxlength:a.validator.format("Илтимос, бештар аз {0} рамз ворид накунед."),minlength:a.validator.format("Илтимос, камтар аз {0} рамз ворид накунед."),rangelength:a.validator.format("Илтимос, камтар аз {0} ва зиёда аз {1} рамз ворид кунед."),range:a.validator.format("Илтимос, аз {0} то {1} рақам зиёд ворид кунед."),max:a.validator.format("Илтимос, бештар аз {0} рақам ворид накунед."),min:a.validator.format("Илтимос, камтар аз {0} рақам ворид накунед.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_tr.js
DELETED
@@ -1,34 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: TR (Turkish; Türkçe)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Bu alanın doldurulması zorunludur.",
|
15 |
-
remote: "Lütfen bu alanı düzeltin.",
|
16 |
-
email: "Lütfen geçerli bir e-posta adresi giriniz.",
|
17 |
-
url: "Lütfen geçerli bir web adresi (URL) giriniz.",
|
18 |
-
date: "Lütfen geçerli bir tarih giriniz.",
|
19 |
-
dateISO: "Lütfen geçerli bir tarih giriniz(ISO formatında)",
|
20 |
-
number: "Lütfen geçerli bir sayı giriniz.",
|
21 |
-
digits: "Lütfen sadece sayısal karakterler giriniz.",
|
22 |
-
creditcard: "Lütfen geçerli bir kredi kartı giriniz.",
|
23 |
-
equalTo: "Lütfen aynı değeri tekrar giriniz.",
|
24 |
-
extension: "Lütfen geçerli uzantıya sahip bir değer giriniz.",
|
25 |
-
maxlength: $.validator.format("Lütfen en fazla {0} karakter uzunluğunda bir değer giriniz."),
|
26 |
-
minlength: $.validator.format("Lütfen en az {0} karakter uzunluğunda bir değer giriniz."),
|
27 |
-
rangelength: $.validator.format("Lütfen en az {0} ve en fazla {1} uzunluğunda bir değer giriniz."),
|
28 |
-
range: $.validator.format("Lütfen {0} ile {1} arasında bir değer giriniz."),
|
29 |
-
max: $.validator.format("Lütfen {0} değerine eşit ya da daha küçük bir değer giriniz."),
|
30 |
-
min: $.validator.format("Lütfen {0} değerine eşit ya da daha büyük bir değer giriniz."),
|
31 |
-
require_from_group: "Lütfen bu alanların en az {0} tanesini doldurunuz."
|
32 |
-
});
|
33 |
-
|
34 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_tr.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Bu alanın doldurulması zorunludur.",remote:"Lütfen bu alanı düzeltin.",email:"Lütfen geçerli bir e-posta adresi giriniz.",url:"Lütfen geçerli bir web adresi (URL) giriniz.",date:"Lütfen geçerli bir tarih giriniz.",dateISO:"Lütfen geçerli bir tarih giriniz(ISO formatında)",number:"Lütfen geçerli bir sayı giriniz.",digits:"Lütfen sadece sayısal karakterler giriniz.",creditcard:"Lütfen geçerli bir kredi kartı giriniz.",equalTo:"Lütfen aynı değeri tekrar giriniz.",extension:"Lütfen geçerli uzantıya sahip bir değer giriniz.",maxlength:a.validator.format("Lütfen en fazla {0} karakter uzunluğunda bir değer giriniz."),minlength:a.validator.format("Lütfen en az {0} karakter uzunluğunda bir değer giriniz."),rangelength:a.validator.format("Lütfen en az {0} ve en fazla {1} uzunluğunda bir değer giriniz."),range:a.validator.format("Lütfen {0} ile {1} arasında bir değer giriniz."),max:a.validator.format("Lütfen {0} değerine eşit ya da daha küçük bir değer giriniz."),min:a.validator.format("Lütfen {0} değerine eşit ya da daha büyük bir değer giriniz."),require_from_group:"Lütfen bu alanların en az {0} tanesini doldurunuz."})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_uk.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: UK (Ukrainian; українська мова)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Це поле необхідно заповнити.",
|
15 |
-
remote: "Будь ласка, введіть правильне значення.",
|
16 |
-
email: "Будь ласка, введіть коректну адресу електронної пошти.",
|
17 |
-
url: "Будь ласка, введіть коректний URL.",
|
18 |
-
date: "Будь ласка, введіть коректну дату.",
|
19 |
-
dateISO: "Будь ласка, введіть коректну дату у форматі ISO.",
|
20 |
-
number: "Будь ласка, введіть число.",
|
21 |
-
digits: "Вводите потрібно лише цифри.",
|
22 |
-
creditcard: "Будь ласка, введіть правильний номер кредитної карти.",
|
23 |
-
equalTo: "Будь ласка, введіть таке ж значення ще раз.",
|
24 |
-
extension: "Будь ласка, виберіть файл з правильним розширенням.",
|
25 |
-
maxlength: $.validator.format("Будь ласка, введіть не більше {0} символів."),
|
26 |
-
minlength: $.validator.format("Будь ласка, введіть не менше {0} символів."),
|
27 |
-
rangelength: $.validator.format("Будь ласка, введіть значення довжиною від {0} до {1} символів."),
|
28 |
-
range: $.validator.format("Будь ласка, введіть число від {0} до {1}."),
|
29 |
-
max: $.validator.format("Будь ласка, введіть число, менше або рівно {0}."),
|
30 |
-
min: $.validator.format("Будь ласка, введіть число, більше або рівно {0}.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_uk.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Це поле необхідно заповнити.",remote:"Будь ласка, введіть правильне значення.",email:"Будь ласка, введіть коректну адресу електронної пошти.",url:"Будь ласка, введіть коректний URL.",date:"Будь ласка, введіть коректну дату.",dateISO:"Будь ласка, введіть коректну дату у форматі ISO.",number:"Будь ласка, введіть число.",digits:"Вводите потрібно лише цифри.",creditcard:"Будь ласка, введіть правильний номер кредитної карти.",equalTo:"Будь ласка, введіть таке ж значення ще раз.",extension:"Будь ласка, виберіть файл з правильним розширенням.",maxlength:a.validator.format("Будь ласка, введіть не більше {0} символів."),minlength:a.validator.format("Будь ласка, введіть не менше {0} символів."),rangelength:a.validator.format("Будь ласка, введіть значення довжиною від {0} до {1} символів."),range:a.validator.format("Будь ласка, введіть число від {0} до {1}."),max:a.validator.format("Будь ласка, введіть число, менше або рівно {0}."),min:a.validator.format("Будь ласка, введіть число, більше або рівно {0}.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_vi.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: VI (Vietnamese; Tiếng Việt)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "Hãy nhập.",
|
15 |
-
remote: "Hãy sửa cho đúng.",
|
16 |
-
email: "Hãy nhập email.",
|
17 |
-
url: "Hãy nhập URL.",
|
18 |
-
date: "Hãy nhập ngày.",
|
19 |
-
dateISO: "Hãy nhập ngày (ISO).",
|
20 |
-
number: "Hãy nhập số.",
|
21 |
-
digits: "Hãy nhập chữ số.",
|
22 |
-
creditcard: "Hãy nhập số thẻ tín dụng.",
|
23 |
-
equalTo: "Hãy nhập thêm lần nữa.",
|
24 |
-
extension: "Phần mở rộng không đúng.",
|
25 |
-
maxlength: $.validator.format("Hãy nhập từ {0} kí tự trở xuống."),
|
26 |
-
minlength: $.validator.format("Hãy nhập từ {0} kí tự trở lên."),
|
27 |
-
rangelength: $.validator.format("Hãy nhập từ {0} đến {1} kí tự."),
|
28 |
-
range: $.validator.format("Hãy nhập từ {0} đến {1}."),
|
29 |
-
max: $.validator.format("Hãy nhập từ {0} trở xuống."),
|
30 |
-
min: $.validator.format("Hãy nhập từ {1} trở lên.")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_vi.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"Hãy nhập.",remote:"Hãy sửa cho đúng.",email:"Hãy nhập email.",url:"Hãy nhập URL.",date:"Hãy nhập ngày.",dateISO:"Hãy nhập ngày (ISO).",number:"Hãy nhập số.",digits:"Hãy nhập chữ số.",creditcard:"Hãy nhập số thẻ tín dụng.",equalTo:"Hãy nhập thêm lần nữa.",extension:"Phần mở rộng không đúng.",maxlength:a.validator.format("Hãy nhập từ {0} kí tự trở xuống."),minlength:a.validator.format("Hãy nhập từ {0} kí tự trở lên."),rangelength:a.validator.format("Hãy nhập từ {0} đến {1} kí tự."),range:a.validator.format("Hãy nhập từ {0} đến {1}."),max:a.validator.format("Hãy nhập từ {0} trở xuống."),min:a.validator.format("Hãy nhập từ {1} trở lên.")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_zh.js
DELETED
@@ -1,33 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ZH (Chinese, 中文 (Zhōngwén), 汉语, 漢語)
|
12 |
-
*/
|
13 |
-
$.extend($.validator.messages, {
|
14 |
-
required: "这是必填字段",
|
15 |
-
remote: "请修正此字段",
|
16 |
-
email: "请输入有效的电子邮件地址",
|
17 |
-
url: "请输入有效的网址",
|
18 |
-
date: "请输入有效的日期",
|
19 |
-
dateISO: "请输入有效的日期 (YYYY-MM-DD)",
|
20 |
-
number: "请输入有效的数字",
|
21 |
-
digits: "只能输入数字",
|
22 |
-
creditcard: "请输入有效的信用卡号码",
|
23 |
-
equalTo: "你的输入不相同",
|
24 |
-
extension: "请输入有效的后缀",
|
25 |
-
maxlength: $.validator.format("最多可以输入 {0} 个字符"),
|
26 |
-
minlength: $.validator.format("最少要输入 {0} 个字符"),
|
27 |
-
rangelength: $.validator.format("请输入长度在 {0} 到 {1} 之间的字符串"),
|
28 |
-
range: $.validator.format("请输入范围在 {0} 到 {1} 之间的数值"),
|
29 |
-
max: $.validator.format("请输入不大于 {0} 的数值"),
|
30 |
-
min: $.validator.format("请输入不小于 {0} 的数值")
|
31 |
-
});
|
32 |
-
|
33 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_zh.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"这是必填字段",remote:"请修正此字段",email:"请输入有效的电子邮件地址",url:"请输入有效的网址",date:"请输入有效的日期",dateISO:"请输入有效的日期 (YYYY-MM-DD)",number:"请输入有效的数字",digits:"只能输入数字",creditcard:"请输入有效的信用卡号码",equalTo:"你的输入不相同",extension:"请输入有效的后缀",maxlength:a.validator.format("最多可以输入 {0} 个字符"),minlength:a.validator.format("最少要输入 {0} 个字符"),rangelength:a.validator.format("请输入长度在 {0} 到 {1} 之间的字符串"),range:a.validator.format("请输入范围在 {0} 到 {1} 之间的数值"),max:a.validator.format("请输入不大于 {0} 的数值"),min:a.validator.format("请输入不小于 {0} 的数值")})});
|
|
|
|
|
|
|
|
admin/js/localization/messages_zh_TW.js
DELETED
@@ -1,34 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Translated default messages for the jQuery validation plugin.
|
11 |
-
* Locale: ZH (Chinese; 中文 (Zhōngwén), 汉语, 漢語)
|
12 |
-
* Region: TW (Taiwan)
|
13 |
-
*/
|
14 |
-
$.extend($.validator.messages, {
|
15 |
-
required: "必須填寫",
|
16 |
-
remote: "請修正此欄位",
|
17 |
-
email: "請輸入有效的電子郵件",
|
18 |
-
url: "請輸入有效的網址",
|
19 |
-
date: "請輸入有效的日期",
|
20 |
-
dateISO: "請輸入有效的日期 (YYYY-MM-DD)",
|
21 |
-
number: "請輸入正確的數值",
|
22 |
-
digits: "只可輸入數字",
|
23 |
-
creditcard: "請輸入有效的信用卡號碼",
|
24 |
-
equalTo: "請重複輸入一次",
|
25 |
-
extension: "請輸入有效的後綴",
|
26 |
-
maxlength: $.validator.format("最多 {0} 個字"),
|
27 |
-
minlength: $.validator.format("最少 {0} 個字"),
|
28 |
-
rangelength: $.validator.format("請輸入長度為 {0} 至 {1} 之間的字串"),
|
29 |
-
range: $.validator.format("請輸入 {0} 至 {1} 之間的數值"),
|
30 |
-
max: $.validator.format("請輸入不大於 {0} 的數值"),
|
31 |
-
min: $.validator.format("請輸入不小於 {0} 的數值")
|
32 |
-
});
|
33 |
-
|
34 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/messages_zh_TW.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.messages,{required:"必須填寫",remote:"請修正此欄位",email:"請輸入有效的電子郵件",url:"請輸入有效的網址",date:"請輸入有效的日期",dateISO:"請輸入有效的日期 (YYYY-MM-DD)",number:"請輸入正確的數值",digits:"只可輸入數字",creditcard:"請輸入有效的信用卡號碼",equalTo:"請重複輸入一次",extension:"請輸入有效的後綴",maxlength:a.validator.format("最多 {0} 個字"),minlength:a.validator.format("最少 {0} 個字"),rangelength:a.validator.format("請輸入長度為 {0} 至 {1} 之間的字串"),range:a.validator.format("請輸入 {0} 至 {1} 之間的數值"),max:a.validator.format("請輸入不大於 {0} 的數值"),min:a.validator.format("請輸入不小於 {0} 的數值")})});
|
|
|
|
|
|
|
|
admin/js/localization/methods_de.js
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Localized default methods for the jQuery validation plugin.
|
11 |
-
* Locale: DE
|
12 |
-
*/
|
13 |
-
$.extend($.validator.methods, {
|
14 |
-
date: function(value, element) {
|
15 |
-
return this.optional(element) || /^\d\d?\.\d\d?\.\d\d\d?\d?$/.test(value);
|
16 |
-
},
|
17 |
-
number: function(value, element) {
|
18 |
-
return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value);
|
19 |
-
}
|
20 |
-
});
|
21 |
-
|
22 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/methods_de.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.methods,{date:function(a,b){return this.optional(b)||/^\d\d?\.\d\d?\.\d\d\d?\d?$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(a)}})});
|
|
|
|
|
|
|
|
admin/js/localization/methods_es_CL.js
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Localized default methods for the jQuery validation plugin.
|
11 |
-
* Locale: ES_CL
|
12 |
-
*/
|
13 |
-
$.extend($.validator.methods, {
|
14 |
-
date: function(value, element) {
|
15 |
-
return this.optional(element) || /^\d\d?\-\d\d?\-\d\d\d?\d?$/.test(value);
|
16 |
-
},
|
17 |
-
number: function(value, element) {
|
18 |
-
return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(value);
|
19 |
-
}
|
20 |
-
});
|
21 |
-
|
22 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/methods_es_CL.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.methods,{date:function(a,b){return this.optional(b)||/^\d\d?\-\d\d?\-\d\d\d?\d?$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+|\d{1,3}(?:\.\d{3})+)(?:,\d+)?$/.test(a)}})});
|
|
|
|
|
|
|
|
admin/js/localization/methods_fi.js
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Localized default methods for the jQuery validation plugin.
|
11 |
-
* Locale: FI
|
12 |
-
*/
|
13 |
-
$.extend($.validator.methods, {
|
14 |
-
date: function(value, element) {
|
15 |
-
return this.optional(element) || /^\d{1,2}\.\d{1,2}\.\d{4}$/.test(value);
|
16 |
-
},
|
17 |
-
number: function(value, element) {
|
18 |
-
return this.optional(element) || /^-?(?:\d+)(?:,\d+)?$/.test(value);
|
19 |
-
}
|
20 |
-
});
|
21 |
-
|
22 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/methods_fi.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.methods,{date:function(a,b){return this.optional(b)||/^\d{1,2}\.\d{1,2}\.\d{4}$/.test(a)},number:function(a,b){return this.optional(b)||/^-?(?:\d+)(?:,\d+)?$/.test(a)}})});
|
|
|
|
|
|
|
|
admin/js/localization/methods_nl.js
DELETED
@@ -1,19 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Localized default methods for the jQuery validation plugin.
|
11 |
-
* Locale: NL
|
12 |
-
*/
|
13 |
-
$.extend($.validator.methods, {
|
14 |
-
date: function(value, element) {
|
15 |
-
return this.optional(element) || /^\d\d?[\.\/\-]\d\d?[\.\/\-]\d\d\d?\d?$/.test(value);
|
16 |
-
}
|
17 |
-
});
|
18 |
-
|
19 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/methods_nl.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.methods,{date:function(a,b){return this.optional(b)||/^\d\d?[\.\/\-]\d\d?[\.\/\-]\d\d\d?\d?$/.test(a)}})});
|
|
|
|
|
|
|
|
admin/js/localization/methods_pt.js
DELETED
@@ -1,19 +0,0 @@
|
|
1 |
-
(function( factory ) {
|
2 |
-
if ( typeof define === "function" && define.amd ) {
|
3 |
-
define( ["jquery", "../jquery.validate"], factory );
|
4 |
-
} else {
|
5 |
-
factory( jQuery );
|
6 |
-
}
|
7 |
-
}(function( $ ) {
|
8 |
-
|
9 |
-
/*
|
10 |
-
* Localized default methods for the jQuery validation plugin.
|
11 |
-
* Locale: PT_BR
|
12 |
-
*/
|
13 |
-
$.extend($.validator.methods, {
|
14 |
-
date: function(value, element) {
|
15 |
-
return this.optional(element) || /^\d\d?\/\d\d?\/\d\d\d?\d?$/.test(value);
|
16 |
-
}
|
17 |
-
});
|
18 |
-
|
19 |
-
}));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/js/localization/methods_pt.min.js
DELETED
@@ -1,4 +0,0 @@
|
|
1 |
-
/*! jQuery Validation Plugin - v1.14.0 - 6/30/2015
|
2 |
-
* http://jqueryvalidation.org/
|
3 |
-
* Copyright (c) 2015 Jörn Zaefferer; Licensed MIT */
|
4 |
-
!function(a){"function"==typeof define&&define.amd?define(["jquery","../jquery.validate.min"],a):a(jQuery)}(function(a){a.extend(a.validator.methods,{date:function(a,b){return this.optional(b)||/^\d\d?\/\d\d?\/\d\d\d?\d?$/.test(a)}})});
|
|
|
|
|
|
|
|
admin/js/woo-feed-admin-pro.js
CHANGED
@@ -1,4 +1,5 @@
|
|
1 |
-
// noinspection JSUnresolvedVariable
|
|
|
2 |
/**!
|
3 |
* WooFeed Pro Scripts
|
4 |
* @version 1.0.0
|
@@ -6,22 +7,174 @@
|
|
6 |
* @copyright 2020 WebAppick
|
7 |
*
|
8 |
*/
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
}(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"use strict"; // noinspection JSUnresolvedVariable
|
2 |
+
|
3 |
/**!
|
4 |
* WooFeed Pro Scripts
|
5 |
* @version 1.0.0
|
7 |
* @copyright 2020 WebAppick
|
8 |
*
|
9 |
*/
|
10 |
+
|
11 |
+
(function ($, window, document, wf, wpAjax, opts) {
|
12 |
+
"use strict";
|
13 |
+
/* global ajaxurl, wpAjax, postboxes, pagenow, alert, deleteUserSetting, typenow, adminpage, thousandsSeparator, decimalPoint, isRtl */
|
14 |
+
|
15 |
+
$(window).on('load', function () {
|
16 |
+
var __idx__ = 0,
|
17 |
+
srt = $('#wf_str_replace tbody');
|
18 |
+
$(document).on('change', "#custom2_attribute", function (e) {
|
19 |
+
// Custom 2 template attribute name
|
20 |
+
$("#custom2_attribute_value").val(`{${$(this).val().trim()}}`); // phpcs:ignore WordPressVIPMinimum.JS.HTMLExecutingFunctions.html
|
21 |
+
}).on('change', '#is_variations', function (e) {
|
22 |
+
let is_variations = $(this).val();
|
23 |
+
if ('both' === is_variations || 'n' === is_variations) {
|
24 |
+
$(".WFVariablePriceTR").show();
|
25 |
+
} else {
|
26 |
+
$(".WFVariablePriceTR").hide();
|
27 |
+
}
|
28 |
+
}).on('change', '#wpf_ptitle', function () {
|
29 |
+
// Variation Product Title
|
30 |
+
let selectize = $(this)[0].selectize,
|
31 |
+
titleEl = $("textarea[name='ptitle_show']"),
|
32 |
+
title = titleEl.val().trim().split('|');
|
33 |
+
title.push($(this).val());
|
34 |
+
// Show Title
|
35 |
+
titleEl.val(title.filter(x => '' !== x).join('|'));
|
36 |
+
selectize.clear(true); // reset the select value silently.
|
37 |
+
selectize.refreshOptions(false); // reset selectize scroll position silently.
|
38 |
+
}).on('click', '#wf_new_str_replace', function () {
|
39 |
+
if (0 === __idx__) {
|
40 |
+
__idx__ = srt.find('tr').length;
|
41 |
+
} else {
|
42 |
+
__idx__++;
|
43 |
+
}
|
44 |
+
|
45 |
+
srt.append($('#wf_str_replace_template').text().trim().replace(/__idx__/g, __idx__));
|
46 |
+
}).on('click', '.wf-add-row', function (e) {
|
47 |
+
e.preventDefault();
|
48 |
+
|
49 |
+
var self = $(this),
|
50 |
+
__idx__ = parseInt(self.data('idx') || 0) + 1,
|
51 |
+
template = (/^</.test(self.data('template')) ? self.data('template') : $(self.data('template')).text()).trim(),
|
52 |
+
target = $(self.data('target'));
|
53 |
+
|
54 |
+
target.append(template.trim().replace(/__idx__/g, __idx__));
|
55 |
+
wf.helper.selectize();
|
56 |
+
self.data('idx', __idx__);
|
57 |
+
}).on('submit', '#attribute-mapping-form', function (e) {
|
58 |
+
if (!$(this).find('[name^="value["]').length) {
|
59 |
+
alert(opts.form.one_item_required);
|
60 |
+
return false;
|
61 |
+
}
|
62 |
+
}).on('click', '#wf_newFilter', function () {
|
63 |
+
// Add New Condition for Filter
|
64 |
+
$('#table-advanced-filter tbody tr:eq(0)').show().clone().find('input').val('').end().find('select').val('').end().insertAfter('#table-advanced-filter tbody tr:last');
|
65 |
+
$('.fsrow:gt(2)').prop('disabled', false);
|
66 |
+
$('.wf_concat_advance:last').prop('value', 'OR');
|
67 |
+
$('.daRow:eq(0)').hide();
|
68 |
+
}).on('click', '#wf_newCon', function () {
|
69 |
+
// Dynamic Attribute Add New Condition
|
70 |
+
$('#table-1 tbody tr:first').show().clone().find('input').val('').end().insertAfter('#table-1 tbody tr:last');
|
71 |
+
$('.fsrow:gt(7)').prop('disabled', false);
|
72 |
+
$('.daRow:eq(0)').hide();
|
73 |
+
$('#table-1 tbody tr:last td select.woo_feed_dynamic_attr_condition_select').change(function () {
|
74 |
+
woo_feed_dynamic_attr_condition_between($(this));
|
75 |
+
});
|
76 |
+
}).on('change keyup', '.treegrid-parent', function () {
|
77 |
+
// Category Mapping (Auto Field Populate)
|
78 |
+
// noinspection ES6ConvertVarToLetConst
|
79 |
+
var val = $(this).val(),
|
80 |
+
parent = $(this).attr('data-cat_id'); // noinspection ES6ConvertVarToLetConst
|
81 |
+
|
82 |
+
$(".treegrid-parent-" + parent).val(val);
|
83 |
+
}); // placeholder for Between Dynamic Attribute condition
|
84 |
+
|
85 |
+
function woo_feed_dynamic_attr_condition_between(elem) {
|
86 |
+
// noinspection ES6ConvertVarToLetConst
|
87 |
+
var input = elem.closest('tr').find('.woo_feed_dynamic_attr_condition_value');
|
88 |
+
if ('between' === elem.val()) input.attr('placeholder', 'Ex: 10,20');
|
89 |
+
else input.attr('placeholder', '');
|
90 |
+
}
|
91 |
+
|
92 |
+
$('.woo_feed_dynamic_attr_condition_select').change(function () {
|
93 |
+
woo_feed_dynamic_attr_condition_between($(this));
|
94 |
+
});
|
95 |
+
|
96 |
+
if ($('#attribute-mapping-form').length > 0) {
|
97 |
+
wf.helper.sortable();
|
98 |
+
}
|
99 |
+
});
|
100 |
+
|
101 |
+
// Document events
|
102 |
+
$(document)
|
103 |
+
.on('feedEditor.init', function () {
|
104 |
+
wf.helper.fancySelect($('#wf_product_post_status, .filter_mode'), {
|
105 |
+
maxItemShow: 2
|
106 |
+
});
|
107 |
+
})
|
108 |
+
|
109 |
+
// filter tab functionality
|
110 |
+
.one('click', 'label[for="wf-tab-content-filter"]', function (e) {
|
111 |
+
var filterData = {
|
112 |
+
action: 'woo_feed_filter_count', //callback function
|
113 |
+
nonce: wpf_ajax_obj.ajax.nonce,
|
114 |
+
};
|
115 |
+
// AJAX call
|
116 |
+
$.ajax({
|
117 |
+
method: "GET",
|
118 |
+
url: wpf_ajax_obj.wpf_ajax_url,
|
119 |
+
data: filterData,
|
120 |
+
success: function (message) {
|
121 |
+
if (message.data.backorder) {
|
122 |
+
var singularOrPluralText = message.data.backorder === 1 ? 'product is' : 'products are';
|
123 |
+
$('#wf-tab-content-filter table tr:nth-of-type(1)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.backorder + ' ' + singularOrPluralText + ' on backorder.</div>');
|
124 |
+
}
|
125 |
+
if (message.data.outOfStock) {
|
126 |
+
var singularOrPluralText = message.data.outOfStock === 1 ? 'product is' : 'products are';
|
127 |
+
$('#wf-tab-content-filter table tr:nth-of-type(2)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.outOfStock + ' ' + singularOrPluralText + ' out of stock.</div>');
|
128 |
+
}
|
129 |
+
if (message.data.hidden) {
|
130 |
+
var singularOrPluralText = message.data.hidden === 1 ? 'product is' : 'products are';
|
131 |
+
$('#wf-tab-content-filter table tr:nth-of-type(3)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.hidden + ' ' + singularOrPluralText + ' hidden.</div>');
|
132 |
+
}
|
133 |
+
if (message.data.noDesc) {
|
134 |
+
var singularOrPluralText = message.data.noDesc === 1 ? 'product has' : 'products are';
|
135 |
+
$('#wf-tab-content-filter table tr:nth-of-type(4)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.noDesc + ' ' + singularOrPluralText + ' no description.</div>');
|
136 |
+
}
|
137 |
+
if (message.data.noImg) {
|
138 |
+
var singularOrPluralText = message.data.noImg === 1 ? 'product has' : 'products have';
|
139 |
+
$('#wf-tab-content-filter table tr:nth-of-type(5)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.noImg + ' ' + singularOrPluralText + ' no image.</div>');
|
140 |
+
}
|
141 |
+
if (message.data.noPrice) {
|
142 |
+
var singularOrPluralText = message.data.noPrice === 1 ? 'product has' : 'products have';
|
143 |
+
$('#wf-tab-content-filter table tr:nth-of-type(6)').find('.help').after('<div class="counter"><span class="dashicons dashicons-info-outline" aria-hidden="true"></span>' + message.data.noPrice + ' ' + singularOrPluralText + ' no price.</div>');
|
144 |
+
}
|
145 |
+
}
|
146 |
+
});
|
147 |
+
});
|
148 |
+
|
149 |
+
$(document).ready(function () {
|
150 |
+
|
151 |
+
if ($('#feedCurrency').length > 0) {
|
152 |
+
function multicurrency_update() {
|
153 |
+
|
154 |
+
$('.wf_attr.wf_attributes').each(function (key, value) {
|
155 |
+
var currency = $('#feedCurrency').val();
|
156 |
+
var attribute_value = $(value).val();
|
157 |
+
if (-1 !== $.inArray(attribute_value, ['price', 'current_price', 'sale_price', 'price_with_tax', 'current_price_with_tax', 'sale_price_with_tax'])) {
|
158 |
+
$('input[name^="suffix"]').eq(parseInt(key)).val(' ' + currency);
|
159 |
+
}
|
160 |
+
});
|
161 |
+
|
162 |
+
}
|
163 |
+
|
164 |
+
$('#feedCurrency').on('change', multicurrency_update);
|
165 |
+
//$(document).on( 'feedEditor.after.free.postfix.update', multicurrency_update );
|
166 |
+
}
|
167 |
+
|
168 |
+
if ($('#editor').length > 0) {
|
169 |
+
let el = document.getElementById("editor");
|
170 |
+
const editor = CodeMirror.fromTextArea(el, {
|
171 |
+
lineNumbers: true,
|
172 |
+
mode: "xml",
|
173 |
+
matchBrackets: true
|
174 |
+
});
|
175 |
+
editor.setSize(null, 620);
|
176 |
+
}
|
177 |
+
});
|
178 |
+
|
179 |
+
|
180 |
+
})(jQuery, window, document, wf, wp.ajax, wpf_ajax_obj);
|
admin/partials/woo-feed-add-option.php
CHANGED
@@ -1,4 +1,7 @@
|
|
1 |
-
<?php
|
|
|
|
|
|
|
2 |
<div class="wrap">
|
3 |
<h2><?php esc_html_e( 'Add Option', 'woo-feed' ); ?></h2>
|
4 |
|
@@ -10,7 +13,7 @@
|
|
10 |
<tr>
|
11 |
<td style="width: 130px;max-width: 130px;"><label for="wpfp_option"><b><?php esc_html_e( 'Option Name', 'woo-feed' ); ?> <span class="requiredIn">*</span></b></label></td>
|
12 |
<td>
|
13 |
-
<select name="wpfp_option" id="wpfp_option" class="selectize generalInput" style="width: 100%;" placeholder="<?php esc_attr_e( 'Search Option Name', 'woo-feed' ); ?>" required><?php $
|
14 |
</td>
|
15 |
</tr>
|
16 |
<tr>
|
1 |
+
<?php
|
2 |
+
use CTXFeed\V5\Common\DropDownOptions;
|
3 |
+
$options = DropDownOptions::get_options('',true);
|
4 |
+
?>
|
5 |
<div class="wrap">
|
6 |
<h2><?php esc_html_e( 'Add Option', 'woo-feed' ); ?></h2>
|
7 |
|
13 |
<tr>
|
14 |
<td style="width: 130px;max-width: 130px;"><label for="wpfp_option"><b><?php esc_html_e( 'Option Name', 'woo-feed' ); ?> <span class="requiredIn">*</span></b></label></td>
|
15 |
<td>
|
16 |
+
<select name="wpfp_option" id="wpfp_option" class="selectize generalInput" style="width: 100%;" placeholder="<?php esc_attr_e( 'Search Option Name', 'woo-feed' ); ?>" required><?php echo $options; ?></select>
|
17 |
</td>
|
18 |
</tr>
|
19 |
<tr>
|
admin/partials/woo-feed-pro-vs-free.php
CHANGED
@@ -162,7 +162,7 @@ ob_start(); ?>
|
|
162 |
<div class="wapk-feed-buy-now-wrapper">
|
163 |
<div class="wapk-feed-buy-now-product-container">
|
164 |
<div class="wapk-feed-buy-now-thumbnail">
|
165 |
-
<img src="<?php echo
|
166 |
</div>
|
167 |
<div class="wapk-feed-buy-now-title">
|
168 |
<div class="wapk-feed-buy-now-product-name"><?php esc_attr_e('CTX Feed Pro', 'woo-feed');?></div>
|
162 |
<div class="wapk-feed-buy-now-wrapper">
|
163 |
<div class="wapk-feed-buy-now-product-container">
|
164 |
<div class="wapk-feed-buy-now-thumbnail">
|
165 |
+
<img src="<?php echo WOO_FEED_FREE_ADMIN_URL; ?>images/woo-feed-icon.svg" alt="CTX Feed Pro" />
|
166 |
</div>
|
167 |
<div class="wapk-feed-buy-now-title">
|
168 |
<div class="wapk-feed-buy-now-product-name"><?php esc_attr_e('CTX Feed Pro', 'woo-feed');?></div>
|
includes/action-handler.php
CHANGED
@@ -41,46 +41,45 @@ DisplayNotices::init();
|
|
41 |
if ( ! function_exists( 'woo_feed_get_product_information' ) ) {
|
42 |
function woo_feed_get_product_information() {
|
43 |
check_ajax_referer( 'wpf_feed_nonce' );
|
44 |
-
|
45 |
// Check user permission
|
46 |
if ( ! current_user_can( 'manage_woocommerce' ) ) {
|
47 |
Logs::write_debug_log( 'User doesnt have enough permission.' );
|
48 |
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
49 |
wp_die();
|
50 |
}
|
51 |
-
|
52 |
-
|
53 |
if ( ! isset( $_REQUEST['feed'] ) ) {
|
54 |
Logs::write_debug_log( 'Feed name not submitted.' );
|
55 |
wp_send_json_error( esc_html__( 'Invalid Request.', 'woo-feed' ) );
|
56 |
wp_die();
|
57 |
}
|
58 |
-
|
59 |
$feed = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
60 |
$limit = isset( $_REQUEST['limit'] ) ? absint( $_REQUEST['limit'] ) : 200;
|
61 |
$config = Factory::get_feed_config( $feed );
|
62 |
-
|
63 |
if ( woo_feed_wc_version_check( 3.2 ) ) {
|
64 |
-
|
65 |
Logs::delete_log( $config->get_feed_file_name() );
|
66 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Getting Data for %s feed.', $feed ) );
|
67 |
Logs::write_log( $config->get_feed_file_name(), 'Generating Feed VIA Ajax...' );
|
68 |
-
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Getting Data for %s feed.', $feed ) );
|
69 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Current Limit is %d.', $limit ) );
|
70 |
Logs::write_log( $config->get_feed_file_name(), 'Feed Config::' . PHP_EOL . print_r( $config->get_config(), true ), 'info' );
|
71 |
-
|
72 |
try {
|
73 |
// Hook Before Query Products
|
74 |
do_action( 'before_woo_feed_get_product_information', $config );
|
75 |
-
|
76 |
//Get Product Ids
|
77 |
$ids = Factory::get_product_ids( $config );
|
78 |
-
|
79 |
// Hook After Query Products
|
80 |
do_action( 'after_woo_feed_get_product_information', $config );
|
81 |
-
|
82 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Total %d product found', is_array( $ids ) && ! empty( $ids ) ? count( $ids ) : 0 ) );
|
83 |
-
|
84 |
if ( is_array( $ids ) && ! empty( $ids ) ) {
|
85 |
if ( count( $ids ) > $limit ) {
|
86 |
rsort( $ids ); // sorting ids in descending order
|
@@ -88,9 +87,9 @@ if ( ! function_exists( 'woo_feed_get_product_information' ) ) {
|
|
88 |
} else {
|
89 |
$batches = array( $ids );
|
90 |
}
|
91 |
-
|
92 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Total %d batches', count( $batches ) ) );
|
93 |
-
|
94 |
wp_send_json_success(
|
95 |
array(
|
96 |
'product' => $batches,
|
@@ -107,13 +106,13 @@ if ( ! function_exists( 'woo_feed_get_product_information' ) ) {
|
|
107 |
);
|
108 |
}
|
109 |
wp_die();
|
110 |
-
|
111 |
} catch ( Exception $e ) {
|
112 |
-
|
113 |
$message = 'Error getting Product Ids.' . PHP_EOL . 'Caught Exception :: ' . $e->getMessage();
|
114 |
Logs::write_log( $config->get_feed_file_name(), $message );
|
115 |
Logs::write_fatal_log( $message, $e );
|
116 |
-
|
117 |
wp_send_json_error(
|
118 |
array(
|
119 |
'message' => esc_html__( 'Failed to fetch products.', 'woo-feed' ),
|
@@ -144,7 +143,7 @@ if ( ! function_exists( 'woo_feed_get_product_information' ) ) {
|
|
144 |
wp_die();
|
145 |
}
|
146 |
}
|
147 |
-
|
148 |
add_action( 'wp_ajax_get_product_information', 'woo_feed_get_product_information' );
|
149 |
}
|
150 |
|
41 |
if ( ! function_exists( 'woo_feed_get_product_information' ) ) {
|
42 |
function woo_feed_get_product_information() {
|
43 |
check_ajax_referer( 'wpf_feed_nonce' );
|
44 |
+
|
45 |
// Check user permission
|
46 |
if ( ! current_user_can( 'manage_woocommerce' ) ) {
|
47 |
Logs::write_debug_log( 'User doesnt have enough permission.' );
|
48 |
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
49 |
wp_die();
|
50 |
}
|
51 |
+
|
52 |
+
|
53 |
if ( ! isset( $_REQUEST['feed'] ) ) {
|
54 |
Logs::write_debug_log( 'Feed name not submitted.' );
|
55 |
wp_send_json_error( esc_html__( 'Invalid Request.', 'woo-feed' ) );
|
56 |
wp_die();
|
57 |
}
|
58 |
+
|
59 |
$feed = sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) );
|
60 |
$limit = isset( $_REQUEST['limit'] ) ? absint( $_REQUEST['limit'] ) : 200;
|
61 |
$config = Factory::get_feed_config( $feed );
|
62 |
+
|
63 |
if ( woo_feed_wc_version_check( 3.2 ) ) {
|
64 |
+
|
65 |
Logs::delete_log( $config->get_feed_file_name() );
|
66 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Getting Data for %s feed.', $feed ) );
|
67 |
Logs::write_log( $config->get_feed_file_name(), 'Generating Feed VIA Ajax...' );
|
|
|
68 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Current Limit is %d.', $limit ) );
|
69 |
Logs::write_log( $config->get_feed_file_name(), 'Feed Config::' . PHP_EOL . print_r( $config->get_config(), true ), 'info' );
|
70 |
+
|
71 |
try {
|
72 |
// Hook Before Query Products
|
73 |
do_action( 'before_woo_feed_get_product_information', $config );
|
74 |
+
|
75 |
//Get Product Ids
|
76 |
$ids = Factory::get_product_ids( $config );
|
77 |
+
|
78 |
// Hook After Query Products
|
79 |
do_action( 'after_woo_feed_get_product_information', $config );
|
80 |
+
|
81 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Total %d product found', is_array( $ids ) && ! empty( $ids ) ? count( $ids ) : 0 ) );
|
82 |
+
|
83 |
if ( is_array( $ids ) && ! empty( $ids ) ) {
|
84 |
if ( count( $ids ) > $limit ) {
|
85 |
rsort( $ids ); // sorting ids in descending order
|
87 |
} else {
|
88 |
$batches = array( $ids );
|
89 |
}
|
90 |
+
|
91 |
Logs::write_log( $config->get_feed_file_name(), sprintf( 'Total %d batches', count( $batches ) ) );
|
92 |
+
|
93 |
wp_send_json_success(
|
94 |
array(
|
95 |
'product' => $batches,
|
106 |
);
|
107 |
}
|
108 |
wp_die();
|
109 |
+
|
110 |
} catch ( Exception $e ) {
|
111 |
+
|
112 |
$message = 'Error getting Product Ids.' . PHP_EOL . 'Caught Exception :: ' . $e->getMessage();
|
113 |
Logs::write_log( $config->get_feed_file_name(), $message );
|
114 |
Logs::write_fatal_log( $message, $e );
|
115 |
+
|
116 |
wp_send_json_error(
|
117 |
array(
|
118 |
'message' => esc_html__( 'Failed to fetch products.', 'woo-feed' ),
|
143 |
wp_die();
|
144 |
}
|
145 |
}
|
146 |
+
|
147 |
add_action( 'wp_ajax_get_product_information', 'woo_feed_get_product_information' );
|
148 |
}
|
149 |
|
includes/classes/class-woo-feed-constants.php
CHANGED
@@ -23,7 +23,7 @@ if( ! class_exists("Woo_Feed_Constants") ) {
|
|
23 |
* @var string
|
24 |
* @since 3.1.6
|
25 |
*/
|
26 |
-
define( 'WOO_FEED_FREE_VERSION', '4.5.
|
27 |
}
|
28 |
|
29 |
if ( ! defined( 'WOO_FEED_FREE_PATH' ) ) {
|
@@ -46,6 +46,8 @@ if( ! class_exists("Woo_Feed_Constants") ) {
|
|
46 |
define( 'WOO_FEED_FREE_ADMIN_PATH', WOO_FEED_FREE_PATH . 'admin/' );
|
47 |
}
|
48 |
|
|
|
|
|
49 |
if ( ! defined( 'WOO_FEED_FREE_LIBS_PATH' ) ) {
|
50 |
/**
|
51 |
* Admin File Path with trailing slash
|
@@ -115,4 +117,4 @@ if( ! class_exists("Woo_Feed_Constants") ) {
|
|
115 |
}
|
116 |
}
|
117 |
}
|
118 |
-
}
|
23 |
* @var string
|
24 |
* @since 3.1.6
|
25 |
*/
|
26 |
+
define( 'WOO_FEED_FREE_VERSION', '4.5.2' );
|
27 |
}
|
28 |
|
29 |
if ( ! defined( 'WOO_FEED_FREE_PATH' ) ) {
|
46 |
define( 'WOO_FEED_FREE_ADMIN_PATH', WOO_FEED_FREE_PATH . 'admin/' );
|
47 |
}
|
48 |
|
49 |
+
|
50 |
+
|
51 |
if ( ! defined( 'WOO_FEED_FREE_LIBS_PATH' ) ) {
|
52 |
/**
|
53 |
* Admin File Path with trailing slash
|
117 |
}
|
118 |
}
|
119 |
}
|
120 |
+
}
|
includes/classes/class-woo-feed-merchant.php
CHANGED
@@ -391,7 +391,7 @@ class Woo_Feed_Merchant {
|
|
391 |
'daisycon_work_jobs' => esc_html__( 'Daisycon Advertiser (Work & Jobs)', 'woo-feed' ),
|
392 |
'dooyoo' => esc_html__( 'Dooyoo', 'woo-feed' ),
|
393 |
'ecommerceit' => esc_html__( 'Ecommerce.it', 'woo-feed' ),
|
394 |
-
'etsy' => esc_html__( 'Etsy', 'woo-feed' ),
|
395 |
'fruugo' => esc_html__( 'Fruugo', 'woo-feed' ),
|
396 |
'fashionchick' => esc_html__( 'Fashionchick.nl', 'woo-feed' ),
|
397 |
'fruugo.au' => esc_html__( 'Fruugoaustralia.com', 'woo-feed' ),
|
391 |
'daisycon_work_jobs' => esc_html__( 'Daisycon Advertiser (Work & Jobs)', 'woo-feed' ),
|
392 |
'dooyoo' => esc_html__( 'Dooyoo', 'woo-feed' ),
|
393 |
'ecommerceit' => esc_html__( 'Ecommerce.it', 'woo-feed' ),
|
394 |
+
// 'etsy' => esc_html__( 'Etsy', 'woo-feed' ),
|
395 |
'fruugo' => esc_html__( 'Fruugo', 'woo-feed' ),
|
396 |
'fashionchick' => esc_html__( 'Fashionchick.nl', 'woo-feed' ),
|
397 |
'fruugo.au' => esc_html__( 'Fruugoaustralia.com', 'woo-feed' ),
|
includes/helper.php
CHANGED
@@ -1713,7 +1713,7 @@ if ( ! function_exists( 'woo_feed_generate_feed' ) ) {
|
|
1713 |
do_action( 'before_woo_feed_generate_feed', $info );
|
1714 |
|
1715 |
// Generate Feed Data
|
1716 |
-
if (
|
1717 |
$reviewObj = new Woo_Feed_Review( $info );
|
1718 |
$feedBody = $reviewObj->make_review_xml_feed();
|
1719 |
$string = $feedBody;
|
@@ -1721,7 +1721,7 @@ if ( ! function_exists( 'woo_feed_generate_feed' ) ) {
|
|
1721 |
} else {
|
1722 |
$products = new Woo_Generate_Feed( $info['provider'], $info );
|
1723 |
$getString = $products->getProducts();
|
1724 |
-
if ( 'csv'
|
1725 |
$csvHead[0] = $getString['header'];
|
1726 |
if ( ! empty( $csvHead ) && ! empty( $getString['body'] ) ) {
|
1727 |
$string = array_merge( $csvHead, $getString['body'] );
|
@@ -1729,7 +1729,7 @@ if ( ! function_exists( 'woo_feed_generate_feed' ) ) {
|
|
1729 |
$string = array();
|
1730 |
}
|
1731 |
} else {
|
1732 |
-
if ( 'json'
|
1733 |
$string = array();
|
1734 |
} else {
|
1735 |
$string = $getString['header'] . $getString['body'] . $getString['footer'];
|
1713 |
do_action( 'before_woo_feed_generate_feed', $info );
|
1714 |
|
1715 |
// Generate Feed Data
|
1716 |
+
if ( 'googlereview' === $info['provider'] ) {
|
1717 |
$reviewObj = new Woo_Feed_Review( $info );
|
1718 |
$feedBody = $reviewObj->make_review_xml_feed();
|
1719 |
$string = $feedBody;
|
1721 |
} else {
|
1722 |
$products = new Woo_Generate_Feed( $info['provider'], $info );
|
1723 |
$getString = $products->getProducts();
|
1724 |
+
if ( 'csv' === $info['feedType'] || 'tsv' === $info['feedType'] || 'xls' === $info['feedType'] ) {
|
1725 |
$csvHead[0] = $getString['header'];
|
1726 |
if ( ! empty( $csvHead ) && ! empty( $getString['body'] ) ) {
|
1727 |
$string = array_merge( $csvHead, $getString['body'] );
|
1729 |
$string = array();
|
1730 |
}
|
1731 |
} else {
|
1732 |
+
if ( 'json' === $info['feedType'] ) {
|
1733 |
$string = array();
|
1734 |
} else {
|
1735 |
$string = $getString['header'] . $getString['body'] . $getString['footer'];
|
woo-feed.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
* Plugin Name: CTX Feed
|
11 |
* Plugin URI: https://webappick.com/
|
12 |
* Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
|
13 |
-
* Version: 4.5.
|
14 |
* Author: WebAppick
|
15 |
* Author URI: https://webappick.com/
|
16 |
* License: GPL v2
|
@@ -24,8 +24,8 @@
|
|
24 |
* Requires PHP: 5.6
|
25 |
*
|
26 |
* WC Requirement & Test
|
27 |
-
* WC requires at least: 3.
|
28 |
-
* WC tested up to: 6.
|
29 |
*/
|
30 |
|
31 |
if ( ! defined( 'ABSPATH' ) ) {
|
@@ -34,13 +34,23 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
34 |
|
35 |
|
36 |
if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
/**
|
38 |
-
*
|
39 |
*
|
40 |
-
* @since
|
41 |
-
* @var
|
42 |
*/
|
43 |
-
define( '
|
44 |
}
|
45 |
|
46 |
require_once __DIR__ . '/includes/classes/class-woo-feed-constants.php';
|
@@ -53,8 +63,8 @@ Woo_Feed_Constants::defined_constants();
|
|
53 |
*
|
54 |
* */
|
55 |
require_once __DIR__ . DIRECTORY_SEPARATOR
|
56 |
-
|
57 |
-
|
58 |
|
59 |
/**
|
60 |
* Load V5 Module
|
@@ -64,10 +74,10 @@ require_once WOO_FEED_FREE_PATH . 'V5/autoload.php';
|
|
64 |
// Attributes executable file [Manages newly added attributes]
|
65 |
// @TODO Refactor all the attributes to a single file.
|
66 |
require_once __DIR__ . DIRECTORY_SEPARATOR
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
|
72 |
/**
|
73 |
* Load Uses Tracker
|
@@ -122,10 +132,10 @@ if ( ! function_exists( 'run_woo_feed' ) ) {
|
|
122 |
add_action( 'plugins_loaded', array( $plugin, 'run' ), PHP_INT_MAX );
|
123 |
add_action( 'admin_notices', 'wooFeed_Admin_Notices' );
|
124 |
//add_action( 'admin_notices', 'woo_feed_black_friday_notice' );
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
run_woo_feed();
|
130 |
}
|
131 |
|
@@ -156,15 +166,15 @@ if ( ! function_exists( 'woo_feed_make_batch_feed' ) ) {
|
|
156 |
wp_send_json_error( esc_html__( 'Invalid Request.', 'woo-feed' ) );
|
157 |
die();
|
158 |
}
|
159 |
-
|
160 |
$feedName = woo_feed_extract_feed_option_name( sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) ) );
|
161 |
$feedInfo = get_option( 'wf_config' . $feedName, false );
|
162 |
-
|
163 |
if ( ! $feedInfo ) {
|
164 |
$getFeedConfig = maybe_unserialize( get_option( 'wf_feed_' . $feedName ) );
|
165 |
$feedInfo = $getFeedConfig['feedrules'];
|
166 |
}
|
167 |
-
|
168 |
$feedInfo['productIds'] = isset( $_REQUEST['products'] ) ? array_map( 'absint', $_REQUEST['products'] ) : array();
|
169 |
$offset = isset( $_REQUEST['loop'] ) ? absint( $_REQUEST['loop'] ) : 0;
|
170 |
if ( woo_feed_is_debugging_enabled() ) {
|
@@ -180,17 +190,17 @@ if ( ! function_exists( 'woo_feed_make_batch_feed' ) ) {
|
|
180 |
woo_feed_log_feed_process( $feedInfo['filename'], $m );
|
181 |
}
|
182 |
}
|
183 |
-
|
184 |
if ( 0 === $offset ) {
|
185 |
woo_feed_unlink_tempFiles( $feedInfo, $feedName );
|
186 |
}
|
187 |
-
|
188 |
if ( isset($feedInfo['provider']) && 'googlereview' === $feedInfo['provider'] ) {
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
if ( $feed_data ) {
|
195 |
woo_feed_log_feed_process( $feedInfo['filename'], sprintf( 'Done Processing Loop %d.', ( $offset + 1 ) ) );
|
196 |
wp_send_json_success(
|
@@ -231,15 +241,15 @@ if ( ! function_exists( 'woo_feed_save_feed_file' ) ) {
|
|
231 |
wp_send_json_error( esc_html__( 'Invalid Feed.', 'woo-feed' ) );
|
232 |
die();
|
233 |
}
|
234 |
-
|
235 |
$feedName = woo_feed_extract_feed_option_name( sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) ) );
|
236 |
$info = get_option( 'wf_config' . $feedName, false );
|
237 |
-
|
238 |
if ( ! $info ) {
|
239 |
$getFeedConfig = maybe_unserialize( get_option( 'wf_feed_' . $feedName ) );
|
240 |
$info = $getFeedConfig['feedrules'];
|
241 |
}
|
242 |
-
|
243 |
$feedService = $info['provider'];
|
244 |
$type = $info['feedType'];
|
245 |
woo_feed_log_feed_process( $info['filename'], sprintf( 'Preparing Final Feed (%s) File...', $type ) );
|
@@ -256,26 +266,26 @@ if ( ! function_exists( 'woo_feed_save_feed_file' ) ) {
|
|
256 |
if ( ! $feedFooter ) {
|
257 |
woo_feed_log_feed_process( $info['filename'], 'Unable to Get Footer Chunk' );
|
258 |
}
|
259 |
-
|
260 |
// make file xml string
|
261 |
if ( isset( $info['provider'] ) && 'googlereview' === $info['provider'] ) {
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
} elseif ( 'csv' === $type || 'tsv' === $type || 'xls' === $type ) {
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
$upload_dir = wp_get_upload_dir();
|
280 |
$path = $upload_dir['basedir'] . '/woo-feed/' . $feedService . '/' . $type;
|
281 |
$saveFile = false;
|
@@ -318,7 +328,7 @@ if ( ! function_exists( 'woo_feed_save_feed_file' ) ) {
|
|
318 |
wp_send_json_error( $data );
|
319 |
wp_die();
|
320 |
}
|
321 |
-
|
322 |
$feed_URL = woo_feed_get_file_url( $feedName, $feedService, $type );
|
323 |
// Save Info into database.
|
324 |
$feedInfo = array(
|
@@ -332,21 +342,21 @@ if ( ! function_exists( 'woo_feed_save_feed_file' ) ) {
|
|
332 |
} else {
|
333 |
$feedInfo['status'] = 1;
|
334 |
}
|
335 |
-
|
336 |
woo_feed_unlink_tempFiles( $info, $feedName );
|
337 |
-
|
338 |
woo_feed_log_feed_process( $info['filename'], 'Updating Feed Information.' );
|
339 |
-
|
340 |
update_option( 'wf_feed_' . $feedName, serialize( $feedInfo ), false ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.serialize_serialize
|
341 |
-
|
342 |
if ( $saveFile ) {
|
343 |
// FTP File Upload Info
|
344 |
$ftpEnabled = sanitize_text_field( $info['ftpenabled'] );
|
345 |
-
|
346 |
if ( $ftpEnabled ) {
|
347 |
woo_feed_handle_file_transfer( $file, $feedName . '.' . $type, $info );
|
348 |
}
|
349 |
-
|
350 |
$cat = woo_feed_check_google_category( $feedInfo );
|
351 |
$data = array(
|
352 |
'info' => $feedInfo,
|
@@ -380,7 +390,7 @@ if ( ! function_exists( 'woo_feed_generate_batch_data' ) ) {
|
|
380 |
function woo_feed_generate_batch_data( $info, $feedSlug ) {
|
381 |
// parse rules.
|
382 |
$info = woo_feed_parse_feed_rules( isset( $info['feedrules'] ) ? $info['feedrules'] : $info );
|
383 |
-
|
384 |
try {
|
385 |
do_action( 'before_woo_feed_generate_batch_data', $info );
|
386 |
$status = false;
|
@@ -433,7 +443,7 @@ if ( ! function_exists( 'woo_feed_generate_new_feed' ) ) {
|
|
433 |
* Generate Feed
|
434 |
*/
|
435 |
function woo_feed_generate_new_feed() {
|
436 |
-
|
437 |
if ( isset( $_POST['provider'], $_POST['_wpnonce'], $_POST['filename'], $_POST['feedType'] ) ) {
|
438 |
// Verify Nonce.
|
439 |
if ( ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ), 'woo_feed_form_nonce' ) ) {
|
@@ -443,9 +453,9 @@ if ( ! function_exists( 'woo_feed_generate_new_feed' ) ) {
|
|
443 |
if ( ! woo_feed_check_valid_extension( sanitize_text_field( wp_unslash( $_POST['feedType'] ) ) ) ) {
|
444 |
wp_die( esc_html__( 'Invalid Feed Type!', 'woo-feed' ), 400 );
|
445 |
}
|
446 |
-
|
447 |
$fileName = woo_feed_save_feed_config_data( $_POST );
|
448 |
-
|
449 |
wp_safe_redirect(
|
450 |
add_query_arg(
|
451 |
array(
|
@@ -458,7 +468,7 @@ if ( ! function_exists( 'woo_feed_generate_new_feed' ) ) {
|
|
458 |
);
|
459 |
wp_die();
|
460 |
}
|
461 |
-
|
462 |
require WOO_FEED_FREE_ADMIN_PATH . 'partials/woo-feed-admin-display.php';
|
463 |
}
|
464 |
}
|
@@ -467,23 +477,23 @@ if ( ! function_exists( 'woo_feed_manage_feed' ) ) {
|
|
467 |
* Manage Feeds
|
468 |
*/
|
469 |
function woo_feed_manage_feed() {
|
470 |
-
|
471 |
$provider = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['provider'], "text");
|
472 |
$feed_id = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feed_id'], "text");
|
473 |
$feed_option_name = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feed_option_name'], "text");
|
474 |
$filename = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['filename'], "file_name");
|
475 |
$feedType = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feedType'], "text");
|
476 |
-
|
477 |
$getaction = apply_filters('CTXFEED_filter_securing_input', "GET", @$_GET['action'], "text");
|
478 |
$getfeed = apply_filters('CTXFEED_filter_securing_input', "GET", @$_GET['feed'], "text");
|
479 |
-
|
480 |
// @TODO use admin_post_ action for form handling.
|
481 |
// Manage action for category mapping.
|
482 |
if ( 'edit-feed' === $getaction ) {
|
483 |
if ( ! defined( 'WOO_FEED_EDIT_CONFIG' ) ) {
|
484 |
define( 'WOO_FEED_EDIT_CONFIG', true );
|
485 |
}
|
486 |
-
|
487 |
if ( count( $_POST ) && $provider && $feed_id && $feed_option_name && $filename && $feedType ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
|
488 |
$nonce = isset( $_POST['_wpnonce'] ) && ! empty( $_POST['_wpnonce'] ) ? sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ) : '';
|
489 |
if ( ! wp_verify_nonce( $nonce, 'wf_edit_feed' ) ) {
|
@@ -493,11 +503,11 @@ if ( ! function_exists( 'woo_feed_manage_feed' ) ) {
|
|
493 |
if ( ! woo_feed_check_valid_extension( wp_unslash( $_POST['feedType'] ) ) ) {
|
494 |
wp_die( esc_html__( 'Invalid Feed Type!', 'woo-feed' ), 400 );
|
495 |
}
|
496 |
-
|
497 |
// check if name is changed... save as new, rename feed isn't implemented ... it can be...
|
498 |
// delete old feed save data as new feed.
|
499 |
$feed_option_name = wp_unslash( $feed_option_name ) ;
|
500 |
-
|
501 |
// if ( $_POST['filename'] !== $_POST['feed_option_name'] ) {
|
502 |
// $feed_option_name = ( isset( $_POST['filename'] ) && ! empty( $_POST['filename'] ) ) ? sanitize_text_field( $_POST['filename'] ) : null;
|
503 |
// Delete old feed info & file
|
@@ -623,23 +633,23 @@ if ( ! function_exists( 'feed_merchant_view' ) ) {
|
|
623 |
}
|
624 |
// Get facebook Categories.
|
625 |
if ( ! function_exists( 'woo_feed_get_facebook_categories' ) ) {
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
}
|
644 |
// Get Google Categories.
|
645 |
if ( ! function_exists( 'woo_feed_get_google_categories' ) ) {
|
@@ -702,12 +712,12 @@ if ( ! function_exists( 'woo_feed_update_feed_status' ) ) {
|
|
702 |
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
703 |
wp_die();
|
704 |
}
|
705 |
-
|
706 |
$feedName = isset( $_POST['feedName'] ) ? sanitize_text_field( wp_unslash( $_POST['feedName'] ) ) : '';
|
707 |
if ( ! empty( $feedName ) ) {
|
708 |
$feedInfo = maybe_unserialize( get_option( $feedName ) );
|
709 |
$feedInfo['status'] = isset( $_POST['status'] ) && 1 === (int) $_POST['status'] ? 1 : 0;
|
710 |
-
|
711 |
$feed_slug = str_replace( 'wf_feed_', 'wf_config', $feedName );
|
712 |
if ( 1 === $feedInfo['status'] ) {
|
713 |
if ( ! wp_next_scheduled( 'woo_feed_update_single_feed', array( $feed_slug ) ) ) {
|
@@ -716,7 +726,7 @@ if ( ! function_exists( 'woo_feed_update_feed_status' ) ) {
|
|
716 |
} else {
|
717 |
wp_clear_scheduled_hook( 'woo_feed_update_single_feed', array( $feed_slug ) );
|
718 |
}
|
719 |
-
|
720 |
update_option( $feedName, serialize( $feedInfo ), false ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.serialize_serialize
|
721 |
wp_send_json_success( array( 'status' => true ) );
|
722 |
} else {
|
@@ -748,7 +758,7 @@ if ( ! function_exists( 'woo_feed_config_feed' ) ) {
|
|
748 |
function woo_feed_config_feed() {
|
749 |
if ( isset( $_POST['wa_woo_feed_config'], $_POST['_wpnonce'] ) ) {
|
750 |
check_admin_referer( 'woo-feed-config' );
|
751 |
-
|
752 |
$data = array(
|
753 |
'per_batch' => isset( $_POST['batch_limit'] ) ? absint( $_POST['batch_limit'] ) : '',
|
754 |
'product_query_type' => isset( $_POST['product_query_type'] ) ? sanitize_text_field( wp_unslash( $_POST['product_query_type'] ) ) : '',
|
@@ -760,20 +770,20 @@ if ( ! function_exists( 'woo_feed_config_feed' ) ) {
|
|
760 |
'disable_brand' => isset( $_POST['disable_brand'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_brand'] ) ) : '',
|
761 |
'disable_pixel' => isset( $_POST['disable_pixel'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_pixel'] )) : '',
|
762 |
'pixel_id' => isset( $_POST['pixel_id'] ) ? sanitize_text_field( wp_unslash( $_POST['pixel_id'] )) : '',
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
'only_free_shipping' => isset( $_POST['only_free_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_free_shipping'] ) ) : '',
|
768 |
'only_local_pickup_shipping' => isset( $_POST['only_local_pickup_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_local_pickup_shipping'] ) ) : '',
|
769 |
'enable_ftp_upload' => isset( $_POST['enable_ftp_upload'] ) ? sanitize_text_field( wp_unslash( $_POST['enable_ftp_upload'] ) ) : '',
|
770 |
);
|
771 |
-
|
772 |
woo_feed_save_options( $data );
|
773 |
-
|
774 |
// $currencyAPI = isset( $_POST['currency_api_code'] ) ? sanitize_text_field( $_POST['currency_api_code'] ) : '';
|
775 |
// update_option( 'woo_feed_currency_api_code', $currencyAPI, false );
|
776 |
-
|
777 |
if ( isset( $_POST['opt_in'] ) && 'on' === $_POST['opt_in'] ) {
|
778 |
WooFeedWebAppickAPI::getInstance()->trackerOptIn();
|
779 |
} else {
|
@@ -786,11 +796,11 @@ if ( ! function_exists( 'woo_feed_config_feed' ) ) {
|
|
786 |
if ( isset( $_POST['purge_feed_cache'] ) ) {
|
787 |
woo_feed_flush_cache_data();
|
788 |
}
|
789 |
-
|
790 |
wp_safe_redirect( admin_url( 'admin.php?page=webappick-feed-settings&settings_updated=1' ) );
|
791 |
die();
|
792 |
}
|
793 |
-
|
794 |
require WOO_FEED_FREE_ADMIN_PATH . 'partials/woo-feed-settings.php';
|
795 |
}
|
796 |
}
|
@@ -806,64 +816,64 @@ if ( ! function_exists( 'woo_feed_flash_cache_action' ) ) {
|
|
806 |
}
|
807 |
|
808 |
if ( ! class_exists( 'webappick_suggest_plugin' ) ) {
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
}
|
868 |
// Suggest other plugins of webappick.
|
869 |
|
10 |
* Plugin Name: CTX Feed
|
11 |
* Plugin URI: https://webappick.com/
|
12 |
* Description: Easily generate woocommerce product feed for any marketing channel like Google Shopping(Merchant), Facebook Remarketing, Bing, eBay & more. Support 100+ Merchants.
|
13 |
+
* Version: 4.5.2
|
14 |
* Author: WebAppick
|
15 |
* Author URI: https://webappick.com/
|
16 |
* License: GPL v2
|
24 |
* Requires PHP: 5.6
|
25 |
*
|
26 |
* WC Requirement & Test
|
27 |
+
* WC requires at least: 3.3
|
28 |
+
* WC tested up to: 6.9.1
|
29 |
*/
|
30 |
|
31 |
if ( ! defined( 'ABSPATH' ) ) {
|
34 |
|
35 |
|
36 |
if ( ! defined( 'WOO_FEED_FREE_FILE' ) ) {
|
37 |
+
/**
|
38 |
+
* Plugin Base File
|
39 |
+
*
|
40 |
+
* @since 3.1.41
|
41 |
+
* @var string
|
42 |
+
*/
|
43 |
+
define( 'WOO_FEED_FREE_FILE', __FILE__ );
|
44 |
+
}
|
45 |
+
|
46 |
+
if ( ! defined( 'WOO_FEED_FREE_ADMIN_URL' ) ) {
|
47 |
/**
|
48 |
+
* Admin File url
|
49 |
*
|
50 |
+
* @since 4.2.0
|
51 |
+
* @var string
|
52 |
*/
|
53 |
+
define( 'WOO_FEED_FREE_ADMIN_URL', plugin_dir_url( __FILE__ ) . 'admin/' );
|
54 |
}
|
55 |
|
56 |
require_once __DIR__ . '/includes/classes/class-woo-feed-constants.php';
|
63 |
*
|
64 |
* */
|
65 |
require_once __DIR__ . DIRECTORY_SEPARATOR
|
66 |
+
. 'libs' . DIRECTORY_SEPARATOR
|
67 |
+
. 'autoload.php';
|
68 |
|
69 |
/**
|
70 |
* Load V5 Module
|
74 |
// Attributes executable file [Manages newly added attributes]
|
75 |
// @TODO Refactor all the attributes to a single file.
|
76 |
require_once __DIR__ . DIRECTORY_SEPARATOR
|
77 |
+
. 'libs' . DIRECTORY_SEPARATOR
|
78 |
+
. 'WebAppick' . DIRECTORY_SEPARATOR
|
79 |
+
. 'Attributes' . DIRECTORY_SEPARATOR
|
80 |
+
. 'Attributes.php';
|
81 |
|
82 |
/**
|
83 |
* Load Uses Tracker
|
132 |
add_action( 'plugins_loaded', array( $plugin, 'run' ), PHP_INT_MAX );
|
133 |
add_action( 'admin_notices', 'wooFeed_Admin_Notices' );
|
134 |
//add_action( 'admin_notices', 'woo_feed_black_friday_notice' );
|
135 |
+
WooFeedWebAppickAPI::getInstance();
|
136 |
+
|
137 |
+
}
|
138 |
+
|
139 |
run_woo_feed();
|
140 |
}
|
141 |
|
166 |
wp_send_json_error( esc_html__( 'Invalid Request.', 'woo-feed' ) );
|
167 |
die();
|
168 |
}
|
169 |
+
|
170 |
$feedName = woo_feed_extract_feed_option_name( sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) ) );
|
171 |
$feedInfo = get_option( 'wf_config' . $feedName, false );
|
172 |
+
|
173 |
if ( ! $feedInfo ) {
|
174 |
$getFeedConfig = maybe_unserialize( get_option( 'wf_feed_' . $feedName ) );
|
175 |
$feedInfo = $getFeedConfig['feedrules'];
|
176 |
}
|
177 |
+
|
178 |
$feedInfo['productIds'] = isset( $_REQUEST['products'] ) ? array_map( 'absint', $_REQUEST['products'] ) : array();
|
179 |
$offset = isset( $_REQUEST['loop'] ) ? absint( $_REQUEST['loop'] ) : 0;
|
180 |
if ( woo_feed_is_debugging_enabled() ) {
|
190 |
woo_feed_log_feed_process( $feedInfo['filename'], $m );
|
191 |
}
|
192 |
}
|
193 |
+
|
194 |
if ( 0 === $offset ) {
|
195 |
woo_feed_unlink_tempFiles( $feedInfo, $feedName );
|
196 |
}
|
197 |
+
|
198 |
if ( isset($feedInfo['provider']) && 'googlereview' === $feedInfo['provider'] ) {
|
199 |
+
$feed_data = true;
|
200 |
+
} else {
|
201 |
+
$feed_data = woo_feed_generate_batch_data( $feedInfo, $feedName );
|
202 |
+
}
|
203 |
+
|
204 |
if ( $feed_data ) {
|
205 |
woo_feed_log_feed_process( $feedInfo['filename'], sprintf( 'Done Processing Loop %d.', ( $offset + 1 ) ) );
|
206 |
wp_send_json_success(
|
241 |
wp_send_json_error( esc_html__( 'Invalid Feed.', 'woo-feed' ) );
|
242 |
die();
|
243 |
}
|
244 |
+
|
245 |
$feedName = woo_feed_extract_feed_option_name( sanitize_text_field( wp_unslash( $_REQUEST['feed'] ) ) );
|
246 |
$info = get_option( 'wf_config' . $feedName, false );
|
247 |
+
|
248 |
if ( ! $info ) {
|
249 |
$getFeedConfig = maybe_unserialize( get_option( 'wf_feed_' . $feedName ) );
|
250 |
$info = $getFeedConfig['feedrules'];
|
251 |
}
|
252 |
+
|
253 |
$feedService = $info['provider'];
|
254 |
$type = $info['feedType'];
|
255 |
woo_feed_log_feed_process( $info['filename'], sprintf( 'Preparing Final Feed (%s) File...', $type ) );
|
266 |
if ( ! $feedFooter ) {
|
267 |
woo_feed_log_feed_process( $info['filename'], 'Unable to Get Footer Chunk' );
|
268 |
}
|
269 |
+
|
270 |
// make file xml string
|
271 |
if ( isset( $info['provider'] ) && 'googlereview' === $info['provider'] ) {
|
272 |
+
$reviewObj = new Woo_Feed_Review($info);
|
273 |
+
$feedBody = $reviewObj->make_review_xml_feed();
|
274 |
+
$string = $feedBody;
|
275 |
+
|
276 |
} elseif ( 'csv' === $type || 'tsv' === $type || 'xls' === $type ) {
|
277 |
+
$csvHead[0] = $feedHeader;
|
278 |
+
if ( ! empty( $csvHead ) && ! empty( $feedBody ) ) {
|
279 |
+
$string = array_merge( $csvHead, $feedBody );
|
280 |
+
} else {
|
281 |
+
$string = array();
|
282 |
+
}
|
283 |
+
} elseif ( 'json' === $type ) {
|
284 |
+
$string = $feedBody;
|
285 |
+
} else {
|
286 |
+
$string = $feedHeader . $feedBody . $feedFooter;
|
287 |
+
}
|
288 |
+
|
289 |
$upload_dir = wp_get_upload_dir();
|
290 |
$path = $upload_dir['basedir'] . '/woo-feed/' . $feedService . '/' . $type;
|
291 |
$saveFile = false;
|
328 |
wp_send_json_error( $data );
|
329 |
wp_die();
|
330 |
}
|
331 |
+
|
332 |
$feed_URL = woo_feed_get_file_url( $feedName, $feedService, $type );
|
333 |
// Save Info into database.
|
334 |
$feedInfo = array(
|
342 |
} else {
|
343 |
$feedInfo['status'] = 1;
|
344 |
}
|
345 |
+
|
346 |
woo_feed_unlink_tempFiles( $info, $feedName );
|
347 |
+
|
348 |
woo_feed_log_feed_process( $info['filename'], 'Updating Feed Information.' );
|
349 |
+
|
350 |
update_option( 'wf_feed_' . $feedName, serialize( $feedInfo ), false ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.serialize_serialize
|
351 |
+
|
352 |
if ( $saveFile ) {
|
353 |
// FTP File Upload Info
|
354 |
$ftpEnabled = sanitize_text_field( $info['ftpenabled'] );
|
355 |
+
|
356 |
if ( $ftpEnabled ) {
|
357 |
woo_feed_handle_file_transfer( $file, $feedName . '.' . $type, $info );
|
358 |
}
|
359 |
+
|
360 |
$cat = woo_feed_check_google_category( $feedInfo );
|
361 |
$data = array(
|
362 |
'info' => $feedInfo,
|
390 |
function woo_feed_generate_batch_data( $info, $feedSlug ) {
|
391 |
// parse rules.
|
392 |
$info = woo_feed_parse_feed_rules( isset( $info['feedrules'] ) ? $info['feedrules'] : $info );
|
393 |
+
|
394 |
try {
|
395 |
do_action( 'before_woo_feed_generate_batch_data', $info );
|
396 |
$status = false;
|
443 |
* Generate Feed
|
444 |
*/
|
445 |
function woo_feed_generate_new_feed() {
|
446 |
+
|
447 |
if ( isset( $_POST['provider'], $_POST['_wpnonce'], $_POST['filename'], $_POST['feedType'] ) ) {
|
448 |
// Verify Nonce.
|
449 |
if ( ! wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ), 'woo_feed_form_nonce' ) ) {
|
453 |
if ( ! woo_feed_check_valid_extension( sanitize_text_field( wp_unslash( $_POST['feedType'] ) ) ) ) {
|
454 |
wp_die( esc_html__( 'Invalid Feed Type!', 'woo-feed' ), 400 );
|
455 |
}
|
456 |
+
|
457 |
$fileName = woo_feed_save_feed_config_data( $_POST );
|
458 |
+
|
459 |
wp_safe_redirect(
|
460 |
add_query_arg(
|
461 |
array(
|
468 |
);
|
469 |
wp_die();
|
470 |
}
|
471 |
+
|
472 |
require WOO_FEED_FREE_ADMIN_PATH . 'partials/woo-feed-admin-display.php';
|
473 |
}
|
474 |
}
|
477 |
* Manage Feeds
|
478 |
*/
|
479 |
function woo_feed_manage_feed() {
|
480 |
+
|
481 |
$provider = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['provider'], "text");
|
482 |
$feed_id = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feed_id'], "text");
|
483 |
$feed_option_name = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feed_option_name'], "text");
|
484 |
$filename = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['filename'], "file_name");
|
485 |
$feedType = apply_filters('CTXFEED_filter_securing_input', "POST", @$_POST['feedType'], "text");
|
486 |
+
|
487 |
$getaction = apply_filters('CTXFEED_filter_securing_input', "GET", @$_GET['action'], "text");
|
488 |
$getfeed = apply_filters('CTXFEED_filter_securing_input', "GET", @$_GET['feed'], "text");
|
489 |
+
|
490 |
// @TODO use admin_post_ action for form handling.
|
491 |
// Manage action for category mapping.
|
492 |
if ( 'edit-feed' === $getaction ) {
|
493 |
if ( ! defined( 'WOO_FEED_EDIT_CONFIG' ) ) {
|
494 |
define( 'WOO_FEED_EDIT_CONFIG', true );
|
495 |
}
|
496 |
+
|
497 |
if ( count( $_POST ) && $provider && $feed_id && $feed_option_name && $filename && $feedType ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing
|
498 |
$nonce = isset( $_POST['_wpnonce'] ) && ! empty( $_POST['_wpnonce'] ) ? sanitize_text_field( wp_unslash( $_POST['_wpnonce'] ) ) : '';
|
499 |
if ( ! wp_verify_nonce( $nonce, 'wf_edit_feed' ) ) {
|
503 |
if ( ! woo_feed_check_valid_extension( wp_unslash( $_POST['feedType'] ) ) ) {
|
504 |
wp_die( esc_html__( 'Invalid Feed Type!', 'woo-feed' ), 400 );
|
505 |
}
|
506 |
+
|
507 |
// check if name is changed... save as new, rename feed isn't implemented ... it can be...
|
508 |
// delete old feed save data as new feed.
|
509 |
$feed_option_name = wp_unslash( $feed_option_name ) ;
|
510 |
+
|
511 |
// if ( $_POST['filename'] !== $_POST['feed_option_name'] ) {
|
512 |
// $feed_option_name = ( isset( $_POST['filename'] ) && ! empty( $_POST['filename'] ) ) ? sanitize_text_field( $_POST['filename'] ) : null;
|
513 |
// Delete old feed info & file
|
633 |
}
|
634 |
// Get facebook Categories.
|
635 |
if ( ! function_exists( 'woo_feed_get_facebook_categories' ) ) {
|
636 |
+
add_action( 'wp_ajax_get_facebook_categories', 'woo_feed_get_facebook_categories' );
|
637 |
+
/**
|
638 |
+
* Ajax Response for Facebook Category Dropdown Data
|
639 |
+
*
|
640 |
+
* @return void
|
641 |
+
*/
|
642 |
+
function woo_feed_get_facebook_categories() {
|
643 |
+
check_ajax_referer( 'wpf_feed_nonce' );
|
644 |
+
if ( ! current_user_can( 'manage_woocommerce' ) ) {
|
645 |
+
woo_feed_log_debug_message( 'User doesnt have enough permission.' );
|
646 |
+
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
647 |
+
wp_die();
|
648 |
+
}
|
649 |
+
$wooFeedDropDown = new Woo_Feed_Dropdown();
|
650 |
+
wp_send_json_success( $wooFeedDropDown->facebookTaxonomyArray() );
|
651 |
+
die();
|
652 |
+
}
|
653 |
}
|
654 |
// Get Google Categories.
|
655 |
if ( ! function_exists( 'woo_feed_get_google_categories' ) ) {
|
712 |
wp_send_json_error( esc_html__( 'Unauthorized Action.', 'woo-feed' ) );
|
713 |
wp_die();
|
714 |
}
|
715 |
+
|
716 |
$feedName = isset( $_POST['feedName'] ) ? sanitize_text_field( wp_unslash( $_POST['feedName'] ) ) : '';
|
717 |
if ( ! empty( $feedName ) ) {
|
718 |
$feedInfo = maybe_unserialize( get_option( $feedName ) );
|
719 |
$feedInfo['status'] = isset( $_POST['status'] ) && 1 === (int) $_POST['status'] ? 1 : 0;
|
720 |
+
|
721 |
$feed_slug = str_replace( 'wf_feed_', 'wf_config', $feedName );
|
722 |
if ( 1 === $feedInfo['status'] ) {
|
723 |
if ( ! wp_next_scheduled( 'woo_feed_update_single_feed', array( $feed_slug ) ) ) {
|
726 |
} else {
|
727 |
wp_clear_scheduled_hook( 'woo_feed_update_single_feed', array( $feed_slug ) );
|
728 |
}
|
729 |
+
|
730 |
update_option( $feedName, serialize( $feedInfo ), false ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.serialize_serialize
|
731 |
wp_send_json_success( array( 'status' => true ) );
|
732 |
} else {
|
758 |
function woo_feed_config_feed() {
|
759 |
if ( isset( $_POST['wa_woo_feed_config'], $_POST['_wpnonce'] ) ) {
|
760 |
check_admin_referer( 'woo-feed-config' );
|
761 |
+
|
762 |
$data = array(
|
763 |
'per_batch' => isset( $_POST['batch_limit'] ) ? absint( $_POST['batch_limit'] ) : '',
|
764 |
'product_query_type' => isset( $_POST['product_query_type'] ) ? sanitize_text_field( wp_unslash( $_POST['product_query_type'] ) ) : '',
|
770 |
'disable_brand' => isset( $_POST['disable_brand'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_brand'] ) ) : '',
|
771 |
'disable_pixel' => isset( $_POST['disable_pixel'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_pixel'] )) : '',
|
772 |
'pixel_id' => isset( $_POST['pixel_id'] ) ? sanitize_text_field( wp_unslash( $_POST['pixel_id'] )) : '',
|
773 |
+
'disable_remarketing' => isset( $_POST['disable_remarketing'] ) ? sanitize_text_field( wp_unslash( $_POST['disable_remarketing'] )) : '',
|
774 |
+
'remarketing_id' => isset( $_POST['remarketing_id'] ) ? sanitize_text_field( wp_unslash( $_POST['remarketing_id'] )) : '',
|
775 |
+
'remarketing_label' => isset( $_POST['remarketing_label'] ) ? sanitize_text_field( wp_unslash( $_POST['remarketing_label'] )) : '',
|
776 |
+
'allow_all_shipping' => isset( $_POST['allow_all_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['allow_all_shipping'] ) ) : '',
|
777 |
'only_free_shipping' => isset( $_POST['only_free_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_free_shipping'] ) ) : '',
|
778 |
'only_local_pickup_shipping' => isset( $_POST['only_local_pickup_shipping'] ) ? sanitize_text_field( wp_unslash( $_POST['only_local_pickup_shipping'] ) ) : '',
|
779 |
'enable_ftp_upload' => isset( $_POST['enable_ftp_upload'] ) ? sanitize_text_field( wp_unslash( $_POST['enable_ftp_upload'] ) ) : '',
|
780 |
);
|
781 |
+
|
782 |
woo_feed_save_options( $data );
|
783 |
+
|
784 |
// $currencyAPI = isset( $_POST['currency_api_code'] ) ? sanitize_text_field( $_POST['currency_api_code'] ) : '';
|
785 |
// update_option( 'woo_feed_currency_api_code', $currencyAPI, false );
|
786 |
+
|
787 |
if ( isset( $_POST['opt_in'] ) && 'on' === $_POST['opt_in'] ) {
|
788 |
WooFeedWebAppickAPI::getInstance()->trackerOptIn();
|
789 |
} else {
|
796 |
if ( isset( $_POST['purge_feed_cache'] ) ) {
|
797 |
woo_feed_flush_cache_data();
|
798 |
}
|
799 |
+
|
800 |
wp_safe_redirect( admin_url( 'admin.php?page=webappick-feed-settings&settings_updated=1' ) );
|
801 |
die();
|
802 |
}
|
803 |
+
|
804 |
require WOO_FEED_FREE_ADMIN_PATH . 'partials/woo-feed-settings.php';
|
805 |
}
|
806 |
}
|
816 |
}
|
817 |
|
818 |
if ( ! class_exists( 'webappick_suggest_plugin' ) ) {
|
819 |
+
class webappick_suggest_plugin {
|
820 |
+
|
821 |
+
static function init() {
|
822 |
+
if ( is_admin() ) {
|
823 |
+
if ( ! is_plugin_active('xt-woo-variation-swatches/xt-woo-variation-swatches.php') ) {
|
824 |
+
add_filter( 'install_plugins_table_api_args_featured', array( __CLASS__, 'featured_plugins_tab' ) );
|
825 |
+
}
|
826 |
+
}
|
827 |
+
} // init
|
828 |
+
// add our plugins to recommended list
|
829 |
+
static function plugins_api_result( $res, $action, $args ) {
|
830 |
+
remove_filter( 'plugins_api_result', array( __CLASS__, 'plugins_api_result' ), 10, 1 );
|
831 |
+
$res = self::add_plugin_favs( 'webappick-pdf-invoice-for-woocommerce', $res );
|
832 |
+
|
833 |
+
return $res;
|
834 |
+
} // plugins_api_result
|
835 |
+
// helper function for adding plugins to fav list
|
836 |
+
static function featured_plugins_tab( $args ) {
|
837 |
+
add_filter( 'plugins_api_result', array( __CLASS__, 'plugins_api_result' ), 10, 3 );
|
838 |
+
return $args;
|
839 |
+
} // featured_plugins_tab
|
840 |
+
// add single plugin to list of favs
|
841 |
+
static function add_plugin_favs( $plugin_slug, $res ) {
|
842 |
+
if ( ! empty( $res->plugins ) && is_array( $res->plugins ) ) {
|
843 |
+
foreach ( $res->plugins as $plugin ) {
|
844 |
+
if ( is_object( $plugin ) && ! empty( $plugin->slug ) && $plugin->slug === $plugin_slug ) {
|
845 |
+
return $res;
|
846 |
+
}
|
847 |
+
} // foreach
|
848 |
+
}
|
849 |
+
$plugin_info = get_transient( 'wf-plugin-info-' . $plugin_slug );
|
850 |
+
if ( $plugin_info ) {
|
851 |
+
array_unshift( $res->plugins, $plugin_info );
|
852 |
+
} else {
|
853 |
+
$plugin_info = plugins_api(
|
854 |
+
'plugin_information',
|
855 |
+
array(
|
856 |
+
'slug' => $plugin_slug,
|
857 |
+
'is_ssl' => is_ssl(),
|
858 |
+
'fields' => array(
|
859 |
+
'banners' => true,
|
860 |
+
'reviews' => true,
|
861 |
+
'downloaded' => true,
|
862 |
+
'active_installs' => true,
|
863 |
+
'icons' => true,
|
864 |
+
'short_description' => true,
|
865 |
+
),
|
866 |
+
)
|
867 |
+
);
|
868 |
+
if ( ! is_wp_error( $plugin_info ) ) {
|
869 |
+
$res->plugins[] = $plugin_info;
|
870 |
+
set_transient( 'wf-plugin-info-' . $plugin_slug, $plugin_info, DAY_IN_SECONDS * 7 );
|
871 |
+
}
|
872 |
+
}
|
873 |
+
return $res;
|
874 |
+
} // add_plugin_favs
|
875 |
+
}
|
876 |
+
add_action( 'init', array( 'webappick_suggest_plugin', 'init' ) );
|
877 |
}
|
878 |
// Suggest other plugins of webappick.
|
879 |
|