Version Description
- fix reloading bulk page on quota used up
Download this release
Release Info
| Developer | ShortPixel |
| Plugin | |
| Version | 3.1.8 |
| Comparing to | |
| See all releases | |
Code changes from version 3.1.7 to 3.1.8
- css/short-pixel.css +6 -0
- js/short-pixel.js +7 -4
- readme.txt +5 -1
- shortpixel_view.php +1 -1
- wp-shortpixel.php +24 -8
css/short-pixel.css
CHANGED
|
@@ -28,6 +28,12 @@ li.shortpixel-toolbar-processing.shortpixel-alert > a.ab-item > div,
|
|
| 28 |
#wpadminbar li.shortpixel-toolbar-processing.shortpixel-alert > a.ab-item > div{
|
| 29 |
background-image: none;
|
| 30 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
li.shortpixel-hide {
|
| 32 |
display:none;
|
| 33 |
}
|
| 28 |
#wpadminbar li.shortpixel-toolbar-processing.shortpixel-alert > a.ab-item > div{
|
| 29 |
background-image: none;
|
| 30 |
}
|
| 31 |
+
.sp-quota-exceeded-alert {
|
| 32 |
+
background-color: #fff;
|
| 33 |
+
border-left: 4px solid #ff0000;
|
| 34 |
+
box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
|
| 35 |
+
padding: 1px 12px;
|
| 36 |
+
}
|
| 37 |
li.shortpixel-hide {
|
| 38 |
display:none;
|
| 39 |
}
|
js/short-pixel.js
CHANGED
|
@@ -53,15 +53,18 @@ function showToolBarAlert($status, $message) {
|
|
| 53 |
var robo = jQuery("li.shortpixel-toolbar-processing");
|
| 54 |
switch($status) {
|
| 55 |
case ShortPixel.STATUS_QUOTA_EXCEEDED:
|
| 56 |
-
if(window.location.href.search("wp-short-pixel-bulk") > 0
|
|
|
|
| 57 |
location.reload();
|
| 58 |
return;
|
| 59 |
}
|
| 60 |
robo.addClass("shortpixel-alert");
|
| 61 |
robo.addClass("shortpixel-quota-exceeded");
|
| 62 |
-
jQuery("a", robo).attr("href", "http://shortpixel.com/login/" + ShortPixel.API_KEY);
|
| 63 |
-
jQuery("a", robo).attr("
|
| 64 |
-
jQuery("a
|
|
|
|
|
|
|
| 65 |
break;
|
| 66 |
case ShortPixel.STATUS_FAIL:
|
| 67 |
robo.addClass("shortpixel-alert shortpixel-processing");
|
| 53 |
var robo = jQuery("li.shortpixel-toolbar-processing");
|
| 54 |
switch($status) {
|
| 55 |
case ShortPixel.STATUS_QUOTA_EXCEEDED:
|
| 56 |
+
if( window.location.href.search("wp-short-pixel-bulk") > 0
|
| 57 |
+
&& jQuery(".sp-quota-exceeded-alert").length == 0) { //if we're in bulk and the alert is not displayed reload to see all options
|
| 58 |
location.reload();
|
| 59 |
return;
|
| 60 |
}
|
| 61 |
robo.addClass("shortpixel-alert");
|
| 62 |
robo.addClass("shortpixel-quota-exceeded");
|
| 63 |
+
//jQuery("a", robo).attr("href", "http://shortpixel.com/login/" + ShortPixel.API_KEY);
|
| 64 |
+
jQuery("a", robo).attr("href", "options-general.php?page=wp-shortpixel");
|
| 65 |
+
//jQuery("a", robo).attr("target", "_blank");
|
| 66 |
+
//jQuery("a div", robo).attr("title", "ShortPixel quota exceeded. Click to top-up");
|
| 67 |
+
jQuery("a div", robo).attr("title", "ShortPixel quota exceeded. Click for details.");
|
| 68 |
break;
|
| 69 |
case ShortPixel.STATUS_FAIL:
|
| 70 |
robo.addClass("shortpixel-alert shortpixel-processing");
|
readme.txt
CHANGED
|
@@ -5,7 +5,7 @@ Tags: picture, optimization, image editor, pngout, upload speed, shortpixel, co
|
|
| 5 |
|
| 6 |
Requires at least: 3.0.1
|
| 7 |
Tested up to: 4.4
|
| 8 |
-
Stable tag: 3.1.
|
| 9 |
License: GPLv2 or later
|
| 10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 11 |
|
|
@@ -168,6 +168,10 @@ The ShortPixel team is here to help. <a href="https://shortpixel.com/contact">Co
|
|
| 168 |
|
| 169 |
== Changelog ==
|
| 170 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 171 |
= 3.1.7 =
|
| 172 |
|
| 173 |
* bugfixes
|
| 5 |
|
| 6 |
Requires at least: 3.0.1
|
| 7 |
Tested up to: 4.4
|
| 8 |
+
Stable tag: 3.1.8
|
| 9 |
License: GPLv2 or later
|
| 10 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 11 |
|
| 168 |
|
| 169 |
== Changelog ==
|
| 170 |
|
| 171 |
+
= 3.1.8 =
|
| 172 |
+
|
| 173 |
+
* fix reloading bulk page on quota used up
|
| 174 |
+
|
| 175 |
= 3.1.7 =
|
| 176 |
|
| 177 |
* bugfixes
|
shortpixel_view.php
CHANGED
|
@@ -16,7 +16,7 @@ class ShortPixelView {
|
|
| 16 |
public function displayQuotaExceededAlert($quotaData)
|
| 17 |
{ ?>
|
| 18 |
<br/>
|
| 19 |
-
<div class="wrap
|
| 20 |
<h3>Quota Exceeded</h3>
|
| 21 |
<p>The plugin has optimized <strong><?=number_format($quotaData['APICallsMadeNumeric'] + $quotaData['APICallsMadeOneTimeNumeric'])?> images</strong> and stopped because it reached the available quota limit.
|
| 22 |
<?php if($quotaData['totalProcessedFiles'] < $quotaData['totalFiles']) { ?>
|
| 16 |
public function displayQuotaExceededAlert($quotaData)
|
| 17 |
{ ?>
|
| 18 |
<br/>
|
| 19 |
+
<div class="wrap sp-quota-exceeded-alert">
|
| 20 |
<h3>Quota Exceeded</h3>
|
| 21 |
<p>The plugin has optimized <strong><?=number_format($quotaData['APICallsMadeNumeric'] + $quotaData['APICallsMadeOneTimeNumeric'])?> images</strong> and stopped because it reached the available quota limit.
|
| 22 |
<?php if($quotaData['totalProcessedFiles'] < $quotaData['totalFiles']) { ?>
|
wp-shortpixel.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
* Plugin Name: ShortPixel Image Optimizer
|
| 4 |
* Plugin URI: https://shortpixel.com/
|
| 5 |
* Description: ShortPixel optimizes images automatically, while guarding the quality of your images. Check your <a href="options-general.php?page=wp-shortpixel" target="_blank">Settings > ShortPixel</a> page on how to start optimizing your image library and make your website load faster.
|
| 6 |
-
* Version: 3.1.
|
| 7 |
* Author: ShortPixel
|
| 8 |
* Author URI: https://shortpixel.com
|
| 9 |
*/
|
|
@@ -21,7 +21,7 @@ define('SP_RESET_ON_ACTIVATE', false); //if true TODO set false
|
|
| 21 |
|
| 22 |
define('SP_AFFILIATE_CODE', '');
|
| 23 |
|
| 24 |
-
define('PLUGIN_VERSION', "3.1.
|
| 25 |
define('SP_MAX_TIMEOUT', 10);
|
| 26 |
define('SP_VALIDATE_MAX_TIMEOUT', 60);
|
| 27 |
define('SP_BACKUP', 'ShortpixelBackups');
|
|
@@ -76,7 +76,9 @@ class WPShortPixel {
|
|
| 76 |
$this->prioQ = new ShortPixelQueue($this);
|
| 77 |
$this->view = new ShortPixelView($this);
|
| 78 |
|
| 79 |
-
define('QUOTA_EXCEEDED', "Quota Exceeded. <a class='button button-smaller button-primary' href='https://shortpixel.com/login/"
|
|
|
|
|
|
|
| 80 |
|
| 81 |
$this->setDefaultViewModeList();//set default mode as list. only @ first run
|
| 82 |
|
|
@@ -102,6 +104,8 @@ class WPShortPixel {
|
|
| 102 |
add_action( 'wp_ajax_shortpixel_dismiss_notice', array(&$this, 'dismissAdminNotice'));
|
| 103 |
//backup restore
|
| 104 |
add_action('admin_action_shortpixel_restore_backup', array(&$this, 'handleRestoreBackup'));
|
|
|
|
|
|
|
| 105 |
|
| 106 |
//This adds the constants used in PHP to be available also in JS
|
| 107 |
add_action( 'admin_footer', array( &$this, 'shortPixelJS') );
|
|
@@ -272,9 +276,10 @@ class WPShortPixel {
|
|
| 272 |
self::log("TOOLBAR: Quota exceeded: " . self::getOpt( 'wp-short-pixel-quota-exceeded', 0));
|
| 273 |
if(self::getOpt( 'wp-short-pixel-quota-exceeded', 0)) {
|
| 274 |
$extraClasses = " shortpixel-alert shortpixel-quota-exceeded";
|
| 275 |
-
$tooltip = "ShortPixel quota exceeded. Click
|
| 276 |
-
|
| 277 |
-
$
|
|
|
|
| 278 |
//$icon = "shortpixel-alert.png";
|
| 279 |
}
|
| 280 |
$lastStatus = self::getOpt( 'wp-short-pixel-bulk-last-status', array('Status' => ShortPixelAPI::STATUS_SUCCESS));
|
|
@@ -537,9 +542,10 @@ class WPShortPixel {
|
|
| 537 |
$filePath = explode("/", $meta["file"]);
|
| 538 |
$uploadsUrl = content_url() . "/uploads/";
|
| 539 |
$urlPath = implode("/", array_slice($filePath, 0, count($filePath) - 1));
|
|
|
|
| 540 |
$thumb = (isset($meta["sizes"]["medium"]) ? $meta["sizes"]["medium"]["file"] : (isset($meta["sizes"]["thumbnail"]) ? $meta["sizes"]["thumbnail"]["file"]: ""));
|
| 541 |
if(strlen($thumb) && get_option('wp-short-backup_images') && $this->_processThumbnails) {
|
| 542 |
-
$bkThumb = $uploadsUrl . SP_BACKUP . "/" . $
|
| 543 |
}
|
| 544 |
if(strlen($thumb)) {
|
| 545 |
$thumb = $uploadsUrl . $urlPath . "/" . $thumb;
|
|
@@ -643,7 +649,17 @@ class WPShortPixel {
|
|
| 643 |
wp_redirect($sendback);
|
| 644 |
// we are done
|
| 645 |
}
|
| 646 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 647 |
|
| 648 |
public function handleDeleteAttachmentInBackup($ID) {
|
| 649 |
$file = get_attached_file($ID);
|
| 3 |
* Plugin Name: ShortPixel Image Optimizer
|
| 4 |
* Plugin URI: https://shortpixel.com/
|
| 5 |
* Description: ShortPixel optimizes images automatically, while guarding the quality of your images. Check your <a href="options-general.php?page=wp-shortpixel" target="_blank">Settings > ShortPixel</a> page on how to start optimizing your image library and make your website load faster.
|
| 6 |
+
* Version: 3.1.8
|
| 7 |
* Author: ShortPixel
|
| 8 |
* Author URI: https://shortpixel.com
|
| 9 |
*/
|
| 21 |
|
| 22 |
define('SP_AFFILIATE_CODE', '');
|
| 23 |
|
| 24 |
+
define('PLUGIN_VERSION', "3.1.8");
|
| 25 |
define('SP_MAX_TIMEOUT', 10);
|
| 26 |
define('SP_VALIDATE_MAX_TIMEOUT', 60);
|
| 27 |
define('SP_BACKUP', 'ShortpixelBackups');
|
| 76 |
$this->prioQ = new ShortPixelQueue($this);
|
| 77 |
$this->view = new ShortPixelView($this);
|
| 78 |
|
| 79 |
+
define('QUOTA_EXCEEDED', "Quota Exceeded. <a class='button button-smaller button-primary' href='https://shortpixel.com/login/"
|
| 80 |
+
.$this->_apiKey."' target='_blank'>Extend Quota</a>"
|
| 81 |
+
."<a class='button button-smaller' href='admin.php?action=shortpixel_check_quota' target='_blank'>Check Quota</a>");
|
| 82 |
|
| 83 |
$this->setDefaultViewModeList();//set default mode as list. only @ first run
|
| 84 |
|
| 104 |
add_action( 'wp_ajax_shortpixel_dismiss_notice', array(&$this, 'dismissAdminNotice'));
|
| 105 |
//backup restore
|
| 106 |
add_action('admin_action_shortpixel_restore_backup', array(&$this, 'handleRestoreBackup'));
|
| 107 |
+
//backup restore
|
| 108 |
+
add_action('admin_action_shortpixel_check_quota', array(&$this, 'handleCheckQuota'));
|
| 109 |
|
| 110 |
//This adds the constants used in PHP to be available also in JS
|
| 111 |
add_action( 'admin_footer', array( &$this, 'shortPixelJS') );
|
| 276 |
self::log("TOOLBAR: Quota exceeded: " . self::getOpt( 'wp-short-pixel-quota-exceeded', 0));
|
| 277 |
if(self::getOpt( 'wp-short-pixel-quota-exceeded', 0)) {
|
| 278 |
$extraClasses = " shortpixel-alert shortpixel-quota-exceeded";
|
| 279 |
+
$tooltip = "ShortPixel quota exceeded. Click for details.";
|
| 280 |
+
//$link = "http://shortpixel.com/login/" . $this->_apiKey;
|
| 281 |
+
$link = "options-general.php?page=wp-shortpixel";
|
| 282 |
+
//$blank = '_blank';
|
| 283 |
//$icon = "shortpixel-alert.png";
|
| 284 |
}
|
| 285 |
$lastStatus = self::getOpt( 'wp-short-pixel-bulk-last-status', array('Status' => ShortPixelAPI::STATUS_SUCCESS));
|
| 542 |
$filePath = explode("/", $meta["file"]);
|
| 543 |
$uploadsUrl = content_url() . "/uploads/";
|
| 544 |
$urlPath = implode("/", array_slice($filePath, 0, count($filePath) - 1));
|
| 545 |
+
$urlBkPath = $this->_apiInterface->returnSubDir(get_attached_file($ID));
|
| 546 |
$thumb = (isset($meta["sizes"]["medium"]) ? $meta["sizes"]["medium"]["file"] : (isset($meta["sizes"]["thumbnail"]) ? $meta["sizes"]["thumbnail"]["file"]: ""));
|
| 547 |
if(strlen($thumb) && get_option('wp-short-backup_images') && $this->_processThumbnails) {
|
| 548 |
+
$bkThumb = $uploadsUrl . SP_BACKUP . "/" . $urlBkPath . "/" . $thumb;
|
| 549 |
}
|
| 550 |
if(strlen($thumb)) {
|
| 551 |
$thumb = $uploadsUrl . $urlPath . "/" . $thumb;
|
| 649 |
wp_redirect($sendback);
|
| 650 |
// we are done
|
| 651 |
}
|
| 652 |
+
|
| 653 |
+
public function handleCheckQuota() {
|
| 654 |
+
$this->getQuotaInformation();
|
| 655 |
+
// store the referring webpage location
|
| 656 |
+
$sendback = wp_get_referer();
|
| 657 |
+
// sanitize the referring webpage location
|
| 658 |
+
$sendback = preg_replace('|[^a-z0-9-~+_.?#=&;,/:]|i', '', $sendback);
|
| 659 |
+
// send the user back where they came from
|
| 660 |
+
wp_redirect($sendback);
|
| 661 |
+
// we are done
|
| 662 |
+
}
|
| 663 |
|
| 664 |
public function handleDeleteAttachmentInBackup($ID) {
|
| 665 |
$file = get_attached_file($ID);
|
