ThirstyAffiliates Affiliate Link Manager - Version 3.0.2

Version Description

  • Bug Fix: Link Fixer overrides existing CSS classes on the link
  • Bug Fix: Link Fixer removes any query strings from the cloaked link
  • Bug Fix: Properly handle special characters on the text in which the link is attched
  • Bug Fix: Disabling link CSS and title globally won't work with Link Fixer
  • Bug Fix: Fix typo on search placeholder on editor
  • Bug Fix: Conflict with OptimizePress theme
Download this release

Release Info

Developer jkohlbach
Plugin Icon 128x128 ThirstyAffiliates Affiliate Link Manager
Version 3.0.2
Comparing to
See all releases

Code changes from version 3.0.1 to 3.0.2

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.0.1';
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.0.2';
31
  const TEXT_DOMAIN = 'thirstyaffiliates';
32
  const THEME_TEMPLATE_PATH = 'thirstyaffiliates';
33
  const META_DATA_PREFIX = '_ta_';
Models/Link_Fixer.php CHANGED
@@ -129,44 +129,37 @@ class Link_Fixer implements Model_Interface , Initiable_Interface {
129
  foreach( $links as $link ) {
130
 
131
  $href = esc_url_raw( $link[ 'href' ] );
132
- $class = sanitize_text_field( $link[ 'class' ] );
133
  $key = (int) sanitize_text_field( $link[ 'key' ] );
134
- $content = intval( $link[ 'is_image' ] ) ? '{image_placeholder}' : $link[ 'content' ];
135
  $link_id = url_to_postid( $href );
136
 
137
  $thirstylink = new Affiliate_Link( $link_id );
138
 
139
- // if ( $thirstylink->get_prop( 'status' ) != 'publish' )
140
- // continue;
141
 
 
142
  $class .= ( get_option( 'ta_disable_thirsty_link_class' ) !== "yes" && strpos( $class , 'thirstylink' ) === false ) ? ' thirstylink' : '';
143
  $nofollow = $thirstylink->get_prop( 'no_follow' ) == 'global' ? get_option( 'ta_no_follow' ) : $thirstylink->get_prop( 'no_follow' );
144
  $new_window = $thirstylink->get_prop( 'new_window' ) == 'global' ? get_option( 'ta_new_window' ) : $thirstylink->get_prop( 'new_window' );
145
- $href = ( $this->_helper_functions->is_uncloak_link( $thirstylink ) ) ? $thirstylink->get_prop( 'destination_url' ) : $thirstylink->get_prop( 'permalink' );
146
  $rel = $nofollow == "yes" ? 'nofollow' : '';
147
  $rel .= ' ' . $thirstylink->get_prop( 'rel_tags' );
148
  $target = $new_window == "yes" ? '_blank' : '';
149
- $title = ( get_option( 'ta_disable_title_attribute' ) != 'yes' ) ? 'title="' . esc_attr( str_replace( '"' , '' , $thirstylink->get_prop( 'name' ) ) ) . '" ' : '';
150
- $other_atts = apply_filters( 'ta_link_insert_extend_data_attributes' , array() , $thirstylink , $post_id );
151
- $other_atts_string = '';
152
 
153
- if ( is_array( $other_atts ) && ! empty( $other_atts ) ) {
154
-
155
- foreach ( $other_atts as $att => $att_value )
156
- $other_atts_string .= $att . '="' . esc_attr( $att_value ) . '" ';
157
- }
158
-
159
- $html = '<a class="' . esc_attr( $class ) . '" ' . $title .
160
- 'href="' . esc_url( $href ) . '" ' .
161
- 'rel="' . esc_attr( trim( $rel ) ) . '" ' .
162
- 'target="' . esc_attr( $target ) . '" ' .
163
- 'data-linkid="' . esc_attr( $link_id ) . '" ' . $other_atts_string . '>' . $content . '</a>';
164
 
165
  $data[] = array(
166
- 'key' => $key,
167
- 'html' => $html,
168
- 'link_id' => $link_id,
169
- 'is_image' => intval( $link[ 'is_image' ] )
 
 
 
170
  );
171
  }
172
 
129
  foreach( $links as $link ) {
130
 
131
  $href = esc_url_raw( $link[ 'href' ] );
132
+ $class = isset( $link[ 'class' ] ) ? sanitize_text_field( $link[ 'class' ] ) : '';
133
  $key = (int) sanitize_text_field( $link[ 'key' ] );
 
134
  $link_id = url_to_postid( $href );
135
 
136
  $thirstylink = new Affiliate_Link( $link_id );
137
 
138
+ if ( ! $thirstylink->get_id() )
139
+ continue;
140
 
141
+ $class = str_replace( 'thirstylinkimg' , 'thirstylink' , $class );
142
  $class .= ( get_option( 'ta_disable_thirsty_link_class' ) !== "yes" && strpos( $class , 'thirstylink' ) === false ) ? ' thirstylink' : '';
143
  $nofollow = $thirstylink->get_prop( 'no_follow' ) == 'global' ? get_option( 'ta_no_follow' ) : $thirstylink->get_prop( 'no_follow' );
144
  $new_window = $thirstylink->get_prop( 'new_window' ) == 'global' ? get_option( 'ta_new_window' ) : $thirstylink->get_prop( 'new_window' );
145
+ $href = ( $this->_helper_functions->is_uncloak_link( $thirstylink ) ) ? apply_filters( 'ta_uncloak_link_url' , $thirstylink->get_prop( 'destination_url' ) , $thirstylink ) : $thirstylink->get_prop( 'permalink' );
146
  $rel = $nofollow == "yes" ? 'nofollow' : '';
147
  $rel .= ' ' . $thirstylink->get_prop( 'rel_tags' );
148
  $target = $new_window == "yes" ? '_blank' : '';
149
+ $title = get_option( 'ta_disable_title_attribute' ) != 'yes' ? esc_attr( str_replace( '"' , '' , $thirstylink->get_prop( 'name' ) ) ) : '';
150
+ $title = str_replace( '&#039;' , '\'' , $title );
 
151
 
152
+ if ( $link[ 'is_image' ] )
153
+ $class = str_replace( 'thirstylink' , 'thirstylinkimg' , $class );
 
 
 
 
 
 
 
 
 
154
 
155
  $data[] = array(
156
+ 'key' => $key,
157
+ 'link_id' => $link_id,
158
+ 'class' => esc_attr( trim( $class ) ),
159
+ 'href' => esc_url( $href ),
160
+ 'rel' => esc_attr( trim( $rel ) ),
161
+ 'target' => esc_attr( $target ),
162
+ 'title' => $title
163
  );
164
  }
165
 
Models/Link_Picker.php CHANGED
@@ -316,8 +316,8 @@ class Link_Picker implements Model_Interface {
316
  wp_dequeue_script('admin-scripts');
317
  wp_enqueue_style( 'jquery_tiptip' , $this->_constants->CSS_ROOT_URL() . 'lib/jquery-tiptip/jquery-tiptip.css' , array() , $this->_constants->VERSION() , 'all' );
318
  wp_enqueue_style( 'ta_advance_link_picker_css' , $this->_constants->JS_ROOT_URL() . 'app/advance_link_picker/dist/advance-link-picker.css' , array( 'dashicons' ) , $this->_constants->VERSION() , 'all' );
319
- wp_enqueue_script( 'jquery_tiptip' , $this->_constants->JS_ROOT_URL() . 'lib/jquery-tiptip/jquery.tipTip.min.js' , array() , $this->_constants->VERSION() , true );
320
- wp_enqueue_script( 'ta_advance_link_picker_js' , $this->_constants->JS_ROOT_URL() . 'app/advance_link_picker/dist/advance-link-picker.js' , array( 'jquery_tiptip' ) , $this->_constants->VERSION() , true );
321
 
322
  include( $this->_constants->VIEWS_ROOT_PATH() . 'linkpicker/advance-link-picker.php' );
323
 
@@ -381,7 +381,7 @@ class Link_Picker implements Model_Interface {
381
  wp_enqueue_script('editor');
382
  wp_dequeue_script('jquery-ui-sortable');
383
  wp_dequeue_script('admin-scripts');
384
- wp_enqueue_script( 'ta_quick_add_affiliate_link_js' , $this->_constants->JS_ROOT_URL() . 'app/quick_add_affiliate_link/dist/quick-add-affiliate-link.js' , array() , $this->_constants->VERSION() , true );
385
  wp_enqueue_style( 'ta_quick_add_affiliate_link_css' , $this->_constants->JS_ROOT_URL() . 'app/quick_add_affiliate_link/dist/quick-add-affiliate-link.css' , array( 'dashicons' ) , $this->_constants->VERSION() , 'all' );
386
 
387
  include( $this->_constants->VIEWS_ROOT_PATH() . 'linkpicker/quick-add-affiliate-link.php' );
316
  wp_dequeue_script('admin-scripts');
317
  wp_enqueue_style( 'jquery_tiptip' , $this->_constants->CSS_ROOT_URL() . 'lib/jquery-tiptip/jquery-tiptip.css' , array() , $this->_constants->VERSION() , 'all' );
318
  wp_enqueue_style( 'ta_advance_link_picker_css' , $this->_constants->JS_ROOT_URL() . 'app/advance_link_picker/dist/advance-link-picker.css' , array( 'dashicons' ) , $this->_constants->VERSION() , 'all' );
319
+ wp_enqueue_script( 'jquery_tiptip' , $this->_constants->JS_ROOT_URL() . 'lib/jquery-tiptip/jquery.tipTip.min.js' , array() , $this->_constants->VERSION() );
320
+ wp_enqueue_script( 'ta_advance_link_picker_js' , $this->_constants->JS_ROOT_URL() . 'app/advance_link_picker/dist/advance-link-picker.js' , array( 'jquery_tiptip' ) , $this->_constants->VERSION() );
321
 
322
  include( $this->_constants->VIEWS_ROOT_PATH() . 'linkpicker/advance-link-picker.php' );
323
 
381
  wp_enqueue_script('editor');
382
  wp_dequeue_script('jquery-ui-sortable');
383
  wp_dequeue_script('admin-scripts');
384
+ wp_enqueue_script( 'ta_quick_add_affiliate_link_js' , $this->_constants->JS_ROOT_URL() . 'app/quick_add_affiliate_link/dist/quick-add-affiliate-link.js' , array() , $this->_constants->VERSION() );
385
  wp_enqueue_style( 'ta_quick_add_affiliate_link_css' , $this->_constants->JS_ROOT_URL() . 'app/quick_add_affiliate_link/dist/quick-add-affiliate-link.css' , array( 'dashicons' ) , $this->_constants->VERSION() , 'all' );
386
 
387
  include( $this->_constants->VIEWS_ROOT_PATH() . 'linkpicker/quick-add-affiliate-link.php' );
Models/Script_Loader.php CHANGED
@@ -189,7 +189,7 @@ class Script_Loader implements Model_Interface {
189
  wp_enqueue_script( 'jquery_tiptip' , $this->_constants->JS_ROOT_URL() . 'lib/jquery-tiptip/jquery.tipTip.min.js' , array() , Plugin_Constants::VERSION , true );
190
  wp_enqueue_script( 'ta_affiliate-link-page_js' , $this->_constants->JS_ROOT_URL() . 'app/affiliate_link_page/dist/affiliate-link-page.js' , array() , Plugin_Constants::VERSION , true );
191
 
192
- } elseif ( $screen->base == 'post' && $post_type != Plugin_Constants::AFFILIATE_LINKS_CPT ) {
193
 
194
  wp_enqueue_style( 'thickbox' );
195
  wp_enqueue_style( 'thirstyaffiliates-tinymce' , $this->_constants->CSS_ROOT_URL() . 'admin/tinymce/editor.css' , Plugin_Constants::VERSION , 'screen' );
@@ -201,7 +201,7 @@ class Script_Loader implements Model_Interface {
201
  'disable_qtag_buttons' => get_option( 'ta_disable_text_editor_buttons' , 'no' ),
202
  'html_editor_affiliate_link_title' => __( 'Open the ThirstyAffiliates link picker' , 'thirstyaffiliates' ),
203
  'html_editor_quick_add_title' => __( 'Open quick add affiliate link dialog' , 'thirstyaffiliates' ),
204
- 'simple_search_placeholder' => __( 'Type to seach affiliate link' , 'thirstyaffiliates' )
205
  ) );
206
 
207
  } elseif ( $screen->id == 'thirstylink_page_thirsty-reports' ) {
@@ -269,6 +269,7 @@ class Script_Loader implements Model_Interface {
269
  'link_prefix' => $this->_helper_functions->get_thirstylink_link_prefix(),
270
  'link_prefixes' => maybe_unserialize( get_option( 'ta_used_link_prefixes' ) ),
271
  'post_id' => isset( $post->ID ) ? $post->ID : 0,
 
272
  ) );
273
  }
274
 
189
  wp_enqueue_script( 'jquery_tiptip' , $this->_constants->JS_ROOT_URL() . 'lib/jquery-tiptip/jquery.tipTip.min.js' , array() , Plugin_Constants::VERSION , true );
190
  wp_enqueue_script( 'ta_affiliate-link-page_js' , $this->_constants->JS_ROOT_URL() . 'app/affiliate_link_page/dist/affiliate-link-page.js' , array() , Plugin_Constants::VERSION , true );
191
 
192
+ } elseif ( ( $screen->base == 'post' || $screen->id == 'optimizepress_page_optimizepress-page-builder' ) && $post_type != Plugin_Constants::AFFILIATE_LINKS_CPT ) {
193
 
194
  wp_enqueue_style( 'thickbox' );
195
  wp_enqueue_style( 'thirstyaffiliates-tinymce' , $this->_constants->CSS_ROOT_URL() . 'admin/tinymce/editor.css' , Plugin_Constants::VERSION , 'screen' );
201
  'disable_qtag_buttons' => get_option( 'ta_disable_text_editor_buttons' , 'no' ),
202
  'html_editor_affiliate_link_title' => __( 'Open the ThirstyAffiliates link picker' , 'thirstyaffiliates' ),
203
  'html_editor_quick_add_title' => __( 'Open quick add affiliate link dialog' , 'thirstyaffiliates' ),
204
+ 'simple_search_placeholder' => __( 'Type to search affiliate link' , 'thirstyaffiliates' )
205
  ) );
206
 
207
  } elseif ( $screen->id == 'thirstylink_page_thirsty-reports' ) {
269
  'link_prefix' => $this->_helper_functions->get_thirstylink_link_prefix(),
270
  'link_prefixes' => maybe_unserialize( get_option( 'ta_used_link_prefixes' ) ),
271
  'post_id' => isset( $post->ID ) ? $post->ID : 0,
272
+ 'disable_thirstylink_class' => get_option( 'ta_disable_thirsty_link_class' )
273
  ) );
274
  }
275
 
Models/Shortcodes.php CHANGED
@@ -188,7 +188,7 @@ class Shortcodes implements Model_Interface {
188
  $uncloak_link = $this->_helper_functions->is_uncloak_link( $thirstylink );
189
 
190
  // get the link URL
191
- $link_attributes[ 'href' ] = ( $uncloak_link ) ? $thirstylink->get_prop( 'destination_url' ) : $thirstylink->get_prop( 'permalink' );
192
 
193
  // get link text content default if no value is set
194
  if ( empty( $content ) && $atts[ 'linktext' ] )
188
  $uncloak_link = $this->_helper_functions->is_uncloak_link( $thirstylink );
189
 
190
  // get the link URL
191
+ $link_attributes[ 'href' ] = ( $uncloak_link ) ? apply_filters( 'ta_uncloak_link_url' , $thirstylink->get_prop( 'destination_url' ) , $thirstylink ) : $thirstylink->get_prop( 'permalink' );
192
 
193
  // get link text content default if no value is set
194
  if ( empty( $content ) && $atts[ 'linktext' ] )
js/app/ta.js CHANGED
@@ -60,7 +60,7 @@ jQuery( document ).ready( function($) {
60
 
61
  var $allLinks = $( 'body a' ),
62
  hrefs = [],
63
- href, linkClass, isShortcode, isImage, content;
64
 
65
  // fetch all links that are thirstylinks
66
  for ( key = 0; key < $allLinks.length; key++ ) {
@@ -69,11 +69,10 @@ jQuery( document ).ready( function($) {
69
  linkClass = $( $allLinks[ key ] ).attr( 'class' );
70
  isShortcode = $( $allLinks[ key ] ).data( 'shortcode' );
71
  isImage = $( $allLinks[ key ] ).has( 'img' ).length;
72
- content = $( $allLinks[ key ] ).text();
73
  href = thirstyFunctions.isThirstyLink( href );
74
 
75
  if ( href && ! isShortcode )
76
- hrefs.push({ key : key , class : linkClass , href : href , content : content , is_image : isImage });
77
 
78
  $( $allLinks[ key ] ).removeAttr( 'data-shortcode' );
79
  }
@@ -92,13 +91,33 @@ jQuery( document ).ready( function($) {
92
 
93
  for ( x in response.data ) {
94
 
95
- key = response.data[ x ][ 'key' ];
96
- html = response.data[ x ][ 'html' ];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
 
98
- if ( parseInt( response.data[ x ][ 'is_image' ] ) )
99
- html = html.replace( '{image_placeholder}' , $( $allLinks[ key ] ).html() );
100
-
101
- $( $allLinks[ key ] ).replaceWith( html );
102
  }
103
  }
104
  }, 'json' );
60
 
61
  var $allLinks = $( 'body a' ),
62
  hrefs = [],
63
+ href, linkClass, isShortcode, isImage, content , key;
64
 
65
  // fetch all links that are thirstylinks
66
  for ( key = 0; key < $allLinks.length; key++ ) {
69
  linkClass = $( $allLinks[ key ] ).attr( 'class' );
70
  isShortcode = $( $allLinks[ key ] ).data( 'shortcode' );
71
  isImage = $( $allLinks[ key ] ).has( 'img' ).length;
 
72
  href = thirstyFunctions.isThirstyLink( href );
73
 
74
  if ( href && ! isShortcode )
75
+ hrefs.push({ key : key , class : linkClass , href : href , is_image : isImage });
76
 
77
  $( $allLinks[ key ] ).removeAttr( 'data-shortcode' );
78
  }
91
 
92
  for ( x in response.data ) {
93
 
94
+ var key = response.data[ x ][ 'key' ],
95
+ qs = $( $allLinks[ key ] ).prop( 'href' ).split('?')[1], // get the url query strings
96
+ href = ( qs ) ? response.data[ x ][ 'href' ] + '?' + qs : response.data[ x ][ 'href' ],
97
+ title = response.data[ x ][ 'title' ],
98
+ className = response.data[ x ][ 'class' ];
99
+
100
+ // add the title if present, if not then remove the attribute entirely.
101
+ if ( title )
102
+ $( $allLinks[ key ] ).prop( 'title' , title );
103
+ else
104
+ $( $allLinks[ key ] ).removeAttr( 'title' );
105
+
106
+ // if disable_thirstylink_class is set to yes then remove the thirstylink and thirstylinkimg classes.
107
+ if ( thirsty_global_vars.disable_thirstylink_class == 'yes' )
108
+ className = className.replace( 'thirstylinkimg' , '' ).replace( 'thirstylink' , '' ).trim();
109
+
110
+ if ( className )
111
+ $( $allLinks[ key ] ).prop( 'class' , className );
112
+ else
113
+ $( $allLinks[ key ] ).removeAttr( 'class' );
114
+
115
+ // map the other attributes.
116
+ $( $allLinks[ key ] ).prop( 'href' , href )
117
+ .prop( 'rel' , response.data[ x ][ 'rel' ] )
118
+ .prop( 'target' , response.data[ x ][ 'target' ] )
119
+ .attr( 'data-linkid' , response.data[ x ][ 'link_id' ] );
120
 
 
 
 
 
121
  }
122
  }
123
  }, 'json' );
js/lib/thirstymce/editor-plugin.js CHANGED
@@ -5,7 +5,7 @@
5
  renderHtml: function() {
6
  return (
7
  '<div id="' + this._id + '" class="wp-thirstylink-input">' +
8
- '<input type="text" value="" placeholder="' + ta_editor_var.simple_search_placeholder + '" data-aff-content="" data-aff-title="" data-aff-class="" data-aff-rel="" data-aff-target="" data-aff-link-insertion-type="" data-aff-link-id="" />' +
9
  '<ul class="affiliate-link-list" style="display: none;"></ul>' +
10
  '</div>'
11
  );
@@ -146,7 +146,7 @@
146
 
147
  } else {
148
 
149
- var style = ta_editor_var.insertion_type === "shortcode" ? 'box-shadow: none; border: 1px solid #999; text-decoration: none; color: inherit;' : '';
150
 
151
  removePlaceholders();
152
  editor.execCommand( 'mceInsertLink', false, {
5
  renderHtml: function() {
6
  return (
7
  '<div id="' + this._id + '" class="wp-thirstylink-input">' +
8
+ '<input type="text" value="" placeholder="' + parent.ta_editor_var.simple_search_placeholder + '" data-aff-content="" data-aff-title="" data-aff-class="" data-aff-rel="" data-aff-target="" data-aff-link-insertion-type="" data-aff-link-id="" />' +
9
  '<ul class="affiliate-link-list" style="display: none;"></ul>' +
10
  '</div>'
11
  );
146
 
147
  } else {
148
 
149
+ var style = parent.ta_editor_var.insertion_type === "shortcode" ? 'box-shadow: none; border: 1px solid #999; text-decoration: none; color: inherit;' : '';
150
 
151
  removePlaceholders();
152
  editor.execCommand( 'mceInsertLink', false, {
languages/thirstyaffiliates.pot CHANGED
@@ -2,7 +2,7 @@
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: ThirstyAffiliates\n"
5
- "POT-Creation-Date: 2017-10-12 15:10+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"
@@ -33,17 +33,17 @@ msgstr ""
33
  msgid "307 Temporary (alternative)"
34
  msgstr ""
35
 
36
- #: Models/Affiliate_Link.php:519
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:559
42
- #: Models/Guided_Tour.php:313 Models/Link_Fixer.php:184
43
- #: Models/Link_Fixer.php:186 Models/Link_Picker.php:278
44
  #: Models/Link_Picker.php:336 Models/Link_Picker.php:427
45
- #: Models/Marketing.php:175 Models/Marketing.php:298 Models/Settings.php:1639
46
- #: Models/Settings.php:1687 Models/Stats_Reporting.php:293
47
  msgid "Invalid AJAX call"
48
  msgstr ""
49
 
@@ -235,7 +235,7 @@ msgstr ""
235
  msgid "Link Destination"
236
  msgstr ""
237
 
238
- #: Models/Bootstrap.php:355 Models/Settings.php:615
239
  msgid "Settings"
240
  msgstr ""
241
 
@@ -346,7 +346,7 @@ msgstr ""
346
  msgid "No affiliate links found"
347
  msgstr ""
348
 
349
- #: Models/Marketing.php:177 Models/Settings.php:1689
350
  msgid "Required parameter not passed"
351
  msgstr ""
352
 
@@ -354,7 +354,7 @@ msgstr ""
354
  msgid "Review request response saved"
355
  msgstr ""
356
 
357
- #: Models/Marketing.php:216
358
  #, php-format
359
  msgid ""
360
  "<p>We see you have been using ThirstyAffiliates for a couple of weeks now – thank you once again for your purchase and we hope you are enjoying it so far!</p>\n"
@@ -364,7 +364,7 @@ msgid ""
364
  " <p>PS. If you ever need support, please just <a href=\"%1$s\" target=\"_blank\">get in touch here.</a></p>"
365
  msgstr ""
366
 
367
- #: Models/Marketing.php:224
368
  msgid ""
369
  "<p>Thanks for using our free ThirstyAffiliates plugin – we hope you are enjoying it so far.</p>\n"
370
  " <p>We’d really appreciate it if you could take a few minutes to write a 5-star review of our plugin on WordPress.org!</p>\n"
@@ -372,19 +372,19 @@ msgid ""
372
  " <p>Thanks in advance, we are looking forward to reading it!</p>"
373
  msgstr ""
374
 
375
- #: Models/Marketing.php:239
376
  msgid "Don't show again"
377
  msgstr ""
378
 
379
- #: Models/Marketing.php:240
380
  msgid "Review later"
381
  msgstr ""
382
 
383
- #: Models/Marketing.php:241
384
  msgid "Review"
385
  msgstr ""
386
 
387
- #: Models/Marketing.php:265
388
  #, php-format
389
  msgid ""
390
  "<h4>Hi there, we hope you're enjoying ThirstyAffiliates!</h4>\n"
@@ -397,71 +397,71 @@ msgid ""
397
  " <p><a href=\"%s\" target=\"_blank\">Check out the ThristyAffiliates Pro features here →</a></p>"
398
  msgstr ""
399
 
400
- #: Models/Migration.php:276
401
  msgid "Invalid AJAX Call."
402
  msgstr ""
403
 
404
- #: Models/Migration.php:278
405
  msgid "Unauthorized operation. Only authorized accounts can do data migration."
406
  msgstr ""
407
 
408
- #: Models/Migration.php:282
409
  msgid "Data Migration Complete!"
410
  msgstr ""
411
 
412
- #: Models/Migration.php:714
413
- msgid "<b>ThirstyAffiliates is currently migrating your old affiliate link data to the new data model.<br>Please wait until this finishes before making any changes to your affiliate links.</b>"
414
  msgstr ""
415
 
416
- #: Models/Script_Loader.php:146
417
  msgid "Please provide a value for \"Custom Link Prefix\" option"
418
  msgstr ""
419
 
420
- #: Models/Script_Loader.php:157
421
  msgid "Please input settings string"
422
  msgstr ""
423
 
424
- #: Models/Script_Loader.php:158
425
  msgid "Settings string copied"
426
  msgstr ""
427
 
428
- #: Models/Script_Loader.php:159
429
  msgid "Failed to copy settings string"
430
  msgstr ""
431
 
432
- #: Models/Script_Loader.php:170
433
  msgid "Failed to do data migration"
434
  msgstr ""
435
 
436
- #: Models/Script_Loader.php:171
437
  msgid "Are you sure you want to migrate your ThirstyAffiliates data to version 3 format?"
438
  msgstr ""
439
 
440
- #: Models/Script_Loader.php:200
441
  msgid "Open the ThirstyAffiliates link picker"
442
  msgstr ""
443
 
444
- #: Models/Script_Loader.php:201
445
  msgid "Open quick add affiliate link dialog"
446
  msgstr ""
447
 
448
- #: Models/Script_Loader.php:202
449
- msgid "Type to seach affiliate link"
450
  msgstr ""
451
 
452
- #: Models/Script_Loader.php:238
453
  msgid "Previous"
454
  msgstr ""
455
 
456
- #: Models/Script_Loader.php:239
457
  msgid "Next"
458
  msgstr ""
459
 
460
- #: Models/Script_Loader.php:240
461
  msgid "Close"
462
  msgstr ""
463
 
464
- #: Models/Script_Loader.php:241
465
  msgid "Start Tour"
466
  msgstr ""
467
 
@@ -545,241 +545,225 @@ msgstr ""
545
  msgid "Hide the ThirstyAffiliates buttons on the Text editor."
546
  msgstr ""
547
 
548
- #: Models/Settings.php:285
549
- msgid "Enable stats data trimmer?"
550
- msgstr ""
551
-
552
- #: Models/Settings.php:286
553
- msgid "Enabling this will automatically clean the statistics database records older than a set point."
554
- msgstr ""
555
-
556
- #: Models/Settings.php:293
557
- msgid "Trim stats older than:"
558
- msgstr ""
559
-
560
- #: Models/Settings.php:294
561
- msgid "months (default: 12 months)"
562
- msgstr ""
563
-
564
- #: Models/Settings.php:304
565
  msgid "Link Prefix"
566
  msgstr ""
567
 
568
- #: Models/Settings.php:305
569
  #, php-format
570
  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!"
571
  msgstr ""
572
 
573
- #: Models/Settings.php:333
574
  msgid "Custom Link Prefix"
575
  msgstr ""
576
 
577
- #: Models/Settings.php:334
578
  msgid "Enter your preferred link prefix."
579
  msgstr ""
580
 
581
- #: Models/Settings.php:340
582
  msgid "Link Category in URL?"
583
  msgstr ""
584
 
585
- #: Models/Settings.php:341
586
  #, php-format
587
  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!"
588
  msgstr ""
589
 
590
- #: Models/Settings.php:347
591
  msgid "Link Redirect Type"
592
  msgstr ""
593
 
594
- #: Models/Settings.php:348
595
  msgid "This is the type of redirect ThirstyAffiliates will use to redirect the user to your affiliate link."
596
  msgstr ""
597
 
598
- #: Models/Settings.php:355
599
  msgid "Use no follow on links?"
600
  msgstr ""
601
 
602
- #: Models/Settings.php:356
603
  msgid "Add the nofollow attribute to links so search engines don't index them."
604
  msgstr ""
605
 
606
- #: Models/Settings.php:363
607
  msgid "Open links in new window?"
608
  msgstr ""
609
 
610
- #: Models/Settings.php:364
611
  msgid "Make links open in a new browser tab by default."
612
  msgstr ""
613
 
614
- #: Models/Settings.php:371
615
  msgid "Pass query strings to destination url?"
616
  msgstr ""
617
 
618
- #: Models/Settings.php:372
619
  msgid "Enabling this option will pass all of the query strings present after the cloaked url to the destination url automatically when redirecting."
620
  msgstr ""
621
 
622
- #: Models/Settings.php:379
623
  msgid "Additional rel attribute tags"
624
  msgstr ""
625
 
626
- #: Models/Settings.php:380
627
  msgid "Allows you to add extra tags into the rel= attribute when links are inserted."
628
  msgstr ""
629
 
630
- #: Models/Settings.php:386
631
  msgid "Disable ThirstyAffiliates CSS classes?"
632
  msgstr ""
633
 
634
- #: Models/Settings.php:387
635
  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."
636
  msgstr ""
637
 
638
- #: Models/Settings.php:393
639
  msgid "Disable title attribute on link insertion?"
640
  msgstr ""
641
 
642
- #: Models/Settings.php:394
643
  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."
644
  msgstr ""
645
 
646
- #: Models/Settings.php:400
647
  msgid "Select Category to Uncloak"
648
  msgstr ""
649
 
650
- #: Models/Settings.php:401
651
  msgid "The links assigned to the selected category will be uncloaked."
652
  msgstr ""
653
 
654
- #: Models/Settings.php:406
655
  msgid "Select category..."
656
  msgstr ""
657
 
658
- #: Models/Settings.php:415
659
  msgid "Statistics"
660
  msgstr ""
661
 
662
- #: Models/Settings.php:416
663
  msgid "When enabled, ThirstyAffiliates will collect click statistics information about visitors that click on your affiliate links. Also adds a new Reports section."
664
  msgstr ""
665
 
666
- #: Models/Settings.php:423
667
  msgid "Link Fixer"
668
  msgstr ""
669
 
670
- #: Models/Settings.php:424
671
  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."
672
  msgstr ""
673
 
674
- #: Models/Settings.php:431
675
  msgid "Uncloak Links"
676
  msgstr ""
677
 
678
- #: Models/Settings.php:432
679
  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."
680
  msgstr ""
681
 
682
- #: Models/Settings.php:442
683
  msgid "Import Global Settings"
684
  msgstr ""
685
 
686
- #: Models/Settings.php:444
687
  msgid "Paste settings string here..."
688
  msgstr ""
689
 
690
- #: Models/Settings.php:449
691
  msgid "Export Global Settings"
692
  msgstr ""
693
 
694
- #: Models/Settings.php:458 Models/Settings.php:466
695
  msgid "Knowledge Base"
696
  msgstr ""
697
 
698
- #: Models/Settings.php:463
699
  msgid "Documentation"
700
  msgstr ""
701
 
702
- #: Models/Settings.php:467
703
  msgid "Guides, troubleshooting, FAQ and more."
704
  msgstr ""
705
 
706
- #: Models/Settings.php:472
707
  msgid "Our Blog"
708
  msgstr ""
709
 
710
- #: Models/Settings.php:475
711
  msgid "ThirstyAffiliates Blog"
712
  msgstr ""
713
 
714
- #: Models/Settings.php:476
715
  msgid "Learn & grow your affiliate marketing – covering increasing sales, generating traffic, optimising your affiliate marketing, interviews & case studies."
716
  msgstr ""
717
 
718
- #: Models/Settings.php:482
719
  msgid "Other Utilities"
720
  msgstr ""
721
 
722
- #: Models/Settings.php:487
723
  msgid "Migrate Old Data"
724
  msgstr ""
725
 
726
- #: Models/Settings.php:489
727
  msgid "Migrate old ThirstyAffiliates version 2 data to new version 3 data model."
728
  msgstr ""
729
 
730
- #: Models/Settings.php:614 Models/Settings.php:634
731
  msgid "ThirstyAffiliates Settings"
732
  msgstr ""
733
 
734
- #: Models/Settings.php:761
735
  msgid "Save Changes"
736
  msgstr ""
737
 
738
- #: Models/Settings.php:1239
739
  msgid "Key"
740
  msgstr ""
741
 
742
- #: Models/Settings.php:1240
743
  msgid "Value"
744
  msgstr ""
745
 
746
- #: Models/Settings.php:1363
747
  msgid "Another application is currently processing the database. Please wait for this to complete."
748
  msgstr ""
749
 
750
- #: Models/Settings.php:1373
751
  msgid "Migrate"
752
  msgstr ""
753
 
754
- #: Models/Settings.php:1376
755
  msgid "Migrating data. Please wait..."
756
  msgstr ""
757
 
758
- #: Models/Settings.php:1416
759
  msgid "Copy"
760
  msgstr ""
761
 
762
- #: Models/Settings.php:1453
763
  msgid "Import Settings"
764
  msgstr ""
765
 
766
- #: Models/Settings.php:1668
767
  msgid "Unauthorized operation. Only authorized accounts can access global plugin settings string"
768
  msgstr ""
769
 
770
- #: Models/Settings.php:1697
771
  msgid "Settings successfully imported"
772
  msgstr ""
773
 
774
- #: Models/Settings.php:1719
775
  msgid "Unauthorized operation. Only authorized accounts can import settings"
776
  msgstr ""
777
 
778
- #: Models/Settings.php:1724
779
  msgid "Invalid global settings string"
780
  msgstr ""
781
 
782
- #: Models/Shortcodes.php:244
783
  msgid "SHORTCODE ERROR: ThirstyAffiliates did not detect a valid link id, please check your short code!"
784
  msgstr ""
785
 
2
  msgid ""
3
  msgstr ""
4
  "Project-Id-Version: ThirstyAffiliates\n"
5
+ "POT-Creation-Date: 2017-10-19 12:51+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"
33
  msgid "307 Temporary (alternative)"
34
  msgstr ""
35
 
36
+ #: Models/Affiliate_Link.php:522
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:559
42
+ #: Models/Guided_Tour.php:313 Models/Link_Fixer.php:178
43
+ #: Models/Link_Fixer.php:180 Models/Link_Picker.php:278
44
  #: Models/Link_Picker.php:336 Models/Link_Picker.php:427
45
+ #: Models/Marketing.php:175 Models/Marketing.php:300 Models/Settings.php:1623
46
+ #: Models/Settings.php:1671 Models/Stats_Reporting.php:293
47
  msgid "Invalid AJAX call"
48
  msgstr ""
49
 
235
  msgid "Link Destination"
236
  msgstr ""
237
 
238
+ #: Models/Bootstrap.php:367 Models/Settings.php:599
239
  msgid "Settings"
240
  msgstr ""
241
 
346
  msgid "No affiliate links found"
347
  msgstr ""
348
 
349
+ #: Models/Marketing.php:177 Models/Settings.php:1673
350
  msgid "Required parameter not passed"
351
  msgstr ""
352
 
354
  msgid "Review request response saved"
355
  msgstr ""
356
 
357
+ #: Models/Marketing.php:218
358
  #, php-format
359
  msgid ""
360
  "<p>We see you have been using ThirstyAffiliates for a couple of weeks now – thank you once again for your purchase and we hope you are enjoying it so far!</p>\n"
364
  " <p>PS. If you ever need support, please just <a href=\"%1$s\" target=\"_blank\">get in touch here.</a></p>"
365
  msgstr ""
366
 
367
+ #: Models/Marketing.php:226
368
  msgid ""
369
  "<p>Thanks for using our free ThirstyAffiliates plugin – we hope you are enjoying it so far.</p>\n"
370
  " <p>We’d really appreciate it if you could take a few minutes to write a 5-star review of our plugin on WordPress.org!</p>\n"
372
  " <p>Thanks in advance, we are looking forward to reading it!</p>"
373
  msgstr ""
374
 
375
+ #: Models/Marketing.php:241
376
  msgid "Don't show again"
377
  msgstr ""
378
 
379
+ #: Models/Marketing.php:242
380
  msgid "Review later"
381
  msgstr ""
382
 
383
+ #: Models/Marketing.php:243
384
  msgid "Review"
385
  msgstr ""
386
 
387
+ #: Models/Marketing.php:267
388
  #, php-format
389
  msgid ""
390
  "<h4>Hi there, we hope you're enjoying ThirstyAffiliates!</h4>\n"
397
  " <p><a href=\"%s\" target=\"_blank\">Check out the ThristyAffiliates Pro features here →</a></p>"
398
  msgstr ""
399
 
400
+ #: Models/Migration.php:284
401
  msgid "Invalid AJAX Call."
402
  msgstr ""
403
 
404
+ #: Models/Migration.php:286
405
  msgid "Unauthorized operation. Only authorized accounts can do data migration."
406
  msgstr ""
407
 
408
+ #: Models/Migration.php:290
409
  msgid "Data Migration Complete!"
410
  msgstr ""
411
 
412
+ #: Models/Migration.php:753
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:159
421
  msgid "Please input settings string"
422
  msgstr ""
423
 
424
+ #: Models/Script_Loader.php:160
425
  msgid "Settings string copied"
426
  msgstr ""
427
 
428
+ #: Models/Script_Loader.php:161
429
  msgid "Failed to copy settings string"
430
  msgstr ""
431
 
432
+ #: Models/Script_Loader.php:172
433
  msgid "Failed to do data migration"
434
  msgstr ""
435
 
436
+ #: Models/Script_Loader.php:173
437
  msgid "Are you sure you want to migrate your ThirstyAffiliates data to version 3 format?"
438
  msgstr ""
439
 
440
+ #: Models/Script_Loader.php:202
441
  msgid "Open the ThirstyAffiliates link picker"
442
  msgstr ""
443
 
444
+ #: Models/Script_Loader.php:203
445
  msgid "Open quick add affiliate link dialog"
446
  msgstr ""
447
 
448
+ #: Models/Script_Loader.php:204
449
+ msgid "Type to search affiliate link"
450
  msgstr ""
451
 
452
+ #: Models/Script_Loader.php:240
453
  msgid "Previous"
454
  msgstr ""
455
 
456
+ #: Models/Script_Loader.php:241
457
  msgid "Next"
458
  msgstr ""
459
 
460
+ #: Models/Script_Loader.php:242
461
  msgid "Close"
462
  msgstr ""
463
 
464
+ #: Models/Script_Loader.php:243
465
  msgid "Start Tour"
466
  msgstr ""
467
 
545
  msgid "Hide the ThirstyAffiliates buttons on the Text editor."
546
  msgstr ""
547
 
548
+ #: Models/Settings.php:288
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
549
  msgid "Link Prefix"
550
  msgstr ""
551
 
552
+ #: Models/Settings.php:289
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:317
558
  msgid "Custom Link Prefix"
559
  msgstr ""
560
 
561
+ #: Models/Settings.php:318
562
  msgid "Enter your preferred link prefix."
563
  msgstr ""
564
 
565
+ #: Models/Settings.php:324
566
  msgid "Link Category in URL?"
567
  msgstr ""
568
 
569
+ #: Models/Settings.php:325
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:331
575
  msgid "Link Redirect Type"
576
  msgstr ""
577
 
578
+ #: Models/Settings.php:332
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:339
583
  msgid "Use no follow on links?"
584
  msgstr ""
585
 
586
+ #: Models/Settings.php:340
587
  msgid "Add the nofollow attribute to links so search engines don't index them."
588
  msgstr ""
589
 
590
+ #: Models/Settings.php:347
591
  msgid "Open links in new window?"
592
  msgstr ""
593
 
594
+ #: Models/Settings.php:348
595
  msgid "Make links open in a new browser tab by default."
596
  msgstr ""
597
 
598
+ #: Models/Settings.php:355
599
  msgid "Pass query strings to destination url?"
600
  msgstr ""
601
 
602
+ #: Models/Settings.php:356
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:363
607
  msgid "Additional rel attribute tags"
608
  msgstr ""
609
 
610
+ #: Models/Settings.php:364
611
  msgid "Allows you to add extra tags into the rel= attribute when links are inserted."
612
  msgstr ""
613
 
614
+ #: Models/Settings.php:370
615
  msgid "Disable ThirstyAffiliates CSS classes?"
616
  msgstr ""
617
 
618
+ #: Models/Settings.php:371
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:377
623
  msgid "Disable title attribute on link insertion?"
624
  msgstr ""
625
 
626
+ #: Models/Settings.php:378
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:384
631
  msgid "Select Category to Uncloak"
632
  msgstr ""
633
 
634
+ #: Models/Settings.php:385
635
  msgid "The links assigned to the selected category will be uncloaked."
636
  msgstr ""
637
 
638
+ #: Models/Settings.php:390
639
  msgid "Select category..."
640
  msgstr ""
641
 
642
+ #: Models/Settings.php:399
643
  msgid "Statistics"
644
  msgstr ""
645
 
646
+ #: Models/Settings.php:400
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:407
651
  msgid "Link Fixer"
652
  msgstr ""
653
 
654
+ #: Models/Settings.php:408
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:415
659
  msgid "Uncloak Links"
660
  msgstr ""
661
 
662
+ #: Models/Settings.php:416
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:426
667
  msgid "Import Global Settings"
668
  msgstr ""
669
 
670
+ #: Models/Settings.php:428
671
  msgid "Paste settings string here..."
672
  msgstr ""
673
 
674
+ #: Models/Settings.php:433
675
  msgid "Export Global Settings"
676
  msgstr ""
677
 
678
+ #: Models/Settings.php:442 Models/Settings.php:450
679
  msgid "Knowledge Base"
680
  msgstr ""
681
 
682
+ #: Models/Settings.php:447
683
  msgid "Documentation"
684
  msgstr ""
685
 
686
+ #: Models/Settings.php:451
687
  msgid "Guides, troubleshooting, FAQ and more."
688
  msgstr ""
689
 
690
+ #: Models/Settings.php:456
691
  msgid "Our Blog"
692
  msgstr ""
693
 
694
+ #: Models/Settings.php:459
695
  msgid "ThirstyAffiliates Blog"
696
  msgstr ""
697
 
698
+ #: Models/Settings.php:460
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:466
703
  msgid "Other Utilities"
704
  msgstr ""
705
 
706
+ #: Models/Settings.php:471
707
  msgid "Migrate Old Data"
708
  msgstr ""
709
 
710
+ #: Models/Settings.php:473
711
  msgid "Migrate old ThirstyAffiliates version 2 data to new version 3 data model."
712
  msgstr ""
713
 
714
+ #: Models/Settings.php:598 Models/Settings.php:618
715
  msgid "ThirstyAffiliates Settings"
716
  msgstr ""
717
 
718
+ #: Models/Settings.php:745
719
  msgid "Save Changes"
720
  msgstr ""
721
 
722
+ #: Models/Settings.php:1223
723
  msgid "Key"
724
  msgstr ""
725
 
726
+ #: Models/Settings.php:1224
727
  msgid "Value"
728
  msgstr ""
729
 
730
+ #: Models/Settings.php:1347
731
  msgid "Another application is currently processing the database. Please wait for this to complete."
732
  msgstr ""
733
 
734
+ #: Models/Settings.php:1357
735
  msgid "Migrate"
736
  msgstr ""
737
 
738
+ #: Models/Settings.php:1360
739
  msgid "Migrating data. Please wait..."
740
  msgstr ""
741
 
742
+ #: Models/Settings.php:1400
743
  msgid "Copy"
744
  msgstr ""
745
 
746
+ #: Models/Settings.php:1437
747
  msgid "Import Settings"
748
  msgstr ""
749
 
750
+ #: Models/Settings.php:1652
751
  msgid "Unauthorized operation. Only authorized accounts can access global plugin settings string"
752
  msgstr ""
753
 
754
+ #: Models/Settings.php:1681
755
  msgid "Settings successfully imported"
756
  msgstr ""
757
 
758
+ #: Models/Settings.php:1703
759
  msgid "Unauthorized operation. Only authorized accounts can import settings"
760
  msgstr ""
761
 
762
+ #: Models/Settings.php:1708
763
  msgid "Invalid global settings string"
764
  msgstr ""
765
 
766
+ #: Models/Shortcodes.php:247
767
  msgid "SHORTCODE ERROR: ThirstyAffiliates did not detect a valid link id, please check your short code!"
768
  msgstr ""
769
 
readme.txt CHANGED
@@ -5,7 +5,7 @@ Tags: affiliate, link, affiliate link management, link cloaker, link redirect, s
5
  Requires at least: 3.4
6
  Requires PHP: 5.6
7
  Tested up to: 4.8.2
8
- Stable tag: 3.0.1
9
  License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
@@ -159,6 +159,14 @@ See our [Knowledge Base](https://thirstyaffiliates.com/knowledge-base/?utm_sourc
159
 
160
  == Changelog ==
161
 
 
 
 
 
 
 
 
 
162
  = 3.0.1 =
163
  * Bug Fix: Link Fixer overrides existing CSS classes on the link
164
  * Bug Fix: Delete all stats data of a link when its permanently deleted
5
  Requires at least: 3.4
6
  Requires PHP: 5.6
7
  Tested up to: 4.8.2
8
+ Stable tag: 3.0.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.0.2 =
163
+ * Bug Fix: Link Fixer overrides existing CSS classes on the link
164
+ * Bug Fix: Link Fixer removes any query strings from the cloaked link
165
+ * Bug Fix: Properly handle special characters on the text in which the link is attched
166
+ * Bug Fix: Disabling link CSS and title globally won't work with Link Fixer
167
+ * Bug Fix: Fix typo on search placeholder on editor
168
+ * Bug Fix: Conflict with OptimizePress theme
169
+
170
  = 3.0.1 =
171
  * Bug Fix: Link Fixer overrides existing CSS classes on the link
172
  * Bug Fix: Delete all stats data of a link when its permanently deleted
thirstyaffiliates.php CHANGED
@@ -3,7 +3,7 @@
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.0.1
7
  * Author: Rymera Web Co
8
  * Author URI: https://rymera.com.au/
9
  * Requires at least: 4.4.2
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.0.2
7
  * Author: Rymera Web Co
8
  * Author URI: https://rymera.com.au/
9
  * Requires at least: 4.4.2
views/linkpicker/advance-link-picker.php CHANGED
@@ -56,7 +56,6 @@
56
  });
57
  </script>
58
 
59
- <?php wp_footer(); ?>
60
  </body>
61
 
62
  </html>
56
  });
57
  </script>
58
 
 
59
  </body>
60
 
61
  </html>
views/linkpicker/quick-add-affiliate-link.php CHANGED
@@ -86,9 +86,6 @@
86
  </form>
87
  </div>
88
 
89
-
90
- <?php wp_footer(); ?>
91
-
92
  <script>function dummySubmitFunc( event ) { event.preventDefault(); }</script>
93
  </body>
94
 
86
  </form>
87
  </div>
88
 
 
 
 
89
  <script>function dummySubmitFunc( event ) { event.preventDefault(); }</script>
90
  </body>
91