Version Description
- Improvement: Allow Force no-cache headers on 301 redirects
- Improvement: Minor codebase improvements
- Bug Fix: Affiliate link can redirect even with invalid category slug
- Bug Fix: Allow valid characters on the slug box pattern match
Download this release
Release Info
Developer | jkohlbach |
Plugin | ThirstyAffiliates Affiliate Link Manager |
Version | 3.2.2 |
Comparing to | |
See all releases |
Code changes from version 3.2.1 to 3.2.2
- Helpers/Helper_Functions.php +5 -3
- Helpers/Plugin_Constants.php +1 -1
- Models/Affiliate_Link.php +28 -17
- Models/Affiliate_Links_CPT.php +6 -2
- Models/Rewrites_Redirection.php +36 -1
- Models/Settings.php +8 -1
- Models/Stats_Reporting.php +84 -7
- js/app/affiliate_link_page/dist/affiliate-link-page.js +1 -1
- js/app/ta-reports.js +55 -3
- languages/thirstyaffiliates.pot +333 -211
- readme.txt +8 -2
- thirstyaffiliates.php +2 -2
- views/cpt/view-urls-metabox.php +1 -1
- views/reports/link-performance-report.php +1 -0
Helpers/Helper_Functions.php
CHANGED
@@ -276,12 +276,14 @@ class Helper_Functions {
|
|
276 |
* @since 3.0.0
|
277 |
* @access public
|
278 |
*
|
279 |
-
* @param int
|
|
|
280 |
* @return string Affiliate link default category slug.
|
281 |
*/
|
282 |
-
public function get_default_category_slug( $link_id ) {
|
283 |
|
284 |
-
$terms
|
|
|
285 |
|
286 |
if ( is_wp_error( $terms ) || empty( $terms ) )
|
287 |
return;
|
276 |
* @since 3.0.0
|
277 |
* @access public
|
278 |
*
|
279 |
+
* @param int $link_id Affiliate Link ID.
|
280 |
+
* @param array $terms Affiliate link categories.
|
281 |
* @return string Affiliate link default category slug.
|
282 |
*/
|
283 |
+
public function get_default_category_slug( $link_id , $terms = array() ) {
|
284 |
|
285 |
+
if ( ! is_array( $terms ) || empty( $terms ) )
|
286 |
+
$terms = get_the_terms( $link_id , Plugin_Constants::AFFILIATE_LINKS_TAX );
|
287 |
|
288 |
if ( is_wp_error( $terms ) || empty( $terms ) )
|
289 |
return;
|
Helpers/Plugin_Constants.php
CHANGED
@@ -27,7 +27,7 @@ class Plugin_Constants {
|
|
27 |
// Plugin configuration constants
|
28 |
const TOKEN = 'ta';
|
29 |
const INSTALLED_VERSION = 'ta_installed_version';
|
30 |
-
const VERSION = '3.2.
|
31 |
const TEXT_DOMAIN = 'thirstyaffiliates';
|
32 |
const THEME_TEMPLATE_PATH = 'thirstyaffiliates';
|
33 |
const META_DATA_PREFIX = '_ta_';
|
27 |
// Plugin configuration constants
|
28 |
const TOKEN = 'ta';
|
29 |
const INSTALLED_VERSION = 'ta_installed_version';
|
30 |
+
const VERSION = '3.2.2';
|
31 |
const TEXT_DOMAIN = 'thirstyaffiliates';
|
32 |
const THEME_TEMPLATE_PATH = 'thirstyaffiliates';
|
33 |
const META_DATA_PREFIX = '_ta_';
|
Models/Affiliate_Link.php
CHANGED
@@ -173,6 +173,7 @@ class Affiliate_Link {
|
|
173 |
* Read data from DB and save on instance.
|
174 |
*
|
175 |
* @since 3.0.0
|
|
|
176 |
* @access public
|
177 |
*/
|
178 |
private function read() {
|
@@ -182,10 +183,14 @@ class Affiliate_Link {
|
|
182 |
if ( ! is_a( $this->post_data , 'WP_Post' ) || $this->object_is_read )
|
183 |
return;
|
184 |
|
185 |
-
// set the affiliate link ID
|
186 |
-
$
|
|
|
|
|
|
|
187 |
|
188 |
-
|
|
|
189 |
|
190 |
switch ( $prop ) {
|
191 |
|
@@ -200,32 +205,27 @@ class Affiliate_Link {
|
|
200 |
case 'no_follow' :
|
201 |
case 'new_window' :
|
202 |
case 'pass_query_str' :
|
203 |
-
|
204 |
-
$this->data[ $prop ] = ! empty( $raw_data ) ? $raw_data : $
|
205 |
break;
|
206 |
|
207 |
case 'rel_tags' :
|
208 |
-
|
209 |
-
case 'uncloak_link' :
|
210 |
case 'redirect_type' :
|
211 |
-
$raw_data = get_post_meta( $this->id , Plugin_Constants::META_DATA_PREFIX . $prop , true );
|
212 |
$this->data[ $prop ] = ! empty( $raw_data ) ? $raw_data : $this->get_prop_global_option_value( $prop );
|
213 |
break;
|
214 |
|
215 |
case 'image_ids' :
|
216 |
case 'inserted_to' :
|
217 |
-
$
|
218 |
-
$this->data[ $prop ] = ( is_array( $raw_data ) && ! empty( $raw_data ) ) ? $raw_data : $this->default_data[ $prop ];
|
219 |
break;
|
220 |
|
221 |
case 'categories' :
|
222 |
$categories = wp_get_post_terms( $this->id , Plugin_Constants::AFFILIATE_LINKS_TAX );
|
223 |
-
$this->data[ $prop ] = ! empty( $categories ) ? $categories : $
|
224 |
break;
|
225 |
|
226 |
default :
|
227 |
-
$
|
228 |
-
$this->data[ $prop ] = apply_filters( 'ta_read_thirstylink_property' , $value , $prop , $this->get_merged_default_extended_data() );
|
229 |
break;
|
230 |
|
231 |
}
|
@@ -357,6 +357,7 @@ class Affiliate_Link {
|
|
357 |
* Get the properties global option value.
|
358 |
*
|
359 |
* @since 3.0.0
|
|
|
360 |
* @access public
|
361 |
*
|
362 |
* @param string $prop Name of property.
|
@@ -376,10 +377,6 @@ class Affiliate_Link {
|
|
376 |
$option = 'ta_link_redirect_type';
|
377 |
$default = '301';
|
378 |
break;
|
379 |
-
|
380 |
-
case 'uncloak_link' :
|
381 |
-
return;
|
382 |
-
break;
|
383 |
}
|
384 |
|
385 |
return get_option( $option , $default );
|
@@ -453,6 +450,20 @@ class Affiliate_Link {
|
|
453 |
return 'no';
|
454 |
}
|
455 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
456 |
|
457 |
|
458 |
|
173 |
* Read data from DB and save on instance.
|
174 |
*
|
175 |
* @since 3.0.0
|
176 |
+
* @since 3.2.2 Optimize method by lessening the metadata fetch into one single function call.
|
177 |
* @access public
|
178 |
*/
|
179 |
private function read() {
|
183 |
if ( ! is_a( $this->post_data , 'WP_Post' ) || $this->object_is_read )
|
184 |
return;
|
185 |
|
186 |
+
$this->id = $this->post_data->ID; // set the affiliate link ID
|
187 |
+
$meta_data = get_metadata( 'post' , $this->id );
|
188 |
+
$default_data = $this->get_merged_default_extended_data();
|
189 |
+
|
190 |
+
foreach ( $default_data as $prop => $value ) {
|
191 |
|
192 |
+
// fetch raw meta data if present.
|
193 |
+
$raw_data = isset( $meta_data[ Plugin_Constants::META_DATA_PREFIX . $prop ] ) ? maybe_unserialize( $meta_data[ Plugin_Constants::META_DATA_PREFIX . $prop ][0] ) : '';
|
194 |
|
195 |
switch ( $prop ) {
|
196 |
|
205 |
case 'no_follow' :
|
206 |
case 'new_window' :
|
207 |
case 'pass_query_str' :
|
208 |
+
case 'uncloak_link' :
|
209 |
+
$this->data[ $prop ] = ! empty( $raw_data ) ? $raw_data : $default_data[ $prop ];
|
210 |
break;
|
211 |
|
212 |
case 'rel_tags' :
|
|
|
|
|
213 |
case 'redirect_type' :
|
|
|
214 |
$this->data[ $prop ] = ! empty( $raw_data ) ? $raw_data : $this->get_prop_global_option_value( $prop );
|
215 |
break;
|
216 |
|
217 |
case 'image_ids' :
|
218 |
case 'inserted_to' :
|
219 |
+
$this->data[ $prop ] = ( is_array( $raw_data ) && ! empty( $raw_data ) ) ? $raw_data : $default_data[ $prop ];
|
|
|
220 |
break;
|
221 |
|
222 |
case 'categories' :
|
223 |
$categories = wp_get_post_terms( $this->id , Plugin_Constants::AFFILIATE_LINKS_TAX );
|
224 |
+
$this->data[ $prop ] = ! empty( $categories ) ? $categories : $default_data[ $prop ];
|
225 |
break;
|
226 |
|
227 |
default :
|
228 |
+
$this->data[ $prop ] = apply_filters( 'ta_read_thirstylink_property' , $raw_data , $prop , $default_data , $this->id , $meta_data );
|
|
|
229 |
break;
|
230 |
|
231 |
}
|
357 |
* Get the properties global option value.
|
358 |
*
|
359 |
* @since 3.0.0
|
360 |
+
* @since 3.2.2 Remove 'uncloak' option.
|
361 |
* @access public
|
362 |
*
|
363 |
* @param string $prop Name of property.
|
377 |
$option = 'ta_link_redirect_type';
|
378 |
$default = '301';
|
379 |
break;
|
|
|
|
|
|
|
|
|
380 |
}
|
381 |
|
382 |
return get_option( $option , $default );
|
450 |
return 'no';
|
451 |
}
|
452 |
|
453 |
+
/**
|
454 |
+
* Gets the category slug used for affiliate link (if present).
|
455 |
+
*
|
456 |
+
* @since 3.2.2
|
457 |
+
* @access public
|
458 |
+
*
|
459 |
+
* @return string Affiliate link ategory slug.
|
460 |
+
*/
|
461 |
+
public function get_category_slug() {
|
462 |
+
|
463 |
+
$cat_slug = $this->get_prop( 'category_slug' );
|
464 |
+
return $cat_slug ? $cat_slug : $this->_helper_functions->get_default_category_slug( $this->get_id() , $this->get_prop( 'categories' ) );
|
465 |
+
}
|
466 |
+
|
467 |
|
468 |
|
469 |
|
Models/Affiliate_Links_CPT.php
CHANGED
@@ -361,8 +361,8 @@ class Affiliate_Links_CPT implements Model_Interface , Initiable_Interface {
|
|
361 |
private function sort_metaboxes( &$metaboxes ) {
|
362 |
|
363 |
usort( $metaboxes , function( $a , $b ) {
|
364 |
-
if ( $a[ '
|
365 |
-
return ( $a[ '
|
366 |
} );
|
367 |
}
|
368 |
|
@@ -515,6 +515,7 @@ class Affiliate_Links_CPT implements Model_Interface , Initiable_Interface {
|
|
515 |
* Save thirstylink post.
|
516 |
*
|
517 |
* @since 3.0.0
|
|
|
518 |
* @access public
|
519 |
*
|
520 |
* @param int $post_id Affiliate link post ID.
|
@@ -537,6 +538,9 @@ class Affiliate_Links_CPT implements Model_Interface , Initiable_Interface {
|
|
537 |
$thirstylink->set_prop( 'redirect_type' , sanitize_text_field( $_POST[ 'ta_redirect_type' ] ) );
|
538 |
$thirstylink->set_prop( 'rel_tags' , sanitize_text_field( $_POST[ 'ta_rel_tags' ] ) );
|
539 |
|
|
|
|
|
|
|
540 |
if ( isset( $_POST[ 'ta_uncloak_link' ] ) )
|
541 |
$thirstylink->set_prop( 'uncloak_link' , sanitize_text_field( $_POST[ 'ta_uncloak_link' ] ) );
|
542 |
|
361 |
private function sort_metaboxes( &$metaboxes ) {
|
362 |
|
363 |
usort( $metaboxes , function( $a , $b ) {
|
364 |
+
if ( $a[ 'sort' ] == $b[ 'sort' ] ) return 0;
|
365 |
+
return ( $a[ 'sort' ] > $b[ 'sort' ] ) ? 1 : -1;
|
366 |
} );
|
367 |
}
|
368 |
|
515 |
* Save thirstylink post.
|
516 |
*
|
517 |
* @since 3.0.0
|
518 |
+
* @since 3.2.2 Make sure post name (slug) is updated.
|
519 |
* @access public
|
520 |
*
|
521 |
* @param int $post_id Affiliate link post ID.
|
538 |
$thirstylink->set_prop( 'redirect_type' , sanitize_text_field( $_POST[ 'ta_redirect_type' ] ) );
|
539 |
$thirstylink->set_prop( 'rel_tags' , sanitize_text_field( $_POST[ 'ta_rel_tags' ] ) );
|
540 |
|
541 |
+
if ( isset( $_POST[ 'post_name' ] ) )
|
542 |
+
$thirstylink->set_prop( 'slug' , sanitize_text_field( $_POST[ 'post_name' ] ) );
|
543 |
+
|
544 |
if ( isset( $_POST[ 'ta_uncloak_link' ] ) )
|
545 |
$thirstylink->set_prop( 'uncloak_link' , sanitize_text_field( $_POST[ 'ta_uncloak_link' ] ) );
|
546 |
|
Models/Rewrites_Redirection.php
CHANGED
@@ -212,11 +212,12 @@ class Rewrites_Redirection implements Model_Interface , Deactivatable_Interface
|
|
212 |
* Handles redirect for thirstylink link urls.
|
213 |
*
|
214 |
* @since 3.0.0
|
|
|
215 |
* @access public
|
216 |
*/
|
217 |
public function redirect_url() {
|
218 |
|
219 |
-
global $post;
|
220 |
|
221 |
if ( ! is_object( $post ) || $post->post_type != Plugin_Constants::AFFILIATE_LINKS_CPT )
|
222 |
return;
|
@@ -229,17 +230,51 @@ class Rewrites_Redirection implements Model_Interface , Deactivatable_Interface
|
|
229 |
$redirect_url = apply_filters( 'ta_filter_redirect_url' , $redirect_url , $thirstylink );
|
230 |
$redirect_type = apply_filters( 'ta_filter_redirect_type' , $redirect_type , $thirstylink );
|
231 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
// perform actions before redirecting
|
233 |
do_action( 'ta_before_link_redirect' , $thirstylink , $redirect_url , $redirect_type );
|
234 |
|
235 |
if ( $redirect_url && $redirect_type ) {
|
236 |
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
wp_redirect( $redirect_url , intval( $redirect_type ) );
|
238 |
exit;
|
239 |
}
|
240 |
|
241 |
}
|
242 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
/**
|
244 |
* Pass query strings to destination url when option is enabled on settings.
|
245 |
*
|
212 |
* Handles redirect for thirstylink link urls.
|
213 |
*
|
214 |
* @since 3.0.0
|
215 |
+
* @since 3.2.2 Add implementation for disabling cache for 301 redirects.
|
216 |
* @access public
|
217 |
*/
|
218 |
public function redirect_url() {
|
219 |
|
220 |
+
global $post , $wp_query;
|
221 |
|
222 |
if ( ! is_object( $post ) || $post->post_type != Plugin_Constants::AFFILIATE_LINKS_CPT )
|
223 |
return;
|
230 |
$redirect_url = apply_filters( 'ta_filter_redirect_url' , $redirect_url , $thirstylink );
|
231 |
$redirect_type = apply_filters( 'ta_filter_redirect_type' , $redirect_type , $thirstylink );
|
232 |
|
233 |
+
// if cloaked url is invalid, then don't redirect.
|
234 |
+
if ( ! $this->validate_cloaked_url( $thirstylink ) ) {
|
235 |
+
|
236 |
+
$wp_query->set_404();
|
237 |
+
remove_action( 'template_redirect' , array( $this , 'redirect_url' ) , 1 );
|
238 |
+
return;
|
239 |
+
}
|
240 |
+
|
241 |
// perform actions before redirecting
|
242 |
do_action( 'ta_before_link_redirect' , $thirstylink , $redirect_url , $redirect_type );
|
243 |
|
244 |
if ( $redirect_url && $redirect_type ) {
|
245 |
|
246 |
+
// tell browser not to cache 301 redirects (if option is enabled)
|
247 |
+
if ( $redirect_type == 301 && get_option( 'ta_browser_no_cache_301_redirect' ) == 'yes' ) {
|
248 |
+
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
|
249 |
+
header( 'Expires: Thu, 01 Jan 1970 00:00:00 GMT' );
|
250 |
+
}
|
251 |
+
|
252 |
wp_redirect( $redirect_url , intval( $redirect_type ) );
|
253 |
exit;
|
254 |
}
|
255 |
|
256 |
}
|
257 |
|
258 |
+
/**
|
259 |
+
* Validate the cloaked url. For now this only checks the category slug.
|
260 |
+
*
|
261 |
+
* @since 3.2.2
|
262 |
+
* @access private
|
263 |
+
*
|
264 |
+
* @return boolean True if cloaked url is valid, false otherwise.
|
265 |
+
*/
|
266 |
+
private function validate_cloaked_url( $thirstylink ) {
|
267 |
+
|
268 |
+
$cat_slug = $thirstylink->get_category_slug();
|
269 |
+
$referrer = isset( $_SERVER[ 'REQUEST_URI' ] ) ? $_SERVER[ 'REQUEST_URI' ] : '';
|
270 |
+
|
271 |
+
// if setting is disabled or category slug is not defined, then return as validated.
|
272 |
+
if ( get_option( 'ta_show_cat_in_slug' ) !== 'yes' || ! $cat_slug )
|
273 |
+
return true;
|
274 |
+
|
275 |
+
return ( strpos( $referrer , '/' . $cat_slug . '/' ) !== false );
|
276 |
+
}
|
277 |
+
|
278 |
/**
|
279 |
* Pass query strings to destination url when option is enabled on settings.
|
280 |
*
|
Models/Settings.php
CHANGED
@@ -297,7 +297,14 @@ class Settings implements Model_Interface , Activatable_Interface , Initiable_In
|
|
297 |
'min' => 0,
|
298 |
'default' => 0,
|
299 |
'condition_cb' => function() { return get_option( 'ta_enable_stats_reporting_module' ) === 'yes'; }
|
300 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
301 |
|
302 |
) ),
|
303 |
'ta_links_settings' => apply_filters( 'ta_links_settings_options' , array(
|
297 |
'min' => 0,
|
298 |
'default' => 0,
|
299 |
'condition_cb' => function() { return get_option( 'ta_enable_stats_reporting_module' ) === 'yes'; }
|
300 |
+
),
|
301 |
+
|
302 |
+
array(
|
303 |
+
'id' => 'ta_browser_no_cache_301_redirect',
|
304 |
+
'title' => __( "Don't cache 301 redirects?" , 'thirstyaffiliates' ),
|
305 |
+
'desc' => __( "By default, browsers caches the 301 redirects. Enabling this option will tell the browser not to cache 301 redirects. Be aware that it is still up to the browser if it will cache it or not." , 'thirstyaffiliates' ),
|
306 |
+
'type' => 'toggle'
|
307 |
+
)
|
308 |
|
309 |
) ),
|
310 |
'ta_links_settings' => apply_filters( 'ta_links_settings_options' , array(
|
Models/Stats_Reporting.php
CHANGED
@@ -62,6 +62,15 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
62 |
*/
|
63 |
private $_helper_functions;
|
64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
|
66 |
|
67 |
|
@@ -328,11 +337,14 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
328 |
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Missing required post data' , 'thirstyaffiliates' ) );
|
329 |
else {
|
330 |
|
331 |
-
|
|
|
|
|
|
|
332 |
$thirstylink = new Affiliate_Link( $link_id );
|
333 |
-
$range_txt = sanitize_text_field( $_POST[ 'range' ] );
|
334 |
-
$start_date = sanitize_text_field( $_POST[ 'start_date' ] );
|
335 |
-
$end_date = sanitize_text_field( $_POST[ 'end_date' ] );
|
336 |
|
337 |
if ( ! $thirstylink->get_id() )
|
338 |
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Selected affiliate link is invalid' , 'thirstyaffiliates' ) );
|
@@ -356,6 +368,53 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
356 |
wp_die();
|
357 |
}
|
358 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
|
360 |
|
361 |
|
@@ -559,6 +618,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
559 |
* Get report range details.
|
560 |
*
|
561 |
* @since 3.0.0
|
|
|
562 |
* @access public
|
563 |
*
|
564 |
* @param string $range Report range type.
|
@@ -569,7 +629,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
569 |
public function get_report_range_details( $range = '7day' , $start_date = 'now -6 days' , $end_date = 'now' ) {
|
570 |
|
571 |
$data = array();
|
572 |
-
$zone_str = $this->
|
573 |
$timezone = new \DateTimeZone( $zone_str );
|
574 |
$now = new \DateTime( 'now' , $timezone );
|
575 |
|
@@ -620,6 +680,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
620 |
* Prepare data to feed for jQuery flot.
|
621 |
*
|
622 |
* @since 3.0.0
|
|
|
623 |
* @access public
|
624 |
*
|
625 |
* @param array $range Report range details
|
@@ -630,7 +691,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
630 |
|
631 |
$start_date = $range[ 'start_date' ];
|
632 |
$end_date = $range[ 'end_date' ];
|
633 |
-
$zone_str = $this->
|
634 |
$timezone = new \DateTimeZone( $zone_str );
|
635 |
$flot_data = array();
|
636 |
|
@@ -744,6 +805,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
744 |
* Get the DateTime object of the first day of a given month.
|
745 |
*
|
746 |
* @since 3.0.0
|
|
|
747 |
* @access public
|
748 |
*
|
749 |
* @param string $month Month full textual representation.
|
@@ -751,7 +813,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
751 |
*/
|
752 |
public function get_month_first_day_datetime_obj( $month ) {
|
753 |
|
754 |
-
$zone_str = $this->
|
755 |
$timezone = new \DateTimeZone( $zone_str );
|
756 |
|
757 |
return new \DateTime( 'First day of ' . $month . ' ' . date( 'Y' ) , $timezone );
|
@@ -866,6 +928,20 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
866 |
$wpdb->query( "DELETE FROM $link_click_db WHERE id IN ( $click_ids_str )" );
|
867 |
}
|
868 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
869 |
|
870 |
|
871 |
/*
|
@@ -901,6 +977,7 @@ class Stats_Reporting implements Model_Interface , Initiable_Interface , Activat
|
|
901 |
|
902 |
add_action( 'wp_ajax_ta_click_data_redirect' , array( $this , 'ajax_save_click_data_on_redirect' ) , 10 );
|
903 |
add_action( 'wp_ajax_ta_fetch_report_by_linkid' , array( $this , 'ajax_fetch_report_by_linkid' ) , 10 );
|
|
|
904 |
add_action( 'wp_ajax_nopriv_ta_click_data_redirect' , array( $this , 'ajax_save_click_data_on_redirect' ) , 10 );
|
905 |
}
|
906 |
|
62 |
*/
|
63 |
private $_helper_functions;
|
64 |
|
65 |
+
/**
|
66 |
+
* Variable to store local browser's zone string.
|
67 |
+
*
|
68 |
+
* @since 3.2.2
|
69 |
+
* @access private
|
70 |
+
* @var string
|
71 |
+
*/
|
72 |
+
private $_browser_zone_str;
|
73 |
+
|
74 |
|
75 |
|
76 |
|
337 |
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Missing required post data' , 'thirstyaffiliates' ) );
|
338 |
else {
|
339 |
|
340 |
+
// save timezone to use
|
341 |
+
$this->_browser_zone_str = isset( $_POST[ 'timezone' ] ) ? sanitize_text_field( $_POST[ 'timezone' ] ) : '';
|
342 |
+
|
343 |
+
$link_id = isset( $_POST[ 'link_id' ] ) ? (int) sanitize_text_field( $_POST[ 'link_id' ] ) : 0;
|
344 |
$thirstylink = new Affiliate_Link( $link_id );
|
345 |
+
$range_txt = isset( $_POST[ 'range' ] ) ? sanitize_text_field( $_POST[ 'range' ] ) : '';
|
346 |
+
$start_date = isset( $_POST[ 'start_date' ] ) ? sanitize_text_field( $_POST[ 'start_date' ] ) : '';
|
347 |
+
$end_date = isset( $_POST[ 'end_date' ] ) ? sanitize_text_field( $_POST[ 'end_date' ] ) : '';
|
348 |
|
349 |
if ( ! $thirstylink->get_id() )
|
350 |
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Selected affiliate link is invalid' , 'thirstyaffiliates' ) );
|
368 |
wp_die();
|
369 |
}
|
370 |
|
371 |
+
/**
|
372 |
+
* AJAX init first report.
|
373 |
+
*
|
374 |
+
* @since 3.2.2
|
375 |
+
* @access public
|
376 |
+
*/
|
377 |
+
public function ajax_init_first_report() {
|
378 |
+
|
379 |
+
if ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX )
|
380 |
+
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Invalid AJAX call' , 'thirstyaffiliates' ) );
|
381 |
+
elseif ( ! isset( $_POST[ 'timezone' ] ) )
|
382 |
+
$response = array( 'status' => 'fail' , 'error_msg' => __( 'Missing required post data' , 'thirstyaffiliates' ) );
|
383 |
+
else {
|
384 |
+
|
385 |
+
// save timezone to use
|
386 |
+
$this->_browser_zone_str = isset( $_POST[ 'timezone' ] ) ? sanitize_text_field( $_POST[ 'timezone' ] ) : '';
|
387 |
+
|
388 |
+
$cpt_slug = Plugin_Constants::AFFILIATE_LINKS_CPT;
|
389 |
+
$current_range = isset( $_POST[ 'range' ] ) ? sanitize_text_field( $_POST[ 'range' ] ) : '7day';
|
390 |
+
$start_date = isset( $_POST[ 'start_date' ] ) ? sanitize_text_field( $_POST[ 'start_date' ] ) : '';
|
391 |
+
$end_date = isset( $_POST[ 'end_date' ] ) ? sanitize_text_field( $_POST[ 'end_date' ] ) : '';
|
392 |
+
$range = $this->get_report_range_details( $current_range , $start_date , $end_date );
|
393 |
+
|
394 |
+
// get all published affiliate link ids
|
395 |
+
$query = new \WP_Query( array(
|
396 |
+
'post_type' => $cpt_slug,
|
397 |
+
'post_status' => 'publish',
|
398 |
+
'fields' => 'ids',
|
399 |
+
'posts_per_page' => -1
|
400 |
+
) );
|
401 |
+
|
402 |
+
$data = $this->prepare_data_for_flot( $range , $query->posts );
|
403 |
+
$total_clicks = $this->count_total_clicks_from_flot_data( $data );
|
404 |
+
|
405 |
+
$response = array(
|
406 |
+
'status' => 'success',
|
407 |
+
'flot_data' => $data,
|
408 |
+
'total_clicks' => $total_clicks,
|
409 |
+
);
|
410 |
+
|
411 |
+
}
|
412 |
+
|
413 |
+
@header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) );
|
414 |
+
echo wp_json_encode( $response );
|
415 |
+
wp_die();
|
416 |
+
}
|
417 |
+
|
418 |
|
419 |
|
420 |
|
618 |
* Get report range details.
|
619 |
*
|
620 |
* @since 3.0.0
|
621 |
+
* @since 3.2.2 Change method of getting timezone sting name.
|
622 |
* @access public
|
623 |
*
|
624 |
* @param string $range Report range type.
|
629 |
public function get_report_range_details( $range = '7day' , $start_date = 'now -6 days' , $end_date = 'now' ) {
|
630 |
|
631 |
$data = array();
|
632 |
+
$zone_str = $this->_get_report_timezone_string();
|
633 |
$timezone = new \DateTimeZone( $zone_str );
|
634 |
$now = new \DateTime( 'now' , $timezone );
|
635 |
|
680 |
* Prepare data to feed for jQuery flot.
|
681 |
*
|
682 |
* @since 3.0.0
|
683 |
+
* @since 3.2.2 Change method of getting timezone sting name.
|
684 |
* @access public
|
685 |
*
|
686 |
* @param array $range Report range details
|
691 |
|
692 |
$start_date = $range[ 'start_date' ];
|
693 |
$end_date = $range[ 'end_date' ];
|
694 |
+
$zone_str = $this->_get_report_timezone_string();
|
695 |
$timezone = new \DateTimeZone( $zone_str );
|
696 |
$flot_data = array();
|
697 |
|
805 |
* Get the DateTime object of the first day of a given month.
|
806 |
*
|
807 |
* @since 3.0.0
|
808 |
+
* @since 3.2.2 Change method of getting timezone sting name.
|
809 |
* @access public
|
810 |
*
|
811 |
* @param string $month Month full textual representation.
|
813 |
*/
|
814 |
public function get_month_first_day_datetime_obj( $month ) {
|
815 |
|
816 |
+
$zone_str = $this->_get_report_timezone_string();
|
817 |
$timezone = new \DateTimeZone( $zone_str );
|
818 |
|
819 |
return new \DateTime( 'First day of ' . $month . ' ' . date( 'Y' ) , $timezone );
|
928 |
$wpdb->query( "DELETE FROM $link_click_db WHERE id IN ( $click_ids_str )" );
|
929 |
}
|
930 |
|
931 |
+
/**
|
932 |
+
* Get timezone to use for the report.
|
933 |
+
*
|
934 |
+
* @since 3.2.2
|
935 |
+
* @access private
|
936 |
+
*
|
937 |
+
* @return string Timezone string name.
|
938 |
+
*/
|
939 |
+
private function _get_report_timezone_string() {
|
940 |
+
|
941 |
+
return $this->_browser_zone_str ? $this->_browser_zone_str : $this->_helper_functions->get_site_current_timezone();
|
942 |
+
}
|
943 |
+
|
944 |
+
|
945 |
|
946 |
|
947 |
/*
|
977 |
|
978 |
add_action( 'wp_ajax_ta_click_data_redirect' , array( $this , 'ajax_save_click_data_on_redirect' ) , 10 );
|
979 |
add_action( 'wp_ajax_ta_fetch_report_by_linkid' , array( $this , 'ajax_fetch_report_by_linkid' ) , 10 );
|
980 |
+
add_action( 'wp_ajax_ta_init_first_report' , array( $this , 'ajax_init_first_report' ) , 10 );
|
981 |
add_action( 'wp_ajax_nopriv_ta_click_data_redirect' , array( $this , 'ajax_save_click_data_on_redirect' ) , 10 );
|
982 |
}
|
983 |
|
js/app/affiliate_link_page/dist/affiliate-link-page.js
CHANGED
@@ -21,4 +21,4 @@
|
|
21 |
*
|
22 |
* Date: 2016-08-08
|
23 |
*/
|
24 |
-
function(e){function t(e,t,n,r){var i,o,a,s,u,c,d,p=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:I)!==_&&A(t),t=t||_,L)){if(11!==h&&(u=ge.exec(e)))if(i=u[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(p&&(a=p.getElementById(i))&&P(t,a)&&a.id===i)return n.push(a),n}else{if(u[2])return Q.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&b.getElementsByClassName&&t.getElementsByClassName)return Q.apply(n,t.getElementsByClassName(i)),n}if(b.qsa&&!z[e+" "]&&(!O||!O.test(e))){if(1!==h)p=t,d=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,be):t.setAttribute("id",s=M),c=k(e),o=c.length;o--;)c[o]="#"+s+" "+f(c[o]);d=c.join(","),p=ve.test(e)&&l(t.parentNode)||t}if(d)try{return Q.apply(n,p.querySelectorAll(d)),n}catch(e){}finally{s===M&&t.removeAttribute("id")}}}return j(e.replace(oe,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>w.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[M]=!0,e}function i(e){var t=_.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Te(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function u(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function l(e){return e&&void 0!==e.getElementsByTagName&&e}function c(){}function f(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function d(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=W++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,d=[R,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(f=t[M]||(t[M]={}),c=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===R&&l[1]===s)return d[2]=l[2];if(c[o]=d,d[2]=e(t,n,u))return!0}return!1}}function p(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function h(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function v(e,t,n,i,o,a){return i&&!i[M]&&(i=v(i)),o&&!o[M]&&(o=v(o,a)),r(function(r,a,s,u){var l,c,f,d=[],p=[],v=a.length,m=r||h(t||"*",s.nodeType?[s]:s,[]),y=!e||!r&&t?m:g(m,d,e,s,u),x=n?o||(r?e:v||i)?[]:a:y;if(n&&n(y,x,s,u),i)for(l=g(x,p),i(l,[],s,u),c=l.length;c--;)(f=l[c])&&(x[p[c]]=!(y[p[c]]=f));if(r){if(o||e){if(o){for(l=[],c=x.length;c--;)(f=x[c])&&l.push(y[c]=f);o(null,x=[],l,u)}for(c=x.length;c--;)(f=x[c])&&(l=o?K(r,f):d[c])>-1&&(r[l]=!(a[l]=f))}}else x=g(x===a?x.splice(v,x.length):x),o?o(null,a,x,u):Q.apply(a,x)})}function m(e){for(var t,n,r,i=e.length,o=w.relative[e[0].type],a=o||w.relative[" "],s=o?1:0,u=d(function(e){return e===t},a,!0),l=d(function(e){return K(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==E)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];s<i;s++)if(n=w.relative[e[s].type])c=[d(p(c),n)];else{if(n=w.filter[e[s].type].apply(null,e[s].matches),n[M]){for(r=++s;r<i&&!w.relative[e[r].type];r++);return v(s>1&&p(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(oe,"$1"),n,s<r&&m(e.slice(s,r)),r<i&&m(e=e.slice(r)),r<i&&f(e))}c.push(n)}return p(c)}function y(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,l){var c,f,d,p=0,h="0",v=r&&[],m=[],y=E,x=r||o&&w.find.TAG("*",l),b=R+=null==y?1:Math.random()||.1,T=x.length;for(l&&(E=a===_||a||l);h!==T&&null!=(c=x[h]);h++){if(o&&c){for(f=0,a||c.ownerDocument===_||(A(c),s=!L);d=e[f++];)if(d(c,a||_,s)){u.push(c);break}l&&(R=b)}i&&((c=!d&&c)&&p--,r&&v.push(c))}if(p+=h,i&&h!==p){for(f=0;d=n[f++];)d(v,m,a,s);if(r){if(p>0)for(;h--;)v[h]||m[h]||(m[h]=G.call(u));m=g(m)}Q.apply(u,m),l&&!r&&m.length>0&&p+n.length>1&&t.uniqueSort(u)}return l&&(R=b,E=y),v};return i?r(a):a}var x,b,w,T,C,k,S,j,E,N,D,A,_,q,L,O,H,F,P,M="sizzle"+1*new Date,I=e.document,R=0,W=0,$=n(),B=n(),z=n(),X=function(e,t){return e===t&&(D=!0),0},U={}.hasOwnProperty,V=[],G=V.pop,Y=V.push,Q=V.push,J=V.slice,K=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},Z="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ee="[\\x20\\t\\r\\n\\f]",te="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",ne="\\["+ee+"*("+te+")(?:"+ee+"*([*^$|!~]?=)"+ee+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+te+"))|)"+ee+"*\\]",re=":("+te+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ne+")*)|.*)\\)|)",ie=new RegExp(ee+"+","g"),oe=new RegExp("^"+ee+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ee+"+$","g"),ae=new RegExp("^"+ee+"*,"+ee+"*"),se=new RegExp("^"+ee+"*([>+~]|"+ee+")"+ee+"*"),ue=new RegExp("="+ee+"*([^\\]'\"]*?)"+ee+"*\\]","g"),le=new RegExp(re),ce=new RegExp("^"+te+"$"),fe={ID:new RegExp("^#("+te+")"),CLASS:new RegExp("^\\.("+te+")"),TAG:new RegExp("^("+te+"|[*])"),ATTR:new RegExp("^"+ne),PSEUDO:new RegExp("^"+re),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ee+"*(even|odd|(([+-]|)(\\d*)n|)"+ee+"*(?:([+-]|)"+ee+"*(\\d+)|))"+ee+"*\\)|)","i"),bool:new RegExp("^(?:"+Z+")$","i"),needsContext:new RegExp("^"+ee+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ee+"*((?:-\\d)?\\d*)"+ee+"*\\)|)(?=[^-]|$)","i")},de=/^(?:input|select|textarea|button)$/i,pe=/^h\d$/i,he=/^[^{]+\{\s*\[native \w/,ge=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,me=new RegExp("\\\\([\\da-f]{1,6}"+ee+"?|("+ee+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,be=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},we=function(){A()},Te=d(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{Q.apply(V=J.call(I.childNodes),I.childNodes),V[I.childNodes.length].nodeType}catch(e){Q={apply:V.length?function(e,t){Y.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}b=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},A=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:I;return r!==_&&9===r.nodeType&&r.documentElement?(_=r,q=_.documentElement,L=!C(_),I!==_&&(n=_.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",we,!1):n.attachEvent&&n.attachEvent("onunload",we)),b.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),b.getElementsByTagName=i(function(e){return e.appendChild(_.createComment("")),!e.getElementsByTagName("*").length}),b.getElementsByClassName=he.test(_.getElementsByClassName),b.getById=i(function(e){return q.appendChild(e).id=M,!_.getElementsByName||!_.getElementsByName(M).length}),b.getById?(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){return e.getAttribute("id")===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&L){var n=t.getElementById(e);return n?[n]:[]}}):(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&L){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),w.find.TAG=b.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):b.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},w.find.CLASS=b.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&L)return t.getElementsByClassName(e)},H=[],O=[],(b.qsa=he.test(_.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+M+"'></a><select id='"+M+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&O.push("[*^$]="+ee+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||O.push("\\["+ee+"*(?:value|"+Z+")"),e.querySelectorAll("[id~="+M+"-]").length||O.push("~="),e.querySelectorAll(":checked").length||O.push(":checked"),e.querySelectorAll("a#"+M+"+*").length||O.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=_.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&O.push("name"+ee+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&O.push(":enabled",":disabled"),q.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&O.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),O.push(",.*:")})),(b.matchesSelector=he.test(F=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){b.disconnectedMatch=F.call(e,"*"),F.call(e,"[s!='']:x"),H.push("!=",re)}),O=O.length&&new RegExp(O.join("|")),H=H.length&&new RegExp(H.join("|")),t=he.test(q.compareDocumentPosition),P=t||he.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},X=t?function(e,t){if(e===t)return D=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!b.sortDetached&&t.compareDocumentPosition(e)===n?e===_||e.ownerDocument===I&&P(I,e)?-1:t===_||t.ownerDocument===I&&P(I,t)?1:N?K(N,e)-K(N,t):0:4&n?-1:1)}:function(e,t){if(e===t)return D=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===_?-1:t===_?1:i?-1:o?1:N?K(N,e)-K(N,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===I?-1:u[r]===I?1:0},_):_},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==_&&A(e),n=n.replace(ue,"='$1']"),b.matchesSelector&&L&&!z[n+" "]&&(!H||!H.test(n))&&(!O||!O.test(n)))try{var r=F.call(e,n);if(r||b.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,_,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==_&&A(e),P(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==_&&A(e);var n=w.attrHandle[t.toLowerCase()],r=n&&U.call(w.attrHandle,t.toLowerCase())?n(e,t,!L):void 0;return void 0!==r?r:b.attributes||!L?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(xe,be)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(D=!b.detectDuplicates,N=!b.sortStable&&e.slice(0),e.sort(X),D){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return N=null,e},T=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=T(t);return n},w=t.selectors={cacheLength:50,createPseudo:r,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(me,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(me,ye),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&le.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(me,ye).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+ee+")"+e+"("+ee+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ie," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,m=s&&t.nodeName.toLowerCase(),y=!u&&!s,x=!1;if(v){if(o){for(;g;){for(d=t;d=d[g];)if(s?d.nodeName.toLowerCase()===m:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&y){for(d=v,f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===R&&l[1],x=p&&l[2],d=p&&v.childNodes[p];d=++p&&d&&d[g]||(x=p=0)||h.pop();)if(1===d.nodeType&&++x&&d===t){c[e]=[R,p,x];break}}else if(y&&(d=t,f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===R&&l[1],x=p),!1===x)for(;(d=++p&&d&&d[g]||(x=p=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==m:1!==d.nodeType)||!++x||(y&&(f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),c[e]=[R,x]),d!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,n){var i,o=w.pseudos[e]||w.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[M]?o(n):o.length>1?(i=[e,e,"",n],w.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=K(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=S(e.replace(oe,"$1"));return i[M]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(me,ye),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:r(function(e){return ce.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(me,ye).toLowerCase(),function(t){var n;do{if(n=L?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===_.activeElement&&(!_.hasFocus||_.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:s(!1),disabled:s(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!w.pseudos.empty(e)},header:function(e){return pe.test(e.nodeName)},input:function(e){return de.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[n<0?n+t:n]}),even:u(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:u(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:u(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:u(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},w.pseudos.nth=w.pseudos.eq;for(x in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[x]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(x);for(x in{submit:!0,reset:!0})w.pseudos[x]=function(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}(x);return c.prototype=w.filters=w.pseudos,w.setFilters=new c,k=t.tokenize=function(e,n){var r,i,o,a,s,u,l,c=B[e+" "];if(c)return n?0:c.slice(0);for(s=e,u=[],l=w.preFilter;s;){r&&!(i=ae.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),r=!1,(i=se.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(oe," ")}),s=s.slice(r.length));for(a in w.filter)!(i=fe[a].exec(s))||l[a]&&!(i=l[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):B(e,u).slice(0)},S=t.compile=function(e,t){var n,r=[],i=[],o=z[e+" "];if(!o){for(t||(t=k(e)),n=t.length;n--;)o=m(t[n]),o[M]?r.push(o):i.push(o);o=z(e,y(i,r)),o.selector=e}return o},j=t.select=function(e,t,n,r){var i,o,a,s,u,c="function"==typeof e&&e,d=!r&&k(e=c.selector||e);if(n=n||[],1===d.length){if(o=d[0]=d[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&L&&w.relative[o[1].type]){if(!(t=(w.find.ID(a.matches[0].replace(me,ye),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=fe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!w.relative[s=a.type]);)if((u=w.find[s])&&(r=u(a.matches[0].replace(me,ye),ve.test(o[0].type)&&l(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&f(o)))return Q.apply(n,r),n;break}}return(c||S(e,d))(r,t,!L,n,!t||ve.test(e)&&l(t.parentNode)||t),n},b.sortStable=M.split("").sort(X).join("")===M,b.detectDuplicates=!!D,A(),b.sortDetached=i(function(e){return 1&e.compareDocumentPosition(_.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),b.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(Z,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(o);xe.find=ke,xe.expr=ke.selectors,xe.expr[":"]=xe.expr.pseudos,xe.uniqueSort=xe.unique=ke.uniqueSort,xe.text=ke.getText,xe.isXMLDoc=ke.isXML,xe.contains=ke.contains,xe.escapeSelector=ke.escape;var Se=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&xe(e).is(n))break;r.push(e)}return r},je=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Ee=xe.expr.match.needsContext,Ne=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,De=/^.[^:#\[\.,]*$/;xe.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?xe.find.matchesSelector(r,e)?[r]:[]:xe.find.matches(e,xe.grep(t,function(e){return 1===e.nodeType}))},xe.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(xe(e).filter(function(){for(t=0;t<r;t++)if(xe.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)xe.find(e,i[t],n);return r>1?xe.uniqueSort(n):n},filter:function(e){return this.pushStack(c(this,e||[],!1))},not:function(e){return this.pushStack(c(this,e||[],!0))},is:function(e){return!!c(this,"string"==typeof e&&Ee.test(e)?xe(e):e||[],!1).length}});var Ae,_e=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(xe.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Ae,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:_e.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof xe?t[0]:t,xe.merge(this,xe.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:se,!0)),Ne.test(r[1])&&xe.isPlainObject(t))for(r in t)xe.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=se.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):xe.isFunction(e)?void 0!==n.ready?n.ready(e):e(xe):xe.makeArray(e,this)}).prototype=xe.fn,Ae=xe(se);var qe=/^(?:parents|prev(?:Until|All))/,Le={children:!0,contents:!0,next:!0,prev:!0};xe.fn.extend({has:function(e){var t=xe(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(xe.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&xe(e);if(!Ee.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&xe.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?xe.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?de.call(xe(e),this[0]):de.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(xe.uniqueSort(xe.merge(this.get(),xe(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),xe.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return Se(e,"parentNode")},parentsUntil:function(e,t,n){return Se(e,"parentNode",n)},next:function(e){return f(e,"nextSibling")},prev:function(e){return f(e,"previousSibling")},nextAll:function(e){return Se(e,"nextSibling")},prevAll:function(e){return Se(e,"previousSibling")},nextUntil:function(e,t,n){return Se(e,"nextSibling",n)},prevUntil:function(e,t,n){return Se(e,"previousSibling",n)},siblings:function(e){return je((e.parentNode||{}).firstChild,e)},children:function(e){return je(e.firstChild)},contents:function(e){return l(e,"iframe")?e.contentDocument:(l(e,"template")&&(e=e.content||e),xe.merge([],e.childNodes))}},function(e,t){xe.fn[e]=function(n,r){var i=xe.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=xe.filter(r,i)),this.length>1&&(Le[e]||xe.uniqueSort(i),qe.test(e)&&i.reverse()),this.pushStack(i)}});var Oe=/[^\x20\t\r\n\f]+/g;xe.Callbacks=function(e){e="string"==typeof e?d(e):xe.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){xe.each(n,function(n,r){xe.isFunction(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&"string"!==xe.type(r)&&t(r)})}(arguments),n&&!t&&u()),this},remove:function(){return xe.each(arguments,function(e,t){for(var n;(n=xe.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?xe.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},xe.extend({Deferred:function(e){var t=[["notify","progress",xe.Callbacks("memory"),xe.Callbacks("memory"),2],["resolve","done",xe.Callbacks("once memory"),xe.Callbacks("once memory"),0,"resolved"],["reject","fail",xe.Callbacks("once memory"),xe.Callbacks("once memory"),1,"rejected"]],n="pending",r={state:function(){return n},always:function(){return a.done(arguments).fail(arguments),this},catch:function(e){return r.then(null,e)},pipe:function(){var e=arguments;return xe.Deferred(function(n){xe.each(t,function(t,r){var i=xe.isFunction(e[r[4]])&&e[r[4]];a[r[1]](function(){var e=i&&i.apply(this,arguments);e&&xe.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(e,n,r){function a(e,t,n,r){return function(){var u=this,l=arguments,c=function(){var o,c;if(!(e<s)){if((o=n.apply(u,l))===t.promise())throw new TypeError("Thenable self-resolution");c=o&&("object"===(void 0===o?"undefined":i(o))||"function"==typeof o)&&o.then,xe.isFunction(c)?r?c.call(o,a(s,t,p,r),a(s,t,h,r)):(s++,c.call(o,a(s,t,p,r),a(s,t,h,r),a(s,t,p,t.notifyWith))):(n!==p&&(u=void 0,l=[o]),(r||t.resolveWith)(u,l))}},f=r?c:function(){try{c()}catch(r){xe.Deferred.exceptionHook&&xe.Deferred.exceptionHook(r,f.stackTrace),e+1>=s&&(n!==h&&(u=void 0,l=[r]),t.rejectWith(u,l))}};e?f():(xe.Deferred.getStackHook&&(f.stackTrace=xe.Deferred.getStackHook()),o.setTimeout(f))}}var s=0;return xe.Deferred(function(i){t[0][3].add(a(0,i,xe.isFunction(r)?r:p,i.notifyWith)),t[1][3].add(a(0,i,xe.isFunction(e)?e:p)),t[2][3].add(a(0,i,xe.isFunction(n)?n:h))}).promise()},promise:function(e){return null!=e?xe.extend(e,r):r}},a={};return xe.each(t,function(e,i){var o=i[2],s=i[5];r[i[1]]=o.add,s&&o.add(function(){n=s},t[3-e][2].disable,t[0][2].lock),o.add(i[3].fire),a[i[0]]=function(){return a[i[0]+"With"](this===a?void 0:this,arguments),this},a[i[0]+"With"]=o.fireWith}),r.promise(a),e&&e.call(a,a),a},when:function(e){var t=arguments.length,n=t,r=Array(n),i=le.call(arguments),o=xe.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?le.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(g(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||xe.isFunction(i[n]&&i[n].then)))return o.then();for(;n--;)g(i[n],a(n),o.reject);return o.promise()}});var He=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;xe.Deferred.exceptionHook=function(e,t){o.console&&o.console.warn&&e&&He.test(e.name)&&o.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},xe.readyException=function(e){o.setTimeout(function(){throw e})};var Fe=xe.Deferred();xe.fn.ready=function(e){return Fe.then(e).catch(function(e){xe.readyException(e)}),this},xe.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--xe.readyWait:xe.isReady)||(xe.isReady=!0,!0!==e&&--xe.readyWait>0||Fe.resolveWith(se,[xe]))}}),xe.ready.then=Fe.then,"complete"===se.readyState||"loading"!==se.readyState&&!se.documentElement.doScroll?o.setTimeout(xe.ready):(se.addEventListener("DOMContentLoaded",v),o.addEventListener("load",v));var Pe=function e(t,n,r,i,o,a,s){var u=0,l=t.length,c=null==r;if("object"===xe.type(r)){o=!0;for(u in r)e(t,n,u,r[u],!0,a,s)}else if(void 0!==i&&(o=!0,xe.isFunction(i)||(s=!0),c&&(s?(n.call(t,i),n=null):(c=n,n=function(e,t,n){return c.call(xe(e),n)})),n))for(;u<l;u++)n(t[u],r,s?i:i.call(t[u],u,n(t[u],r)));return o?t:c?n.call(t):l?n(t[0],r):a},Me=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};m.uid=1,m.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Me(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[xe.camelCase(t)]=n;else for(r in t)i[xe.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][xe.camelCase(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){Array.isArray(t)?t=t.map(xe.camelCase):(t=xe.camelCase(t),t=t in r?[t]:t.match(Oe)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||xe.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!xe.isEmptyObject(t)}};var Ie=new m,Re=new m,We=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,$e=/[A-Z]/g;xe.extend({hasData:function(e){return Re.hasData(e)||Ie.hasData(e)},data:function(e,t,n){return Re.access(e,t,n)},removeData:function(e,t){Re.remove(e,t)},_data:function(e,t,n){return Ie.access(e,t,n)},_removeData:function(e,t){Ie.remove(e,t)}}),xe.fn.extend({data:function(e,t){var n,r,o,a=this[0],s=a&&a.attributes;if(void 0===e){if(this.length&&(o=Re.get(a),1===a.nodeType&&!Ie.get(a,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=xe.camelCase(r.slice(5)),x(a,r,o[r])));Ie.set(a,"hasDataAttrs",!0)}return o}return"object"===(void 0===e?"undefined":i(e))?this.each(function(){Re.set(this,e)}):Pe(this,function(t){var n;if(a&&void 0===t){if(void 0!==(n=Re.get(a,e)))return n;if(void 0!==(n=x(a,e)))return n}else this.each(function(){Re.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Re.remove(this,e)})}}),xe.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Ie.get(e,t),n&&(!r||Array.isArray(n)?r=Ie.access(e,t,xe.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=xe.queue(e,t),r=n.length,i=n.shift(),o=xe._queueHooks(e,t),a=function(){xe.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Ie.get(e,n)||Ie.access(e,n,{empty:xe.Callbacks("once memory").add(function(){Ie.remove(e,[t+"queue",n])})})}}),xe.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?xe.queue(this[0],e):void 0===t?this:this.each(function(){var n=xe.queue(this,e,t);xe._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&xe.dequeue(this,e)})},dequeue:function(e){return this.each(function(){xe.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=xe.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)(n=Ie.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var Be=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ze=new RegExp("^(?:([+-])=|)("+Be+")([a-z%]*)$","i"),Xe=["Top","Right","Bottom","Left"],Ue=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&xe.contains(e.ownerDocument,e)&&"none"===xe.css(e,"display")},Ve=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},Ge={};xe.fn.extend({show:function(){return T(this,!0)},hide:function(){return T(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Ue(this)?xe(this).show():xe(this).hide()})}});var Ye=/^(?:checkbox|radio)$/i,Qe=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,Je=/^$|\/(?:java|ecma)script/i,Ke={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Ke.optgroup=Ke.option,Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead,Ke.th=Ke.td;var Ze=/<|&#?\w+;/;!function(){var e=se.createDocumentFragment(),t=e.appendChild(se.createElement("div")),n=se.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),ye.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",ye.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var et=se.documentElement,tt=/^key/,nt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,rt=/^([^.]*)(?:\.(.+)|)/;xe.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=Ie.get(e);if(v)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&xe.find.matchesSelector(et,i),n.guid||(n.guid=xe.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(t){return void 0!==xe&&xe.event.triggered!==t.type?xe.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Oe)||[""],l=t.length;l--;)s=rt.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p&&(f=xe.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=xe.event.special[p]||{},c=xe.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&xe.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=u[p])||(d=u[p]=[],d.delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),xe.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=Ie.hasData(e)&&Ie.get(e);if(v&&(u=v.events)){for(t=(t||"").match(Oe)||[""],l=t.length;l--;)if(s=rt.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p){for(f=xe.event.special[p]||{},p=(r?f.delegateType:f.bindType)||p,d=u[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||xe.removeEvent(e,p,v.handle),delete u[p])}else for(p in u)xe.event.remove(e,p+t[l],n,r,!0);xe.isEmptyObject(u)&&Ie.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=xe.event.fix(e),u=new Array(arguments.length),l=(Ie.get(this,"events")||{})[s.type]||[],c=xe.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){for(a=xe.event.handlers.call(this,s,l),t=0;(i=a[t++])&&!s.isPropagationStopped();)for(s.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((xe.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?xe(i,this).index(l)>-1:xe.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(xe.Event.prototype,e,{enumerable:!0,configurable:!0,get:xe.isFunction(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[xe.expando]?e:new xe.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==N()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===N()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&l(this,"input"))return this.click(),!1},_default:function(e){return l(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},xe.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},xe.Event=function(e,t){if(!(this instanceof xe.Event))return new xe.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?j:E,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&xe.extend(this,t),this.timeStamp=e&&e.timeStamp||xe.now(),this[xe.expando]=!0},xe.Event.prototype={constructor:xe.Event,isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=j,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=j,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=j,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},xe.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&tt.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&nt.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},xe.event.addProp),xe.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){xe.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||xe.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),xe.fn.extend({on:function(e,t,n,r){return D(this,e,t,n,r)},one:function(e,t,n,r){return D(this,e,t,n,r,1)},off:function(e,t,n){var r,o;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,xe(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===(void 0===e?"undefined":i(e))){for(o in e)this.off(o,t,e[o]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=E),this.each(function(){xe.event.remove(this,e,n,t)})}});var it=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,ot=/<script|<style|<link/i,at=/checked\s*(?:[^=]|=\s*.checked.)/i,st=/^true\/(.*)/,ut=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;xe.extend({htmlPrefilter:function(e){return e.replace(it,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=xe.contains(e.ownerDocument,e);if(!(ye.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||xe.isXMLDoc(e)))for(a=C(s),o=C(e),r=0,i=o.length;r<i;r++)O(o[r],a[r]);if(t)if(n)for(o=o||C(e),a=a||C(s),r=0,i=o.length;r<i;r++)L(o[r],a[r]);else L(e,s);return a=C(s,"script"),a.length>0&&k(a,!u&&C(e,"script")),s},cleanData:function(e){for(var t,n,r,i=xe.event.special,o=0;void 0!==(n=e[o]);o++)if(Me(n)){if(t=n[Ie.expando]){if(t.events)for(r in t.events)i[r]?xe.event.remove(n,r):xe.removeEvent(n,r,t.handle);n[Ie.expando]=void 0}n[Re.expando]&&(n[Re.expando]=void 0)}}}),xe.fn.extend({detach:function(e){return F(this,e,!0)},remove:function(e){return F(this,e)},text:function(e){return Pe(this,function(e){return void 0===e?xe.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return H(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){A(this,e).appendChild(e)}})},prepend:function(){return H(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=A(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return H(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return H(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(xe.cleanData(C(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return xe.clone(this,e,t)})},html:function(e){return Pe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ot.test(e)&&!Ke[(Qe.exec(e)||["",""])[1].toLowerCase()]){e=xe.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(xe.cleanData(C(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return H(this,arguments,function(t){var n=this.parentNode;xe.inArray(this,e)<0&&(xe.cleanData(C(this)),n&&n.replaceChild(t,this))},e)}}),xe.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){xe.fn[e]=function(e){for(var n,r=[],i=xe(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),xe(i[a])[t](n),fe.apply(r,n.get());return this.pushStack(r)}});var lt=/^margin/,ct=new RegExp("^("+Be+")(?!px)[a-z%]+$","i"),ft=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=o),t.getComputedStyle(e)};!function(){function e(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",et.appendChild(a);var e=o.getComputedStyle(s);t="1%"!==e.top,i="2px"===e.marginLeft,n="4px"===e.width,s.style.marginRight="50%",r="4px"===e.marginRight,et.removeChild(a),s=null}}var t,n,r,i,a=se.createElement("div"),s=se.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",ye.clearCloneStyle="content-box"===s.style.backgroundClip,a.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.appendChild(s),xe.extend(ye,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),r},reliableMarginLeft:function(){return e(),i}}))}();var dt=/^(none|table(?!-c[ea]).+)/,pt=/^--/,ht={position:"absolute",visibility:"hidden",display:"block"},gt={letterSpacing:"0",fontWeight:"400"},vt=["Webkit","Moz","ms"],mt=se.createElement("div").style;xe.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=P(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=xe.camelCase(t),l=pt.test(t),c=e.style;if(l||(t=R(u)),s=xe.cssHooks[t]||xe.cssHooks[u],void 0===n)return s&&"get"in s&&void 0!==(o=s.get(e,!1,r))?o:c[t];a=void 0===n?"undefined":i(n),"string"===a&&(o=ze.exec(n))&&o[1]&&(n=b(e,t,o),a="number"),null!=n&&n===n&&("number"===a&&(n+=o&&o[3]||(xe.cssNumber[u]?"":"px")),ye.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(l?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,a,s=xe.camelCase(t);return pt.test(t)||(t=R(s)),a=xe.cssHooks[t]||xe.cssHooks[s],a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=P(e,t,r)),"normal"===i&&t in gt&&(i=gt[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),xe.each(["height","width"],function(e,t){xe.cssHooks[t]={get:function(e,n,r){if(n)return!dt.test(xe.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?B(e,t,r):Ve(e,ht,function(){return B(e,t,r)})},set:function(e,n,r){var i,o=r&&ft(e),a=r&&$(e,t,r,"border-box"===xe.css(e,"boxSizing",!1,o),o);return a&&(i=ze.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=xe.css(e,t)),W(e,n,a)}}}),xe.cssHooks.marginLeft=M(ye.reliableMarginLeft,function(e,t){if(t)return(parseFloat(P(e,"marginLeft"))||e.getBoundingClientRect().left-Ve(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),xe.each({margin:"",padding:"",border:"Width"},function(e,t){xe.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Xe[r]+t]=o[r]||o[r-2]||o[0];return i}},lt.test(e)||(xe.cssHooks[e+t].set=W)}),xe.fn.extend({css:function(e,t){return Pe(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=ft(e),i=t.length;a<i;a++)o[t[a]]=xe.css(e,t[a],!1,r);return o}return void 0!==n?xe.style(e,t,n):xe.css(e,t)},e,t,arguments.length>1)}}),xe.Tween=z,z.prototype={constructor:z,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||xe.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(xe.cssNumber[n]?"":"px")},cur:function(){var e=z.propHooks[this.prop];return e&&e.get?e.get(this):z.propHooks._default.get(this)},run:function(e){var t,n=z.propHooks[this.prop];return this.options.duration?this.pos=t=xe.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):z.propHooks._default.set(this),this}},z.prototype.init.prototype=z.prototype,z.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=xe.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){xe.fx.step[e.prop]?xe.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[xe.cssProps[e.prop]]&&!xe.cssHooks[e.prop]?e.elem[e.prop]=e.now:xe.style(e.elem,e.prop,e.now+e.unit)}}},z.propHooks.scrollTop=z.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},xe.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},xe.fx=z.prototype.init,xe.fx.step={};var yt,xt,bt=/^(?:toggle|show|hide)$/,wt=/queueHooks$/;xe.Animation=xe.extend(J,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return b(n.elem,e,ze.exec(t),n),n}]},tweener:function(e,t){xe.isFunction(e)?(t=e,e=["*"]):e=e.match(Oe);for(var n,r=0,i=e.length;r<i;r++)n=e[r],J.tweeners[n]=J.tweeners[n]||[],J.tweeners[n].unshift(t)},prefilters:[Y],prefilter:function(e,t){t?J.prefilters.unshift(e):J.prefilters.push(e)}}),xe.speed=function(e,t,n){var r=e&&"object"===(void 0===e?"undefined":i(e))?xe.extend({},e):{complete:n||!n&&t||xe.isFunction(e)&&e,duration:e,easing:n&&t||t&&!xe.isFunction(t)&&t};return xe.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in xe.fx.speeds?r.duration=xe.fx.speeds[r.duration]:r.duration=xe.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){xe.isFunction(r.old)&&r.old.call(this),r.queue&&xe.dequeue(this,r.queue)},r},xe.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Ue).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=xe.isEmptyObject(e),o=xe.speed(t,n,r),a=function(){var t=J(this,xe.extend({},e),o);(i||Ie.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=xe.timers,a=Ie.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&wt.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||xe.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=Ie.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=xe.timers,a=r?r.length:0;for(n.finish=!0,xe.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),xe.each(["toggle","show","hide"],function(e,t){var n=xe.fn[t];xe.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(V(t,!0),e,r,i)}}),xe.each({slideDown:V("show"),slideUp:V("hide"),slideToggle:V("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){xe.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),xe.timers=[],xe.fx.tick=function(){var e,t=0,n=xe.timers;for(yt=xe.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||xe.fx.stop(),yt=void 0},xe.fx.timer=function(e){xe.timers.push(e),xe.fx.start()},xe.fx.interval=13,xe.fx.start=function(){xt||(xt=!0,X())},xe.fx.stop=function(){xt=null},xe.fx.speeds={slow:600,fast:200,_default:400},xe.fn.delay=function(e,t){return e=xe.fx?xe.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=o.setTimeout(t,e);n.stop=function(){o.clearTimeout(r)}})},function(){var e=se.createElement("input"),t=se.createElement("select"),n=t.appendChild(se.createElement("option"));e.type="checkbox",ye.checkOn=""!==e.value,ye.optSelected=n.selected,e=se.createElement("input"),e.value="t",e.type="radio",ye.radioValue="t"===e.value}();var Tt,Ct=xe.expr.attrHandle;xe.fn.extend({attr:function(e,t){return Pe(this,xe.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){xe.removeAttr(this,e)})}}),xe.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?xe.prop(e,t,n):(1===o&&xe.isXMLDoc(e)||(i=xe.attrHooks[t.toLowerCase()]||(xe.expr.match.bool.test(t)?Tt:void 0)),void 0!==n?null===n?void xe.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=xe.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!ye.radioValue&&"radio"===t&&l(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(Oe);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),Tt={set:function(e,t,n){return!1===t?xe.removeAttr(e,n):e.setAttribute(n,n),n}},xe.each(xe.expr.match.bool.source.match(/\w+/g),function(e,t){var n=Ct[t]||xe.find.attr;Ct[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=Ct[a],Ct[a]=i,i=null!=n(e,t,r)?a:null,Ct[a]=o),i}});var kt=/^(?:input|select|textarea|button)$/i,St=/^(?:a|area)$/i;xe.fn.extend({prop:function(e,t){return Pe(this,xe.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[xe.propFix[e]||e]})}}),xe.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&xe.isXMLDoc(e)||(t=xe.propFix[t]||t,i=xe.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=xe.find.attr(e,"tabindex");return t?parseInt(t,10):kt.test(e.nodeName)||St.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),ye.optSelected||(xe.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),xe.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){xe.propFix[this.toLowerCase()]=this}),xe.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(xe.isFunction(e))return this.each(function(t){xe(this).addClass(e.call(this,t,Z(this)))});if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=Z(n),r=1===n.nodeType&&" "+K(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=K(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(xe.isFunction(e))return this.each(function(t){xe(this).removeClass(e.call(this,t,Z(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=Z(n),r=1===n.nodeType&&" "+K(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=K(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=void 0===e?"undefined":i(e);return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):xe.isFunction(e)?this.each(function(n){xe(this).toggleClass(e.call(this,n,Z(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=xe(this),o=e.match(Oe)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=Z(this),t&&Ie.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Ie.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+K(Z(n))+" ").indexOf(t)>-1)return!0;return!1}});var jt=/\r/g;xe.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=xe.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,xe(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=xe.map(i,function(e){return null==e?"":e+""})),(t=xe.valHooks[this.type]||xe.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=xe.valHooks[i.type]||xe.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(jt,""):null==n?"":n)}}}),xe.extend({valHooks:{option:{get:function(e){var t=xe.find.attr(e,"value");return null!=t?t:K(xe.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(n=i[r],(n.selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!l(n.parentNode,"optgroup"))){if(t=xe(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=xe.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=xe.inArray(xe.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),xe.each(["radio","checkbox"],function(){xe.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=xe.inArray(xe(e).val(),t)>-1}},ye.checkOn||(xe.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Et=/^(?:focusinfocus|focusoutblur)$/;xe.extend(xe.event,{trigger:function(e,t,n,r){var a,s,u,l,c,f,d,p=[n||se],h=ge.call(e,"type")?e.type:e,g=ge.call(e,"namespace")?e.namespace.split("."):[];if(s=u=n=n||se,3!==n.nodeType&&8!==n.nodeType&&!Et.test(h+xe.event.triggered)&&(h.indexOf(".")>-1&&(g=h.split("."),h=g.shift(),g.sort()),c=h.indexOf(":")<0&&"on"+h,e=e[xe.expando]?e:new xe.Event(h,"object"===(void 0===e?"undefined":i(e))&&e),e.isTrigger=r?2:3,e.namespace=g.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:xe.makeArray(t,[e]),d=xe.event.special[h]||{},r||!d.trigger||!1!==d.trigger.apply(n,t))){if(!r&&!d.noBubble&&!xe.isWindow(n)){for(l=d.delegateType||h,Et.test(l+h)||(s=s.parentNode);s;s=s.parentNode)p.push(s),u=s;u===(n.ownerDocument||se)&&p.push(u.defaultView||u.parentWindow||o)}for(a=0;(s=p[a++])&&!e.isPropagationStopped();)e.type=a>1?l:d.bindType||h,f=(Ie.get(s,"events")||{})[e.type]&&Ie.get(s,"handle"),f&&f.apply(s,t),(f=c&&s[c])&&f.apply&&Me(s)&&(e.result=f.apply(s,t),!1===e.result&&e.preventDefault());return e.type=h,r||e.isDefaultPrevented()||d._default&&!1!==d._default.apply(p.pop(),t)||!Me(n)||c&&xe.isFunction(n[h])&&!xe.isWindow(n)&&(u=n[c],u&&(n[c]=null),xe.event.triggered=h,n[h](),xe.event.triggered=void 0,u&&(n[c]=u)),e.result}},simulate:function(e,t,n){var r=xe.extend(new xe.Event,n,{type:e,isSimulated:!0});xe.event.trigger(r,null,t)}}),xe.fn.extend({trigger:function(e,t){return this.each(function(){xe.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return xe.event.trigger(e,t,n,!0)}}),xe.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){xe.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),xe.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),ye.focusin="onfocusin"in o,ye.focusin||xe.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){xe.event.simulate(t,e.target,xe.event.fix(e))};xe.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Ie.access(r,t);i||r.addEventListener(e,n,!0),Ie.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Ie.access(r,t)-1;i?Ie.access(r,t,i):(r.removeEventListener(e,n,!0),Ie.remove(r,t))}}});var Nt=o.location,Dt=xe.now(),At=/\?/;xe.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new o.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||xe.error("Invalid XML: "+e),t};var _t=/\[\]$/,qt=/\r?\n/g,Lt=/^(?:submit|button|image|reset|file)$/i,Ot=/^(?:input|select|textarea|keygen)/i;xe.param=function(e,t){var n,r=[],i=function(e,t){var n=xe.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!xe.isPlainObject(e))xe.each(e,function(){i(this.name,this.value)});else for(n in e)ee(n,e[n],t,i);return r.join("&")},xe.fn.extend({serialize:function(){return xe.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=xe.prop(this,"elements");return e?xe.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!xe(this).is(":disabled")&&Ot.test(this.nodeName)&&!Lt.test(e)&&(this.checked||!Ye.test(e))}).map(function(e,t){var n=xe(this).val();return null==n?null:Array.isArray(n)?xe.map(n,function(e){return{name:t.name,value:e.replace(qt,"\r\n")}}):{name:t.name,value:n.replace(qt,"\r\n")}}).get()}});var Ht=/%20/g,Ft=/#.*$/,Pt=/([?&])_=[^&]*/,Mt=/^(.*?):[ \t]*([^\r\n]*)$/gm,It=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Rt=/^(?:GET|HEAD)$/,Wt=/^\/\//,$t={},Bt={},zt="*/".concat("*"),Xt=se.createElement("a");Xt.href=Nt.href,xe.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Nt.href,type:"GET",isLocal:It.test(Nt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":zt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":xe.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?re(re(e,xe.ajaxSettings),t):re(xe.ajaxSettings,e)},ajaxPrefilter:te($t),ajaxTransport:te(Bt),ajax:function(e,t){function n(e,t,n,i){var u,c,p,h,w,T=t;f||(f=!0,l&&o.clearTimeout(l),r=void 0,s=i||"",k.readyState=e>0?4:0,u=e>=200&&e<300||304===e,n&&(h=ie(g,k,n)),h=oe(g,h,k,u),u?(g.ifModified&&(w=k.getResponseHeader("Last-Modified"),w&&(xe.lastModified[a]=w),(w=k.getResponseHeader("etag"))&&(xe.etag[a]=w)),204===e||"HEAD"===g.type?T="nocontent":304===e?T="notmodified":(T=h.state,c=h.data,p=h.error,u=!p)):(p=T,!e&&T||(T="error",e<0&&(e=0))),k.status=e,k.statusText=(t||T)+"",u?y.resolveWith(v,[c,T,k]):y.rejectWith(v,[k,T,p]),k.statusCode(b),b=void 0,d&&m.trigger(u?"ajaxSuccess":"ajaxError",[k,g,u?c:p]),x.fireWith(v,[k,T]),d&&(m.trigger("ajaxComplete",[k,g]),--xe.active||xe.event.trigger("ajaxStop")))}"object"===(void 0===e?"undefined":i(e))&&(t=e,e=void 0),t=t||{};var r,a,s,u,l,c,f,d,p,h,g=xe.ajaxSetup({},t),v=g.context||g,m=g.context&&(v.nodeType||v.jquery)?xe(v):xe.event,y=xe.Deferred(),x=xe.Callbacks("once memory"),b=g.statusCode||{},w={},T={},C="canceled",k={readyState:0,getResponseHeader:function(e){var t;if(f){if(!u)for(u={};t=Mt.exec(s);)u[t[1].toLowerCase()]=t[2];t=u[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return f?s:null},setRequestHeader:function(e,t){return null==f&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==f&&(g.mimeType=e),this},statusCode:function(e){var t;if(e)if(f)k.always(e[k.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),n(0,t),this}};if(y.promise(k),g.url=((e||g.url||Nt.href)+"").replace(Wt,Nt.protocol+"//"),g.type=t.method||t.type||g.method||g.type,g.dataTypes=(g.dataType||"*").toLowerCase().match(Oe)||[""],null==g.crossDomain){c=se.createElement("a");try{c.href=g.url,c.href=c.href,g.crossDomain=Xt.protocol+"//"+Xt.host!=c.protocol+"//"+c.host}catch(e){g.crossDomain=!0}}if(g.data&&g.processData&&"string"!=typeof g.data&&(g.data=xe.param(g.data,g.traditional)),ne($t,g,t,k),f)return k;d=xe.event&&g.global,d&&0==xe.active++&&xe.event.trigger("ajaxStart"),g.type=g.type.toUpperCase(),g.hasContent=!Rt.test(g.type),a=g.url.replace(Ft,""),g.hasContent?g.data&&g.processData&&0===(g.contentType||"").indexOf("application/x-www-form-urlencoded")&&(g.data=g.data.replace(Ht,"+")):(h=g.url.slice(a.length),g.data&&(a+=(At.test(a)?"&":"?")+g.data,delete g.data),!1===g.cache&&(a=a.replace(Pt,"$1"),h=(At.test(a)?"&":"?")+"_="+Dt+++h),g.url=a+h),g.ifModified&&(xe.lastModified[a]&&k.setRequestHeader("If-Modified-Since",xe.lastModified[a]),xe.etag[a]&&k.setRequestHeader("If-None-Match",xe.etag[a])),(g.data&&g.hasContent&&!1!==g.contentType||t.contentType)&&k.setRequestHeader("Content-Type",g.contentType),k.setRequestHeader("Accept",g.dataTypes[0]&&g.accepts[g.dataTypes[0]]?g.accepts[g.dataTypes[0]]+("*"!==g.dataTypes[0]?", "+zt+"; q=0.01":""):g.accepts["*"]);for(p in g.headers)k.setRequestHeader(p,g.headers[p]);if(g.beforeSend&&(!1===g.beforeSend.call(v,k,g)||f))return k.abort();if(C="abort",x.add(g.complete),k.done(g.success),k.fail(g.error),r=ne(Bt,g,t,k)){if(k.readyState=1,d&&m.trigger("ajaxSend",[k,g]),f)return k;g.async&&g.timeout>0&&(l=o.setTimeout(function(){k.abort("timeout")},g.timeout));try{f=!1,r.send(w,n)}catch(e){if(f)throw e;n(-1,e)}}else n(-1,"No Transport");return k},getJSON:function(e,t,n){return xe.get(e,t,n,"json")},getScript:function(e,t){return xe.get(e,void 0,t,"script")}}),xe.each(["get","post"],function(e,t){xe[t]=function(e,n,r,i){return xe.isFunction(n)&&(i=i||r,r=n,n=void 0),xe.ajax(xe.extend({url:e,type:t,dataType:i,data:n,success:r},xe.isPlainObject(e)&&e))}}),xe._evalUrl=function(e){return xe.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},xe.fn.extend({wrapAll:function(e){var t;return this[0]&&(xe.isFunction(e)&&(e=e.call(this[0])),t=xe(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return xe.isFunction(e)?this.each(function(t){xe(this).wrapInner(e.call(this,t))}):this.each(function(){var t=xe(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=xe.isFunction(e);return this.each(function(n){xe(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){xe(this).replaceWith(this.childNodes)}),this}}),xe.expr.pseudos.hidden=function(e){return!xe.expr.pseudos.visible(e)},xe.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},xe.ajaxSettings.xhr=function(){try{return new o.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Vt=xe.ajaxSettings.xhr();ye.cors=!!Vt&&"withCredentials"in Vt,ye.ajax=Vt=!!Vt,xe.ajaxTransport(function(e){var t,n;if(ye.cors||Vt&&!e.crossDomain)return{send:function(r,i){var a,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)s[a]=e.xhrFields[a];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(a in r)s.setRequestHeader(a,r[a]);t=function(e){return function(){t&&(t=n=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?i(0,"error"):i(s.status,s.statusText):i(Ut[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),n=s.onerror=t("error"),void 0!==s.onabort?s.onabort=n:s.onreadystatechange=function(){4===s.readyState&&o.setTimeout(function(){t&&n()})},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}}),xe.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),xe.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return xe.globalEval(e),e}}}),xe.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),xe.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=xe("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),se.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;xe.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||xe.expando+"_"+Dt++;return this[e]=!0,e}}),xe.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,a,s=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(s||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=xe.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,s?e[s]=e[s].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return a||xe.error(r+" was not called"),a[0]},e.dataTypes[0]="json",i=o[r],o[r]=function(){a=arguments},n.always(function(){void 0===i?xe(o).removeProp(r):o[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),a&&xe.isFunction(i)&&i(a[0]),a=i=void 0}),"script"}),ye.createHTMLDocument=function(){var e=se.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),xe.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var r,i,o;return t||(ye.createHTMLDocument?(t=se.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=se.location.href,t.head.appendChild(r)):t=se),i=Ne.exec(e),o=!n&&[],i?[t.createElement(i[1])]:(i=S([e],t,o),o&&o.length&&xe(o).remove(),xe.merge([],i.childNodes))},xe.fn.load=function(e,t,n){var r,o,a,s=this,u=e.indexOf(" ");return u>-1&&(r=K(e.slice(u)),e=e.slice(0,u)),xe.isFunction(t)?(n=t,t=void 0):t&&"object"===(void 0===t?"undefined":i(t))&&(o="POST"),s.length>0&&xe.ajax({url:e,type:o||"GET",dataType:"html",data:t}).done(function(e){a=arguments,s.html(r?xe("<div>").append(xe.parseHTML(e)).find(r):e)}).always(n&&function(e,t){s.each(function(){n.apply(this,a||[e.responseText,t,e])})}),this},xe.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){xe.fn[t]=function(e){return this.on(t,e)}}),xe.expr.pseudos.animated=function(e){return xe.grep(xe.timers,function(t){return e===t.elem}).length},xe.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l,c=xe.css(e,"position"),f=xe(e),d={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=xe.css(e,"top"),u=xe.css(e,"left"),l=("absolute"===c||"fixed"===c)&&(o+u).indexOf("auto")>-1,l?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),xe.isFunction(t)&&(t=t.call(e,n,xe.extend({},s))),null!=t.top&&(d.top=t.top-s.top+a),null!=t.left&&(d.left=t.left-s.left+i),"using"in t?t.using.call(e,d):f.css(d)}},xe.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){xe.offset.setOffset(this,e,t)});var t,n,r,i,o=this[0];if(o)return o.getClientRects().length?(r=o.getBoundingClientRect(),t=o.ownerDocument,n=t.documentElement,i=t.defaultView,{top:r.top+i.pageYOffset-n.clientTop,left:r.left+i.pageXOffset-n.clientLeft}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===xe.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),l(e[0],"html")||(r=e.offset()),r={top:r.top+xe.css(e[0],"borderTopWidth",!0),left:r.left+xe.css(e[0],"borderLeftWidth",!0)}),{top:t.top-r.top-xe.css(n,"marginTop",!0),left:t.left-r.left-xe.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===xe.css(e,"position");)e=e.offsetParent;return e||et})}}),xe.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;xe.fn[e]=function(r){return Pe(this,function(e,r,i){var o;if(xe.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),xe.each(["top","left"],function(e,t){xe.cssHooks[t]=M(ye.pixelPosition,function(e,n){if(n)return n=P(e,t),ct.test(n)?xe(e).position()[t]+"px":n})}),xe.each({Height:"height",Width:"width"},function(e,t){xe.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){xe.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return Pe(this,function(t,n,i){var o;return xe.isWindow(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?xe.css(t,n,s):xe.style(t,n,i,s)},t,a?i:void 0,a)}})}),xe.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),xe.holdReady=function(e){e?xe.readyWait++:xe.ready(!0)},xe.isArray=Array.isArray,xe.parseJSON=JSON.parse,xe.nodeName=l,n=[],void 0!==(r=function(){return xe}.apply(t,n))&&(e.exports=r);var Qt=o.jQuery,Jt=o.$;return xe.noConflict=function(e){return o.$===xe&&(o.$=Jt),e&&o.jQuery===xe&&(o.jQuery=Qt),xe},a||(o.jQuery=o.$=xe),xe})}).call(t,n(6)(e))},function(e,t,n){"use strict";function r(){var e=(0,a.default)("#ta-attach-images-metabox"),t=e.find("#thirsty_image_holder");e.on("click","#ta_upload_media_manager",function(n){if(n.preventDefault(),r)return void r.open();var r=wp.media({title:(0,a.default)(this).data("uploader-title"),library:{type:"image"},button:{text:(0,a.default)(this).data("uploader-button-text"),close:!0},multiple:!0});r.on("select",function(){var n=r.state().get("selection"),o=(0,a.default)("input[name=post_ID]").val(),s=[],u=(0,a.default)("#thirsty_image_holder");e.find("#thirsty_image_holder").length<=0&&e.find(".inside").append("<div id='thirsty_image_holder'></div>"),n.map(function(e){e=e.toJSON(),s.push(e.id)}),s.length>0&&a.default.ajax({url:ajaxurl,type:"POST",data:{action:"ta_add_attachments_to_affiliate_link",attachment_ids:s,affiliate_link_id:o},dataType:"json"}).done(function(n){if("success"===n.status){var r=t.data("attachments"),o=void 0;"object"==(void 0===r?"undefined":i(r))&&(o=t.data("attachments").map(function(e){return parseInt(e,10)}),o=a.default.unique(o.concat(s)),t.data("attachments",o)),e.find("#thirsty_image_holder").append(n.added_attachments_markup)}else alert(n.error_msg),console.log(n)}).fail(function(e){alert(e),console.log("Failed to add attachments to affiliate link")}).always(function(){u.find(".thirsty-attached-image").length>0&&u.show(),tb_remove()})}),r.open()}),e.on("click",".thirsty-remove-img",function(){var e=(0,a.default)(this);if(e.hasClass("removing"))return!1;e.addClass("removing");var n=parseInt(e.attr("id")),r=(0,a.default)("input[name=post_ID]").val(),o=e.closest(".thirsty-attached-image"),s=(0,a.default)("#thirsty_image_holder");a.default.ajax({url:ajaxurl,type:"POST",data:{action:"ta_remove_attachment_to_affiliate_link",attachment_id:n,affiliate_link_id:r},dataType:"json"}).done(function(e){if("success"===e.status){var r=t.data("attachments"),a=void 0;"object"==(void 0===r?"undefined":i(r))&&(a=t.data("attachments").map(function(e){return parseInt(e,10)}),a=new Set(a),a.delete(n),t.data("attachments",Array.from(a))),o.fadeOut(300).delay(300).remove(),s.find(".thirsty-attached-image").length<=0&&s.hide()}else alert(e.error_msg),console.log(e)}).fail(function(e){alert("Failed to remove attachment from affiliate link"),console.log(e)})});var n=function(){var e=(0,a.default)(".media-modal-content ul.attachments li.attachment"),n=t.data("attachments"),r=void 0;"object"==(void 0===n?"undefined":i(n))&&(r=n.map(function(e){return parseInt(e,10)}),e.each(function(){var e=(0,a.default)(this),t=(0,a.default)(this).data("id");e.show(),a.default.inArray(t,r)>-1&&e.hide()}))};e.on("click","#ta_upload_media_manager",n),(0,a.default)("body").on("click",".media-modal-content .media-menu-item",n),(0,a.default)(document).on("DOMNodeInserted",function(e){var n=(0,a.default)(e.target),r=t.data("attachments"),o=void 0;n.hasClass("attachment")&&"object"==(void 0===r?"undefined":i(r))&&(o=n.data("id"),r=r.map(function(e){return parseInt(e,10)}),a.default.inArray(o,r)>-1&&n.remove())})}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=r;var o=n(0),a=function(e){return e&&e.__esModule?e:{default:e}}(o)},function(e,t,n){"use strict";function r(){var e=(0,o.default)("#ta-urls-metabox");e.on("click","button.edit-ta-slug",function(){e.find(".cloaked-fields").hide(),e.find(".slug-fields").fadeIn(200)}),e.on("click","button.save-ta-slug",function(){var t=e.find("input#ta_slug").val(),n=e.find("input#ta_cloaked_url").val(),r=n.replace(/[^\/]+\/?$/g,"");/^([a-z0-9-]+)$/.test(t)?(t=""==t?n.match(/[^\/]+$/):t,e.find("input#ta_cloaked_url").val(r+t+"/"),e.find(".slug-fields").hide(),e.find(".cloaked-fields").fadeIn(200)):(0,o.default)("input#publish").click()})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t,n){"use strict";function r(){function e(e,t){o.default.post(ajaxurl,{action:"ta_get_category_slug",term_id:e},function(n){"success"==n.status?r.append("<option value='"+e+"' data-slug='"+n.category_slug+"'>"+t+"</option>").trigger("change"):(alert(n.error_msg),console.log(n))},"json")}function t(){var e=n.find("input[type='checkbox']:checked"),t=[],i=[],a=void 0,s=void 0,u=void 0,l=void 0;if(!(e.length<1)){for(l=0;l<e.length;l++)u=(0,o.default)(e[l]).parent().text().trim(),t.push(u),i[u]=l;t=t.sort(function(e,t){return e=e.toLowerCase(),t=t.toLowerCase(),e>t?1:e<t?-1:0}),s=i[t[0]],a=(0,o.default)(e[s]),o.default.post(ajaxurl,{action:"ta_get_category_slug",term_id:a.val()},function(e){"success"==e.status?(r.find("option:first-child").data("slug",e.category_slug).attr("data-slug",e.category_slug),r.trigger("change")):(alert(e.error_msg),console.log(e))},"json")}}var n=(0,o.default)("#thirstylink-categorychecklist"),r=(0,o.default)("select[name='ta_category_slug']");n.on("change","input[type='checkbox']",function(){var n=(0,o.default)(this).val(),i=(0,o.default)(this).parent().text(),a=(0,o.default)(this).prop("checked");t(),a?e(n,i):(r.find("option[value='"+n+"']").remove(),r.trigger("change"))}),(0,o.default)(document).on("DOMNodeInserted","#thirstylink-categorychecklist",function(){var n=(0,o.default)("#thirstylink-categorychecklist li").first(),i=n.find("input[type='checkbox']").val(),a=n.find("label").text(),s=n.find("input[type='checkbox']").prop("checked");t(),s?e(i,a):r.find("option[value='"+i+"']").remove()}),(0,o.default)(document).on("change","select[name='ta_category_slug']",function(){var e=(0,o.default)(this),t=e.find("option:selected").data("slug"),n=e.data("home-link-prefix"),r=(0,o.default)("#ta_slug").val(),i=(0,o.default)("#ta_cloaked_url");(0,o.default)(this).find("option").length<=1?i.val(n+r+"/"):i.val(n+t+"/"+r+"/")})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t,n){"use strict";function r(){var e=(0,o.default)("#ta-inserted-link-scanner-metabox");e.on("click","#inserted-link-scan-trigger",function(){var t=(0,o.default)(this),n=e.find(".inside"),r=n.find(".inserted-into-table table tbody"),i=n.find(".overlay"),a=n.find(".scanned-inserted-status .last-scanned"),s=(0,o.default)("input#post_ID").val();t.prop("disabled",!0),i.css("height",n.height()).show(),o.default.post(ajaxurl,{action:"ta_link_inserted_scanner",link_id:s},function(e){"success"==e.status?(r.html(e.results_markup),a.html(e.last_scanned)):(alert(e.error_msg),console.log(e)),t.prop("disabled",!1),i.hide()},"json")})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t){},function(e,t,n){"use strict";e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i=n(0),o=r(i),a=n(1),s=r(a),u=n(2),l=r(u),c=n(3),f=r(c),d=n(4),p=r(d);n(5),(0,o.default)(document).ready(function(){(0,s.default)(),(0,l.default)(),(0,f.default)(),(0,p.default)()})}]);
|
21 |
*
|
22 |
* Date: 2016-08-08
|
23 |
*/
|
24 |
+
function(e){function t(e,t,n,r){var i,o,a,s,u,c,d,p=t&&t.ownerDocument,h=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==h&&9!==h&&11!==h)return n;if(!r&&((t?t.ownerDocument||t:I)!==_&&A(t),t=t||_,L)){if(11!==h&&(u=ge.exec(e)))if(i=u[1]){if(9===h){if(!(a=t.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(p&&(a=p.getElementById(i))&&P(t,a)&&a.id===i)return n.push(a),n}else{if(u[2])return Q.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&b.getElementsByClassName&&t.getElementsByClassName)return Q.apply(n,t.getElementsByClassName(i)),n}if(b.qsa&&!z[e+" "]&&(!O||!O.test(e))){if(1!==h)p=t,d=e;else if("object"!==t.nodeName.toLowerCase()){for((s=t.getAttribute("id"))?s=s.replace(xe,be):t.setAttribute("id",s=M),c=k(e),o=c.length;o--;)c[o]="#"+s+" "+f(c[o]);d=c.join(","),p=ve.test(e)&&l(t.parentNode)||t}if(d)try{return Q.apply(n,p.querySelectorAll(d)),n}catch(e){}finally{s===M&&t.removeAttribute("id")}}}return j(e.replace(oe,"$1"),t,n,r)}function n(){function e(n,r){return t.push(n+" ")>w.cacheLength&&delete e[t.shift()],e[n+" "]=r}var t=[];return e}function r(e){return e[M]=!0,e}function i(e){var t=_.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function o(e,t){for(var n=e.split("|"),r=n.length;r--;)w.attrHandle[n[r]]=t}function a(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function s(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Te(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function u(e){return r(function(t){return t=+t,r(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function l(e){return e&&void 0!==e.getElementsByTagName&&e}function c(){}function f(e){for(var t=0,n=e.length,r="";t<n;t++)r+=e[t].value;return r}function d(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&"parentNode"===o,s=W++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,d=[R,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(f=t[M]||(t[M]={}),c=f[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===R&&l[1]===s)return d[2]=l[2];if(c[o]=d,d[2]=e(t,n,u))return!0}return!1}}function p(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function h(e,n,r){for(var i=0,o=n.length;i<o;i++)t(e,n[i],r);return r}function g(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function v(e,t,n,i,o,a){return i&&!i[M]&&(i=v(i)),o&&!o[M]&&(o=v(o,a)),r(function(r,a,s,u){var l,c,f,d=[],p=[],v=a.length,m=r||h(t||"*",s.nodeType?[s]:s,[]),y=!e||!r&&t?m:g(m,d,e,s,u),x=n?o||(r?e:v||i)?[]:a:y;if(n&&n(y,x,s,u),i)for(l=g(x,p),i(l,[],s,u),c=l.length;c--;)(f=l[c])&&(x[p[c]]=!(y[p[c]]=f));if(r){if(o||e){if(o){for(l=[],c=x.length;c--;)(f=x[c])&&l.push(y[c]=f);o(null,x=[],l,u)}for(c=x.length;c--;)(f=x[c])&&(l=o?K(r,f):d[c])>-1&&(r[l]=!(a[l]=f))}}else x=g(x===a?x.splice(v,x.length):x),o?o(null,a,x,u):Q.apply(a,x)})}function m(e){for(var t,n,r,i=e.length,o=w.relative[e[0].type],a=o||w.relative[" "],s=o?1:0,u=d(function(e){return e===t},a,!0),l=d(function(e){return K(t,e)>-1},a,!0),c=[function(e,n,r){var i=!o&&(r||n!==E)||((t=n).nodeType?u(e,n,r):l(e,n,r));return t=null,i}];s<i;s++)if(n=w.relative[e[s].type])c=[d(p(c),n)];else{if(n=w.filter[e[s].type].apply(null,e[s].matches),n[M]){for(r=++s;r<i&&!w.relative[e[r].type];r++);return v(s>1&&p(c),s>1&&f(e.slice(0,s-1).concat({value:" "===e[s-2].type?"*":""})).replace(oe,"$1"),n,s<r&&m(e.slice(s,r)),r<i&&m(e=e.slice(r)),r<i&&f(e))}c.push(n)}return p(c)}function y(e,n){var i=n.length>0,o=e.length>0,a=function(r,a,s,u,l){var c,f,d,p=0,h="0",v=r&&[],m=[],y=E,x=r||o&&w.find.TAG("*",l),b=R+=null==y?1:Math.random()||.1,T=x.length;for(l&&(E=a===_||a||l);h!==T&&null!=(c=x[h]);h++){if(o&&c){for(f=0,a||c.ownerDocument===_||(A(c),s=!L);d=e[f++];)if(d(c,a||_,s)){u.push(c);break}l&&(R=b)}i&&((c=!d&&c)&&p--,r&&v.push(c))}if(p+=h,i&&h!==p){for(f=0;d=n[f++];)d(v,m,a,s);if(r){if(p>0)for(;h--;)v[h]||m[h]||(m[h]=G.call(u));m=g(m)}Q.apply(u,m),l&&!r&&m.length>0&&p+n.length>1&&t.uniqueSort(u)}return l&&(R=b,E=y),v};return i?r(a):a}var x,b,w,T,C,k,S,j,E,N,D,A,_,q,L,O,H,F,P,M="sizzle"+1*new Date,I=e.document,R=0,W=0,$=n(),B=n(),z=n(),X=function(e,t){return e===t&&(D=!0),0},U={}.hasOwnProperty,V=[],G=V.pop,Y=V.push,Q=V.push,J=V.slice,K=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},Z="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",ee="[\\x20\\t\\r\\n\\f]",te="(?:\\\\.|[\\w-]|[^\0-\\xa0])+",ne="\\["+ee+"*("+te+")(?:"+ee+"*([*^$|!~]?=)"+ee+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+te+"))|)"+ee+"*\\]",re=":("+te+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+ne+")*)|.*)\\)|)",ie=new RegExp(ee+"+","g"),oe=new RegExp("^"+ee+"+|((?:^|[^\\\\])(?:\\\\.)*)"+ee+"+$","g"),ae=new RegExp("^"+ee+"*,"+ee+"*"),se=new RegExp("^"+ee+"*([>+~]|"+ee+")"+ee+"*"),ue=new RegExp("="+ee+"*([^\\]'\"]*?)"+ee+"*\\]","g"),le=new RegExp(re),ce=new RegExp("^"+te+"$"),fe={ID:new RegExp("^#("+te+")"),CLASS:new RegExp("^\\.("+te+")"),TAG:new RegExp("^("+te+"|[*])"),ATTR:new RegExp("^"+ne),PSEUDO:new RegExp("^"+re),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ee+"*(even|odd|(([+-]|)(\\d*)n|)"+ee+"*(?:([+-]|)"+ee+"*(\\d+)|))"+ee+"*\\)|)","i"),bool:new RegExp("^(?:"+Z+")$","i"),needsContext:new RegExp("^"+ee+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ee+"*((?:-\\d)?\\d*)"+ee+"*\\)|)(?=[^-]|$)","i")},de=/^(?:input|select|textarea|button)$/i,pe=/^h\d$/i,he=/^[^{]+\{\s*\[native \w/,ge=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ve=/[+~]/,me=new RegExp("\\\\([\\da-f]{1,6}"+ee+"?|("+ee+")|.)","ig"),ye=function(e,t,n){var r="0x"+t-65536;return r!==r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},xe=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,be=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},we=function(){A()},Te=d(function(e){return!0===e.disabled&&("form"in e||"label"in e)},{dir:"parentNode",next:"legend"});try{Q.apply(V=J.call(I.childNodes),I.childNodes),V[I.childNodes.length].nodeType}catch(e){Q={apply:V.length?function(e,t){Y.apply(e,J.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}b=t.support={},C=t.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&"HTML"!==t.nodeName},A=t.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:I;return r!==_&&9===r.nodeType&&r.documentElement?(_=r,q=_.documentElement,L=!C(_),I!==_&&(n=_.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",we,!1):n.attachEvent&&n.attachEvent("onunload",we)),b.attributes=i(function(e){return e.className="i",!e.getAttribute("className")}),b.getElementsByTagName=i(function(e){return e.appendChild(_.createComment("")),!e.getElementsByTagName("*").length}),b.getElementsByClassName=he.test(_.getElementsByClassName),b.getById=i(function(e){return q.appendChild(e).id=M,!_.getElementsByName||!_.getElementsByName(M).length}),b.getById?(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){return e.getAttribute("id")===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&L){var n=t.getElementById(e);return n?[n]:[]}}):(w.filter.ID=function(e){var t=e.replace(me,ye);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},w.find.ID=function(e,t){if(void 0!==t.getElementById&&L){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),w.find.TAG=b.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):b.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},w.find.CLASS=b.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&L)return t.getElementsByClassName(e)},H=[],O=[],(b.qsa=he.test(_.querySelectorAll))&&(i(function(e){q.appendChild(e).innerHTML="<a id='"+M+"'></a><select id='"+M+"-\r\\' msallowcapture=''><option selected=''></option></select>",e.querySelectorAll("[msallowcapture^='']").length&&O.push("[*^$]="+ee+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||O.push("\\["+ee+"*(?:value|"+Z+")"),e.querySelectorAll("[id~="+M+"-]").length||O.push("~="),e.querySelectorAll(":checked").length||O.push(":checked"),e.querySelectorAll("a#"+M+"+*").length||O.push(".#.+[+~]")}),i(function(e){e.innerHTML="<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";var t=_.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&O.push("name"+ee+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&O.push(":enabled",":disabled"),q.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&O.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),O.push(",.*:")})),(b.matchesSelector=he.test(F=q.matches||q.webkitMatchesSelector||q.mozMatchesSelector||q.oMatchesSelector||q.msMatchesSelector))&&i(function(e){b.disconnectedMatch=F.call(e,"*"),F.call(e,"[s!='']:x"),H.push("!=",re)}),O=O.length&&new RegExp(O.join("|")),H=H.length&&new RegExp(H.join("|")),t=he.test(q.compareDocumentPosition),P=t||he.test(q.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},X=t?function(e,t){if(e===t)return D=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1,1&n||!b.sortDetached&&t.compareDocumentPosition(e)===n?e===_||e.ownerDocument===I&&P(I,e)?-1:t===_||t.ownerDocument===I&&P(I,t)?1:N?K(N,e)-K(N,t):0:4&n?-1:1)}:function(e,t){if(e===t)return D=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,s=[e],u=[t];if(!i||!o)return e===_?-1:t===_?1:i?-1:o?1:N?K(N,e)-K(N,t):0;if(i===o)return a(e,t);for(n=e;n=n.parentNode;)s.unshift(n);for(n=t;n=n.parentNode;)u.unshift(n);for(;s[r]===u[r];)r++;return r?a(s[r],u[r]):s[r]===I?-1:u[r]===I?1:0},_):_},t.matches=function(e,n){return t(e,null,null,n)},t.matchesSelector=function(e,n){if((e.ownerDocument||e)!==_&&A(e),n=n.replace(ue,"='$1']"),b.matchesSelector&&L&&!z[n+" "]&&(!H||!H.test(n))&&(!O||!O.test(n)))try{var r=F.call(e,n);if(r||b.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){}return t(n,_,null,[e]).length>0},t.contains=function(e,t){return(e.ownerDocument||e)!==_&&A(e),P(e,t)},t.attr=function(e,t){(e.ownerDocument||e)!==_&&A(e);var n=w.attrHandle[t.toLowerCase()],r=n&&U.call(w.attrHandle,t.toLowerCase())?n(e,t,!L):void 0;return void 0!==r?r:b.attributes||!L?e.getAttribute(t):(r=e.getAttributeNode(t))&&r.specified?r.value:null},t.escape=function(e){return(e+"").replace(xe,be)},t.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},t.uniqueSort=function(e){var t,n=[],r=0,i=0;if(D=!b.detectDuplicates,N=!b.sortStable&&e.slice(0),e.sort(X),D){for(;t=e[i++];)t===e[i]&&(r=n.push(i));for(;r--;)e.splice(n[r],1)}return N=null,e},T=t.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=T(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r++];)n+=T(t);return n},w=t.selectors={cacheLength:50,createPseudo:r,match:fe,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(me,ye),e[3]=(e[3]||e[4]||e[5]||"").replace(me,ye),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||t.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&t.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return fe.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&le.test(n)&&(t=k(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(me,ye).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=$[e+" "];return t||(t=new RegExp("(^|"+ee+")"+e+"("+ee+"|$)"))&&$(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(e,n,r){return function(i){var o=t.attr(i,e);return null==o?"!="===n:!n||(o+="","="===n?o===r:"!="===n?o!==r:"^="===n?r&&0===o.indexOf(r):"*="===n?r&&o.indexOf(r)>-1:"$="===n?r&&o.slice(-r.length)===r:"~="===n?(" "+o.replace(ie," ")+" ").indexOf(r)>-1:"|="===n&&(o===r||o.slice(0,r.length+1)===r+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,d,p,h,g=o!==a?"nextSibling":"previousSibling",v=t.parentNode,m=s&&t.nodeName.toLowerCase(),y=!u&&!s,x=!1;if(v){if(o){for(;g;){for(d=t;d=d[g];)if(s?d.nodeName.toLowerCase()===m:1===d.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&y){for(d=v,f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===R&&l[1],x=p&&l[2],d=p&&v.childNodes[p];d=++p&&d&&d[g]||(x=p=0)||h.pop();)if(1===d.nodeType&&++x&&d===t){c[e]=[R,p,x];break}}else if(y&&(d=t,f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),l=c[e]||[],p=l[0]===R&&l[1],x=p),!1===x)for(;(d=++p&&d&&d[g]||(x=p=0)||h.pop())&&((s?d.nodeName.toLowerCase()!==m:1!==d.nodeType)||!++x||(y&&(f=d[M]||(d[M]={}),c=f[d.uniqueID]||(f[d.uniqueID]={}),c[e]=[R,x]),d!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,n){var i,o=w.pseudos[e]||w.setFilters[e.toLowerCase()]||t.error("unsupported pseudo: "+e);return o[M]?o(n):o.length>1?(i=[e,e,"",n],w.setFilters.hasOwnProperty(e.toLowerCase())?r(function(e,t){for(var r,i=o(e,n),a=i.length;a--;)r=K(e,i[a]),e[r]=!(t[r]=i[a])}):function(e){return o(e,0,i)}):o}},pseudos:{not:r(function(e){var t=[],n=[],i=S(e.replace(oe,"$1"));return i[M]?r(function(e,t,n,r){for(var o,a=i(e,null,r,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,r,o){return t[0]=e,i(t,null,o,n),t[0]=null,!n.pop()}}),has:r(function(e){return function(n){return t(e,n).length>0}}),contains:r(function(e){return e=e.replace(me,ye),function(t){return(t.textContent||t.innerText||T(t)).indexOf(e)>-1}}),lang:r(function(e){return ce.test(e||"")||t.error("unsupported lang: "+e),e=e.replace(me,ye).toLowerCase(),function(t){var n;do{if(n=L?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===q},focus:function(e){return e===_.activeElement&&(!_.hasFocus||_.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:s(!1),disabled:s(!0),checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!w.pseudos.empty(e)},header:function(e){return pe.test(e.nodeName)},input:function(e){return de.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:u(function(){return[0]}),last:u(function(e,t){return[t-1]}),eq:u(function(e,t,n){return[n<0?n+t:n]}),even:u(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:u(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:u(function(e,t,n){for(var r=n<0?n+t:n;--r>=0;)e.push(r);return e}),gt:u(function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e})}},w.pseudos.nth=w.pseudos.eq;for(x in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})w.pseudos[x]=function(e){return function(t){return"input"===t.nodeName.toLowerCase()&&t.type===e}}(x);for(x in{submit:!0,reset:!0})w.pseudos[x]=function(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}(x);return c.prototype=w.filters=w.pseudos,w.setFilters=new c,k=t.tokenize=function(e,n){var r,i,o,a,s,u,l,c=B[e+" "];if(c)return n?0:c.slice(0);for(s=e,u=[],l=w.preFilter;s;){r&&!(i=ae.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),r=!1,(i=se.exec(s))&&(r=i.shift(),o.push({value:r,type:i[0].replace(oe," ")}),s=s.slice(r.length));for(a in w.filter)!(i=fe[a].exec(s))||l[a]&&!(i=l[a](i))||(r=i.shift(),o.push({value:r,type:a,matches:i}),s=s.slice(r.length));if(!r)break}return n?s.length:s?t.error(e):B(e,u).slice(0)},S=t.compile=function(e,t){var n,r=[],i=[],o=z[e+" "];if(!o){for(t||(t=k(e)),n=t.length;n--;)o=m(t[n]),o[M]?r.push(o):i.push(o);o=z(e,y(i,r)),o.selector=e}return o},j=t.select=function(e,t,n,r){var i,o,a,s,u,c="function"==typeof e&&e,d=!r&&k(e=c.selector||e);if(n=n||[],1===d.length){if(o=d[0]=d[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&L&&w.relative[o[1].type]){if(!(t=(w.find.ID(a.matches[0].replace(me,ye),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(o.shift().value.length)}for(i=fe.needsContext.test(e)?0:o.length;i--&&(a=o[i],!w.relative[s=a.type]);)if((u=w.find[s])&&(r=u(a.matches[0].replace(me,ye),ve.test(o[0].type)&&l(t.parentNode)||t))){if(o.splice(i,1),!(e=r.length&&f(o)))return Q.apply(n,r),n;break}}return(c||S(e,d))(r,t,!L,n,!t||ve.test(e)&&l(t.parentNode)||t),n},b.sortStable=M.split("").sort(X).join("")===M,b.detectDuplicates=!!D,A(),b.sortDetached=i(function(e){return 1&e.compareDocumentPosition(_.createElement("fieldset"))}),i(function(e){return e.innerHTML="<a href='#'></a>","#"===e.firstChild.getAttribute("href")})||o("type|href|height|width",function(e,t,n){if(!n)return e.getAttribute(t,"type"===t.toLowerCase()?1:2)}),b.attributes&&i(function(e){return e.innerHTML="<input/>",e.firstChild.setAttribute("value",""),""===e.firstChild.getAttribute("value")})||o("value",function(e,t,n){if(!n&&"input"===e.nodeName.toLowerCase())return e.defaultValue}),i(function(e){return null==e.getAttribute("disabled")})||o(Z,function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null}),t}(o);xe.find=ke,xe.expr=ke.selectors,xe.expr[":"]=xe.expr.pseudos,xe.uniqueSort=xe.unique=ke.uniqueSort,xe.text=ke.getText,xe.isXMLDoc=ke.isXML,xe.contains=ke.contains,xe.escapeSelector=ke.escape;var Se=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&xe(e).is(n))break;r.push(e)}return r},je=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},Ee=xe.expr.match.needsContext,Ne=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,De=/^.[^:#\[\.,]*$/;xe.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?xe.find.matchesSelector(r,e)?[r]:[]:xe.find.matches(e,xe.grep(t,function(e){return 1===e.nodeType}))},xe.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(xe(e).filter(function(){for(t=0;t<r;t++)if(xe.contains(i[t],this))return!0}));for(n=this.pushStack([]),t=0;t<r;t++)xe.find(e,i[t],n);return r>1?xe.uniqueSort(n):n},filter:function(e){return this.pushStack(c(this,e||[],!1))},not:function(e){return this.pushStack(c(this,e||[],!0))},is:function(e){return!!c(this,"string"==typeof e&&Ee.test(e)?xe(e):e||[],!1).length}});var Ae,_e=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(xe.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||Ae,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:_e.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof xe?t[0]:t,xe.merge(this,xe.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:se,!0)),Ne.test(r[1])&&xe.isPlainObject(t))for(r in t)xe.isFunction(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return i=se.getElementById(r[2]),i&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):xe.isFunction(e)?void 0!==n.ready?n.ready(e):e(xe):xe.makeArray(e,this)}).prototype=xe.fn,Ae=xe(se);var qe=/^(?:parents|prev(?:Until|All))/,Le={children:!0,contents:!0,next:!0,prev:!0};xe.fn.extend({has:function(e){var t=xe(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(xe.contains(this,t[e]))return!0})},closest:function(e,t){var n,r=0,i=this.length,o=[],a="string"!=typeof e&&xe(e);if(!Ee.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&xe.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?xe.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?de.call(xe(e),this[0]):de.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(xe.uniqueSort(xe.merge(this.get(),xe(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),xe.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return Se(e,"parentNode")},parentsUntil:function(e,t,n){return Se(e,"parentNode",n)},next:function(e){return f(e,"nextSibling")},prev:function(e){return f(e,"previousSibling")},nextAll:function(e){return Se(e,"nextSibling")},prevAll:function(e){return Se(e,"previousSibling")},nextUntil:function(e,t,n){return Se(e,"nextSibling",n)},prevUntil:function(e,t,n){return Se(e,"previousSibling",n)},siblings:function(e){return je((e.parentNode||{}).firstChild,e)},children:function(e){return je(e.firstChild)},contents:function(e){return l(e,"iframe")?e.contentDocument:(l(e,"template")&&(e=e.content||e),xe.merge([],e.childNodes))}},function(e,t){xe.fn[e]=function(n,r){var i=xe.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=xe.filter(r,i)),this.length>1&&(Le[e]||xe.uniqueSort(i),qe.test(e)&&i.reverse()),this.pushStack(i)}});var Oe=/[^\x20\t\r\n\f]+/g;xe.Callbacks=function(e){e="string"==typeof e?d(e):xe.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:"")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){xe.each(n,function(n,r){xe.isFunction(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&"string"!==xe.type(r)&&t(r)})}(arguments),n&&!t&&u()),this},remove:function(){return xe.each(arguments,function(e,t){for(var n;(n=xe.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--}),this},has:function(e){return e?xe.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=n||[],n=[e,n.slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},xe.extend({Deferred:function(e){var t=[["notify","progress",xe.Callbacks("memory"),xe.Callbacks("memory"),2],["resolve","done",xe.Callbacks("once memory"),xe.Callbacks("once memory"),0,"resolved"],["reject","fail",xe.Callbacks("once memory"),xe.Callbacks("once memory"),1,"rejected"]],n="pending",r={state:function(){return n},always:function(){return a.done(arguments).fail(arguments),this},catch:function(e){return r.then(null,e)},pipe:function(){var e=arguments;return xe.Deferred(function(n){xe.each(t,function(t,r){var i=xe.isFunction(e[r[4]])&&e[r[4]];a[r[1]](function(){var e=i&&i.apply(this,arguments);e&&xe.isFunction(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)})}),e=null}).promise()},then:function(e,n,r){function a(e,t,n,r){return function(){var u=this,l=arguments,c=function(){var o,c;if(!(e<s)){if((o=n.apply(u,l))===t.promise())throw new TypeError("Thenable self-resolution");c=o&&("object"===(void 0===o?"undefined":i(o))||"function"==typeof o)&&o.then,xe.isFunction(c)?r?c.call(o,a(s,t,p,r),a(s,t,h,r)):(s++,c.call(o,a(s,t,p,r),a(s,t,h,r),a(s,t,p,t.notifyWith))):(n!==p&&(u=void 0,l=[o]),(r||t.resolveWith)(u,l))}},f=r?c:function(){try{c()}catch(r){xe.Deferred.exceptionHook&&xe.Deferred.exceptionHook(r,f.stackTrace),e+1>=s&&(n!==h&&(u=void 0,l=[r]),t.rejectWith(u,l))}};e?f():(xe.Deferred.getStackHook&&(f.stackTrace=xe.Deferred.getStackHook()),o.setTimeout(f))}}var s=0;return xe.Deferred(function(i){t[0][3].add(a(0,i,xe.isFunction(r)?r:p,i.notifyWith)),t[1][3].add(a(0,i,xe.isFunction(e)?e:p)),t[2][3].add(a(0,i,xe.isFunction(n)?n:h))}).promise()},promise:function(e){return null!=e?xe.extend(e,r):r}},a={};return xe.each(t,function(e,i){var o=i[2],s=i[5];r[i[1]]=o.add,s&&o.add(function(){n=s},t[3-e][2].disable,t[0][2].lock),o.add(i[3].fire),a[i[0]]=function(){return a[i[0]+"With"](this===a?void 0:this,arguments),this},a[i[0]+"With"]=o.fireWith}),r.promise(a),e&&e.call(a,a),a},when:function(e){var t=arguments.length,n=t,r=Array(n),i=le.call(arguments),o=xe.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?le.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(g(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||xe.isFunction(i[n]&&i[n].then)))return o.then();for(;n--;)g(i[n],a(n),o.reject);return o.promise()}});var He=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;xe.Deferred.exceptionHook=function(e,t){o.console&&o.console.warn&&e&&He.test(e.name)&&o.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},xe.readyException=function(e){o.setTimeout(function(){throw e})};var Fe=xe.Deferred();xe.fn.ready=function(e){return Fe.then(e).catch(function(e){xe.readyException(e)}),this},xe.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--xe.readyWait:xe.isReady)||(xe.isReady=!0,!0!==e&&--xe.readyWait>0||Fe.resolveWith(se,[xe]))}}),xe.ready.then=Fe.then,"complete"===se.readyState||"loading"!==se.readyState&&!se.documentElement.doScroll?o.setTimeout(xe.ready):(se.addEventListener("DOMContentLoaded",v),o.addEventListener("load",v));var Pe=function e(t,n,r,i,o,a,s){var u=0,l=t.length,c=null==r;if("object"===xe.type(r)){o=!0;for(u in r)e(t,n,u,r[u],!0,a,s)}else if(void 0!==i&&(o=!0,xe.isFunction(i)||(s=!0),c&&(s?(n.call(t,i),n=null):(c=n,n=function(e,t,n){return c.call(xe(e),n)})),n))for(;u<l;u++)n(t[u],r,s?i:i.call(t[u],u,n(t[u],r)));return o?t:c?n.call(t):l?n(t[0],r):a},Me=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};m.uid=1,m.prototype={cache:function(e){var t=e[this.expando];return t||(t={},Me(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if("string"==typeof t)i[xe.camelCase(t)]=n;else for(r in t)i[xe.camelCase(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][xe.camelCase(t)]},access:function(e,t,n){return void 0===t||t&&"string"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){Array.isArray(t)?t=t.map(xe.camelCase):(t=xe.camelCase(t),t=t in r?[t]:t.match(Oe)||[]),n=t.length;for(;n--;)delete r[t[n]]}(void 0===t||xe.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!xe.isEmptyObject(t)}};var Ie=new m,Re=new m,We=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,$e=/[A-Z]/g;xe.extend({hasData:function(e){return Re.hasData(e)||Ie.hasData(e)},data:function(e,t,n){return Re.access(e,t,n)},removeData:function(e,t){Re.remove(e,t)},_data:function(e,t,n){return Ie.access(e,t,n)},_removeData:function(e,t){Ie.remove(e,t)}}),xe.fn.extend({data:function(e,t){var n,r,o,a=this[0],s=a&&a.attributes;if(void 0===e){if(this.length&&(o=Re.get(a),1===a.nodeType&&!Ie.get(a,"hasDataAttrs"))){for(n=s.length;n--;)s[n]&&(r=s[n].name,0===r.indexOf("data-")&&(r=xe.camelCase(r.slice(5)),x(a,r,o[r])));Ie.set(a,"hasDataAttrs",!0)}return o}return"object"===(void 0===e?"undefined":i(e))?this.each(function(){Re.set(this,e)}):Pe(this,function(t){var n;if(a&&void 0===t){if(void 0!==(n=Re.get(a,e)))return n;if(void 0!==(n=x(a,e)))return n}else this.each(function(){Re.set(this,e,t)})},null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){Re.remove(this,e)})}}),xe.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=Ie.get(e,t),n&&(!r||Array.isArray(n)?r=Ie.access(e,t,xe.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=xe.queue(e,t),r=n.length,i=n.shift(),o=xe._queueHooks(e,t),a=function(){xe.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return Ie.get(e,n)||Ie.access(e,n,{empty:xe.Callbacks("once memory").add(function(){Ie.remove(e,[t+"queue",n])})})}}),xe.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length<n?xe.queue(this[0],e):void 0===t?this:this.each(function(){var n=xe.queue(this,e,t);xe._queueHooks(this,e),"fx"===e&&"inprogress"!==n[0]&&xe.dequeue(this,e)})},dequeue:function(e){return this.each(function(){xe.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,t){var n,r=1,i=xe.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for("string"!=typeof e&&(t=e,e=void 0),e=e||"fx";a--;)(n=Ie.get(o[a],e+"queueHooks"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var Be=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,ze=new RegExp("^(?:([+-])=|)("+Be+")([a-z%]*)$","i"),Xe=["Top","Right","Bottom","Left"],Ue=function(e,t){return e=t||e,"none"===e.style.display||""===e.style.display&&xe.contains(e.ownerDocument,e)&&"none"===xe.css(e,"display")},Ve=function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i},Ge={};xe.fn.extend({show:function(){return T(this,!0)},hide:function(){return T(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){Ue(this)?xe(this).show():xe(this).hide()})}});var Ye=/^(?:checkbox|radio)$/i,Qe=/<([a-z][^\/\0>\x20\t\r\n\f]+)/i,Je=/^$|\/(?:java|ecma)script/i,Ke={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};Ke.optgroup=Ke.option,Ke.tbody=Ke.tfoot=Ke.colgroup=Ke.caption=Ke.thead,Ke.th=Ke.td;var Ze=/<|&#?\w+;/;!function(){var e=se.createDocumentFragment(),t=e.appendChild(se.createElement("div")),n=se.createElement("input");n.setAttribute("type","radio"),n.setAttribute("checked","checked"),n.setAttribute("name","t"),t.appendChild(n),ye.checkClone=t.cloneNode(!0).cloneNode(!0).lastChild.checked,t.innerHTML="<textarea>x</textarea>",ye.noCloneChecked=!!t.cloneNode(!0).lastChild.defaultValue}();var et=se.documentElement,tt=/^key/,nt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,rt=/^([^.]*)(?:\.(.+)|)/;xe.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=Ie.get(e);if(v)for(n.handler&&(o=n,n=o.handler,i=o.selector),i&&xe.find.matchesSelector(et,i),n.guid||(n.guid=xe.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(t){return void 0!==xe&&xe.event.triggered!==t.type?xe.event.dispatch.apply(e,arguments):void 0}),t=(t||"").match(Oe)||[""],l=t.length;l--;)s=rt.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p&&(f=xe.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=xe.event.special[p]||{},c=xe.extend({type:p,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&xe.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=u[p])||(d=u[p]=[],d.delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),xe.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,d,p,h,g,v=Ie.hasData(e)&&Ie.get(e);if(v&&(u=v.events)){for(t=(t||"").match(Oe)||[""],l=t.length;l--;)if(s=rt.exec(t[l])||[],p=g=s[1],h=(s[2]||"").split(".").sort(),p){for(f=xe.event.special[p]||{},p=(r?f.delegateType:f.bindType)||p,d=u[p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)c=d[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||xe.removeEvent(e,p,v.handle),delete u[p])}else for(p in u)xe.event.remove(e,p+t[l],n,r,!0);xe.isEmptyObject(u)&&Ie.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=xe.event.fix(e),u=new Array(arguments.length),l=(Ie.get(this,"events")||{})[s.type]||[],c=xe.event.special[s.type]||{};for(u[0]=s,t=1;t<arguments.length;t++)u[t]=arguments[t];if(s.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,s)){for(a=xe.event.handlers.call(this,s,l),t=0;(i=a[t++])&&!s.isPropagationStopped();)for(s.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(o.namespace)||(s.handleObj=o,s.data=o.data,void 0!==(r=((xe.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,u))&&!1===(s.result=r)&&(s.preventDefault(),s.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!("click"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&("click"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)r=t[n],i=r.selector+" ",void 0===a[i]&&(a[i]=r.needsContext?xe(i,this).index(l)>-1:xe.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(xe.Event.prototype,e,{enumerable:!0,configurable:!0,get:xe.isFunction(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[xe.expando]?e:new xe.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==N()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===N()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&l(this,"input"))return this.click(),!1},_default:function(e){return l(e.target,"a")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},xe.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},xe.Event=function(e,t){if(!(this instanceof xe.Event))return new xe.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?j:E,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&xe.extend(this,t),this.timeStamp=e&&e.timeStamp||xe.now(),this[xe.expando]=!0},xe.Event.prototype={constructor:xe.Event,isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=j,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=j,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=j,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},xe.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&tt.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&nt.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},xe.event.addProp),xe.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(e,t){xe.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||xe.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),xe.fn.extend({on:function(e,t,n,r){return D(this,e,t,n,r)},one:function(e,t,n,r){return D(this,e,t,n,r,1)},off:function(e,t,n){var r,o;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,xe(e.delegateTarget).off(r.namespace?r.origType+"."+r.namespace:r.origType,r.selector,r.handler),this;if("object"===(void 0===e?"undefined":i(e))){for(o in e)this.off(o,t,e[o]);return this}return!1!==t&&"function"!=typeof t||(n=t,t=void 0),!1===n&&(n=E),this.each(function(){xe.event.remove(this,e,n,t)})}});var it=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,ot=/<script|<style|<link/i,at=/checked\s*(?:[^=]|=\s*.checked.)/i,st=/^true\/(.*)/,ut=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;xe.extend({htmlPrefilter:function(e){return e.replace(it,"<$1></$2>")},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=xe.contains(e.ownerDocument,e);if(!(ye.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||xe.isXMLDoc(e)))for(a=C(s),o=C(e),r=0,i=o.length;r<i;r++)O(o[r],a[r]);if(t)if(n)for(o=o||C(e),a=a||C(s),r=0,i=o.length;r<i;r++)L(o[r],a[r]);else L(e,s);return a=C(s,"script"),a.length>0&&k(a,!u&&C(e,"script")),s},cleanData:function(e){for(var t,n,r,i=xe.event.special,o=0;void 0!==(n=e[o]);o++)if(Me(n)){if(t=n[Ie.expando]){if(t.events)for(r in t.events)i[r]?xe.event.remove(n,r):xe.removeEvent(n,r,t.handle);n[Ie.expando]=void 0}n[Re.expando]&&(n[Re.expando]=void 0)}}}),xe.fn.extend({detach:function(e){return F(this,e,!0)},remove:function(e){return F(this,e)},text:function(e){return Pe(this,function(e){return void 0===e?xe.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)})},null,e,arguments.length)},append:function(){return H(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){A(this,e).appendChild(e)}})},prepend:function(){return H(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=A(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return H(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return H(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(xe.cleanData(C(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return xe.clone(this,e,t)})},html:function(e){return Pe(this,function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!ot.test(e)&&!Ke[(Qe.exec(e)||["",""])[1].toLowerCase()]){e=xe.htmlPrefilter(e);try{for(;n<r;n++)t=this[n]||{},1===t.nodeType&&(xe.cleanData(C(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var e=[];return H(this,arguments,function(t){var n=this.parentNode;xe.inArray(this,e)<0&&(xe.cleanData(C(this)),n&&n.replaceChild(t,this))},e)}}),xe.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){xe.fn[e]=function(e){for(var n,r=[],i=xe(e),o=i.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),xe(i[a])[t](n),fe.apply(r,n.get());return this.pushStack(r)}});var lt=/^margin/,ct=new RegExp("^("+Be+")(?!px)[a-z%]+$","i"),ft=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=o),t.getComputedStyle(e)};!function(){function e(){if(s){s.style.cssText="box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",et.appendChild(a);var e=o.getComputedStyle(s);t="1%"!==e.top,i="2px"===e.marginLeft,n="4px"===e.width,s.style.marginRight="50%",r="4px"===e.marginRight,et.removeChild(a),s=null}}var t,n,r,i,a=se.createElement("div"),s=se.createElement("div");s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",ye.clearCloneStyle="content-box"===s.style.backgroundClip,a.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",a.appendChild(s),xe.extend(ye,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),r},reliableMarginLeft:function(){return e(),i}}))}();var dt=/^(none|table(?!-c[ea]).+)/,pt=/^--/,ht={position:"absolute",visibility:"hidden",display:"block"},gt={letterSpacing:"0",fontWeight:"400"},vt=["Webkit","Moz","ms"],mt=se.createElement("div").style;xe.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=P(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=xe.camelCase(t),l=pt.test(t),c=e.style;if(l||(t=R(u)),s=xe.cssHooks[t]||xe.cssHooks[u],void 0===n)return s&&"get"in s&&void 0!==(o=s.get(e,!1,r))?o:c[t];a=void 0===n?"undefined":i(n),"string"===a&&(o=ze.exec(n))&&o[1]&&(n=b(e,t,o),a="number"),null!=n&&n===n&&("number"===a&&(n+=o&&o[3]||(xe.cssNumber[u]?"":"px")),ye.clearCloneStyle||""!==n||0!==t.indexOf("background")||(c[t]="inherit"),s&&"set"in s&&void 0===(n=s.set(e,n,r))||(l?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,r){var i,o,a,s=xe.camelCase(t);return pt.test(t)||(t=R(s)),a=xe.cssHooks[t]||xe.cssHooks[s],a&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=P(e,t,r)),"normal"===i&&t in gt&&(i=gt[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),xe.each(["height","width"],function(e,t){xe.cssHooks[t]={get:function(e,n,r){if(n)return!dt.test(xe.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?B(e,t,r):Ve(e,ht,function(){return B(e,t,r)})},set:function(e,n,r){var i,o=r&&ft(e),a=r&&$(e,t,r,"border-box"===xe.css(e,"boxSizing",!1,o),o);return a&&(i=ze.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=xe.css(e,t)),W(e,n,a)}}}),xe.cssHooks.marginLeft=M(ye.reliableMarginLeft,function(e,t){if(t)return(parseFloat(P(e,"marginLeft"))||e.getBoundingClientRect().left-Ve(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+"px"}),xe.each({margin:"",padding:"",border:"Width"},function(e,t){xe.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+Xe[r]+t]=o[r]||o[r-2]||o[0];return i}},lt.test(e)||(xe.cssHooks[e+t].set=W)}),xe.fn.extend({css:function(e,t){return Pe(this,function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=ft(e),i=t.length;a<i;a++)o[t[a]]=xe.css(e,t[a],!1,r);return o}return void 0!==n?xe.style(e,t,n):xe.css(e,t)},e,t,arguments.length>1)}}),xe.Tween=z,z.prototype={constructor:z,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||xe.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(xe.cssNumber[n]?"":"px")},cur:function(){var e=z.propHooks[this.prop];return e&&e.get?e.get(this):z.propHooks._default.get(this)},run:function(e){var t,n=z.propHooks[this.prop];return this.options.duration?this.pos=t=xe.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):z.propHooks._default.set(this),this}},z.prototype.init.prototype=z.prototype,z.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=xe.css(e.elem,e.prop,""),t&&"auto"!==t?t:0)},set:function(e){xe.fx.step[e.prop]?xe.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[xe.cssProps[e.prop]]&&!xe.cssHooks[e.prop]?e.elem[e.prop]=e.now:xe.style(e.elem,e.prop,e.now+e.unit)}}},z.propHooks.scrollTop=z.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},xe.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},xe.fx=z.prototype.init,xe.fx.step={};var yt,xt,bt=/^(?:toggle|show|hide)$/,wt=/queueHooks$/;xe.Animation=xe.extend(J,{tweeners:{"*":[function(e,t){var n=this.createTween(e,t);return b(n.elem,e,ze.exec(t),n),n}]},tweener:function(e,t){xe.isFunction(e)?(t=e,e=["*"]):e=e.match(Oe);for(var n,r=0,i=e.length;r<i;r++)n=e[r],J.tweeners[n]=J.tweeners[n]||[],J.tweeners[n].unshift(t)},prefilters:[Y],prefilter:function(e,t){t?J.prefilters.unshift(e):J.prefilters.push(e)}}),xe.speed=function(e,t,n){var r=e&&"object"===(void 0===e?"undefined":i(e))?xe.extend({},e):{complete:n||!n&&t||xe.isFunction(e)&&e,duration:e,easing:n&&t||t&&!xe.isFunction(t)&&t};return xe.fx.off?r.duration=0:"number"!=typeof r.duration&&(r.duration in xe.fx.speeds?r.duration=xe.fx.speeds[r.duration]:r.duration=xe.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue="fx"),r.old=r.complete,r.complete=function(){xe.isFunction(r.old)&&r.old.call(this),r.queue&&xe.dequeue(this,r.queue)},r},xe.fn.extend({fadeTo:function(e,t,n,r){return this.filter(Ue).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=xe.isEmptyObject(e),o=xe.speed(t,n,r),a=function(){var t=J(this,xe.extend({},e),o);(i||Ie.get(this,"finish"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return"string"!=typeof e&&(n=t,t=e,e=void 0),t&&!1!==e&&this.queue(e||"fx",[]),this.each(function(){var t=!0,i=null!=e&&e+"queueHooks",o=xe.timers,a=Ie.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&wt.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||xe.dequeue(this,e)})},finish:function(e){return!1!==e&&(e=e||"fx"),this.each(function(){var t,n=Ie.get(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=xe.timers,a=r?r.length:0;for(n.finish=!0,xe.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),xe.each(["toggle","show","hide"],function(e,t){var n=xe.fn[t];xe.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(V(t,!0),e,r,i)}}),xe.each({slideDown:V("show"),slideUp:V("hide"),slideToggle:V("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){xe.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),xe.timers=[],xe.fx.tick=function(){var e,t=0,n=xe.timers;for(yt=xe.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||xe.fx.stop(),yt=void 0},xe.fx.timer=function(e){xe.timers.push(e),xe.fx.start()},xe.fx.interval=13,xe.fx.start=function(){xt||(xt=!0,X())},xe.fx.stop=function(){xt=null},xe.fx.speeds={slow:600,fast:200,_default:400},xe.fn.delay=function(e,t){return e=xe.fx?xe.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=o.setTimeout(t,e);n.stop=function(){o.clearTimeout(r)}})},function(){var e=se.createElement("input"),t=se.createElement("select"),n=t.appendChild(se.createElement("option"));e.type="checkbox",ye.checkOn=""!==e.value,ye.optSelected=n.selected,e=se.createElement("input"),e.value="t",e.type="radio",ye.radioValue="t"===e.value}();var Tt,Ct=xe.expr.attrHandle;xe.fn.extend({attr:function(e,t){return Pe(this,xe.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){xe.removeAttr(this,e)})}}),xe.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?xe.prop(e,t,n):(1===o&&xe.isXMLDoc(e)||(i=xe.attrHooks[t.toLowerCase()]||(xe.expr.match.bool.test(t)?Tt:void 0)),void 0!==n?null===n?void xe.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:(r=xe.find.attr(e,t),null==r?void 0:r))},attrHooks:{type:{set:function(e,t){if(!ye.radioValue&&"radio"===t&&l(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(Oe);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),Tt={set:function(e,t,n){return!1===t?xe.removeAttr(e,n):e.setAttribute(n,n),n}},xe.each(xe.expr.match.bool.source.match(/\w+/g),function(e,t){var n=Ct[t]||xe.find.attr;Ct[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=Ct[a],Ct[a]=i,i=null!=n(e,t,r)?a:null,Ct[a]=o),i}});var kt=/^(?:input|select|textarea|button)$/i,St=/^(?:a|area)$/i;xe.fn.extend({prop:function(e,t){return Pe(this,xe.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each(function(){delete this[xe.propFix[e]||e]})}}),xe.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&xe.isXMLDoc(e)||(t=xe.propFix[t]||t,i=xe.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=xe.find.attr(e,"tabindex");return t?parseInt(t,10):kt.test(e.nodeName)||St.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),ye.optSelected||(xe.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),xe.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){xe.propFix[this.toLowerCase()]=this}),xe.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(xe.isFunction(e))return this.each(function(t){xe(this).addClass(e.call(this,t,Z(this)))});if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=Z(n),r=1===n.nodeType&&" "+K(i)+" "){for(a=0;o=t[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");s=K(r),i!==s&&n.setAttribute("class",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(xe.isFunction(e))return this.each(function(t){xe(this).removeClass(e.call(this,t,Z(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof e&&e)for(t=e.match(Oe)||[];n=this[u++];)if(i=Z(n),r=1===n.nodeType&&" "+K(i)+" "){for(a=0;o=t[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");s=K(r),i!==s&&n.setAttribute("class",s)}return this},toggleClass:function(e,t){var n=void 0===e?"undefined":i(e);return"boolean"==typeof t&&"string"===n?t?this.addClass(e):this.removeClass(e):xe.isFunction(e)?this.each(function(n){xe(this).toggleClass(e.call(this,n,Z(this),t),t)}):this.each(function(){var t,r,i,o;if("string"===n)for(r=0,i=xe(this),o=e.match(Oe)||[];t=o[r++];)i.hasClass(t)?i.removeClass(t):i.addClass(t);else void 0!==e&&"boolean"!==n||(t=Z(this),t&&Ie.set(this,"__className__",t),this.setAttribute&&this.setAttribute("class",t||!1===e?"":Ie.get(this,"__className__")||""))})},hasClass:function(e){var t,n,r=0;for(t=" "+e+" ";n=this[r++];)if(1===n.nodeType&&(" "+K(Z(n))+" ").indexOf(t)>-1)return!0;return!1}});var jt=/\r/g;xe.fn.extend({val:function(e){var t,n,r,i=this[0];{if(arguments.length)return r=xe.isFunction(e),this.each(function(n){var i;1===this.nodeType&&(i=r?e.call(this,n,xe(this).val()):e,null==i?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=xe.map(i,function(e){return null==e?"":e+""})),(t=xe.valHooks[this.type]||xe.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))});if(i)return(t=xe.valHooks[i.type]||xe.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:(n=i.value,"string"==typeof n?n.replace(jt,""):null==n?"":n)}}}),xe.extend({valHooks:{option:{get:function(e){var t=xe.find.attr(e,"value");return null!=t?t:K(xe.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(n=i[r],(n.selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!l(n.parentNode,"optgroup"))){if(t=xe(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=xe.makeArray(t),a=i.length;a--;)r=i[a],(r.selected=xe.inArray(xe.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),xe.each(["radio","checkbox"],function(){xe.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=xe.inArray(xe(e).val(),t)>-1}},ye.checkOn||(xe.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})});var Et=/^(?:focusinfocus|focusoutblur)$/;xe.extend(xe.event,{trigger:function(e,t,n,r){var a,s,u,l,c,f,d,p=[n||se],h=ge.call(e,"type")?e.type:e,g=ge.call(e,"namespace")?e.namespace.split("."):[];if(s=u=n=n||se,3!==n.nodeType&&8!==n.nodeType&&!Et.test(h+xe.event.triggered)&&(h.indexOf(".")>-1&&(g=h.split("."),h=g.shift(),g.sort()),c=h.indexOf(":")<0&&"on"+h,e=e[xe.expando]?e:new xe.Event(h,"object"===(void 0===e?"undefined":i(e))&&e),e.isTrigger=r?2:3,e.namespace=g.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:xe.makeArray(t,[e]),d=xe.event.special[h]||{},r||!d.trigger||!1!==d.trigger.apply(n,t))){if(!r&&!d.noBubble&&!xe.isWindow(n)){for(l=d.delegateType||h,Et.test(l+h)||(s=s.parentNode);s;s=s.parentNode)p.push(s),u=s;u===(n.ownerDocument||se)&&p.push(u.defaultView||u.parentWindow||o)}for(a=0;(s=p[a++])&&!e.isPropagationStopped();)e.type=a>1?l:d.bindType||h,f=(Ie.get(s,"events")||{})[e.type]&&Ie.get(s,"handle"),f&&f.apply(s,t),(f=c&&s[c])&&f.apply&&Me(s)&&(e.result=f.apply(s,t),!1===e.result&&e.preventDefault());return e.type=h,r||e.isDefaultPrevented()||d._default&&!1!==d._default.apply(p.pop(),t)||!Me(n)||c&&xe.isFunction(n[h])&&!xe.isWindow(n)&&(u=n[c],u&&(n[c]=null),xe.event.triggered=h,n[h](),xe.event.triggered=void 0,u&&(n[c]=u)),e.result}},simulate:function(e,t,n){var r=xe.extend(new xe.Event,n,{type:e,isSimulated:!0});xe.event.trigger(r,null,t)}}),xe.fn.extend({trigger:function(e,t){return this.each(function(){xe.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return xe.event.trigger(e,t,n,!0)}}),xe.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,t){xe.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}),xe.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),ye.focusin="onfocusin"in o,ye.focusin||xe.each({focus:"focusin",blur:"focusout"},function(e,t){var n=function(e){xe.event.simulate(t,e.target,xe.event.fix(e))};xe.event.special[t]={setup:function(){var r=this.ownerDocument||this,i=Ie.access(r,t);i||r.addEventListener(e,n,!0),Ie.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=Ie.access(r,t)-1;i?Ie.access(r,t,i):(r.removeEventListener(e,n,!0),Ie.remove(r,t))}}});var Nt=o.location,Dt=xe.now(),At=/\?/;xe.parseXML=function(e){var t;if(!e||"string"!=typeof e)return null;try{t=(new o.DOMParser).parseFromString(e,"text/xml")}catch(e){t=void 0}return t&&!t.getElementsByTagName("parsererror").length||xe.error("Invalid XML: "+e),t};var _t=/\[\]$/,qt=/\r?\n/g,Lt=/^(?:submit|button|image|reset|file)$/i,Ot=/^(?:input|select|textarea|keygen)/i;xe.param=function(e,t){var n,r=[],i=function(e,t){var n=xe.isFunction(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(Array.isArray(e)||e.jquery&&!xe.isPlainObject(e))xe.each(e,function(){i(this.name,this.value)});else for(n in e)ee(n,e[n],t,i);return r.join("&")},xe.fn.extend({serialize:function(){return xe.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=xe.prop(this,"elements");return e?xe.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!xe(this).is(":disabled")&&Ot.test(this.nodeName)&&!Lt.test(e)&&(this.checked||!Ye.test(e))}).map(function(e,t){var n=xe(this).val();return null==n?null:Array.isArray(n)?xe.map(n,function(e){return{name:t.name,value:e.replace(qt,"\r\n")}}):{name:t.name,value:n.replace(qt,"\r\n")}}).get()}});var Ht=/%20/g,Ft=/#.*$/,Pt=/([?&])_=[^&]*/,Mt=/^(.*?):[ \t]*([^\r\n]*)$/gm,It=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Rt=/^(?:GET|HEAD)$/,Wt=/^\/\//,$t={},Bt={},zt="*/".concat("*"),Xt=se.createElement("a");Xt.href=Nt.href,xe.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Nt.href,type:"GET",isLocal:It.test(Nt.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":zt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":xe.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?re(re(e,xe.ajaxSettings),t):re(xe.ajaxSettings,e)},ajaxPrefilter:te($t),ajaxTransport:te(Bt),ajax:function(e,t){function n(e,t,n,i){var u,c,p,h,w,T=t;f||(f=!0,l&&o.clearTimeout(l),r=void 0,s=i||"",k.readyState=e>0?4:0,u=e>=200&&e<300||304===e,n&&(h=ie(g,k,n)),h=oe(g,h,k,u),u?(g.ifModified&&(w=k.getResponseHeader("Last-Modified"),w&&(xe.lastModified[a]=w),(w=k.getResponseHeader("etag"))&&(xe.etag[a]=w)),204===e||"HEAD"===g.type?T="nocontent":304===e?T="notmodified":(T=h.state,c=h.data,p=h.error,u=!p)):(p=T,!e&&T||(T="error",e<0&&(e=0))),k.status=e,k.statusText=(t||T)+"",u?y.resolveWith(v,[c,T,k]):y.rejectWith(v,[k,T,p]),k.statusCode(b),b=void 0,d&&m.trigger(u?"ajaxSuccess":"ajaxError",[k,g,u?c:p]),x.fireWith(v,[k,T]),d&&(m.trigger("ajaxComplete",[k,g]),--xe.active||xe.event.trigger("ajaxStop")))}"object"===(void 0===e?"undefined":i(e))&&(t=e,e=void 0),t=t||{};var r,a,s,u,l,c,f,d,p,h,g=xe.ajaxSetup({},t),v=g.context||g,m=g.context&&(v.nodeType||v.jquery)?xe(v):xe.event,y=xe.Deferred(),x=xe.Callbacks("once memory"),b=g.statusCode||{},w={},T={},C="canceled",k={readyState:0,getResponseHeader:function(e){var t;if(f){if(!u)for(u={};t=Mt.exec(s);)u[t[1].toLowerCase()]=t[2];t=u[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return f?s:null},setRequestHeader:function(e,t){return null==f&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==f&&(g.mimeType=e),this},statusCode:function(e){var t;if(e)if(f)k.always(e[k.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),n(0,t),this}};if(y.promise(k),g.url=((e||g.url||Nt.href)+"").replace(Wt,Nt.protocol+"//"),g.type=t.method||t.type||g.method||g.type,g.dataTypes=(g.dataType||"*").toLowerCase().match(Oe)||[""],null==g.crossDomain){c=se.createElement("a");try{c.href=g.url,c.href=c.href,g.crossDomain=Xt.protocol+"//"+Xt.host!=c.protocol+"//"+c.host}catch(e){g.crossDomain=!0}}if(g.data&&g.processData&&"string"!=typeof g.data&&(g.data=xe.param(g.data,g.traditional)),ne($t,g,t,k),f)return k;d=xe.event&&g.global,d&&0==xe.active++&&xe.event.trigger("ajaxStart"),g.type=g.type.toUpperCase(),g.hasContent=!Rt.test(g.type),a=g.url.replace(Ft,""),g.hasContent?g.data&&g.processData&&0===(g.contentType||"").indexOf("application/x-www-form-urlencoded")&&(g.data=g.data.replace(Ht,"+")):(h=g.url.slice(a.length),g.data&&(a+=(At.test(a)?"&":"?")+g.data,delete g.data),!1===g.cache&&(a=a.replace(Pt,"$1"),h=(At.test(a)?"&":"?")+"_="+Dt+++h),g.url=a+h),g.ifModified&&(xe.lastModified[a]&&k.setRequestHeader("If-Modified-Since",xe.lastModified[a]),xe.etag[a]&&k.setRequestHeader("If-None-Match",xe.etag[a])),(g.data&&g.hasContent&&!1!==g.contentType||t.contentType)&&k.setRequestHeader("Content-Type",g.contentType),k.setRequestHeader("Accept",g.dataTypes[0]&&g.accepts[g.dataTypes[0]]?g.accepts[g.dataTypes[0]]+("*"!==g.dataTypes[0]?", "+zt+"; q=0.01":""):g.accepts["*"]);for(p in g.headers)k.setRequestHeader(p,g.headers[p]);if(g.beforeSend&&(!1===g.beforeSend.call(v,k,g)||f))return k.abort();if(C="abort",x.add(g.complete),k.done(g.success),k.fail(g.error),r=ne(Bt,g,t,k)){if(k.readyState=1,d&&m.trigger("ajaxSend",[k,g]),f)return k;g.async&&g.timeout>0&&(l=o.setTimeout(function(){k.abort("timeout")},g.timeout));try{f=!1,r.send(w,n)}catch(e){if(f)throw e;n(-1,e)}}else n(-1,"No Transport");return k},getJSON:function(e,t,n){return xe.get(e,t,n,"json")},getScript:function(e,t){return xe.get(e,void 0,t,"script")}}),xe.each(["get","post"],function(e,t){xe[t]=function(e,n,r,i){return xe.isFunction(n)&&(i=i||r,r=n,n=void 0),xe.ajax(xe.extend({url:e,type:t,dataType:i,data:n,success:r},xe.isPlainObject(e)&&e))}}),xe._evalUrl=function(e){return xe.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,throws:!0})},xe.fn.extend({wrapAll:function(e){var t;return this[0]&&(xe.isFunction(e)&&(e=e.call(this[0])),t=xe(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e}).append(this)),this},wrapInner:function(e){return xe.isFunction(e)?this.each(function(t){xe(this).wrapInner(e.call(this,t))}):this.each(function(){var t=xe(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=xe.isFunction(e);return this.each(function(n){xe(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(e){return this.parent(e).not("body").each(function(){xe(this).replaceWith(this.childNodes)}),this}}),xe.expr.pseudos.hidden=function(e){return!xe.expr.pseudos.visible(e)},xe.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},xe.ajaxSettings.xhr=function(){try{return new o.XMLHttpRequest}catch(e){}};var Ut={0:200,1223:204},Vt=xe.ajaxSettings.xhr();ye.cors=!!Vt&&"withCredentials"in Vt,ye.ajax=Vt=!!Vt,xe.ajaxTransport(function(e){var t,n;if(ye.cors||Vt&&!e.crossDomain)return{send:function(r,i){var a,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)s[a]=e.xhrFields[a];e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest");for(a in r)s.setRequestHeader(a,r[a]);t=function(e){return function(){t&&(t=n=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?i(0,"error"):i(s.status,s.statusText):i(Ut[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),n=s.onerror=t("error"),void 0!==s.onabort?s.onabort=n:s.onreadystatechange=function(){4===s.readyState&&o.setTimeout(function(){t&&n()})},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}}),xe.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),xe.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return xe.globalEval(e),e}}}),xe.ajaxPrefilter("script",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")}),xe.ajaxTransport("script",function(e){if(e.crossDomain){var t,n;return{send:function(r,i){t=xe("<script>").prop({charset:e.scriptCharset,src:e.url}).on("load error",n=function(e){t.remove(),n=null,e&&i("error"===e.type?404:200,e.type)}),se.head.appendChild(t[0])},abort:function(){n&&n()}}}});var Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;xe.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||xe.expando+"_"+Dt++;return this[e]=!0,e}}),xe.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,a,s=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(s||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=xe.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,s?e[s]=e[s].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return a||xe.error(r+" was not called"),a[0]},e.dataTypes[0]="json",i=o[r],o[r]=function(){a=arguments},n.always(function(){void 0===i?xe(o).removeProp(r):o[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),a&&xe.isFunction(i)&&i(a[0]),a=i=void 0}),"script"}),ye.createHTMLDocument=function(){var e=se.implementation.createHTMLDocument("").body;return e.innerHTML="<form></form><form></form>",2===e.childNodes.length}(),xe.parseHTML=function(e,t,n){if("string"!=typeof e)return[];"boolean"==typeof t&&(n=t,t=!1);var r,i,o;return t||(ye.createHTMLDocument?(t=se.implementation.createHTMLDocument(""),r=t.createElement("base"),r.href=se.location.href,t.head.appendChild(r)):t=se),i=Ne.exec(e),o=!n&&[],i?[t.createElement(i[1])]:(i=S([e],t,o),o&&o.length&&xe(o).remove(),xe.merge([],i.childNodes))},xe.fn.load=function(e,t,n){var r,o,a,s=this,u=e.indexOf(" ");return u>-1&&(r=K(e.slice(u)),e=e.slice(0,u)),xe.isFunction(t)?(n=t,t=void 0):t&&"object"===(void 0===t?"undefined":i(t))&&(o="POST"),s.length>0&&xe.ajax({url:e,type:o||"GET",dataType:"html",data:t}).done(function(e){a=arguments,s.html(r?xe("<div>").append(xe.parseHTML(e)).find(r):e)}).always(n&&function(e,t){s.each(function(){n.apply(this,a||[e.responseText,t,e])})}),this},xe.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){xe.fn[t]=function(e){return this.on(t,e)}}),xe.expr.pseudos.animated=function(e){return xe.grep(xe.timers,function(t){return e===t.elem}).length},xe.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l,c=xe.css(e,"position"),f=xe(e),d={};"static"===c&&(e.style.position="relative"),s=f.offset(),o=xe.css(e,"top"),u=xe.css(e,"left"),l=("absolute"===c||"fixed"===c)&&(o+u).indexOf("auto")>-1,l?(r=f.position(),a=r.top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),xe.isFunction(t)&&(t=t.call(e,n,xe.extend({},s))),null!=t.top&&(d.top=t.top-s.top+a),null!=t.left&&(d.left=t.left-s.left+i),"using"in t?t.using.call(e,d):f.css(d)}},xe.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each(function(t){xe.offset.setOffset(this,e,t)});var t,n,r,i,o=this[0];if(o)return o.getClientRects().length?(r=o.getBoundingClientRect(),t=o.ownerDocument,n=t.documentElement,i=t.defaultView,{top:r.top+i.pageYOffset-n.clientTop,left:r.left+i.pageXOffset-n.clientLeft}):{top:0,left:0}},position:function(){if(this[0]){var e,t,n=this[0],r={top:0,left:0};return"fixed"===xe.css(n,"position")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),l(e[0],"html")||(r=e.offset()),r={top:r.top+xe.css(e[0],"borderTopWidth",!0),left:r.left+xe.css(e[0],"borderLeftWidth",!0)}),{top:t.top-r.top-xe.css(n,"marginTop",!0),left:t.left-r.left-xe.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===xe.css(e,"position");)e=e.offsetParent;return e||et})}}),xe.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,t){var n="pageYOffset"===t;xe.fn[e]=function(r){return Pe(this,function(e,r,i){var o;if(xe.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i},e,r,arguments.length)}}),xe.each(["top","left"],function(e,t){xe.cssHooks[t]=M(ye.pixelPosition,function(e,n){if(n)return n=P(e,t),ct.test(n)?xe(e).position()[t]+"px":n})}),xe.each({Height:"height",Width:"width"},function(e,t){xe.each({padding:"inner"+e,content:t,"":"outer"+e},function(n,r){xe.fn[r]=function(i,o){var a=arguments.length&&(n||"boolean"!=typeof i),s=n||(!0===i||!0===o?"margin":"border");return Pe(this,function(t,n,i){var o;return xe.isWindow(t)?0===r.indexOf("outer")?t["inner"+e]:t.document.documentElement["client"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body["scroll"+e],o["scroll"+e],t.body["offset"+e],o["offset"+e],o["client"+e])):void 0===i?xe.css(t,n,s):xe.style(t,n,i,s)},t,a?i:void 0,a)}})}),xe.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)}}),xe.holdReady=function(e){e?xe.readyWait++:xe.ready(!0)},xe.isArray=Array.isArray,xe.parseJSON=JSON.parse,xe.nodeName=l,n=[],void 0!==(r=function(){return xe}.apply(t,n))&&(e.exports=r);var Qt=o.jQuery,Jt=o.$;return xe.noConflict=function(e){return o.$===xe&&(o.$=Jt),e&&o.jQuery===xe&&(o.jQuery=Qt),xe},a||(o.jQuery=o.$=xe),xe})}).call(t,n(6)(e))},function(e,t,n){"use strict";function r(){var e=(0,a.default)("#ta-attach-images-metabox"),t=e.find("#thirsty_image_holder");e.on("click","#ta_upload_media_manager",function(n){if(n.preventDefault(),r)return void r.open();var r=wp.media({title:(0,a.default)(this).data("uploader-title"),library:{type:"image"},button:{text:(0,a.default)(this).data("uploader-button-text"),close:!0},multiple:!0});r.on("select",function(){var n=r.state().get("selection"),o=(0,a.default)("input[name=post_ID]").val(),s=[],u=(0,a.default)("#thirsty_image_holder");e.find("#thirsty_image_holder").length<=0&&e.find(".inside").append("<div id='thirsty_image_holder'></div>"),n.map(function(e){e=e.toJSON(),s.push(e.id)}),s.length>0&&a.default.ajax({url:ajaxurl,type:"POST",data:{action:"ta_add_attachments_to_affiliate_link",attachment_ids:s,affiliate_link_id:o},dataType:"json"}).done(function(n){if("success"===n.status){var r=t.data("attachments"),o=void 0;"object"==(void 0===r?"undefined":i(r))&&(o=t.data("attachments").map(function(e){return parseInt(e,10)}),o=a.default.unique(o.concat(s)),t.data("attachments",o)),e.find("#thirsty_image_holder").append(n.added_attachments_markup)}else alert(n.error_msg),console.log(n)}).fail(function(e){alert(e),console.log("Failed to add attachments to affiliate link")}).always(function(){u.find(".thirsty-attached-image").length>0&&u.show(),tb_remove()})}),r.open()}),e.on("click",".thirsty-remove-img",function(){var e=(0,a.default)(this);if(e.hasClass("removing"))return!1;e.addClass("removing");var n=parseInt(e.attr("id")),r=(0,a.default)("input[name=post_ID]").val(),o=e.closest(".thirsty-attached-image"),s=(0,a.default)("#thirsty_image_holder");a.default.ajax({url:ajaxurl,type:"POST",data:{action:"ta_remove_attachment_to_affiliate_link",attachment_id:n,affiliate_link_id:r},dataType:"json"}).done(function(e){if("success"===e.status){var r=t.data("attachments"),a=void 0;"object"==(void 0===r?"undefined":i(r))&&(a=t.data("attachments").map(function(e){return parseInt(e,10)}),a=new Set(a),a.delete(n),t.data("attachments",Array.from(a))),o.fadeOut(300).delay(300).remove(),s.find(".thirsty-attached-image").length<=0&&s.hide()}else alert(e.error_msg),console.log(e)}).fail(function(e){alert("Failed to remove attachment from affiliate link"),console.log(e)})});var n=function(){var e=(0,a.default)(".media-modal-content ul.attachments li.attachment"),n=t.data("attachments"),r=void 0;"object"==(void 0===n?"undefined":i(n))&&(r=n.map(function(e){return parseInt(e,10)}),e.each(function(){var e=(0,a.default)(this),t=(0,a.default)(this).data("id");e.show(),a.default.inArray(t,r)>-1&&e.hide()}))};e.on("click","#ta_upload_media_manager",n),(0,a.default)("body").on("click",".media-modal-content .media-menu-item",n),(0,a.default)(document).on("DOMNodeInserted",function(e){var n=(0,a.default)(e.target),r=t.data("attachments"),o=void 0;n.hasClass("attachment")&&"object"==(void 0===r?"undefined":i(r))&&(o=n.data("id"),r=r.map(function(e){return parseInt(e,10)}),a.default.inArray(o,r)>-1&&n.remove())})}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=r;var o=n(0),a=function(e){return e&&e.__esModule?e:{default:e}}(o)},function(e,t,n){"use strict";function r(){var e=(0,o.default)("#ta-urls-metabox");(0,o.default)("#slugdiv").remove(),e.on("click","button.edit-ta-slug",function(){e.find(".cloaked-fields").hide(),e.find(".slug-fields").fadeIn(200)}),e.on("click","button.save-ta-slug",function(){var t=e.find("input#ta_slug").val(),n=e.find("input#ta_cloaked_url").val(),r=n.replace(/[^\/]+\/?$/g,"");/^([a-z0-9-_% ]+)$/.test(t)?(t=""==t?n.match(/[^\/]+$/):t,e.find("input#ta_cloaked_url").val(r+t+"/"),e.find(".slug-fields").hide(),e.find(".cloaked-fields").fadeIn(200)):(0,o.default)("input#publish").click()})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t,n){"use strict";function r(){function e(e,t){o.default.post(ajaxurl,{action:"ta_get_category_slug",term_id:e},function(n){"success"==n.status?r.append("<option value='"+e+"' data-slug='"+n.category_slug+"'>"+t+"</option>").trigger("change"):(alert(n.error_msg),console.log(n))},"json")}function t(){var e=n.find("input[type='checkbox']:checked"),t=[],i=[],a=void 0,s=void 0,u=void 0,l=void 0;if(!(e.length<1)){for(l=0;l<e.length;l++)u=(0,o.default)(e[l]).parent().text().trim(),t.push(u),i[u]=l;t=t.sort(function(e,t){return e=e.toLowerCase(),t=t.toLowerCase(),e>t?1:e<t?-1:0}),s=i[t[0]],a=(0,o.default)(e[s]),o.default.post(ajaxurl,{action:"ta_get_category_slug",term_id:a.val()},function(e){"success"==e.status?(r.find("option:first-child").data("slug",e.category_slug).attr("data-slug",e.category_slug),r.trigger("change")):(alert(e.error_msg),console.log(e))},"json")}}var n=(0,o.default)("#thirstylink-categorychecklist"),r=(0,o.default)("select[name='ta_category_slug']");n.on("change","input[type='checkbox']",function(){var n=(0,o.default)(this).val(),i=(0,o.default)(this).parent().text(),a=(0,o.default)(this).prop("checked");t(),a?e(n,i):(r.find("option[value='"+n+"']").remove(),r.trigger("change"))}),(0,o.default)(document).on("DOMNodeInserted","#thirstylink-categorychecklist",function(){var n=(0,o.default)("#thirstylink-categorychecklist li").first(),i=n.find("input[type='checkbox']").val(),a=n.find("label").text(),s=n.find("input[type='checkbox']").prop("checked");t(),s?e(i,a):r.find("option[value='"+i+"']").remove()}),(0,o.default)(document).on("change","select[name='ta_category_slug']",function(){var e=(0,o.default)(this),t=e.find("option:selected").data("slug"),n=e.data("home-link-prefix"),r=(0,o.default)("#ta_slug").val(),i=(0,o.default)("#ta_cloaked_url");(0,o.default)(this).find("option").length<=1?i.val(n+r+"/"):i.val(n+t+"/"+r+"/")})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t,n){"use strict";function r(){var e=(0,o.default)("#ta-inserted-link-scanner-metabox");e.on("click","#inserted-link-scan-trigger",function(){var t=(0,o.default)(this),n=e.find(".inside"),r=n.find(".inserted-into-table table tbody"),i=n.find(".overlay"),a=n.find(".scanned-inserted-status .last-scanned"),s=(0,o.default)("input#post_ID").val();t.prop("disabled",!0),i.css("height",n.height()).show(),o.default.post(ajaxurl,{action:"ta_link_inserted_scanner",link_id:s},function(e){"success"==e.status?(r.html(e.results_markup),a.html(e.last_scanned)):(alert(e.error_msg),console.log(e)),t.prop("disabled",!1),i.hide()},"json")})}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=n(0),o=function(e){return e&&e.__esModule?e:{default:e}}(i)},function(e,t){},function(e,t,n){"use strict";e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}var i=n(0),o=r(i),a=n(1),s=r(a),u=n(2),l=r(u),c=n(3),f=r(c),d=n(4),p=r(d);n(5),(0,o.default)(document).ready(function(){(0,s.default)(),(0,l.default)(),(0,f.default)(),(0,p.default)()})}]);
|
js/app/ta-reports.js
CHANGED
@@ -12,6 +12,13 @@ jQuery( document ).ready( function($){
|
|
12 |
*/
|
13 |
series : [],
|
14 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
/**
|
16 |
* First chart series variable (General all links)
|
17 |
*
|
@@ -19,6 +26,7 @@ jQuery( document ).ready( function($){
|
|
19 |
*/
|
20 |
firstSeries : {
|
21 |
label : report_details.label,
|
|
|
22 |
data : report_data.click_counts,
|
23 |
yaxis : 1,
|
24 |
color : '#3498db',
|
@@ -72,7 +80,48 @@ jQuery( document ).ready( function($){
|
|
72 |
},
|
73 |
|
74 |
/**
|
75 |
-
* Initialize
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
*
|
77 |
* @since 3.0.0
|
78 |
*/
|
@@ -103,6 +152,7 @@ jQuery( document ).ready( function($){
|
|
103 |
mode : "time",
|
104 |
timeformat : report_details.timeformat,
|
105 |
monthNames : [ "Jan" , "Feb" , "Mar" , "Apr" , "May" , "Jun" , "Jul" , "Aug" , "Sep" , "Oct" , "Nov" , "Dec" ],
|
|
|
106 |
tickLength : 1,
|
107 |
minTickSize : report_details.minTickSize,
|
108 |
font : { color: '#000' }
|
@@ -113,6 +163,7 @@ jQuery( document ).ready( function($){
|
|
113 |
minTickSize : 1,
|
114 |
tickDecimals : 0,
|
115 |
color : '#d4d9dc',
|
|
|
116 |
font : { color: '#000' }
|
117 |
}
|
118 |
}
|
@@ -256,7 +307,8 @@ jQuery( document ).ready( function($){
|
|
256 |
link_id : $input.data( 'linkid' ),
|
257 |
range : $input.data( 'range' ),
|
258 |
start_date : $input.data( 'start-date' ),
|
259 |
-
end_date : $input.data( 'end-date' )
|
|
|
260 |
}, function( response ) {
|
261 |
|
262 |
if ( response.status == 'success' ) {
|
@@ -316,7 +368,7 @@ jQuery( document ).ready( function($){
|
|
316 |
thirstyReports.rangeDatepicker();
|
317 |
|
318 |
// init jQuery flot graph
|
319 |
-
thirstyReports.
|
320 |
|
321 |
// init plot tooltip events
|
322 |
thirstyReports.plotTooltip();
|
12 |
*/
|
13 |
series : [],
|
14 |
|
15 |
+
/**
|
16 |
+
* Local browser's timezone.
|
17 |
+
*
|
18 |
+
* @since 3.2.2
|
19 |
+
*/
|
20 |
+
timezone : Intl.DateTimeFormat().resolvedOptions().timeZone,
|
21 |
+
|
22 |
/**
|
23 |
* First chart series variable (General all links)
|
24 |
*
|
26 |
*/
|
27 |
firstSeries : {
|
28 |
label : report_details.label,
|
29 |
+
slug : report_details.slug,
|
30 |
data : report_data.click_counts,
|
31 |
yaxis : 1,
|
32 |
color : '#3498db',
|
80 |
},
|
81 |
|
82 |
/**
|
83 |
+
* Initialize report graph.
|
84 |
+
*
|
85 |
+
* @since 3.2.2
|
86 |
+
*/
|
87 |
+
initReport : function() {
|
88 |
+
|
89 |
+
var $input = $chart_sidebar.find( '#add-report-data' );
|
90 |
+
|
91 |
+
// show overlay
|
92 |
+
$report_block.find( '.overlay' ).css( 'height' , $report_block.height() ).show();
|
93 |
+
|
94 |
+
$.post( window.ajaxurl, {
|
95 |
+
action : 'ta_init_first_report',
|
96 |
+
timezone : thirstyReports.timezone,
|
97 |
+
range : $input.data( 'range' ),
|
98 |
+
start_date : $input.data( 'start-date' ),
|
99 |
+
end_date : $input.data( 'end-date' )
|
100 |
+
}, function( response ) {
|
101 |
+
|
102 |
+
if ( response.status == 'success' ) {
|
103 |
+
|
104 |
+
// redraw the graph
|
105 |
+
thirstyReports.firstSeries.data = response.flot_data;
|
106 |
+
thirstyReports.series = [];
|
107 |
+
thirstyReports.series.push( thirstyReports.firstSeries );
|
108 |
+
thirstyReports.drawGraph();
|
109 |
+
|
110 |
+
// update total click count
|
111 |
+
$chart_sidebar.find( 'ul.chart-legend li:first-child em.count' ).text( response.total_clicks );
|
112 |
+
|
113 |
+
} else {
|
114 |
+
// TODO: Handle error here
|
115 |
+
}
|
116 |
+
|
117 |
+
// hide overlay.
|
118 |
+
$report_block.find( '.overlay' ).hide();
|
119 |
+
|
120 |
+
} , 'json' );
|
121 |
+
},
|
122 |
+
|
123 |
+
/**
|
124 |
+
* Display the report graph.
|
125 |
*
|
126 |
* @since 3.0.0
|
127 |
*/
|
152 |
mode : "time",
|
153 |
timeformat : report_details.timeformat,
|
154 |
monthNames : [ "Jan" , "Feb" , "Mar" , "Apr" , "May" , "Jun" , "Jul" , "Aug" , "Sep" , "Oct" , "Nov" , "Dec" ],
|
155 |
+
timezone : "browser",
|
156 |
tickLength : 1,
|
157 |
minTickSize : report_details.minTickSize,
|
158 |
font : { color: '#000' }
|
163 |
minTickSize : 1,
|
164 |
tickDecimals : 0,
|
165 |
color : '#d4d9dc',
|
166 |
+
timezone : "browser",
|
167 |
font : { color: '#000' }
|
168 |
}
|
169 |
}
|
307 |
link_id : $input.data( 'linkid' ),
|
308 |
range : $input.data( 'range' ),
|
309 |
start_date : $input.data( 'start-date' ),
|
310 |
+
end_date : $input.data( 'end-date' ),
|
311 |
+
timezone : thirstyReports.timezone
|
312 |
}, function( response ) {
|
313 |
|
314 |
if ( response.status == 'success' ) {
|
368 |
thirstyReports.rangeDatepicker();
|
369 |
|
370 |
// init jQuery flot graph
|
371 |
+
thirstyReports.initReport();
|
372 |
|
373 |
// init plot tooltip events
|
374 |
thirstyReports.plotTooltip();
|
languages/thirstyaffiliates.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: ThirstyAffiliates\n"
|
5 |
-
"POT-Creation-Date:
|
6 |
"PO-Revision-Date: 2016-04-29 07:38+0800\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Rymera Web Co <support@thirstyaffiliates.com>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 2.0.
|
13 |
"X-Poedit-Basepath: ..\n"
|
14 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
"Language: en\n"
|
@@ -21,36 +21,38 @@ msgstr ""
|
|
21 |
"X-Poedit-SearchPathExcluded-2: js/lib\n"
|
22 |
"X-Poedit-SearchPathExcluded-3: *node_modules*\n"
|
23 |
|
24 |
-
#: Helpers/Plugin_Constants.php:
|
25 |
msgid "301 Permanent"
|
26 |
msgstr ""
|
27 |
|
28 |
-
#: Helpers/Plugin_Constants.php:
|
29 |
msgid "302 Temporary"
|
30 |
msgstr ""
|
31 |
|
32 |
-
#: Helpers/Plugin_Constants.php:
|
33 |
msgid "307 Temporary (alternative)"
|
34 |
msgstr ""
|
35 |
|
36 |
-
#: Models/Affiliate_Link.php:
|
37 |
msgid "Unable to save affiliate link as there are no changes registered on the object yet."
|
38 |
msgstr ""
|
39 |
|
40 |
#: Models/Affiliate_Link_Attachment.php:130
|
41 |
-
#: Models/Affiliate_Link_Attachment.php:200 Models/Affiliate_Links_CPT.php:
|
42 |
-
#: Models/
|
43 |
-
#: Models/Link_Fixer.php:
|
44 |
-
#: Models/Link_Picker.php:
|
45 |
-
#: Models/
|
46 |
-
#: Models/Settings.php:
|
|
|
47 |
msgid "Invalid AJAX call"
|
48 |
msgstr ""
|
49 |
|
50 |
#: Models/Affiliate_Link_Attachment.php:132
|
51 |
-
#: Models/Affiliate_Link_Attachment.php:202 Models/Affiliate_Links_CPT.php:
|
52 |
-
#: Models/
|
53 |
-
#: Models/Link_Picker.php:
|
|
|
54 |
msgid "Missing required post data"
|
55 |
msgstr ""
|
56 |
|
@@ -70,172 +72,193 @@ msgstr ""
|
|
70 |
msgid "Invalid attachment id to remove from an affiliate link"
|
71 |
msgstr ""
|
72 |
|
73 |
-
#: Models/Affiliate_Links_CPT.php:
|
74 |
-
#: Models/Affiliate_Links_CPT.php:
|
75 |
msgid "Affiliate Links"
|
76 |
msgstr ""
|
77 |
|
78 |
-
#: Models/Affiliate_Links_CPT.php:
|
79 |
msgid "Affiliate Link"
|
80 |
msgstr ""
|
81 |
|
82 |
-
#: Models/Affiliate_Links_CPT.php:
|
83 |
msgid "ThirstyAffiliates"
|
84 |
msgstr ""
|
85 |
|
86 |
-
#: Models/Affiliate_Links_CPT.php:
|
87 |
msgid "Parent Affiliate Link"
|
88 |
msgstr ""
|
89 |
|
90 |
-
#: Models/Affiliate_Links_CPT.php:
|
91 |
msgid "View Affiliate Link"
|
92 |
msgstr ""
|
93 |
|
94 |
-
#: Models/Affiliate_Links_CPT.php:
|
95 |
msgid "Add Affiliate Link"
|
96 |
msgstr ""
|
97 |
|
98 |
-
#: Models/Affiliate_Links_CPT.php:
|
99 |
msgid "New Affiliate Link"
|
100 |
msgstr ""
|
101 |
|
102 |
-
#: Models/Affiliate_Links_CPT.php:
|
103 |
msgid "Edit Affiliate Link"
|
104 |
msgstr ""
|
105 |
|
106 |
-
#: Models/Affiliate_Links_CPT.php:
|
107 |
msgid "Update Affiliate Link"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: Models/Affiliate_Links_CPT.php:
|
111 |
msgid "Search Affiliate Links"
|
112 |
msgstr ""
|
113 |
|
114 |
-
#: Models/Affiliate_Links_CPT.php:
|
115 |
msgid "No Affiliate Link found"
|
116 |
msgstr ""
|
117 |
|
118 |
-
#: Models/Affiliate_Links_CPT.php:
|
119 |
msgid "No Affiliate Links found in Trash"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: Models/Affiliate_Links_CPT.php:
|
123 |
msgid "ThirstyAffiliates affiliate links"
|
124 |
msgstr ""
|
125 |
|
126 |
-
#: Models/Affiliate_Links_CPT.php:
|
|
|
127 |
msgid "Link Categories"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: Models/Affiliate_Links_CPT.php:
|
131 |
msgid "Link Category"
|
132 |
msgstr ""
|
133 |
|
134 |
-
#: Models/Affiliate_Links_CPT.php:
|
135 |
msgid "All Categories"
|
136 |
msgstr ""
|
137 |
|
138 |
-
#: Models/Affiliate_Links_CPT.php:
|
139 |
msgid "Parent Category"
|
140 |
msgstr ""
|
141 |
|
142 |
-
#: Models/Affiliate_Links_CPT.php:
|
143 |
msgid "Parent Category:"
|
144 |
msgstr ""
|
145 |
|
146 |
-
#: Models/Affiliate_Links_CPT.php:
|
147 |
msgid "New Category Name"
|
148 |
msgstr ""
|
149 |
|
150 |
-
#: Models/Affiliate_Links_CPT.php:
|
151 |
msgid "Add New Category"
|
152 |
msgstr ""
|
153 |
|
154 |
-
#: Models/Affiliate_Links_CPT.php:
|
155 |
msgid "Edit Category"
|
156 |
msgstr ""
|
157 |
|
158 |
-
#: Models/Affiliate_Links_CPT.php:
|
159 |
msgid "Update Category"
|
160 |
msgstr ""
|
161 |
|
162 |
-
#: Models/Affiliate_Links_CPT.php:
|
163 |
msgid "View Category"
|
164 |
msgstr ""
|
165 |
|
166 |
-
#: Models/Affiliate_Links_CPT.php:
|
167 |
msgid "Separate items with commas"
|
168 |
msgstr ""
|
169 |
|
170 |
-
#: Models/Affiliate_Links_CPT.php:
|
171 |
msgid "Add or remove items"
|
172 |
msgstr ""
|
173 |
|
174 |
-
#: Models/Affiliate_Links_CPT.php:
|
175 |
msgid "Choose from the most used"
|
176 |
msgstr ""
|
177 |
|
178 |
-
#: Models/Affiliate_Links_CPT.php:
|
179 |
msgid "Popular Categories"
|
180 |
msgstr ""
|
181 |
|
182 |
-
#: Models/Affiliate_Links_CPT.php:
|
183 |
msgid "Search Categories"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: Models/Affiliate_Links_CPT.php:
|
187 |
msgid "Not Found"
|
188 |
msgstr ""
|
189 |
|
190 |
-
#: Models/Affiliate_Links_CPT.php:
|
191 |
msgid "No items"
|
192 |
msgstr ""
|
193 |
|
194 |
-
#: Models/Affiliate_Links_CPT.php:
|
195 |
msgid "Category list"
|
196 |
msgstr ""
|
197 |
|
198 |
-
#: Models/Affiliate_Links_CPT.php:
|
199 |
msgid "Category list navigation"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: Models/Affiliate_Links_CPT.php:
|
203 |
msgid "Link ID:"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: Models/Affiliate_Links_CPT.php:
|
207 |
msgid "URLs"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: Models/Affiliate_Links_CPT.php:
|
211 |
msgid "Attach Images"
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: Models/Affiliate_Links_CPT.php:
|
|
|
|
|
|
|
|
|
215 |
msgid "Save Affiliate Link"
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: Models/Affiliate_Links_CPT.php:
|
219 |
msgid "Link Options"
|
220 |
msgstr ""
|
221 |
|
222 |
-
#: Models/Affiliate_Links_CPT.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
msgid "Link ID"
|
224 |
msgstr ""
|
225 |
|
226 |
-
#: Models/Affiliate_Links_CPT.php:
|
227 |
msgid "Redirect Type"
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: Models/Affiliate_Links_CPT.php:
|
231 |
msgid "Cloaked URL"
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: Models/Affiliate_Links_CPT.php:
|
235 |
msgid "Link Destination"
|
236 |
msgstr ""
|
237 |
|
238 |
-
#: Models/
|
|
|
|
|
|
|
|
|
239 |
msgid "Settings"
|
240 |
msgstr ""
|
241 |
|
@@ -322,31 +345,31 @@ msgstr ""
|
|
322 |
msgid "Security Check Failed"
|
323 |
msgstr ""
|
324 |
|
325 |
-
#: Models/Link_Picker.php:
|
326 |
msgid "Select image:"
|
327 |
msgstr ""
|
328 |
|
329 |
-
#: Models/Link_Picker.php:
|
330 |
msgid "No images found"
|
331 |
msgstr ""
|
332 |
|
333 |
-
#: Models/Link_Picker.php:
|
334 |
msgid "Insert link"
|
335 |
msgstr ""
|
336 |
|
337 |
-
#: Models/Link_Picker.php:
|
338 |
msgid "Insert shortcode"
|
339 |
msgstr ""
|
340 |
|
341 |
-
#: Models/Link_Picker.php:
|
342 |
msgid "Insert image"
|
343 |
msgstr ""
|
344 |
|
345 |
-
#: Models/Link_Picker.php:
|
346 |
msgid "No affiliate links found"
|
347 |
msgstr ""
|
348 |
|
349 |
-
#: Models/Marketing.php:177 Models/Settings.php:
|
350 |
msgid "Required parameter not passed"
|
351 |
msgstr ""
|
352 |
|
@@ -409,426 +432,527 @@ msgstr ""
|
|
409 |
msgid "Data Migration Complete!"
|
410 |
msgstr ""
|
411 |
|
412 |
-
#: Models/Migration.php:
|
413 |
msgid "<b>ThirstyAffiliates is currently migrating your old affiliate link data to the new data model.<br>Please hold off making changes to your affiliate links. Please refresh the page and if this message has disappeared, the migration is complete.</b>"
|
414 |
msgstr ""
|
415 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
416 |
#: Models/Script_Loader.php:148
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
417 |
msgid "Please provide a value for \"Custom Link Prefix\" option"
|
418 |
msgstr ""
|
419 |
|
420 |
-
#: Models/Script_Loader.php:
|
421 |
msgid "Please input settings string"
|
422 |
msgstr ""
|
423 |
|
424 |
-
#: Models/Script_Loader.php:
|
425 |
msgid "Settings string copied"
|
426 |
msgstr ""
|
427 |
|
428 |
-
#: Models/Script_Loader.php:
|
429 |
msgid "Failed to copy settings string"
|
430 |
msgstr ""
|
431 |
|
432 |
-
#: Models/Script_Loader.php:
|
433 |
msgid "Failed to do data migration"
|
434 |
msgstr ""
|
435 |
|
436 |
-
#: Models/Script_Loader.php:
|
437 |
msgid "Are you sure you want to migrate your ThirstyAffiliates data to version 3 format?"
|
438 |
msgstr ""
|
439 |
|
440 |
-
#: Models/Script_Loader.php:
|
441 |
-
msgid "
|
442 |
msgstr ""
|
443 |
|
444 |
-
#: Models/Script_Loader.php:
|
445 |
-
msgid "
|
446 |
msgstr ""
|
447 |
|
448 |
-
#: Models/Script_Loader.php:
|
449 |
-
msgid "
|
450 |
msgstr ""
|
451 |
|
452 |
-
#: Models/Script_Loader.php:
|
453 |
-
msgid "
|
454 |
msgstr ""
|
455 |
|
456 |
-
#: Models/
|
457 |
-
|
|
|
|
|
|
|
|
|
|
|
458 |
msgstr ""
|
459 |
|
460 |
-
#: Models/
|
461 |
-
|
|
|
|
|
|
|
|
|
|
|
462 |
msgstr ""
|
463 |
|
464 |
-
#: Models/
|
465 |
-
msgid "
|
466 |
msgstr ""
|
467 |
|
468 |
-
#: Models/Settings.php:
|
|
|
469 |
msgid "General"
|
470 |
msgstr ""
|
471 |
|
472 |
-
#: Models/Settings.php:
|
473 |
msgid "Settings that change the general behaviour of ThirstyAffiliates."
|
474 |
msgstr ""
|
475 |
|
476 |
-
#: Models/Settings.php:
|
477 |
msgid "Link Appearance"
|
478 |
msgstr ""
|
479 |
|
480 |
-
#: Models/Settings.php:
|
481 |
msgid "Settings that specifically affect the behaviour & appearance of your affiliate links."
|
482 |
msgstr ""
|
483 |
|
484 |
-
#: Models/Settings.php:
|
485 |
msgid "Modules"
|
486 |
msgstr ""
|
487 |
|
488 |
-
#: Models/Settings.php:
|
489 |
msgid "This section allows you to turn certain parts of ThirstyAffiliates on or off. Below are the individual modules and features of the plugin that can be controlled."
|
490 |
msgstr ""
|
491 |
|
492 |
-
#: Models/Settings.php:
|
493 |
msgid "Import/Export"
|
494 |
msgstr ""
|
495 |
|
496 |
-
#: Models/Settings.php:
|
497 |
msgid "Import and Export global ThirstyAffiliates plugin settings from one site to another."
|
498 |
msgstr ""
|
499 |
|
500 |
-
#: Models/Settings.php:
|
501 |
msgid "Help"
|
502 |
msgstr ""
|
503 |
|
504 |
-
#: Models/Settings.php:
|
505 |
msgid "Links to knowledge base and other utilities."
|
506 |
msgstr ""
|
507 |
|
508 |
-
#: Models/Settings.php:
|
509 |
msgid "Default Link Insertion Type"
|
510 |
msgstr ""
|
511 |
|
512 |
-
#: Models/Settings.php:
|
513 |
msgid "Determines the default link type when inserting a link using the quick search."
|
514 |
msgstr ""
|
515 |
|
516 |
-
#: Models/Settings.php:
|
517 |
msgid "Link"
|
518 |
msgstr ""
|
519 |
|
520 |
-
#: Models/Settings.php:
|
521 |
msgid "Shortcode"
|
522 |
msgstr ""
|
523 |
|
524 |
-
#: Models/Settings.php:
|
525 |
msgid "Disable \"uncategorized\" category on save?"
|
526 |
msgstr ""
|
527 |
|
528 |
-
#: Models/Settings.php:
|
529 |
msgid "If links are including categories in the URL then by default ThirstyAffiliates will add an \"uncategorized\" category to apply to non-categorised links during save. If you disable this, it allows you to have some links with categories in the URL and some without."
|
530 |
msgstr ""
|
531 |
|
532 |
-
#: Models/Settings.php:
|
533 |
msgid "Disable buttons on the Visual editor?"
|
534 |
msgstr ""
|
535 |
|
536 |
-
#: Models/Settings.php:
|
537 |
msgid "Hide the ThirstyAffiliates buttons on the Visual editor."
|
538 |
msgstr ""
|
539 |
|
540 |
-
#: Models/Settings.php:
|
541 |
msgid "Disable buttons on the Text/Quicktags editor?"
|
542 |
msgstr ""
|
543 |
|
544 |
-
#: Models/Settings.php:
|
545 |
msgid "Hide the ThirstyAffiliates buttons on the Text editor."
|
546 |
msgstr ""
|
547 |
|
548 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
549 |
msgid "Link Prefix"
|
550 |
msgstr ""
|
551 |
|
552 |
-
#: Models/Settings.php:
|
553 |
#, php-format
|
554 |
msgid "The prefix that comes before your cloaked link's slug. <br>eg. %s/<strong>recommends</strong>/your-affiliate-link-name.<br><br><b>Warning :</b> Changing this setting after you've used links in a post could break those links. Be careful!"
|
555 |
msgstr ""
|
556 |
|
557 |
-
#: Models/Settings.php:
|
558 |
msgid "Custom Link Prefix"
|
559 |
msgstr ""
|
560 |
|
561 |
-
#: Models/Settings.php:
|
562 |
msgid "Enter your preferred link prefix."
|
563 |
msgstr ""
|
564 |
|
565 |
-
#: Models/Settings.php:
|
566 |
msgid "Link Category in URL?"
|
567 |
msgstr ""
|
568 |
|
569 |
-
#: Models/Settings.php:
|
570 |
#, php-format
|
571 |
msgid "Shows the primary selected category in the url. eg. %s/recommends/<strong>link-category</strong>/your-affiliate-link-name.<br><br><b>Warning :</b> Changing this setting after you've used links in a post could break those links. Be careful!"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: Models/Settings.php:
|
575 |
msgid "Link Redirect Type"
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: Models/Settings.php:
|
579 |
msgid "This is the type of redirect ThirstyAffiliates will use to redirect the user to your affiliate link."
|
580 |
msgstr ""
|
581 |
|
582 |
-
#: Models/Settings.php:
|
583 |
msgid "Use no follow on links?"
|
584 |
msgstr ""
|
585 |
|
586 |
-
#: Models/Settings.php:
|
587 |
msgid "Add the nofollow attribute to links so search engines don't index them."
|
588 |
msgstr ""
|
589 |
|
590 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
591 |
msgid "Open links in new window?"
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: Models/Settings.php:
|
595 |
msgid "Make links open in a new browser tab by default."
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
599 |
msgid "Pass query strings to destination url?"
|
600 |
msgstr ""
|
601 |
|
602 |
-
#: Models/Settings.php:
|
603 |
msgid "Enabling this option will pass all of the query strings present after the cloaked url to the destination url automatically when redirecting."
|
604 |
msgstr ""
|
605 |
|
606 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
607 |
msgid "Additional rel attribute tags"
|
608 |
msgstr ""
|
609 |
|
610 |
-
#: Models/Settings.php:
|
611 |
msgid "Allows you to add extra tags into the rel= attribute when links are inserted."
|
612 |
msgstr ""
|
613 |
|
614 |
-
#: Models/Settings.php:
|
615 |
msgid "Disable ThirstyAffiliates CSS classes?"
|
616 |
msgstr ""
|
617 |
|
618 |
-
#: Models/Settings.php:
|
619 |
msgid "To help with styling a CSS class called \"thirstylink\" is added links on insertion.<br>Likewise the \"thirstylinkimg\" class is added to images when using the image insertion type. This option disables the addition these CSS classes."
|
620 |
msgstr ""
|
621 |
|
622 |
-
#: Models/Settings.php:
|
623 |
msgid "Disable title attribute on link insertion?"
|
624 |
msgstr ""
|
625 |
|
626 |
-
#: Models/Settings.php:
|
627 |
msgid "Links are automatically output with a title html attribute (by default this shows the title of the affiliate link).<br>This option disables the output of the title attribute on your links."
|
628 |
msgstr ""
|
629 |
|
630 |
-
#: Models/Settings.php:
|
631 |
msgid "Select Category to Uncloak"
|
632 |
msgstr ""
|
633 |
|
634 |
-
#: Models/Settings.php:
|
635 |
msgid "The links assigned to the selected category will be uncloaked."
|
636 |
msgstr ""
|
637 |
|
638 |
-
#: Models/Settings.php:
|
639 |
-
msgid "Select category..."
|
640 |
-
msgstr ""
|
641 |
-
|
642 |
-
#: Models/Settings.php:399
|
643 |
msgid "Statistics"
|
644 |
msgstr ""
|
645 |
|
646 |
-
#: Models/Settings.php:
|
647 |
msgid "When enabled, ThirstyAffiliates will collect click statistics information about visitors that click on your affiliate links. Also adds a new Reports section."
|
648 |
msgstr ""
|
649 |
|
650 |
-
#: Models/Settings.php:
|
651 |
msgid "Link Fixer"
|
652 |
msgstr ""
|
653 |
|
654 |
-
#: Models/Settings.php:
|
655 |
msgid "Link Fixer is a tiny piece of javascript code that runs on the frontend of your site to fix any outdated/broken affiliate links it detects. It's cache-friendly and runs after page load so it doesn't affect the rendering of content. Changed the settings on your site recently? Enabling Link Fixer means you don't need to update all your previously inserted affiliate links one by one – your visitors will never see an out of date affiliate link again."
|
656 |
msgstr ""
|
657 |
|
658 |
-
#: Models/Settings.php:
|
659 |
msgid "Uncloak Links"
|
660 |
msgstr ""
|
661 |
|
662 |
-
#: Models/Settings.php:
|
663 |
msgid "Uncloak Links is a feature to allow uncloaking of specific links on your site. It replaces the cloaked url with the actual destination url which is important for compatibility with some affiliate program with stricter terms (such as Amazon Associates). Once enabled, you will see a new Uncloak Link checkbox on the affiliate link edit screen. It also introduces a new setting under the Links tab for uncloaking whole categories.<br><br><b>Warning : </b>For this feature to work, the <strong>Link Fixer</strong> module needs to be turned on."
|
664 |
msgstr ""
|
665 |
|
666 |
-
#: Models/Settings.php:
|
667 |
msgid "Import Global Settings"
|
668 |
msgstr ""
|
669 |
|
670 |
-
#: Models/Settings.php:
|
671 |
msgid "Paste settings string here..."
|
672 |
msgstr ""
|
673 |
|
674 |
-
#: Models/Settings.php:
|
675 |
msgid "Export Global Settings"
|
676 |
msgstr ""
|
677 |
|
678 |
-
#: Models/Settings.php:
|
679 |
msgid "Knowledge Base"
|
680 |
msgstr ""
|
681 |
|
682 |
-
#: Models/Settings.php:
|
683 |
msgid "Documentation"
|
684 |
msgstr ""
|
685 |
|
686 |
-
#: Models/Settings.php:
|
687 |
msgid "Guides, troubleshooting, FAQ and more."
|
688 |
msgstr ""
|
689 |
|
690 |
-
#: Models/Settings.php:
|
691 |
msgid "Our Blog"
|
692 |
msgstr ""
|
693 |
|
694 |
-
#: Models/Settings.php:
|
695 |
msgid "ThirstyAffiliates Blog"
|
696 |
msgstr ""
|
697 |
|
698 |
-
#: Models/Settings.php:
|
699 |
msgid "Learn & grow your affiliate marketing – covering increasing sales, generating traffic, optimising your affiliate marketing, interviews & case studies."
|
700 |
msgstr ""
|
701 |
|
702 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
703 |
msgid "Other Utilities"
|
704 |
msgstr ""
|
705 |
|
706 |
-
#: Models/Settings.php:
|
707 |
msgid "Migrate Old Data"
|
708 |
msgstr ""
|
709 |
|
710 |
-
#: Models/Settings.php:
|
711 |
msgid "Migrate old ThirstyAffiliates version 2 data to new version 3 data model."
|
712 |
msgstr ""
|
713 |
|
714 |
-
#: Models/Settings.php:
|
715 |
msgid "ThirstyAffiliates Settings"
|
716 |
msgstr ""
|
717 |
|
718 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
719 |
msgid "Save Changes"
|
720 |
msgstr ""
|
721 |
|
722 |
-
#: Models/Settings.php:
|
723 |
msgid "Key"
|
724 |
msgstr ""
|
725 |
|
726 |
-
#: Models/Settings.php:
|
727 |
msgid "Value"
|
728 |
msgstr ""
|
729 |
|
730 |
-
#: Models/Settings.php:
|
731 |
msgid "Another application is currently processing the database. Please wait for this to complete."
|
732 |
msgstr ""
|
733 |
|
734 |
-
#: Models/Settings.php:
|
735 |
msgid "Migrate"
|
736 |
msgstr ""
|
737 |
|
738 |
-
#: Models/Settings.php:
|
739 |
msgid "Migrating data. Please wait..."
|
740 |
msgstr ""
|
741 |
|
742 |
-
#: Models/Settings.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
743 |
msgid "Copy"
|
744 |
msgstr ""
|
745 |
|
746 |
-
#: Models/Settings.php:
|
747 |
msgid "Import Settings"
|
748 |
msgstr ""
|
749 |
|
750 |
-
#: Models/Settings.php:
|
751 |
msgid "Unauthorized operation. Only authorized accounts can access global plugin settings string"
|
752 |
msgstr ""
|
753 |
|
754 |
-
#: Models/Settings.php:
|
755 |
msgid "Settings successfully imported"
|
756 |
msgstr ""
|
757 |
|
758 |
-
#: Models/Settings.php:
|
759 |
msgid "Unauthorized operation. Only authorized accounts can import settings"
|
760 |
msgstr ""
|
761 |
|
762 |
-
#: Models/Settings.php:
|
763 |
msgid "Invalid global settings string"
|
764 |
msgstr ""
|
765 |
|
766 |
-
#: Models/Shortcodes.php:
|
767 |
msgid "SHORTCODE ERROR: ThirstyAffiliates did not detect a valid link id, please check your short code!"
|
768 |
msgstr ""
|
769 |
|
770 |
-
#: Models/Stats_Reporting.php:
|
771 |
msgid "Selected affiliate link is invalid"
|
772 |
msgstr ""
|
773 |
|
774 |
-
#: Models/Stats_Reporting.php:
|
775 |
-
msgid "Link
|
776 |
msgstr ""
|
777 |
|
778 |
-
#: Models/Stats_Reporting.php:
|
779 |
-
msgid "Link
|
780 |
msgstr ""
|
781 |
|
782 |
-
#: Models/Stats_Reporting.php:
|
783 |
msgid "Total clicks on affiliate links over a given period."
|
784 |
msgstr ""
|
785 |
|
786 |
-
#: Models/Stats_Reporting.php:
|
787 |
msgid "ThirstyAffiliates Reports"
|
788 |
msgstr ""
|
789 |
|
790 |
-
#: Models/Stats_Reporting.php:
|
791 |
msgid "Reports"
|
792 |
msgstr ""
|
793 |
|
794 |
-
#: Models/Stats_Reporting.php:
|
795 |
msgid "Year"
|
796 |
msgstr ""
|
797 |
|
798 |
-
#: Models/Stats_Reporting.php:
|
799 |
msgid "Last Month"
|
800 |
msgstr ""
|
801 |
|
802 |
-
#: Models/Stats_Reporting.php:
|
803 |
msgid "This Month"
|
804 |
msgstr ""
|
805 |
|
806 |
-
#: Models/Stats_Reporting.php:
|
807 |
msgid "Last 7 Days"
|
808 |
msgstr ""
|
809 |
|
810 |
-
#: thirstyaffiliates.php:
|
811 |
msgid "Activate this plugin"
|
812 |
msgstr ""
|
813 |
|
814 |
-
#: thirstyaffiliates.php:
|
815 |
msgid "Click here to activate →"
|
816 |
msgstr ""
|
817 |
|
818 |
-
#: thirstyaffiliates.php:
|
819 |
msgid "Install this plugin"
|
820 |
msgstr ""
|
821 |
|
822 |
-
#: thirstyaffiliates.php:
|
823 |
msgid "Click here to install from WordPress.org repo →"
|
824 |
msgstr ""
|
825 |
|
826 |
-
#: thirstyaffiliates.php:
|
827 |
#, php-format
|
828 |
msgid "<br/>Please ensure you have the <a href=\"%1$s\" target=\"_blank\">%2$s</a> plugin installed and activated.<br/>"
|
829 |
msgstr ""
|
830 |
|
831 |
-
#: thirstyaffiliates.php:
|
832 |
msgid "<b>ThirstyAffiliates</b> plugin missing dependency.<br/>"
|
833 |
msgstr ""
|
834 |
|
@@ -849,6 +973,22 @@ msgstr ""
|
|
849 |
msgid "Upload/Insert"
|
850 |
msgstr ""
|
851 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
852 |
#: views/cpt/view-link-options-metabox.php:7
|
853 |
#: views/linkpicker/quick-add-affiliate-link.php:50
|
854 |
msgid "No follow this link?"
|
@@ -868,24 +1008,6 @@ msgstr ""
|
|
868 |
msgid "Global (%s)"
|
869 |
msgstr ""
|
870 |
|
871 |
-
#: views/cpt/view-link-options-metabox.php:12
|
872 |
-
#: views/cpt/view-link-options-metabox.php:24
|
873 |
-
#: views/cpt/view-link-options-metabox.php:36
|
874 |
-
#: views/cpt/view-link-options-metabox.php:49
|
875 |
-
#: views/linkpicker/quick-add-affiliate-link.php:54
|
876 |
-
#: views/linkpicker/quick-add-affiliate-link.php:65
|
877 |
-
msgid "Yes"
|
878 |
-
msgstr ""
|
879 |
-
|
880 |
-
#: views/cpt/view-link-options-metabox.php:13
|
881 |
-
#: views/cpt/view-link-options-metabox.php:25
|
882 |
-
#: views/cpt/view-link-options-metabox.php:37
|
883 |
-
#: views/cpt/view-link-options-metabox.php:50
|
884 |
-
#: views/linkpicker/quick-add-affiliate-link.php:55
|
885 |
-
#: views/linkpicker/quick-add-affiliate-link.php:66
|
886 |
-
msgid "No"
|
887 |
-
msgstr ""
|
888 |
-
|
889 |
#: views/cpt/view-link-options-metabox.php:19
|
890 |
#: views/linkpicker/quick-add-affiliate-link.php:61
|
891 |
msgid "Open this link in new window?"
|
@@ -928,10 +1050,6 @@ msgstr ""
|
|
928 |
msgid "Additional rel tags:"
|
929 |
msgstr ""
|
930 |
|
931 |
-
#: views/cpt/view-save-affiliate-link-metabox.php:3
|
932 |
-
msgid "publish"
|
933 |
-
msgstr ""
|
934 |
-
|
935 |
#: views/cpt/view-save-affiliate-link-metabox.php:4
|
936 |
#: views/cpt/view-urls-metabox.php:24
|
937 |
msgid "Save"
|
@@ -1006,11 +1124,15 @@ msgstr ""
|
|
1006 |
msgid "Redirect Type:"
|
1007 |
msgstr ""
|
1008 |
|
1009 |
-
#: views/linkpicker/quick-add-affiliate-link.php:
|
|
|
|
|
|
|
|
|
1010 |
msgid "Add Link"
|
1011 |
msgstr ""
|
1012 |
|
1013 |
-
#: views/linkpicker/quick-add-affiliate-link.php:
|
1014 |
msgid "Add Link & Insert Into Post"
|
1015 |
msgstr ""
|
1016 |
|
@@ -1022,23 +1144,23 @@ msgstr ""
|
|
1022 |
msgid "Go"
|
1023 |
msgstr ""
|
1024 |
|
1025 |
-
#: views/reports/link-performance-report.php:
|
1026 |
-
#: views/reports/link-performance-report.php:
|
1027 |
msgid "All links"
|
1028 |
msgstr ""
|
1029 |
|
1030 |
-
#: views/reports/link-performance-report.php:
|
1031 |
msgid "Fetch report for specific link:"
|
1032 |
msgstr ""
|
1033 |
|
1034 |
-
#: views/reports/link-performance-report.php:
|
1035 |
msgid "Search affiliate link"
|
1036 |
msgstr ""
|
1037 |
|
1038 |
-
#: views/reports/link-performance-report.php:
|
1039 |
msgid "Fetch Report"
|
1040 |
msgstr ""
|
1041 |
|
1042 |
-
#: views/reports/link-performance-report.php:
|
1043 |
msgid "Clicks: "
|
1044 |
msgstr ""
|
2 |
msgid ""
|
3 |
msgstr ""
|
4 |
"Project-Id-Version: ThirstyAffiliates\n"
|
5 |
+
"POT-Creation-Date: 2018-02-07 07:39+0800\n"
|
6 |
"PO-Revision-Date: 2016-04-29 07:38+0800\n"
|
7 |
"Last-Translator: \n"
|
8 |
"Language-Team: Rymera Web Co <support@thirstyaffiliates.com>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 2.0.5\n"
|
13 |
"X-Poedit-Basepath: ..\n"
|
14 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
"Language: en\n"
|
21 |
"X-Poedit-SearchPathExcluded-2: js/lib\n"
|
22 |
"X-Poedit-SearchPathExcluded-3: *node_modules*\n"
|
23 |
|
24 |
+
#: Helpers/Plugin_Constants.php:88
|
25 |
msgid "301 Permanent"
|
26 |
msgstr ""
|
27 |
|
28 |
+
#: Helpers/Plugin_Constants.php:89
|
29 |
msgid "302 Temporary"
|
30 |
msgstr ""
|
31 |
|
32 |
+
#: Helpers/Plugin_Constants.php:90
|
33 |
msgid "307 Temporary (alternative)"
|
34 |
msgstr ""
|
35 |
|
36 |
+
#: Models/Affiliate_Link.php:573
|
37 |
msgid "Unable to save affiliate link as there are no changes registered on the object yet."
|
38 |
msgstr ""
|
39 |
|
40 |
#: Models/Affiliate_Link_Attachment.php:130
|
41 |
+
#: Models/Affiliate_Link_Attachment.php:200 Models/Affiliate_Links_CPT.php:857
|
42 |
+
#: Models/Affiliate_Links_CPT.php:882 Models/Guided_Tour.php:313
|
43 |
+
#: Models/Link_Fixer.php:176 Models/Link_Fixer.php:178
|
44 |
+
#: Models/Link_Picker.php:279 Models/Link_Picker.php:337
|
45 |
+
#: Models/Link_Picker.php:457 Models/Marketing.php:175 Models/Marketing.php:300
|
46 |
+
#: Models/Settings.php:1736 Models/Settings.php:1784
|
47 |
+
#: Models/Stats_Reporting.php:335 Models/Stats_Reporting.php:380
|
48 |
msgid "Invalid AJAX call"
|
49 |
msgstr ""
|
50 |
|
51 |
#: Models/Affiliate_Link_Attachment.php:132
|
52 |
+
#: Models/Affiliate_Link_Attachment.php:202 Models/Affiliate_Links_CPT.php:859
|
53 |
+
#: Models/Affiliate_Links_CPT.php:884 Models/Link_Picker.php:281
|
54 |
+
#: Models/Link_Picker.php:339 Models/Link_Picker.php:459
|
55 |
+
#: Models/Stats_Reporting.php:337 Models/Stats_Reporting.php:382
|
56 |
msgid "Missing required post data"
|
57 |
msgstr ""
|
58 |
|
72 |
msgid "Invalid attachment id to remove from an affiliate link"
|
73 |
msgstr ""
|
74 |
|
75 |
+
#: Models/Affiliate_Links_CPT.php:159 Models/Affiliate_Links_CPT.php:163
|
76 |
+
#: Models/Affiliate_Links_CPT.php:175
|
77 |
msgid "Affiliate Links"
|
78 |
msgstr ""
|
79 |
|
80 |
+
#: Models/Affiliate_Links_CPT.php:160
|
81 |
msgid "Affiliate Link"
|
82 |
msgstr ""
|
83 |
|
84 |
+
#: Models/Affiliate_Links_CPT.php:161
|
85 |
msgid "ThirstyAffiliates"
|
86 |
msgstr ""
|
87 |
|
88 |
+
#: Models/Affiliate_Links_CPT.php:162
|
89 |
msgid "Parent Affiliate Link"
|
90 |
msgstr ""
|
91 |
|
92 |
+
#: Models/Affiliate_Links_CPT.php:164
|
93 |
msgid "View Affiliate Link"
|
94 |
msgstr ""
|
95 |
|
96 |
+
#: Models/Affiliate_Links_CPT.php:165
|
97 |
msgid "Add Affiliate Link"
|
98 |
msgstr ""
|
99 |
|
100 |
+
#: Models/Affiliate_Links_CPT.php:166
|
101 |
msgid "New Affiliate Link"
|
102 |
msgstr ""
|
103 |
|
104 |
+
#: Models/Affiliate_Links_CPT.php:167
|
105 |
msgid "Edit Affiliate Link"
|
106 |
msgstr ""
|
107 |
|
108 |
+
#: Models/Affiliate_Links_CPT.php:168
|
109 |
msgid "Update Affiliate Link"
|
110 |
msgstr ""
|
111 |
|
112 |
+
#: Models/Affiliate_Links_CPT.php:169
|
113 |
msgid "Search Affiliate Links"
|
114 |
msgstr ""
|
115 |
|
116 |
+
#: Models/Affiliate_Links_CPT.php:170
|
117 |
msgid "No Affiliate Link found"
|
118 |
msgstr ""
|
119 |
|
120 |
+
#: Models/Affiliate_Links_CPT.php:171
|
121 |
msgid "No Affiliate Links found in Trash"
|
122 |
msgstr ""
|
123 |
|
124 |
+
#: Models/Affiliate_Links_CPT.php:176
|
125 |
msgid "ThirstyAffiliates affiliate links"
|
126 |
msgstr ""
|
127 |
|
128 |
+
#: Models/Affiliate_Links_CPT.php:223 Models/Affiliate_Links_CPT.php:225
|
129 |
+
#: views/linkpicker/quick-add-affiliate-link.php:72
|
130 |
msgid "Link Categories"
|
131 |
msgstr ""
|
132 |
|
133 |
+
#: Models/Affiliate_Links_CPT.php:224
|
134 |
msgid "Link Category"
|
135 |
msgstr ""
|
136 |
|
137 |
+
#: Models/Affiliate_Links_CPT.php:226
|
138 |
msgid "All Categories"
|
139 |
msgstr ""
|
140 |
|
141 |
+
#: Models/Affiliate_Links_CPT.php:227
|
142 |
msgid "Parent Category"
|
143 |
msgstr ""
|
144 |
|
145 |
+
#: Models/Affiliate_Links_CPT.php:228
|
146 |
msgid "Parent Category:"
|
147 |
msgstr ""
|
148 |
|
149 |
+
#: Models/Affiliate_Links_CPT.php:229
|
150 |
msgid "New Category Name"
|
151 |
msgstr ""
|
152 |
|
153 |
+
#: Models/Affiliate_Links_CPT.php:230
|
154 |
msgid "Add New Category"
|
155 |
msgstr ""
|
156 |
|
157 |
+
#: Models/Affiliate_Links_CPT.php:231
|
158 |
msgid "Edit Category"
|
159 |
msgstr ""
|
160 |
|
161 |
+
#: Models/Affiliate_Links_CPT.php:232
|
162 |
msgid "Update Category"
|
163 |
msgstr ""
|
164 |
|
165 |
+
#: Models/Affiliate_Links_CPT.php:233
|
166 |
msgid "View Category"
|
167 |
msgstr ""
|
168 |
|
169 |
+
#: Models/Affiliate_Links_CPT.php:234
|
170 |
msgid "Separate items with commas"
|
171 |
msgstr ""
|
172 |
|
173 |
+
#: Models/Affiliate_Links_CPT.php:235
|
174 |
msgid "Add or remove items"
|
175 |
msgstr ""
|
176 |
|
177 |
+
#: Models/Affiliate_Links_CPT.php:236
|
178 |
msgid "Choose from the most used"
|
179 |
msgstr ""
|
180 |
|
181 |
+
#: Models/Affiliate_Links_CPT.php:237
|
182 |
msgid "Popular Categories"
|
183 |
msgstr ""
|
184 |
|
185 |
+
#: Models/Affiliate_Links_CPT.php:238
|
186 |
msgid "Search Categories"
|
187 |
msgstr ""
|
188 |
|
189 |
+
#: Models/Affiliate_Links_CPT.php:239
|
190 |
msgid "Not Found"
|
191 |
msgstr ""
|
192 |
|
193 |
+
#: Models/Affiliate_Links_CPT.php:240
|
194 |
msgid "No items"
|
195 |
msgstr ""
|
196 |
|
197 |
+
#: Models/Affiliate_Links_CPT.php:241
|
198 |
msgid "Category list"
|
199 |
msgstr ""
|
200 |
|
201 |
+
#: Models/Affiliate_Links_CPT.php:242
|
202 |
msgid "Category list navigation"
|
203 |
msgstr ""
|
204 |
|
205 |
+
#: Models/Affiliate_Links_CPT.php:282
|
206 |
msgid "Link ID:"
|
207 |
msgstr ""
|
208 |
|
209 |
+
#: Models/Affiliate_Links_CPT.php:298
|
210 |
msgid "URLs"
|
211 |
msgstr ""
|
212 |
|
213 |
+
#: Models/Affiliate_Links_CPT.php:305
|
214 |
msgid "Attach Images"
|
215 |
msgstr ""
|
216 |
|
217 |
+
#: Models/Affiliate_Links_CPT.php:312
|
218 |
+
msgid "Link Inserted Scanner"
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: Models/Affiliate_Links_CPT.php:322
|
222 |
msgid "Save Affiliate Link"
|
223 |
msgstr ""
|
224 |
|
225 |
+
#: Models/Affiliate_Links_CPT.php:329
|
226 |
msgid "Link Options"
|
227 |
msgstr ""
|
228 |
|
229 |
+
#: Models/Affiliate_Links_CPT.php:460
|
230 |
+
msgid "Not yet scanned"
|
231 |
+
msgstr ""
|
232 |
+
|
233 |
+
#: Models/Affiliate_Links_CPT.php:465 Models/Affiliate_Links_CPT.php:896
|
234 |
+
msgid "Last scanned on:"
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: Models/Affiliate_Links_CPT.php:485
|
238 |
+
msgid "No results found."
|
239 |
+
msgstr ""
|
240 |
+
|
241 |
+
#: Models/Affiliate_Links_CPT.php:616
|
242 |
msgid "Link ID"
|
243 |
msgstr ""
|
244 |
|
245 |
+
#: Models/Affiliate_Links_CPT.php:617
|
246 |
msgid "Redirect Type"
|
247 |
msgstr ""
|
248 |
|
249 |
+
#: Models/Affiliate_Links_CPT.php:618
|
250 |
msgid "Cloaked URL"
|
251 |
msgstr ""
|
252 |
|
253 |
+
#: Models/Affiliate_Links_CPT.php:619
|
254 |
msgid "Link Destination"
|
255 |
msgstr ""
|
256 |
|
257 |
+
#: Models/Affiliate_Links_CPT.php:751
|
258 |
+
msgid "Show Link Categories"
|
259 |
+
msgstr ""
|
260 |
+
|
261 |
+
#: Models/Bootstrap.php:389 Models/Settings.php:674
|
262 |
msgid "Settings"
|
263 |
msgstr ""
|
264 |
|
345 |
msgid "Security Check Failed"
|
346 |
msgstr ""
|
347 |
|
348 |
+
#: Models/Link_Picker.php:217
|
349 |
msgid "Select image:"
|
350 |
msgstr ""
|
351 |
|
352 |
+
#: Models/Link_Picker.php:226
|
353 |
msgid "No images found"
|
354 |
msgstr ""
|
355 |
|
356 |
+
#: Models/Link_Picker.php:242
|
357 |
msgid "Insert link"
|
358 |
msgstr ""
|
359 |
|
360 |
+
#: Models/Link_Picker.php:243
|
361 |
msgid "Insert shortcode"
|
362 |
msgstr ""
|
363 |
|
364 |
+
#: Models/Link_Picker.php:244
|
365 |
msgid "Insert image"
|
366 |
msgstr ""
|
367 |
|
368 |
+
#: Models/Link_Picker.php:265
|
369 |
msgid "No affiliate links found"
|
370 |
msgstr ""
|
371 |
|
372 |
+
#: Models/Marketing.php:177 Models/Settings.php:1786
|
373 |
msgid "Required parameter not passed"
|
374 |
msgstr ""
|
375 |
|
432 |
msgid "Data Migration Complete!"
|
433 |
msgstr ""
|
434 |
|
435 |
+
#: Models/Migration.php:781
|
436 |
msgid "<b>ThirstyAffiliates is currently migrating your old affiliate link data to the new data model.<br>Please hold off making changes to your affiliate links. Please refresh the page and if this message has disappeared, the migration is complete.</b>"
|
437 |
msgstr ""
|
438 |
|
439 |
+
#: Models/Script_Loader.php:145
|
440 |
+
msgid "affiliate link"
|
441 |
+
msgstr ""
|
442 |
+
|
443 |
+
#: Models/Script_Loader.php:146
|
444 |
+
msgid "quick add affiliate link"
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: Models/Script_Loader.php:147
|
448 |
+
msgid "Open the ThirstyAffiliates link picker"
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
#: Models/Script_Loader.php:148
|
452 |
+
msgid "Open quick add affiliate link dialog"
|
453 |
+
msgstr ""
|
454 |
+
|
455 |
+
#: Models/Script_Loader.php:149
|
456 |
+
msgid "Type to search affiliate link"
|
457 |
+
msgstr ""
|
458 |
+
|
459 |
+
#: Models/Script_Loader.php:169
|
460 |
msgid "Please provide a value for \"Custom Link Prefix\" option"
|
461 |
msgstr ""
|
462 |
|
463 |
+
#: Models/Script_Loader.php:180
|
464 |
msgid "Please input settings string"
|
465 |
msgstr ""
|
466 |
|
467 |
+
#: Models/Script_Loader.php:181
|
468 |
msgid "Settings string copied"
|
469 |
msgstr ""
|
470 |
|
471 |
+
#: Models/Script_Loader.php:182
|
472 |
msgid "Failed to copy settings string"
|
473 |
msgstr ""
|
474 |
|
475 |
+
#: Models/Script_Loader.php:193
|
476 |
msgid "Failed to do data migration"
|
477 |
msgstr ""
|
478 |
|
479 |
+
#: Models/Script_Loader.php:194
|
480 |
msgid "Are you sure you want to migrate your ThirstyAffiliates data to version 3 format?"
|
481 |
msgstr ""
|
482 |
|
483 |
+
#: Models/Script_Loader.php:249
|
484 |
+
msgid "Previous"
|
485 |
msgstr ""
|
486 |
|
487 |
+
#: Models/Script_Loader.php:250
|
488 |
+
msgid "Next"
|
489 |
msgstr ""
|
490 |
|
491 |
+
#: Models/Script_Loader.php:251
|
492 |
+
msgid "Close"
|
493 |
msgstr ""
|
494 |
|
495 |
+
#: Models/Script_Loader.php:252
|
496 |
+
msgid "Start Tour"
|
497 |
msgstr ""
|
498 |
|
499 |
+
#: Models/Settings.php:227 views/cpt/view-link-options-metabox.php:12
|
500 |
+
#: views/cpt/view-link-options-metabox.php:24
|
501 |
+
#: views/cpt/view-link-options-metabox.php:36
|
502 |
+
#: views/cpt/view-link-options-metabox.php:49
|
503 |
+
#: views/linkpicker/quick-add-affiliate-link.php:54
|
504 |
+
#: views/linkpicker/quick-add-affiliate-link.php:65
|
505 |
+
msgid "Yes"
|
506 |
msgstr ""
|
507 |
|
508 |
+
#: Models/Settings.php:228 views/cpt/view-link-options-metabox.php:13
|
509 |
+
#: views/cpt/view-link-options-metabox.php:25
|
510 |
+
#: views/cpt/view-link-options-metabox.php:37
|
511 |
+
#: views/cpt/view-link-options-metabox.php:50
|
512 |
+
#: views/linkpicker/quick-add-affiliate-link.php:55
|
513 |
+
#: views/linkpicker/quick-add-affiliate-link.php:66
|
514 |
+
msgid "No"
|
515 |
msgstr ""
|
516 |
|
517 |
+
#: Models/Settings.php:229
|
518 |
+
msgid "Per category"
|
519 |
msgstr ""
|
520 |
|
521 |
+
#: Models/Settings.php:235 views/reports/link-performance-report.php:39
|
522 |
+
#: views/reports/link-performance-report.php:80
|
523 |
msgid "General"
|
524 |
msgstr ""
|
525 |
|
526 |
+
#: Models/Settings.php:236
|
527 |
msgid "Settings that change the general behaviour of ThirstyAffiliates."
|
528 |
msgstr ""
|
529 |
|
530 |
+
#: Models/Settings.php:239
|
531 |
msgid "Link Appearance"
|
532 |
msgstr ""
|
533 |
|
534 |
+
#: Models/Settings.php:240
|
535 |
msgid "Settings that specifically affect the behaviour & appearance of your affiliate links."
|
536 |
msgstr ""
|
537 |
|
538 |
+
#: Models/Settings.php:243
|
539 |
msgid "Modules"
|
540 |
msgstr ""
|
541 |
|
542 |
+
#: Models/Settings.php:244
|
543 |
msgid "This section allows you to turn certain parts of ThirstyAffiliates on or off. Below are the individual modules and features of the plugin that can be controlled."
|
544 |
msgstr ""
|
545 |
|
546 |
+
#: Models/Settings.php:247
|
547 |
msgid "Import/Export"
|
548 |
msgstr ""
|
549 |
|
550 |
+
#: Models/Settings.php:248
|
551 |
msgid "Import and Export global ThirstyAffiliates plugin settings from one site to another."
|
552 |
msgstr ""
|
553 |
|
554 |
+
#: Models/Settings.php:251
|
555 |
msgid "Help"
|
556 |
msgstr ""
|
557 |
|
558 |
+
#: Models/Settings.php:252
|
559 |
msgid "Links to knowledge base and other utilities."
|
560 |
msgstr ""
|
561 |
|
562 |
+
#: Models/Settings.php:261
|
563 |
msgid "Default Link Insertion Type"
|
564 |
msgstr ""
|
565 |
|
566 |
+
#: Models/Settings.php:262
|
567 |
msgid "Determines the default link type when inserting a link using the quick search."
|
568 |
msgstr ""
|
569 |
|
570 |
+
#: Models/Settings.php:266
|
571 |
msgid "Link"
|
572 |
msgstr ""
|
573 |
|
574 |
+
#: Models/Settings.php:267
|
575 |
msgid "Shortcode"
|
576 |
msgstr ""
|
577 |
|
578 |
+
#: Models/Settings.php:273
|
579 |
msgid "Disable \"uncategorized\" category on save?"
|
580 |
msgstr ""
|
581 |
|
582 |
+
#: Models/Settings.php:274
|
583 |
msgid "If links are including categories in the URL then by default ThirstyAffiliates will add an \"uncategorized\" category to apply to non-categorised links during save. If you disable this, it allows you to have some links with categories in the URL and some without."
|
584 |
msgstr ""
|
585 |
|
586 |
+
#: Models/Settings.php:280
|
587 |
msgid "Disable buttons on the Visual editor?"
|
588 |
msgstr ""
|
589 |
|
590 |
+
#: Models/Settings.php:281
|
591 |
msgid "Hide the ThirstyAffiliates buttons on the Visual editor."
|
592 |
msgstr ""
|
593 |
|
594 |
+
#: Models/Settings.php:287
|
595 |
msgid "Disable buttons on the Text/Quicktags editor?"
|
596 |
msgstr ""
|
597 |
|
598 |
+
#: Models/Settings.php:288
|
599 |
msgid "Hide the ThirstyAffiliates buttons on the Text editor."
|
600 |
msgstr ""
|
601 |
|
602 |
+
#: Models/Settings.php:294
|
603 |
+
msgid "Trim stats older than:"
|
604 |
+
msgstr ""
|
605 |
+
|
606 |
+
#: Models/Settings.php:295
|
607 |
+
msgid "months (Automatically clean the statistics database records older than a set point. Setting this to 0 will disable it)."
|
608 |
+
msgstr ""
|
609 |
+
|
610 |
+
#: Models/Settings.php:304
|
611 |
+
msgid "Don't cache 301 redirects?"
|
612 |
+
msgstr ""
|
613 |
+
|
614 |
+
#: Models/Settings.php:305
|
615 |
+
msgid "By default, browsers caches the 301 redirects. Enabling this option will tell the browser not to cache 301 redirects. Be aware that it is still up to the browser if it will cache it or not."
|
616 |
+
msgstr ""
|
617 |
+
|
618 |
+
#: Models/Settings.php:314
|
619 |
msgid "Link Prefix"
|
620 |
msgstr ""
|
621 |
|
622 |
+
#: Models/Settings.php:315
|
623 |
#, php-format
|
624 |
msgid "The prefix that comes before your cloaked link's slug. <br>eg. %s/<strong>recommends</strong>/your-affiliate-link-name.<br><br><b>Warning :</b> Changing this setting after you've used links in a post could break those links. Be careful!"
|
625 |
msgstr ""
|
626 |
|
627 |
+
#: Models/Settings.php:343
|
628 |
msgid "Custom Link Prefix"
|
629 |
msgstr ""
|
630 |
|
631 |
+
#: Models/Settings.php:344
|
632 |
msgid "Enter your preferred link prefix."
|
633 |
msgstr ""
|
634 |
|
635 |
+
#: Models/Settings.php:350
|
636 |
msgid "Link Category in URL?"
|
637 |
msgstr ""
|
638 |
|
639 |
+
#: Models/Settings.php:351
|
640 |
#, php-format
|
641 |
msgid "Shows the primary selected category in the url. eg. %s/recommends/<strong>link-category</strong>/your-affiliate-link-name.<br><br><b>Warning :</b> Changing this setting after you've used links in a post could break those links. Be careful!"
|
642 |
msgstr ""
|
643 |
|
644 |
+
#: Models/Settings.php:357
|
645 |
msgid "Link Redirect Type"
|
646 |
msgstr ""
|
647 |
|
648 |
+
#: Models/Settings.php:358
|
649 |
msgid "This is the type of redirect ThirstyAffiliates will use to redirect the user to your affiliate link."
|
650 |
msgstr ""
|
651 |
|
652 |
+
#: Models/Settings.php:366
|
653 |
msgid "Use no follow on links?"
|
654 |
msgstr ""
|
655 |
|
656 |
+
#: Models/Settings.php:367
|
657 |
msgid "Add the nofollow attribute to links so search engines don't index them."
|
658 |
msgstr ""
|
659 |
|
660 |
+
#: Models/Settings.php:376
|
661 |
+
msgid "No follow categories"
|
662 |
+
msgstr ""
|
663 |
+
|
664 |
+
#: Models/Settings.php:377
|
665 |
+
msgid "The links assigned to the selected category will be set as \"no follow\"."
|
666 |
+
msgstr ""
|
667 |
+
|
668 |
+
#: Models/Settings.php:381 Models/Settings.php:403 Models/Settings.php:425
|
669 |
+
#: Models/Settings.php:459
|
670 |
+
msgid "Select category..."
|
671 |
+
msgstr ""
|
672 |
+
|
673 |
+
#: Models/Settings.php:388
|
674 |
msgid "Open links in new window?"
|
675 |
msgstr ""
|
676 |
|
677 |
+
#: Models/Settings.php:389
|
678 |
msgid "Make links open in a new browser tab by default."
|
679 |
msgstr ""
|
680 |
|
681 |
+
#: Models/Settings.php:398
|
682 |
+
msgid "New window categories"
|
683 |
+
msgstr ""
|
684 |
+
|
685 |
+
#: Models/Settings.php:399
|
686 |
+
msgid "The links assigned to the selected category will be set as \"new window\"."
|
687 |
+
msgstr ""
|
688 |
+
|
689 |
+
#: Models/Settings.php:410
|
690 |
msgid "Pass query strings to destination url?"
|
691 |
msgstr ""
|
692 |
|
693 |
+
#: Models/Settings.php:411
|
694 |
msgid "Enabling this option will pass all of the query strings present after the cloaked url to the destination url automatically when redirecting."
|
695 |
msgstr ""
|
696 |
|
697 |
+
#: Models/Settings.php:420
|
698 |
+
msgid "Pass query strings categories"
|
699 |
+
msgstr ""
|
700 |
+
|
701 |
+
#: Models/Settings.php:421
|
702 |
+
msgid "The links assigned to the selected category will be set as \"pass query strings\"."
|
703 |
+
msgstr ""
|
704 |
+
|
705 |
+
#: Models/Settings.php:432
|
706 |
msgid "Additional rel attribute tags"
|
707 |
msgstr ""
|
708 |
|
709 |
+
#: Models/Settings.php:433
|
710 |
msgid "Allows you to add extra tags into the rel= attribute when links are inserted."
|
711 |
msgstr ""
|
712 |
|
713 |
+
#: Models/Settings.php:439
|
714 |
msgid "Disable ThirstyAffiliates CSS classes?"
|
715 |
msgstr ""
|
716 |
|
717 |
+
#: Models/Settings.php:440
|
718 |
msgid "To help with styling a CSS class called \"thirstylink\" is added links on insertion.<br>Likewise the \"thirstylinkimg\" class is added to images when using the image insertion type. This option disables the addition these CSS classes."
|
719 |
msgstr ""
|
720 |
|
721 |
+
#: Models/Settings.php:446
|
722 |
msgid "Disable title attribute on link insertion?"
|
723 |
msgstr ""
|
724 |
|
725 |
+
#: Models/Settings.php:447
|
726 |
msgid "Links are automatically output with a title html attribute (by default this shows the title of the affiliate link).<br>This option disables the output of the title attribute on your links."
|
727 |
msgstr ""
|
728 |
|
729 |
+
#: Models/Settings.php:453
|
730 |
msgid "Select Category to Uncloak"
|
731 |
msgstr ""
|
732 |
|
733 |
+
#: Models/Settings.php:454
|
734 |
msgid "The links assigned to the selected category will be uncloaked."
|
735 |
msgstr ""
|
736 |
|
737 |
+
#: Models/Settings.php:468
|
|
|
|
|
|
|
|
|
738 |
msgid "Statistics"
|
739 |
msgstr ""
|
740 |
|
741 |
+
#: Models/Settings.php:469
|
742 |
msgid "When enabled, ThirstyAffiliates will collect click statistics information about visitors that click on your affiliate links. Also adds a new Reports section."
|
743 |
msgstr ""
|
744 |
|
745 |
+
#: Models/Settings.php:476
|
746 |
msgid "Link Fixer"
|
747 |
msgstr ""
|
748 |
|
749 |
+
#: Models/Settings.php:477
|
750 |
msgid "Link Fixer is a tiny piece of javascript code that runs on the frontend of your site to fix any outdated/broken affiliate links it detects. It's cache-friendly and runs after page load so it doesn't affect the rendering of content. Changed the settings on your site recently? Enabling Link Fixer means you don't need to update all your previously inserted affiliate links one by one – your visitors will never see an out of date affiliate link again."
|
751 |
msgstr ""
|
752 |
|
753 |
+
#: Models/Settings.php:484
|
754 |
msgid "Uncloak Links"
|
755 |
msgstr ""
|
756 |
|
757 |
+
#: Models/Settings.php:485
|
758 |
msgid "Uncloak Links is a feature to allow uncloaking of specific links on your site. It replaces the cloaked url with the actual destination url which is important for compatibility with some affiliate program with stricter terms (such as Amazon Associates). Once enabled, you will see a new Uncloak Link checkbox on the affiliate link edit screen. It also introduces a new setting under the Links tab for uncloaking whole categories.<br><br><b>Warning : </b>For this feature to work, the <strong>Link Fixer</strong> module needs to be turned on."
|
759 |
msgstr ""
|
760 |
|
761 |
+
#: Models/Settings.php:495
|
762 |
msgid "Import Global Settings"
|
763 |
msgstr ""
|
764 |
|
765 |
+
#: Models/Settings.php:497
|
766 |
msgid "Paste settings string here..."
|
767 |
msgstr ""
|
768 |
|
769 |
+
#: Models/Settings.php:502
|
770 |
msgid "Export Global Settings"
|
771 |
msgstr ""
|
772 |
|
773 |
+
#: Models/Settings.php:511 Models/Settings.php:519
|
774 |
msgid "Knowledge Base"
|
775 |
msgstr ""
|
776 |
|
777 |
+
#: Models/Settings.php:516
|
778 |
msgid "Documentation"
|
779 |
msgstr ""
|
780 |
|
781 |
+
#: Models/Settings.php:520
|
782 |
msgid "Guides, troubleshooting, FAQ and more."
|
783 |
msgstr ""
|
784 |
|
785 |
+
#: Models/Settings.php:525
|
786 |
msgid "Our Blog"
|
787 |
msgstr ""
|
788 |
|
789 |
+
#: Models/Settings.php:528
|
790 |
msgid "ThirstyAffiliates Blog"
|
791 |
msgstr ""
|
792 |
|
793 |
+
#: Models/Settings.php:529
|
794 |
msgid "Learn & grow your affiliate marketing – covering increasing sales, generating traffic, optimising your affiliate marketing, interviews & case studies."
|
795 |
msgstr ""
|
796 |
|
797 |
+
#: Models/Settings.php:534
|
798 |
+
msgid "Join the Community"
|
799 |
+
msgstr ""
|
800 |
+
|
801 |
+
#: Models/Settings.php:541
|
802 |
msgid "Other Utilities"
|
803 |
msgstr ""
|
804 |
|
805 |
+
#: Models/Settings.php:546
|
806 |
msgid "Migrate Old Data"
|
807 |
msgstr ""
|
808 |
|
809 |
+
#: Models/Settings.php:548
|
810 |
msgid "Migrate old ThirstyAffiliates version 2 data to new version 3 data model."
|
811 |
msgstr ""
|
812 |
|
813 |
+
#: Models/Settings.php:673 Models/Settings.php:693
|
814 |
msgid "ThirstyAffiliates Settings"
|
815 |
msgstr ""
|
816 |
|
817 |
+
#: Models/Settings.php:706
|
818 |
+
msgid "Pro Features →"
|
819 |
+
msgstr ""
|
820 |
+
|
821 |
+
#: Models/Settings.php:824
|
822 |
msgid "Save Changes"
|
823 |
msgstr ""
|
824 |
|
825 |
+
#: Models/Settings.php:1300
|
826 |
msgid "Key"
|
827 |
msgstr ""
|
828 |
|
829 |
+
#: Models/Settings.php:1301
|
830 |
msgid "Value"
|
831 |
msgstr ""
|
832 |
|
833 |
+
#: Models/Settings.php:1424
|
834 |
msgid "Another application is currently processing the database. Please wait for this to complete."
|
835 |
msgstr ""
|
836 |
|
837 |
+
#: Models/Settings.php:1434
|
838 |
msgid "Migrate"
|
839 |
msgstr ""
|
840 |
|
841 |
+
#: Models/Settings.php:1437
|
842 |
msgid "Migrating data. Please wait..."
|
843 |
msgstr ""
|
844 |
|
845 |
+
#: Models/Settings.php:1468
|
846 |
+
msgid "Like us on Facebook"
|
847 |
+
msgstr ""
|
848 |
+
|
849 |
+
#: Models/Settings.php:1472
|
850 |
+
msgid "Follow us on Twitter"
|
851 |
+
msgstr ""
|
852 |
+
|
853 |
+
#: Models/Settings.php:1476
|
854 |
+
msgid "Follow us on Linkedin"
|
855 |
+
msgstr ""
|
856 |
+
|
857 |
+
#: Models/Settings.php:1479
|
858 |
+
msgid "Join Our Affiliate Program"
|
859 |
+
msgstr ""
|
860 |
+
|
861 |
+
#: Models/Settings.php:1480
|
862 |
+
#, php-format
|
863 |
+
msgid "(up to 30% commisions)"
|
864 |
+
msgstr ""
|
865 |
+
|
866 |
+
#: Models/Settings.php:1513
|
867 |
msgid "Copy"
|
868 |
msgstr ""
|
869 |
|
870 |
+
#: Models/Settings.php:1550
|
871 |
msgid "Import Settings"
|
872 |
msgstr ""
|
873 |
|
874 |
+
#: Models/Settings.php:1765
|
875 |
msgid "Unauthorized operation. Only authorized accounts can access global plugin settings string"
|
876 |
msgstr ""
|
877 |
|
878 |
+
#: Models/Settings.php:1794
|
879 |
msgid "Settings successfully imported"
|
880 |
msgstr ""
|
881 |
|
882 |
+
#: Models/Settings.php:1816
|
883 |
msgid "Unauthorized operation. Only authorized accounts can import settings"
|
884 |
msgstr ""
|
885 |
|
886 |
+
#: Models/Settings.php:1821
|
887 |
msgid "Invalid global settings string"
|
888 |
msgstr ""
|
889 |
|
890 |
+
#: Models/Shortcodes.php:248
|
891 |
msgid "SHORTCODE ERROR: ThirstyAffiliates did not detect a valid link id, please check your short code!"
|
892 |
msgstr ""
|
893 |
|
894 |
+
#: Models/Stats_Reporting.php:350
|
895 |
msgid "Selected affiliate link is invalid"
|
896 |
msgstr ""
|
897 |
|
898 |
+
#: Models/Stats_Reporting.php:474
|
899 |
+
msgid "Link Overview"
|
900 |
msgstr ""
|
901 |
|
902 |
+
#: Models/Stats_Reporting.php:475
|
903 |
+
msgid "Link Overview Report"
|
904 |
msgstr ""
|
905 |
|
906 |
+
#: Models/Stats_Reporting.php:476
|
907 |
msgid "Total clicks on affiliate links over a given period."
|
908 |
msgstr ""
|
909 |
|
910 |
+
#: Models/Stats_Reporting.php:502
|
911 |
msgid "ThirstyAffiliates Reports"
|
912 |
msgstr ""
|
913 |
|
914 |
+
#: Models/Stats_Reporting.php:503
|
915 |
msgid "Reports"
|
916 |
msgstr ""
|
917 |
|
918 |
+
#: Models/Stats_Reporting.php:581
|
919 |
msgid "Year"
|
920 |
msgstr ""
|
921 |
|
922 |
+
#: Models/Stats_Reporting.php:582
|
923 |
msgid "Last Month"
|
924 |
msgstr ""
|
925 |
|
926 |
+
#: Models/Stats_Reporting.php:583
|
927 |
msgid "This Month"
|
928 |
msgstr ""
|
929 |
|
930 |
+
#: Models/Stats_Reporting.php:584
|
931 |
msgid "Last 7 Days"
|
932 |
msgstr ""
|
933 |
|
934 |
+
#: thirstyaffiliates.php:223
|
935 |
msgid "Activate this plugin"
|
936 |
msgstr ""
|
937 |
|
938 |
+
#: thirstyaffiliates.php:223
|
939 |
msgid "Click here to activate →"
|
940 |
msgstr ""
|
941 |
|
942 |
+
#: thirstyaffiliates.php:225
|
943 |
msgid "Install this plugin"
|
944 |
msgstr ""
|
945 |
|
946 |
+
#: thirstyaffiliates.php:225
|
947 |
msgid "Click here to install from WordPress.org repo →"
|
948 |
msgstr ""
|
949 |
|
950 |
+
#: thirstyaffiliates.php:227
|
951 |
#, php-format
|
952 |
msgid "<br/>Please ensure you have the <a href=\"%1$s\" target=\"_blank\">%2$s</a> plugin installed and activated.<br/>"
|
953 |
msgstr ""
|
954 |
|
955 |
+
#: thirstyaffiliates.php:234
|
956 |
msgid "<b>ThirstyAffiliates</b> plugin missing dependency.<br/>"
|
957 |
msgstr ""
|
958 |
|
973 |
msgid "Upload/Insert"
|
974 |
msgstr ""
|
975 |
|
976 |
+
#: views/cpt/view-inserted-link-scanner-metabox.php:4
|
977 |
+
msgid "Start Scan"
|
978 |
+
msgstr ""
|
979 |
+
|
980 |
+
#: views/cpt/view-inserted-link-scanner-metabox.php:12
|
981 |
+
msgid "ID"
|
982 |
+
msgstr ""
|
983 |
+
|
984 |
+
#: views/cpt/view-inserted-link-scanner-metabox.php:13
|
985 |
+
msgid "Title"
|
986 |
+
msgstr ""
|
987 |
+
|
988 |
+
#: views/cpt/view-inserted-link-scanner-metabox.php:14
|
989 |
+
msgid "Post Type"
|
990 |
+
msgstr ""
|
991 |
+
|
992 |
#: views/cpt/view-link-options-metabox.php:7
|
993 |
#: views/linkpicker/quick-add-affiliate-link.php:50
|
994 |
msgid "No follow this link?"
|
1008 |
msgid "Global (%s)"
|
1009 |
msgstr ""
|
1010 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1011 |
#: views/cpt/view-link-options-metabox.php:19
|
1012 |
#: views/linkpicker/quick-add-affiliate-link.php:61
|
1013 |
msgid "Open this link in new window?"
|
1050 |
msgid "Additional rel tags:"
|
1051 |
msgstr ""
|
1052 |
|
|
|
|
|
|
|
|
|
1053 |
#: views/cpt/view-save-affiliate-link-metabox.php:4
|
1054 |
#: views/cpt/view-urls-metabox.php:24
|
1055 |
msgid "Save"
|
1124 |
msgid "Redirect Type:"
|
1125 |
msgstr ""
|
1126 |
|
1127 |
+
#: views/linkpicker/quick-add-affiliate-link.php:74
|
1128 |
+
msgid "Select categories..."
|
1129 |
+
msgstr ""
|
1130 |
+
|
1131 |
+
#: views/linkpicker/quick-add-affiliate-link.php:86
|
1132 |
msgid "Add Link"
|
1133 |
msgstr ""
|
1134 |
|
1135 |
+
#: views/linkpicker/quick-add-affiliate-link.php:89
|
1136 |
msgid "Add Link & Insert Into Post"
|
1137 |
msgstr ""
|
1138 |
|
1144 |
msgid "Go"
|
1145 |
msgstr ""
|
1146 |
|
1147 |
+
#: views/reports/link-performance-report.php:41
|
1148 |
+
#: views/reports/link-performance-report.php:81
|
1149 |
msgid "All links"
|
1150 |
msgstr ""
|
1151 |
|
1152 |
+
#: views/reports/link-performance-report.php:48
|
1153 |
msgid "Fetch report for specific link:"
|
1154 |
msgstr ""
|
1155 |
|
1156 |
+
#: views/reports/link-performance-report.php:50
|
1157 |
msgid "Search affiliate link"
|
1158 |
msgstr ""
|
1159 |
|
1160 |
+
#: views/reports/link-performance-report.php:62
|
1161 |
msgid "Fetch Report"
|
1162 |
msgstr ""
|
1163 |
|
1164 |
+
#: views/reports/link-performance-report.php:84
|
1165 |
msgid "Clicks: "
|
1166 |
msgstr ""
|
readme.txt
CHANGED
@@ -4,8 +4,8 @@ Donate link:
|
|
4 |
Tags: affiliate, link, affiliate link management, link cloaker, link redirect, shortlink, thirstyaffiliates, thirsty affiliates
|
5 |
Requires at least: 3.4
|
6 |
Requires PHP: 5.6
|
7 |
-
Tested up to: 4.9.
|
8 |
-
Stable tag: 3.2.
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
@@ -159,6 +159,12 @@ See our [Knowledge Base](https://thirstyaffiliates.com/knowledge-base/?utm_sourc
|
|
159 |
|
160 |
== Changelog ==
|
161 |
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
= 3.2.1 =
|
163 |
* Improvement: Set post type and taxonomy to non-public facing
|
164 |
* Improvement: Rename the Link Performance report to Link Overview
|
4 |
Tags: affiliate, link, affiliate link management, link cloaker, link redirect, shortlink, thirstyaffiliates, thirsty affiliates
|
5 |
Requires at least: 3.4
|
6 |
Requires PHP: 5.6
|
7 |
+
Tested up to: 4.9.4
|
8 |
+
Stable tag: 3.2.2
|
9 |
License: GPLv2 or later
|
10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
11 |
|
159 |
|
160 |
== Changelog ==
|
161 |
|
162 |
+
= 3.2.2 =
|
163 |
+
* Improvement: Allow Force no-cache headers on 301 redirects
|
164 |
+
* Improvement: Minor codebase improvements
|
165 |
+
* Bug Fix: Affiliate link can redirect even with invalid category slug
|
166 |
+
* Bug Fix: Allow valid characters on the slug box pattern match
|
167 |
+
|
168 |
= 3.2.1 =
|
169 |
* Improvement: Set post type and taxonomy to non-public facing
|
170 |
* Improvement: Rename the Link Performance report to Link Overview
|
thirstyaffiliates.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
* Plugin Name: ThirstyAffiliates
|
4 |
* Plugin URI: http://thirstyaffiliates.com/
|
5 |
* Description: ThirstyAffiliates is a revolution in affiliate link management. Collect, collate and store your affiliate links for use in your posts and pages.
|
6 |
-
* Version: 3.2.
|
7 |
* Author: Rymera Web Co
|
8 |
* Author URI: https://rymera.com.au/
|
9 |
* Requires at least: 4.4.2
|
10 |
-
* Tested up to: 4.
|
11 |
*
|
12 |
* Text Domain: thirstyaffiliates
|
13 |
* Domain Path: /languages/
|
3 |
* Plugin Name: ThirstyAffiliates
|
4 |
* Plugin URI: http://thirstyaffiliates.com/
|
5 |
* Description: ThirstyAffiliates is a revolution in affiliate link management. Collect, collate and store your affiliate links for use in your posts and pages.
|
6 |
+
* Version: 3.2.2
|
7 |
* Author: Rymera Web Co
|
8 |
* Author URI: https://rymera.com.au/
|
9 |
* Requires at least: 4.4.2
|
10 |
+
* Tested up to: 4.9.4
|
11 |
*
|
12 |
* Text Domain: thirstyaffiliates
|
13 |
* Domain Path: /languages/
|
views/cpt/view-urls-metabox.php
CHANGED
@@ -20,7 +20,7 @@ wp_nonce_field( 'thirsty_affiliates_cpt_nonce', '_thirstyaffiliates_nonce' ); ?>
|
|
20 |
<a class="button" href="<?php echo esc_attr( $thirstylink->get_prop( 'permalink' ) ); ?>" target="_blank"><?php _e( 'Visit Link' , 'thirstyaffiliates' ); ?></a>
|
21 |
</span>
|
22 |
<span class="slug-fields" style="display: none;">
|
23 |
-
<input type="text" class="ta-form-input" id="ta_slug" name="post_name" pattern="[a-z0-9-]+" value="<?php echo esc_attr( $thirstylink->get_prop( 'slug' ) ); ?>">
|
24 |
<button type="button" class="save-ta-slug button"><?php _e( 'Save' , 'thirstyaffiliates' ); ?></button>
|
25 |
</span>
|
26 |
</p>
|
20 |
<a class="button" href="<?php echo esc_attr( $thirstylink->get_prop( 'permalink' ) ); ?>" target="_blank"><?php _e( 'Visit Link' , 'thirstyaffiliates' ); ?></a>
|
21 |
</span>
|
22 |
<span class="slug-fields" style="display: none;">
|
23 |
+
<input type="text" class="ta-form-input" id="ta_slug" name="post_name" pattern="[a-z0-9-_% ]+" value="<?php echo esc_attr( $thirstylink->get_prop( 'slug' ) ); ?>">
|
24 |
<button type="button" class="save-ta-slug button"><?php _e( 'Save' , 'thirstyaffiliates' ); ?></button>
|
25 |
</span>
|
26 |
</p>
|
views/reports/link-performance-report.php
CHANGED
@@ -77,6 +77,7 @@
|
|
77 |
<script type="text/javascript">
|
78 |
var report_data = { 'click_counts' :<?php echo json_encode( $data ); ?>},
|
79 |
report_details = {
|
|
|
80 |
label : '<?php echo _e( 'All links' , 'thirstyaffiliates' ); ?>',
|
81 |
timeformat : '<?php echo ( $range[ 'type' ] == 'year' ) ? '%b' : '%d %b'; ?>',
|
82 |
minTickSize : [ 1 , "<?php echo ( $range[ 'type' ] == 'year' ) ? 'month' : 'day'; ?>" ],
|
77 |
<script type="text/javascript">
|
78 |
var report_data = { 'click_counts' :<?php echo json_encode( $data ); ?>},
|
79 |
report_details = {
|
80 |
+
label : '<?php echo _e( 'General' , 'thirstyaffiliates' ); ?>',
|
81 |
label : '<?php echo _e( 'All links' , 'thirstyaffiliates' ); ?>',
|
82 |
timeformat : '<?php echo ( $range[ 'type' ] == 'year' ) ? '%b' : '%d %b'; ?>',
|
83 |
minTickSize : [ 1 , "<?php echo ( $range[ 'type' ] == 'year' ) ? 'month' : 'day'; ?>" ],
|