Version Description
- Addressed security vulnerabilities
- Fixed content-type header
- Fixed -1 PHP memory_limit error
- Updated redirects to use wp_redirect()
- PRO Enhanced WooCommerce keyword replacements
- PRO Fixed replacing keywords in header and other HTML tags
- PRO Fixed link expiration dates being 1 day off
Download this release
Release Info
Developer | cartpauj |
Plugin | Shortlinks by Pretty Links – Best WordPress Link Tracking Plugin |
Version | 2.1.3 |
Comparing to | |
See all releases |
Code changes from version 2.1.2 to 2.1.3
- app/controllers/PrliAppController.php +1 -1
- app/controllers/PrliGroupsController.php +5 -0
- app/controllers/PrliLinksController.php +2 -3
- app/controllers/PrliPostsController.php +5 -0
- app/controllers/PrliUpdateController.php +6 -3
- app/models/PrliUtils.php +13 -20
- app/views/groups/new.php +1 -1
- i18n/pretty-link.pot +42 -38
- pretty-link.php +2 -2
- readme.txt +15 -2
app/controllers/PrliAppController.php
CHANGED
@@ -28,7 +28,7 @@ class PrliAppController extends PrliBaseController {
|
|
28 |
public function menu() {
|
29 |
global $prli_options, $plp_options, $plp_update;
|
30 |
|
31 |
-
$role = '
|
32 |
if(isset($plp_options->min_role))
|
33 |
$role = $plp_options->min_role;
|
34 |
|
28 |
public function menu() {
|
29 |
global $prli_options, $plp_options, $plp_update;
|
30 |
|
31 |
+
$role = 'manage_options';
|
32 |
if(isset($plp_options->min_role))
|
33 |
$role = $plp_options->min_role;
|
34 |
|
app/controllers/PrliGroupsController.php
CHANGED
@@ -35,6 +35,11 @@ class PrliGroupsController extends PrliBaseController {
|
|
35 |
public function ajax_new_group() {
|
36 |
global $prli_group;
|
37 |
|
|
|
|
|
|
|
|
|
|
|
38 |
// Default response
|
39 |
$response = json_encode( array( 'status' => 'failure',
|
40 |
'message' => __('An unknown error occurred when creating your group.', 'pretty-link') ) );
|
35 |
public function ajax_new_group() {
|
36 |
global $prli_group;
|
37 |
|
38 |
+
if(!PrliUtils::is_authorized()) {
|
39 |
+
return json_encode( array( 'status' => 'failure',
|
40 |
+
'message' => __('Cannot add group because current user is not authorized.', 'pretty-link') ) );
|
41 |
+
}
|
42 |
+
|
43 |
// Default response
|
44 |
$response = json_encode( array( 'status' => 'failure',
|
45 |
'message' => __('An unknown error occurred when creating your group.', 'pretty-link') ) );
|
app/controllers/PrliLinksController.php
CHANGED
@@ -331,8 +331,7 @@ class PrliLinksController extends PrliBaseController {
|
|
331 |
}
|
332 |
|
333 |
// Set defaults and grab get or post of each possible param
|
334 |
-
public static function get_params_array()
|
335 |
-
{
|
336 |
return array(
|
337 |
'action' => (isset($_REQUEST['action'])?$_REQUEST['action']:'list'),
|
338 |
'regenerate' => (isset($_REQUEST['regenerate'])?$_REQUEST['regenerate']:'false'),
|
@@ -343,7 +342,7 @@ class PrliLinksController extends PrliBaseController {
|
|
343 |
'search' => (isset($_REQUEST['search'])?$_REQUEST['search']:''),
|
344 |
'sort' => (isset($_REQUEST['sort'])?$_REQUEST['sort']:''),
|
345 |
'sdir' => (isset($_REQUEST['sdir'])?$_REQUEST['sdir']:''),
|
346 |
-
'message' => (isset($_REQUEST['message'])
|
347 |
);
|
348 |
}
|
349 |
|
331 |
}
|
332 |
|
333 |
// Set defaults and grab get or post of each possible param
|
334 |
+
public static function get_params_array() {
|
|
|
335 |
return array(
|
336 |
'action' => (isset($_REQUEST['action'])?$_REQUEST['action']:'list'),
|
337 |
'regenerate' => (isset($_REQUEST['regenerate'])?$_REQUEST['regenerate']:'false'),
|
342 |
'search' => (isset($_REQUEST['search'])?$_REQUEST['search']:''),
|
343 |
'sort' => (isset($_REQUEST['sort'])?$_REQUEST['sort']:''),
|
344 |
'sdir' => (isset($_REQUEST['sdir'])?$_REQUEST['sdir']:''),
|
345 |
+
'message' => (isset($_REQUEST['message'])?sanitize_text_field($_REQUEST['message']):'')
|
346 |
);
|
347 |
}
|
348 |
|
app/controllers/PrliPostsController.php
CHANGED
@@ -85,6 +85,11 @@ class PrliPostsController extends PrliBaseController {
|
|
85 |
public function create_pretty_link() {
|
86 |
$valid_vars = array('target', 'slug', 'redirect', 'nofollow', 'tracking');
|
87 |
|
|
|
|
|
|
|
|
|
|
|
88 |
if(!isset($_POST) || !($valid_vars == array_intersect($valid_vars, array_keys($_POST)))) {
|
89 |
echo "invalid_inputs";
|
90 |
die();
|
85 |
public function create_pretty_link() {
|
86 |
$valid_vars = array('target', 'slug', 'redirect', 'nofollow', 'tracking');
|
87 |
|
88 |
+
if(!PrliUtils::is_authorized()) {
|
89 |
+
echo "invalid_user";
|
90 |
+
die();
|
91 |
+
}
|
92 |
+
|
93 |
if(!isset($_POST) || !($valid_vars == array_intersect($valid_vars, array_keys($_POST)))) {
|
94 |
echo "invalid_inputs";
|
95 |
die();
|
app/controllers/PrliUpdateController.php
CHANGED
@@ -21,7 +21,7 @@ class PrliUpdateController {
|
|
21 |
add_filter('plugins_api', array($this, 'plugin_info'), 11, 3);
|
22 |
}
|
23 |
|
24 |
-
|
25 |
|
26 |
add_action('admin_notices', array($this, 'activation_warning'));
|
27 |
add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'));
|
@@ -146,11 +146,13 @@ class PrliUpdateController {
|
|
146 |
}
|
147 |
|
148 |
public function activate_from_define() {
|
149 |
-
if(
|
150 |
-
|
|
|
151 |
$message = '';
|
152 |
$errors = array();
|
153 |
$this->mothership_license = stripslashes(PRETTYLINK_LICENSE_KEY);
|
|
|
154 |
$domain = urlencode(PrliUtils::site_domain());
|
155 |
|
156 |
try {
|
@@ -162,6 +164,7 @@ class PrliUpdateController {
|
|
162 |
}
|
163 |
|
164 |
$act = $this->send_mothership_request("/license_keys/activate/".PRETTYLINK_LICENSE_KEY, $args, 'post');
|
|
|
165 |
|
166 |
$this->manually_queue_update();
|
167 |
|
21 |
add_filter('plugins_api', array($this, 'plugin_info'), 11, 3);
|
22 |
}
|
23 |
|
24 |
+
add_action('admin_init', array($this, 'activate_from_define'));
|
25 |
|
26 |
add_action('admin_notices', array($this, 'activation_warning'));
|
27 |
add_action('admin_enqueue_scripts', array($this, 'enqueue_scripts'));
|
146 |
}
|
147 |
|
148 |
public function activate_from_define() {
|
149 |
+
if(!$this->is_installed()) { return; }
|
150 |
+
|
151 |
+
if(defined('PRETTYLINK_LICENSE_KEY') && $this->mothership_license != PRETTYLINK_LICENSE_KEY) {
|
152 |
$message = '';
|
153 |
$errors = array();
|
154 |
$this->mothership_license = stripslashes(PRETTYLINK_LICENSE_KEY);
|
155 |
+
update_option($this->mothership_license_str, PRETTYLINK_LICENSE_KEY);
|
156 |
$domain = urlencode(PrliUtils::site_domain());
|
157 |
|
158 |
try {
|
164 |
}
|
165 |
|
166 |
$act = $this->send_mothership_request("/license_keys/activate/".PRETTYLINK_LICENSE_KEY, $args, 'post');
|
167 |
+
update_option('prli_activated', true); // if we get here we're activated
|
168 |
|
169 |
$this->manually_queue_update();
|
170 |
|
app/models/PrliUtils.php
CHANGED
@@ -254,6 +254,7 @@ class PrliUtils {
|
|
254 |
$query = "SELECT * FROM ".$prli_link->table_name." WHERE slug='$slug' LIMIT 1";
|
255 |
$pretty_link = $wpdb->get_row($query);
|
256 |
$pretty_link_target = apply_filters( 'prli_target_url', array( 'url' => $pretty_link->url, 'link_id' => $pretty_link->id, 'redirect_type' => $pretty_link->redirect_type ) );
|
|
|
257 |
|
258 |
// Error out when url is blank
|
259 |
if($pretty_link->redirect_type != 'pixel' && (!isset($pretty_link_target['url']) || empty($pretty_link_target['url']))) {
|
@@ -380,28 +381,19 @@ class PrliUtils {
|
|
380 |
header("Cache-Control: post-check=0, pre-check=0", false);
|
381 |
header("Pragma: no-cache");
|
382 |
header("Expires: Mon, 07 Jul 1777 07:07:07 GMT"); // Battle of Hubbardton
|
383 |
-
$prli_edition = ucwords(preg_replace('/-/', ' ', PRLI_EDITION));
|
384 |
header("X-Redirect-Powered-By: {$prli_edition} " . PRLI_VERSION . " http://prettylink.com");
|
385 |
|
386 |
switch($pretty_link->redirect_type) {
|
387 |
case '301':
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
header('Location: '.$pretty_link_url.$param_string, true, 302);
|
394 |
-
break;
|
395 |
default:
|
396 |
-
if(
|
397 |
-
|
398 |
-
|
399 |
-
header("HTTP/1.1 302 Found");
|
400 |
-
}
|
401 |
-
else {
|
402 |
-
header("HTTP/1.1 307 Temporary Redirect");
|
403 |
-
}
|
404 |
-
header('Location: '.$pretty_link_url.$param_string, true, 307);
|
405 |
}
|
406 |
else {
|
407 |
do_action('prli_issue_cloaked_redirect', $pretty_link->redirect_type, $pretty_link, $pretty_link_url, $param_string);
|
@@ -1148,11 +1140,11 @@ class PrliUtils {
|
|
1148 |
}
|
1149 |
|
1150 |
public static function is_admin() {
|
1151 |
-
return self::current_user_can('
|
1152 |
}
|
1153 |
|
1154 |
public static function is_subscriber() {
|
1155 |
-
return
|
1156 |
}
|
1157 |
|
1158 |
// Checks to see that the user is authorized to use Pretty Link based on the minimum role
|
@@ -1161,7 +1153,8 @@ class PrliUtils {
|
|
1161 |
|
1162 |
$prli_update = new PrliUpdateController();
|
1163 |
|
1164 |
-
$role = '
|
|
|
1165 |
if($prli_update->is_installed_and_activated() && isset($plp_options) && isset($plp_options->min_role)) {
|
1166 |
$role = $plp_options->min_role;
|
1167 |
}
|
254 |
$query = "SELECT * FROM ".$prli_link->table_name." WHERE slug='$slug' LIMIT 1";
|
255 |
$pretty_link = $wpdb->get_row($query);
|
256 |
$pretty_link_target = apply_filters( 'prli_target_url', array( 'url' => $pretty_link->url, 'link_id' => $pretty_link->id, 'redirect_type' => $pretty_link->redirect_type ) );
|
257 |
+
$prli_edition = ucwords(preg_replace('/-/', ' ', PRLI_EDITION));
|
258 |
|
259 |
// Error out when url is blank
|
260 |
if($pretty_link->redirect_type != 'pixel' && (!isset($pretty_link_target['url']) || empty($pretty_link_target['url']))) {
|
381 |
header("Cache-Control: post-check=0, pre-check=0", false);
|
382 |
header("Pragma: no-cache");
|
383 |
header("Expires: Mon, 07 Jul 1777 07:07:07 GMT"); // Battle of Hubbardton
|
|
|
384 |
header("X-Redirect-Powered-By: {$prli_edition} " . PRLI_VERSION . " http://prettylink.com");
|
385 |
|
386 |
switch($pretty_link->redirect_type) {
|
387 |
case '301':
|
388 |
+
wp_redirect("{$pretty_link_url}{$param_string}", 301);
|
389 |
+
exit;
|
390 |
+
case '307':
|
391 |
+
wp_redirect("{$pretty_link_url}{$param_string}", 307);
|
392 |
+
exit;
|
|
|
|
|
393 |
default:
|
394 |
+
if($pretty_link->redirect_type == '302' || !$plp_update->is_installed()) {
|
395 |
+
wp_redirect("{$pretty_link_url}{$param_string}", 302);
|
396 |
+
exit;
|
|
|
|
|
|
|
|
|
|
|
|
|
397 |
}
|
398 |
else {
|
399 |
do_action('prli_issue_cloaked_redirect', $pretty_link->redirect_type, $pretty_link, $pretty_link_url, $param_string);
|
1140 |
}
|
1141 |
|
1142 |
public static function is_admin() {
|
1143 |
+
return self::current_user_can('manage_options');
|
1144 |
}
|
1145 |
|
1146 |
public static function is_subscriber() {
|
1147 |
+
return self::current_user_can('subscriber');
|
1148 |
}
|
1149 |
|
1150 |
// Checks to see that the user is authorized to use Pretty Link based on the minimum role
|
1153 |
|
1154 |
$prli_update = new PrliUpdateController();
|
1155 |
|
1156 |
+
$role = 'manage_options';
|
1157 |
+
|
1158 |
if($prli_update->is_installed_and_activated() && isset($plp_options) && isset($plp_options->min_role)) {
|
1159 |
$role = $plp_options->min_role;
|
1160 |
}
|
app/views/groups/new.php
CHANGED
@@ -24,7 +24,7 @@ if(!defined('ABSPATH'))
|
|
24 |
</tr>
|
25 |
<tr class="form-field">
|
26 |
<td valign="top"><?php _e('Description:', 'pretty-link'); ?> </td>
|
27 |
-
<td><textarea style="height: 100px;" name="description"><?php echo ((isset($_POST['description']))
|
28 |
<br/><span class="setting-description"><?php _e('A Description of this group.', 'pretty-link'); ?></span></td>
|
29 |
</tr>
|
30 |
<tr class="form-field" valign="top">
|
24 |
</tr>
|
25 |
<tr class="form-field">
|
26 |
<td valign="top"><?php _e('Description:', 'pretty-link'); ?> </td>
|
27 |
+
<td><textarea style="height: 100px;" name="description"><?php echo ((isset($_POST['description']))?sanitize_textarea_field($_POST['description']):''); ?></textarea>
|
28 |
<br/><span class="setting-description"><?php _e('A Description of this group.', 'pretty-link'); ?></span></td>
|
29 |
</tr>
|
30 |
<tr class="form-field" valign="top">
|
i18n/pretty-link.pot
CHANGED
@@ -1,14 +1,14 @@
|
|
1 |
-
# Copyright (C)
|
2 |
# This file is distributed under the same license as the Pretty Links package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Pretty Links 2.1.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/pretty-link\n"
|
7 |
-
"POT-Creation-Date:
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"PO-Revision-Date:
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
@@ -17,7 +17,7 @@ msgstr ""
|
|
17 |
msgid "Pretty Links | Manage Pretty Links"
|
18 |
msgstr ""
|
19 |
|
20 |
-
#. #-#-#-#-# pretty-link.pot (Pretty Links 2.1.
|
21 |
#. Plugin Name of the plugin/theme
|
22 |
#: app/controllers/PrliAppController.php:37
|
23 |
#: app/controllers/PrliAppController.php:46 app/views/links/list.php:12
|
@@ -142,34 +142,38 @@ msgid "All Links"
|
|
142 |
msgstr ""
|
143 |
|
144 |
#: app/controllers/PrliGroupsController.php:40
|
|
|
|
|
|
|
|
|
145 |
msgid "An unknown error occurred when creating your group."
|
146 |
msgstr ""
|
147 |
|
148 |
-
#: app/controllers/PrliGroupsController.php:
|
149 |
msgid "Group Created"
|
150 |
msgstr ""
|
151 |
|
152 |
-
#: app/controllers/PrliGroupsController.php:
|
153 |
msgid "A name must be specified for your new group name"
|
154 |
msgstr ""
|
155 |
|
156 |
-
#: app/controllers/PrliGroupsController.php:
|
157 |
msgid "Cannot add group because security nonce failed"
|
158 |
msgstr ""
|
159 |
|
160 |
-
#: app/controllers/PrliGroupsController.php:
|
161 |
msgid "Create a group and use it to organize your Pretty Links."
|
162 |
msgstr ""
|
163 |
|
164 |
-
#: app/controllers/PrliGroupsController.php:
|
165 |
msgid "Your Pretty Link Group was Successfully Created"
|
166 |
msgstr ""
|
167 |
|
168 |
-
#: app/controllers/PrliGroupsController.php:
|
169 |
msgid "Your Pretty Link Group was Successfully Updated"
|
170 |
msgstr ""
|
171 |
|
172 |
-
#: app/controllers/PrliGroupsController.php:
|
173 |
msgid "Your Pretty Link Group was Successfully Deleted"
|
174 |
msgstr ""
|
175 |
|
@@ -207,7 +211,7 @@ msgstr ""
|
|
207 |
msgid "Your links were deleted successfully"
|
208 |
msgstr ""
|
209 |
|
210 |
-
#: app/controllers/PrliLinksController.php:
|
211 |
msgid "Pretty Link Cleanup Visitor Locks"
|
212 |
msgstr ""
|
213 |
|
@@ -276,23 +280,23 @@ msgstr ""
|
|
276 |
msgid "Why you creepin'?"
|
277 |
msgstr ""
|
278 |
|
279 |
-
#: app/controllers/PrliUpdateController.php:
|
280 |
msgid "Check for Update"
|
281 |
msgstr ""
|
282 |
|
283 |
-
#: app/controllers/PrliUpdateController.php:
|
284 |
msgid "You had an HTTP error connecting to Caseproof's Mothership API"
|
285 |
msgstr ""
|
286 |
|
287 |
-
#: app/controllers/PrliUpdateController.php:
|
288 |
msgid "Your License Key was invalid"
|
289 |
msgstr ""
|
290 |
|
291 |
-
#: app/controllers/PrliUpdateController.php:
|
292 |
msgid "You do not have access."
|
293 |
msgstr ""
|
294 |
|
295 |
-
#: app/controllers/PrliUpdateController.php:
|
296 |
msgid "Edge updates couldn't be updated."
|
297 |
msgstr ""
|
298 |
|
@@ -1545,7 +1549,7 @@ msgstr ""
|
|
1545 |
|
1546 |
#: app/views/shared/tinymce_form_popup.php:67
|
1547 |
#: pro/app/controllers/PlpLinksController.php:628
|
1548 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1549 |
#: pro/app/views/options/nav.php:5
|
1550 |
msgid "Pretty Bar"
|
1551 |
msgstr ""
|
@@ -1557,19 +1561,19 @@ msgstr ""
|
|
1557 |
|
1558 |
#: app/views/shared/tinymce_form_popup.php:69
|
1559 |
#: pro/app/controllers/PlpLinksController.php:630
|
1560 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1561 |
msgid "Pixel"
|
1562 |
msgstr ""
|
1563 |
|
1564 |
#: app/views/shared/tinymce_form_popup.php:70
|
1565 |
#: pro/app/controllers/PlpLinksController.php:631
|
1566 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1567 |
msgid "Meta Refresh"
|
1568 |
msgstr ""
|
1569 |
|
1570 |
#: app/views/shared/tinymce_form_popup.php:71
|
1571 |
#: pro/app/controllers/PlpLinksController.php:632
|
1572 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1573 |
msgid "Javascript"
|
1574 |
msgstr ""
|
1575 |
|
@@ -1766,11 +1770,11 @@ msgstr ""
|
|
1766 |
msgid "Pro Import/Export"
|
1767 |
msgstr ""
|
1768 |
|
1769 |
-
#: pro/app/controllers/PlpKeywordsController.php:
|
1770 |
msgid "Pretty Link Post Build Index"
|
1771 |
msgstr ""
|
1772 |
|
1773 |
-
#: pro/app/controllers/PlpKeywordsController.php:
|
1774 |
#: pro/app/views/links/form.php:128
|
1775 |
msgid "Keywords"
|
1776 |
msgstr ""
|
@@ -1853,64 +1857,64 @@ msgstr ""
|
|
1853 |
msgid "Delay Redirect must be a number"
|
1854 |
msgstr ""
|
1855 |
|
1856 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1857 |
#: pro/app/widgets/PlpPublicLinksWidget.php:64
|
1858 |
msgid "Cloak"
|
1859 |
msgstr ""
|
1860 |
|
1861 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1862 |
msgid "View QR Code for this link: %s"
|
1863 |
msgstr ""
|
1864 |
|
1865 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1866 |
msgid "Download QR Code for this link: %s"
|
1867 |
msgstr ""
|
1868 |
|
1869 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1870 |
msgid "This link expired on %1$s and will now cause a 404 error when visited"
|
1871 |
msgstr ""
|
1872 |
|
1873 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1874 |
msgid "This link expired on %1$s and now redirects to %2$s"
|
1875 |
msgstr ""
|
1876 |
|
1877 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1878 |
msgid "This link is set to expire after the date %s"
|
1879 |
msgstr ""
|
1880 |
|
1881 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1882 |
msgid ""
|
1883 |
"This link expired after %d clicks and will now cause a 404 error when visited"
|
1884 |
msgstr ""
|
1885 |
|
1886 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1887 |
msgid "This link expired after %1$d clicks and now redirects to %2$s"
|
1888 |
msgstr ""
|
1889 |
|
1890 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1891 |
msgid "This link is set to expire after %d clicks"
|
1892 |
msgstr ""
|
1893 |
|
1894 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1895 |
msgid "This link has additional Target URL rotations"
|
1896 |
msgstr ""
|
1897 |
|
1898 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1899 |
msgid "This link has additional Geographic Target URLs"
|
1900 |
msgstr ""
|
1901 |
|
1902 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1903 |
msgid "This link has additional Technology Dependent Conditional Target URLs"
|
1904 |
msgstr ""
|
1905 |
|
1906 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1907 |
msgid ""
|
1908 |
"A Time Period Redirect is currently active for this link. When visited it "
|
1909 |
"will currently redirect to %s rather than the Target URL unless the link is "
|
1910 |
"expired."
|
1911 |
msgstr ""
|
1912 |
|
1913 |
-
#: pro/app/controllers/PlpLinksController.php:
|
1914 |
msgid ""
|
1915 |
"Time Period Redirects have been setup for this link but the current time is "
|
1916 |
"not within any of them currently."
|
1 |
+
# Copyright (C) 2018 Pretty Links
|
2 |
# This file is distributed under the same license as the Pretty Links package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Pretty Links 2.1.3\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/pretty-link\n"
|
7 |
+
"POT-Creation-Date: 2018-01-10 14:48:50+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
+
"PO-Revision-Date: 2018-MO-DA HO:MI+ZONE\n"
|
12 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
13 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
14 |
|
17 |
msgid "Pretty Links | Manage Pretty Links"
|
18 |
msgstr ""
|
19 |
|
20 |
+
#. #-#-#-#-# pretty-link.pot (Pretty Links 2.1.3) #-#-#-#-#
|
21 |
#. Plugin Name of the plugin/theme
|
22 |
#: app/controllers/PrliAppController.php:37
|
23 |
#: app/controllers/PrliAppController.php:46 app/views/links/list.php:12
|
142 |
msgstr ""
|
143 |
|
144 |
#: app/controllers/PrliGroupsController.php:40
|
145 |
+
msgid "Cannot add group because current user is not authorized."
|
146 |
+
msgstr ""
|
147 |
+
|
148 |
+
#: app/controllers/PrliGroupsController.php:45
|
149 |
msgid "An unknown error occurred when creating your group."
|
150 |
msgstr ""
|
151 |
|
152 |
+
#: app/controllers/PrliGroupsController.php:54
|
153 |
msgid "Group Created"
|
154 |
msgstr ""
|
155 |
|
156 |
+
#: app/controllers/PrliGroupsController.php:61
|
157 |
msgid "A name must be specified for your new group name"
|
158 |
msgstr ""
|
159 |
|
160 |
+
#: app/controllers/PrliGroupsController.php:66
|
161 |
msgid "Cannot add group because security nonce failed"
|
162 |
msgstr ""
|
163 |
|
164 |
+
#: app/controllers/PrliGroupsController.php:76
|
165 |
msgid "Create a group and use it to organize your Pretty Links."
|
166 |
msgstr ""
|
167 |
|
168 |
+
#: app/controllers/PrliGroupsController.php:100
|
169 |
msgid "Your Pretty Link Group was Successfully Created"
|
170 |
msgstr ""
|
171 |
|
172 |
+
#: app/controllers/PrliGroupsController.php:130
|
173 |
msgid "Your Pretty Link Group was Successfully Updated"
|
174 |
msgstr ""
|
175 |
|
176 |
+
#: app/controllers/PrliGroupsController.php:139
|
177 |
msgid "Your Pretty Link Group was Successfully Deleted"
|
178 |
msgstr ""
|
179 |
|
211 |
msgid "Your links were deleted successfully"
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: app/controllers/PrliLinksController.php:502
|
215 |
msgid "Pretty Link Cleanup Visitor Locks"
|
216 |
msgstr ""
|
217 |
|
280 |
msgid "Why you creepin'?"
|
281 |
msgstr ""
|
282 |
|
283 |
+
#: app/controllers/PrliUpdateController.php:306
|
284 |
msgid "Check for Update"
|
285 |
msgstr ""
|
286 |
|
287 |
+
#: app/controllers/PrliUpdateController.php:375
|
288 |
msgid "You had an HTTP error connecting to Caseproof's Mothership API"
|
289 |
msgstr ""
|
290 |
|
291 |
+
#: app/controllers/PrliUpdateController.php:387
|
292 |
msgid "Your License Key was invalid"
|
293 |
msgstr ""
|
294 |
|
295 |
+
#: app/controllers/PrliUpdateController.php:413
|
296 |
msgid "You do not have access."
|
297 |
msgstr ""
|
298 |
|
299 |
+
#: app/controllers/PrliUpdateController.php:417
|
300 |
msgid "Edge updates couldn't be updated."
|
301 |
msgstr ""
|
302 |
|
1549 |
|
1550 |
#: app/views/shared/tinymce_form_popup.php:67
|
1551 |
#: pro/app/controllers/PlpLinksController.php:628
|
1552 |
+
#: pro/app/controllers/PlpLinksController.php:667
|
1553 |
#: pro/app/views/options/nav.php:5
|
1554 |
msgid "Pretty Bar"
|
1555 |
msgstr ""
|
1561 |
|
1562 |
#: app/views/shared/tinymce_form_popup.php:69
|
1563 |
#: pro/app/controllers/PlpLinksController.php:630
|
1564 |
+
#: pro/app/controllers/PlpLinksController.php:669
|
1565 |
msgid "Pixel"
|
1566 |
msgstr ""
|
1567 |
|
1568 |
#: app/views/shared/tinymce_form_popup.php:70
|
1569 |
#: pro/app/controllers/PlpLinksController.php:631
|
1570 |
+
#: pro/app/controllers/PlpLinksController.php:670
|
1571 |
msgid "Meta Refresh"
|
1572 |
msgstr ""
|
1573 |
|
1574 |
#: app/views/shared/tinymce_form_popup.php:71
|
1575 |
#: pro/app/controllers/PlpLinksController.php:632
|
1576 |
+
#: pro/app/controllers/PlpLinksController.php:671
|
1577 |
msgid "Javascript"
|
1578 |
msgstr ""
|
1579 |
|
1770 |
msgid "Pro Import/Export"
|
1771 |
msgstr ""
|
1772 |
|
1773 |
+
#: pro/app/controllers/PlpKeywordsController.php:70
|
1774 |
msgid "Pretty Link Post Build Index"
|
1775 |
msgstr ""
|
1776 |
|
1777 |
+
#: pro/app/controllers/PlpKeywordsController.php:467
|
1778 |
#: pro/app/views/links/form.php:128
|
1779 |
msgid "Keywords"
|
1780 |
msgstr ""
|
1857 |
msgid "Delay Redirect must be a number"
|
1858 |
msgstr ""
|
1859 |
|
1860 |
+
#: pro/app/controllers/PlpLinksController.php:668
|
1861 |
#: pro/app/widgets/PlpPublicLinksWidget.php:64
|
1862 |
msgid "Cloak"
|
1863 |
msgstr ""
|
1864 |
|
1865 |
+
#: pro/app/controllers/PlpLinksController.php:736
|
1866 |
msgid "View QR Code for this link: %s"
|
1867 |
msgstr ""
|
1868 |
|
1869 |
+
#: pro/app/controllers/PlpLinksController.php:740
|
1870 |
msgid "Download QR Code for this link: %s"
|
1871 |
msgstr ""
|
1872 |
|
1873 |
+
#: pro/app/controllers/PlpLinksController.php:811
|
1874 |
msgid "This link expired on %1$s and will now cause a 404 error when visited"
|
1875 |
msgstr ""
|
1876 |
|
1877 |
+
#: pro/app/controllers/PlpLinksController.php:814
|
1878 |
msgid "This link expired on %1$s and now redirects to %2$s"
|
1879 |
msgstr ""
|
1880 |
|
1881 |
+
#: pro/app/controllers/PlpLinksController.php:818
|
1882 |
msgid "This link is set to expire after the date %s"
|
1883 |
msgstr ""
|
1884 |
|
1885 |
+
#: pro/app/controllers/PlpLinksController.php:829
|
1886 |
msgid ""
|
1887 |
"This link expired after %d clicks and will now cause a 404 error when visited"
|
1888 |
msgstr ""
|
1889 |
|
1890 |
+
#: pro/app/controllers/PlpLinksController.php:832
|
1891 |
msgid "This link expired after %1$d clicks and now redirects to %2$s"
|
1892 |
msgstr ""
|
1893 |
|
1894 |
+
#: pro/app/controllers/PlpLinksController.php:836
|
1895 |
msgid "This link is set to expire after %d clicks"
|
1896 |
msgstr ""
|
1897 |
|
1898 |
+
#: pro/app/controllers/PlpLinksController.php:844
|
1899 |
msgid "This link has additional Target URL rotations"
|
1900 |
msgstr ""
|
1901 |
|
1902 |
+
#: pro/app/controllers/PlpLinksController.php:847
|
1903 |
msgid "This link has additional Geographic Target URLs"
|
1904 |
msgstr ""
|
1905 |
|
1906 |
+
#: pro/app/controllers/PlpLinksController.php:850
|
1907 |
msgid "This link has additional Technology Dependent Conditional Target URLs"
|
1908 |
msgstr ""
|
1909 |
|
1910 |
+
#: pro/app/controllers/PlpLinksController.php:855
|
1911 |
msgid ""
|
1912 |
"A Time Period Redirect is currently active for this link. When visited it "
|
1913 |
"will currently redirect to %s rather than the Target URL unless the link is "
|
1914 |
"expired."
|
1915 |
msgstr ""
|
1916 |
|
1917 |
+
#: pro/app/controllers/PlpLinksController.php:859
|
1918 |
msgid ""
|
1919 |
"Time Period Redirects have been setup for this link but the current time is "
|
1920 |
"not within any of them currently."
|
pretty-link.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Pretty Links
|
4 |
Plugin URI: https://prettylinks.com/pl/plugin-uri
|
5 |
Description: Shrink, track and share any URL on the Internet from your WordPress website!
|
6 |
-
Version: 2.1.
|
7 |
Author: Blair Williams
|
8 |
Author URI: http://blairwilliams.com
|
9 |
Text Domain: pretty-link
|
@@ -59,7 +59,7 @@ define('PRLI_EDITION', 'pretty-link-lite');
|
|
59 |
|
60 |
// Let's give pretty link plenty of room to work with
|
61 |
$mem = abs(intval(@ini_get('memory_limit')));
|
62 |
-
if( $mem
|
63 |
@ini_set('memory_limit', '128M');
|
64 |
}
|
65 |
|
3 |
Plugin Name: Pretty Links
|
4 |
Plugin URI: https://prettylinks.com/pl/plugin-uri
|
5 |
Description: Shrink, track and share any URL on the Internet from your WordPress website!
|
6 |
+
Version: 2.1.3
|
7 |
Author: Blair Williams
|
8 |
Author URI: http://blairwilliams.com
|
9 |
Text Domain: pretty-link
|
59 |
|
60 |
// Let's give pretty link plenty of room to work with
|
61 |
$mem = abs(intval(@ini_get('memory_limit')));
|
62 |
+
if($mem && $mem > 1 && $mem < 128) { //$mem = 1 is probably abs(-1), -1 means "unlimited"
|
63 |
@ini_set('memory_limit', '128M');
|
64 |
}
|
65 |
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: supercleanse
|
|
3 |
Donate link: https://prettylinks.com
|
4 |
Tags: links, link, url, urls, affiliate, affiliates, pretty, marketing, redirect, redirection, forward, plugin, twitter, tweet, rewrite, shorturl, hoplink, hop, shortlink, short, shorten, shortening, click, clicks, track, tracking, tiny, tinyurl, budurl, shrinking, domain, shrink, mask, masking, cloak, cloaking, slug, slugs, admin, administration, stats, statistics, stat, statistic, email, ajax, javascript, ui, csv, download, page, post, pages, posts, shortcode, seo, automation, widget, widgets, dashboard
|
5 |
Requires at least: 4.7
|
6 |
-
Tested up to: 4.9
|
7 |
-
Stable tag: 2.1.
|
8 |
|
9 |
Shrink, beautify, track, manage and share any URL on or off of your WordPress website. Create links that look how you want using your own domain name!
|
10 |
|
@@ -66,6 +66,19 @@ http://blairwilliams.com/w7a
|
|
66 |
|
67 |
== Changelog ==
|
68 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
= 2.1.1 =
|
70 |
* Redeploy to WP Repo
|
71 |
|
3 |
Donate link: https://prettylinks.com
|
4 |
Tags: links, link, url, urls, affiliate, affiliates, pretty, marketing, redirect, redirection, forward, plugin, twitter, tweet, rewrite, shorturl, hoplink, hop, shortlink, short, shorten, shortening, click, clicks, track, tracking, tiny, tinyurl, budurl, shrinking, domain, shrink, mask, masking, cloak, cloaking, slug, slugs, admin, administration, stats, statistics, stat, statistic, email, ajax, javascript, ui, csv, download, page, post, pages, posts, shortcode, seo, automation, widget, widgets, dashboard
|
5 |
Requires at least: 4.7
|
6 |
+
Tested up to: 4.9.1
|
7 |
+
Stable tag: 2.1.3
|
8 |
|
9 |
Shrink, beautify, track, manage and share any URL on or off of your WordPress website. Create links that look how you want using your own domain name!
|
10 |
|
66 |
|
67 |
== Changelog ==
|
68 |
|
69 |
+
= 2.1.3 =
|
70 |
+
* Addressed security vulnerabilities
|
71 |
+
* Fixed content-type header
|
72 |
+
* Fixed -1 PHP memory_limit error
|
73 |
+
* Updated redirects to use wp_redirect()
|
74 |
+
* PRO Enhanced WooCommerce keyword replacements
|
75 |
+
* PRO Fixed replacing keywords in header and other HTML tags
|
76 |
+
* PRO Fixed link expiration dates being 1 day off
|
77 |
+
|
78 |
+
= 2.1.2 =
|
79 |
+
* Updated user manual link
|
80 |
+
* Rebranded from Pretty Link to Pretty Links
|
81 |
+
|
82 |
= 2.1.1 =
|
83 |
* Redeploy to WP Repo
|
84 |
|