Changeset 1726842
- Timestamp:
- 09/08/2017 02:04:09 PM (9 years ago)
- Location:
- tp-image-optimizer
- Files:
-
- 79 added
- 11 edited
-
tags/2.0.1 (added)
-
tags/2.0.1/LICENSE (added)
-
tags/2.0.1/assets (added)
-
tags/2.0.1/assets/css (added)
-
tags/2.0.1/assets/css/animate.css (added)
-
tags/2.0.1/assets/css/installer.css (added)
-
tags/2.0.1/assets/css/ionicons.min.css (added)
-
tags/2.0.1/assets/css/style.css (added)
-
tags/2.0.1/assets/css/style.css.map (added)
-
tags/2.0.1/assets/css/tpui.css (added)
-
tags/2.0.1/assets/fonts (added)
-
tags/2.0.1/assets/fonts/ionicons.eot (added)
-
tags/2.0.1/assets/fonts/ionicons.svg (added)
-
tags/2.0.1/assets/fonts/ionicons.ttf (added)
-
tags/2.0.1/assets/fonts/ionicons.woff (added)
-
tags/2.0.1/assets/images (added)
-
tags/2.0.1/assets/images/background-01.png (added)
-
tags/2.0.1/assets/images/bg-01.jpg (added)
-
tags/2.0.1/assets/images/checked.png (added)
-
tags/2.0.1/assets/images/contact.png (added)
-
tags/2.0.1/assets/images/error.png (added)
-
tags/2.0.1/assets/images/heading-text.png (added)
-
tags/2.0.1/assets/images/heading.png (added)
-
tags/2.0.1/assets/images/info.png (added)
-
tags/2.0.1/assets/images/logo.png (added)
-
tags/2.0.1/assets/images/logo2.png (added)
-
tags/2.0.1/assets/images/person-01.png (added)
-
tags/2.0.1/assets/images/pro.png (added)
-
tags/2.0.1/assets/images/standard.png (added)
-
tags/2.0.1/assets/images/success.png (added)
-
tags/2.0.1/assets/js (added)
-
tags/2.0.1/assets/js/ajax.js (added)
-
tags/2.0.1/assets/js/io.js (added)
-
tags/2.0.1/assets/js/notice.js (added)
-
tags/2.0.1/assets/js/tpui.js (added)
-
tags/2.0.1/assets/lib (added)
-
tags/2.0.1/assets/lib/chart (added)
-
tags/2.0.1/assets/lib/chart/chart.js (added)
-
tags/2.0.1/assets/lib/chart/chart.min.js (added)
-
tags/2.0.1/assets/lib/jbox (added)
-
tags/2.0.1/assets/lib/jbox/jBox.css (added)
-
tags/2.0.1/assets/lib/jbox/jBox.min.js (added)
-
tags/2.0.1/assets/scss (added)
-
tags/2.0.1/assets/scss/_install.scss (added)
-
tags/2.0.1/assets/scss/_notice_box.scss (added)
-
tags/2.0.1/assets/scss/style.css (added)
-
tags/2.0.1/assets/scss/style.css.map (added)
-
tags/2.0.1/assets/scss/style.scss (added)
-
tags/2.0.1/includes (added)
-
tags/2.0.1/includes/class-image.php (added)
-
tags/2.0.1/includes/class-lang.php (added)
-
tags/2.0.1/includes/class-metabox.php (added)
-
tags/2.0.1/includes/class-notice.php (added)
-
tags/2.0.1/includes/class-service.php (added)
-
tags/2.0.1/includes/class-statistics.php (added)
-
tags/2.0.1/includes/class-table.php (added)
-
tags/2.0.1/includes/helpers-function.php (added)
-
tags/2.0.1/includes/table (added)
-
tags/2.0.1/includes/table/class-table-detail.php (added)
-
tags/2.0.1/languages (added)
-
tags/2.0.1/languages/tp-image-optimizer.pot (added)
-
tags/2.0.1/readme.txt (added)
-
tags/2.0.1/templates (added)
-
tags/2.0.1/templates/content.php (added)
-
tags/2.0.1/templates/header.php (added)
-
tags/2.0.1/templates/install.php (added)
-
tags/2.0.1/templates/notice-box.php (added)
-
tags/2.0.1/templates/panel (added)
-
tags/2.0.1/templates/panel/account.php (added)
-
tags/2.0.1/templates/panel/coupon.php (added)
-
tags/2.0.1/templates/panel/detail.php (added)
-
tags/2.0.1/templates/panel/optimizer.php (added)
-
tags/2.0.1/templates/panel/range-chart.php (added)
-
tags/2.0.1/templates/panel/register.php (added)
-
tags/2.0.1/templates/panel/settings.php (added)
-
tags/2.0.1/templates/panel/sizes.php (added)
-
tags/2.0.1/templates/panel/statistics.php (added)
-
tags/2.0.1/templates/sticky-box.php (added)
-
tags/2.0.1/tp-image-optimizer.php (added)
-
trunk/assets/css/style.css (modified) (1 diff)
-
trunk/assets/js/ajax.js (modified) (1 diff)
-
trunk/assets/scss/style.scss (modified) (1 diff)
-
trunk/includes/class-image.php (modified) (1 diff)
-
trunk/includes/class-lang.php (modified) (1 diff)
-
trunk/includes/class-metabox.php (modified) (3 diffs)
-
trunk/includes/class-notice.php (modified) (1 diff)
-
trunk/includes/class-service.php (modified) (11 diffs)
-
trunk/languages/tp-image-optimizer.pot (modified) (6 diffs)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/tp-image-optimizer.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tp-image-optimizer/trunk/assets/css/style.css
r1725996 r1726842 919 919 height: 80px; 920 920 margin-top: -20px; } 921 .io-top-panel .top h 2{921 .io-top-panel .top h3 { 922 922 display: inline; 923 923 font-size: 30px; 924 924 font-weight: lighter; 925 position: absolute; } 925 position: absolute; 926 margin-top: 20px; } 926 927 .io-top-panel .top .account-info { 927 928 position: absolute; -
tp-image-optimizer/trunk/assets/js/ajax.js
r1725996 r1726842 856 856 var title = $("#tp-wrapper-panel").attr("data-title"); 857 857 var range = $("#tp-wrapper-panel").attr("data-range"); 858 if(title==''){ 859 title='Last 30 day'; 860 } 861 if(range==''){ 862 range='last_30'; 863 } 858 864 $("input#" + range).prop( "checked", true ); 859 865 if (res.success) { -
tp-image-optimizer/trunk/assets/scss/style.scss
r1725996 r1726842 1032 1032 height: 80px; 1033 1033 margin-top: -20px; 1034 h 2{1034 h3 { 1035 1035 display: inline; 1036 1036 font-size: 30px; 1037 1037 font-weight: lighter; 1038 1038 position: absolute; 1039 margin-top: 20px; 1039 1040 } 1040 1041 .account-info { -
tp-image-optimizer/trunk/includes/class-image.php
r1725996 r1726842 161 161 foreach ($images as $image) { 162 162 $db_table->assign_attachment_to_io($image, "full"); 163 wp_delete_attachment($s);164 163 } 165 164 } -
tp-image-optimizer/trunk/includes/class-lang.php
r1725996 r1726842 19 19 20 20 /** 21 * 21 * Get main text 22 22 * @return Array Main text 23 23 * @since 1.0.0 -
tp-image-optimizer/trunk/includes/class-metabox.php
r1725996 r1726842 45 45 46 46 /** 47 * TOP BAR47 * TOP BAR 48 48 * Include 49 49 * + Dashboard name … … 54 54 ?> 55 55 <div class='top'> 56 <h 2><?php echo esc_html__("Dashboard", 'tp-image-optimizer'); ?></h2>56 <h3><?php echo esc_html__("Dashboard", 'tp-image-optimizer'); ?></h3> 57 57 <div class = 'account-info'> 58 58 <?php $this->account(); ?> … … 70 70 $check_cron = get_option('tpio_cron_status'); 71 71 $check_cron = intval($check_cron); 72 $total_image_cron = 0;73 $current_cron_image = 0;74 72 $percent_cron = 0; 75 73 if ($check_cron) { -
tp-image-optimizer/trunk/includes/class-notice.php
r1725996 r1726842 1 1 <?php 2 2 3 /** 4 * Notification box 5 * @since 1.0.7 6 */ 7 class TP_Image_Optimizer_Notice extends TP_Image_Optimizer_Service { 3 /** 4 * Notification box 5 * 6 * @since 1.0.7 7 */ 8 class TP_Image_Optimizer_Notice extends TP_Image_Optimizer_Service { 8 9 9 public function __construct() {10 public function __construct() { 10 11 11 parent::__construct();12 parent::__construct(); 12 13 13 add_action( 'wp_ajax_tpio_verify_coupon', array( $this, 'ajax_verify_coupon' ) ); 14 } 15 /** 16 * Verify coupon 17 * 18 * @category Ajax 19 * @return json 20 * @since 1.0.7 21 */ 22 public function ajax_verify_coupon() { 23 24 if ( 'POST' !== strtoupper( $_SERVER['REQUEST_METHOD'] ) ) { 25 return; 26 } 27 28 if ( empty( $_POST['action'] ) || 'tpio_verify_coupon' !== $_POST['action'] || empty( $_POST['_coupon_nonce'] ) || !wp_verify_nonce( $_POST['_coupon_nonce'], 'tpio_verify_coupon' ) ) { 29 wp_send_json_error( esc_html__( 'Security key was not validated.', 'tp-image-optimizer' ) ); 14 add_action('wp_ajax_tpio_verify_coupon', array($this, 'ajax_verify_coupon')); 30 15 } 31 16 32 $coupon_code = isset( $_POST['coupon_code'] ) ? sanitize_text_field( $_POST['coupon_code'] ) : ''; 17 /** 18 * Verify coupon 19 * 20 * @category Ajax 21 * @return json 22 * @since 1.0.7 23 */ 24 public function ajax_verify_coupon() { 33 25 34 if ( empty( $coupon_code ) ) { 35 wp_send_json_error( esc_html__( 'Please enter a coupon code', 'tp-image-optimizer' ) ); 26 if ('POST' !== strtoupper($_SERVER['REQUEST_METHOD'])) { 27 return; 28 } 29 30 if (empty($_POST['action']) || 'tpio_verify_coupon' !== $_POST['action'] || empty($_POST['_coupon_nonce']) || !wp_verify_nonce($_POST['_coupon_nonce'], 'tpio_verify_coupon')) { 31 wp_send_json_error(esc_html__('Security key was not validated.', 'tp-image-optimizer')); 32 } 33 34 $coupon_code = isset($_POST['coupon_code']) ? sanitize_text_field($_POST['coupon_code']) : ''; 35 36 if (empty($coupon_code)) { 37 wp_send_json_error(esc_html__('Please enter a coupon code', 'tp-image-optimizer')); 38 } 39 40 $response = wp_remote_post($this->__get('service') . 'verify-coupon', array( 41 'headers' => array( 42 'authentication' => $this->__get('token') 43 ), 44 'body' => array( 45 'coupon' => $coupon_code, 46 ) 47 )); 48 49 $status_code = wp_remote_retrieve_response_code($response); 50 51 if ($status_code == 404) { 52 wp_send_json_error(esc_html__('Service cannot established.', 'tp-image-optimizer')); 53 } 54 55 if (!is_wp_error($response)) { 56 57 $response = wp_remote_retrieve_body($response); 58 59 $response = json_decode($response); 60 61 if (!empty($response->success)) { 62 63 $html = '<strong>' . esc_html__('Done! Your coupon has been applied successfully.', 'tp-image-optimizer') . '</strong> <br/>'; 64 $html .= wp_kses_post($response->data); 65 delete_transient('tp_image_optimizer_statistics_service'); 66 wp_send_json_success($html); 67 } else { 68 if (!empty($response->data)) { 69 wp_send_json_error($response->data); 70 } 71 } 72 } 73 74 wp_send_json_error(esc_html__('Apply coupon has some error', 'tp-image-optimizer')); 36 75 } 37 76 38 $response = wp_remote_post( $this->__get( 'service' ) . 'verify-coupon', array(39 'headers' => array(40 'authentication' => $this->__get( 'token' )41 ),42 'body' => array(43 'coupon' => $coupon_code,44 )45 ) );46 47 $status_code = wp_remote_retrieve_response_code( $response );48 49 if ( $status_code == 404 ) {50 wp_send_json_error( esc_html__( 'Service cannot established.', 'tp-image-optimizer' ) );51 }52 53 if ( !is_wp_error( $response ) ) {54 55 $response = wp_remote_retrieve_body( $response );56 57 $response = json_decode( $response );58 59 if ( !empty( $response->success ) ) {60 61 $html = '<strong>' . esc_html__( 'Done! Your coupon has been applied successfully.', 'tp-image-optimizer' ) . '</strong> <br/>';62 $html .= wp_kses_post( $response->data );63 delete_transient( 'tp_image_optimizer_statistics_service' );64 wp_send_json_success( $html );65 } else if ( !empty( $response->data ) ) {66 wp_send_json_error( $response->data );67 }68 }69 70 wp_send_json_error( esc_html__( 'Apply coupon has some error', 'tp-image-optimizer' ) );71 77 } 72 78 73 } 74 75 new TP_Image_Optimizer_Notice(); 79 new TP_Image_Optimizer_Notice(); -
tp-image-optimizer/trunk/includes/class-service.php
r1725996 r1726842 326 326 } 327 327 328 329 328 /** 330 329 * Request ThemesPond compress service … … 340 339 * @since 1.0.0 341 340 */ 342 public static function request_service($attachment_id = '', $size_name = 'full', $timeout = 450 ) {341 public static function request_service($attachment_id = '', $size_name = 'full', $timeout = 4500) { 343 342 update_option('tpio_id_processing', $attachment_id); // Update image processing 344 343 ini_set('max_execution_time', 0);// Fix if timeout is low 345 344 $db_table = new TP_Image_Optimizer_Table(); 346 345 $service = TP_Image_Optimizer_Service::$service . 'compress'; … … 354 353 'size' => $size_name, 355 354 'old_size' => $file_size_old, 356 'new_size' => $file_size_old 355 'new_size' => $file_size_old, 356 'error_log' => esc_html__("Unexpected error!", 'tp-image-optimizer') 357 357 ); 358 358 359 $check_image_on_db = $db_table->check_image_size_on_db($attachment_id, $size_name); 359 360 if (!$check_image_on_db && $file_size_old > 0) { 360 361 $db_table->assign_attachment_to_io($attachment_id, $size_name); 361 362 } 362 // Validate image mime 363 // Reject unsupported image type 363 // Validate supported image mime 364 364 $image_mime = get_post_mime_type($attachment_id); 365 365 if (($image_mime != 'image/png') && ($image_mime != 'image/jpeg')) { 366 $data_return['success'] = false;367 366 $image_mime = strtoupper(str_replace('image/', '', $image_mime)); 368 367 $data_return['error_log'] = esc_html__(sprintf("%s isn't support at this time", $image_mime), 'tp-image-optimizer'); … … 375 374 $data_return['success'] = true; 376 375 $data_return['error_log'] = esc_html__("404 error: This attachment image (original image or cropped image by WordPress) has been existing in Database, but removed.", "tp-image-optimizer"); 377 // Attachment image has been deleted, need remove this ID from IO Database Table 378 //$db_table->remove_deleted_attachment_image($attachment_id); 376 //$db_table->remove_deleted_attachment_image($attachment_id);// Remove this ID from IO Database Table 379 377 return $data_return; 380 378 } … … 388 386 // Validate Image Type 389 387 if (!wp_attachment_is_image($attachment_id)) { 390 $data_return['success'] = false;391 388 $data_return['error_log'] = esc_html__("This attachment isn't image type", 'tp-image-optimizer'); 392 389 // Remove this ID from IO Database Table … … 408 405 ), 409 406 'timeout' => $timeout, 407 'body' => file_get_contents($image_file) 410 408 ); 411 $data['body'] = file_get_contents($image_file);412 409 // Sending to service 413 410 $response = wp_remote_post($service, $data); … … 420 417 $error_remote = "Something went wrong: $error_message"; 421 418 update_option('tp_remote_error', $error_remote); // Log to database 422 423 return TP_Image_Optimizer_Service::request_service($attachment_id, $size_name, 900); 419 420 $result = TP_Image_Optimizer_Service::request_service($attachment_id, $size_name, 9000); 421 422 return $result; 424 423 } 425 424 /** 426 * Unexpectederror425 * Service error 427 426 */ 428 427 if ($status_code != 200) { … … 438 437 439 438 if (($response == '') || ($response == 'false')) { //Timeout or no internet connection 440 return TP_Image_Optimizer_Service::request_service($attachment_id, $size_name, 900); 439 // Check number error by timeout 440 $number = intval(get_option("tpio_timeout_count")); 441 $number = $number + 1; 442 update_option('tpio_timeout_count', $number); 443 if(number<2){ 444 $result = TP_Image_Optimizer_Service::request_service($attachment_id, $size_name, 9000); 445 return $result; 446 } else{ 447 $data_return['error_log'] = esc_html__('Cannot process this image because maximum execution timeout ! Please increase max_execution_time in php.ini to fix this.', 'tp-image-optimizer'); 448 return $data_return; 449 } 441 450 } 442 451 … … 444 453 * VALIDATE DATA RESPONSE IS IMAGE or NOT * 445 454 * *************************************** */ 446 447 455 // Condition 1 : Service return error 448 $check = isJSON($response); 449 // If $check == true, it mean server return an error 450 // Condition 2 : Unexpected error 456 $check = isJSON($response);// If $check == true, it mean server return an error 457 // Condition 2 : API unexpected error 451 458 $check2 = false; 452 453 if ((strpos($response, 'something went wrong') !== false) || (strpos($response, '<html>') !== false)) { 459 if ((strpos($response, 'something went wrong') !== false) || (strpos($response, '<html') !== false)) { 454 460 $check2 = true; 455 461 } 462 463 /** 464 * RETURN RESULT -------------------------------------------------------------------------------------- 465 */ 456 466 if (!$check && !$check2) { 457 $origin_path = tp_image_optimizer_scaled_image_path($attachment_id, $size_name); 467 $data_return['success'] = true; 468 unset($data_return['error_log']); // No error 469 delete_option('tpio_timeout_count'); // Clear timeout statistics 458 470 /** 459 471 * Replace original attachment image by optimized file 460 472 * Override original image by response image from PostImage Service 461 473 */ 474 $origin_path = tp_image_optimizer_scaled_image_path($attachment_id, $size_name); 462 475 $img_origin_load = @fopen($origin_path, "w"); 463 476 $result_write_file = fwrite($img_origin_load, $response); 464 // Result 465 $data_return['new_size'] = $result_write_file; 466 $data_return['success'] = true; 477 // Notice for user 467 478 $data_return['log'] = esc_html__("Success optimizer #", 'tp-image-optimizer') . $attachment_id . ' - ' . $size_name; 468 // Update current size after optimized479 $data_return['new_size'] = $result_write_file;// Update current size after optimized 469 480 $db_table->update_current_size_for_attachment($attachment_id, $size_name, $result_write_file); 470 471 return $data_return;472 481 } else { 473 if ($check2) { 474 $data_return['success'] = false; 475 $data_return['error_log'] = esc_html__("Unexpected error!", 'tp-image-optimizer'); 476 477 return $data_return; 478 } 479 /** 480 * SERVER RETURN JSON LOG 481 * Catch error 482 */ 483 $error_data = json_decode($response); 484 485 if ($error_data->status == 400) { 486 $data_return['new_size'] = $file_size_old; 487 $data_return['log'] = esc_html__("Success optimizer #", 'tp-image-optimizer') . $attachment_id; 488 $data_return['success'] = true; 489 490 return ($data_return); 491 } 492 // Logging 493 $data_return['error_log'] = $error_data->error; 494 $data_return['success'] = false; 495 496 return ($data_return); 497 } 498 $data_return['success'] = false; 499 $data_return['error_log'] = esc_html__("Unexpected error!", 'tp-image-optimizer'); 500 482 if (!$check2) { 483 /** 484 * SERVER RETURN JSON LOG 485 * Catch error 486 */ 487 $error_data = json_decode($response); 488 $data_return['error_log'] = $error_data->error; 489 } 490 } 501 491 return $data_return; 502 492 } 503 493 504 494 /** 505 * Cancel cronjob495 * Cancel WordPress cronjob 506 496 * 507 497 * @since 1.0.8 … … 531 521 /** 532 522 * Manual compress 533 * 523 * 524 * @category Ajax 534 525 * @since 1.0.8 535 526 */ … … 621 612 * Connect service and get 622 613 * 623 * @param type$range614 * @param string $range 624 615 * 625 616 */ -
tp-image-optimizer/trunk/languages/tp-image-optimizer.pot
r1725996 r1726842 4 4 "Project-Id-Version: PACKAGE VERSION\n" 5 5 "Report-Msgid-Bugs-To: \n" 6 "POT-Creation-Date: 2017-09-0 7 01:53+0000\n"6 "POT-Creation-Date: 2017-09-08 06:52+0000\n" 7 7 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 8 8 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 56 56 msgstr "" 57 57 58 #: includes/class-image.php:19 258 #: includes/class-image.php:191 59 59 msgid "Saving " 60 60 msgstr "" 61 61 62 #: includes/class-image.php:19 562 #: includes/class-image.php:194 63 63 msgid "%" 64 64 msgstr "" 65 65 66 #: includes/class-image.php:24 766 #: includes/class-image.php:246 67 67 msgid "All image sizes were updated successfully." 68 68 msgstr "" 69 69 70 #: includes/class-image.php:2 8070 #: includes/class-image.php:279 71 71 msgid "" 72 72 "This feature is only compatible with WordPress 4.3+. Update your WordPress " … … 74 74 msgstr "" 75 75 76 #: includes/class-image.php:29 376 #: includes/class-image.php:292 77 77 msgid "No media files found." 78 78 msgstr "" 79 79 80 #: includes/class-image.php:29 580 #: includes/class-image.php:294 81 81 msgid "Refresh" 82 82 msgstr "" … … 314 314 msgstr "" 315 315 316 #: includes/class-metabox.php:166 317 msgid "Last 30 day" 318 msgstr "" 319 320 #: includes/class-metabox.php:167 321 msgid "Current month" 322 msgstr "" 323 316 324 #: includes/class-metabox.php:168 317 msgid "Last 30 day"318 msgstr ""319 320 #: includes/class-metabox.php:169321 msgid "Current month"322 msgstr ""323 324 #: includes/class-metabox.php:170325 325 msgid "Last month" 326 326 msgstr "" 327 327 328 #: includes/class-metabox.php:200 329 msgid "Lower" 330 msgstr "" 331 332 #: includes/class-metabox.php:201 333 msgid "Medium" 334 msgstr "" 335 328 336 #: includes/class-metabox.php:202 329 msgid " Lower"337 msgid "High (Recommend)" 330 338 msgstr "" 331 339 332 340 #: includes/class-metabox.php:203 333 msgid "Medium"334 msgstr ""335 336 #: includes/class-metabox.php:204337 msgid "High (Recommend)"338 msgstr ""339 340 #: includes/class-metabox.php:205341 341 msgid "Very high" 342 342 msgstr "" 343 343 344 #: includes/class-notice.php: 29344 #: includes/class-notice.php:31 345 345 msgid "Security key was not validated." 346 346 msgstr "" 347 347 348 #: includes/class-notice.php:3 5348 #: includes/class-notice.php:37 349 349 msgid "Please enter a coupon code" 350 350 msgstr "" 351 351 352 #: includes/class-notice.php:5 0includes/class-service.php:145352 #: includes/class-notice.php:52 includes/class-service.php:145 353 353 msgid "Service cannot established." 354 354 msgstr "" 355 355 356 #: includes/class-notice.php:6 1356 #: includes/class-notice.php:63 357 357 msgid "Done! Your coupon has been applied successfully." 358 358 msgstr "" 359 359 360 #: includes/class-notice.php:7 0360 #: includes/class-notice.php:74 361 361 msgid "Apply coupon has some error" 362 362 msgstr "" … … 370 370 msgstr "" 371 371 372 #: includes/class-service.php:376 372 #: includes/class-service.php:356 373 msgid "Unexpected error!" 374 msgstr "" 375 376 #: includes/class-service.php:375 373 377 msgid "" 374 378 "404 error: This attachment image (original image or cropped image by " … … 376 380 msgstr "" 377 381 378 #: includes/class-service.php:38 4382 #: includes/class-service.php:382 379 383 msgid "Image is too small" 380 384 msgstr "" 381 385 382 #: includes/class-service.php:3 91386 #: includes/class-service.php:388 383 387 msgid "This attachment isn't image type" 384 388 msgstr "" 385 389 386 #: includes/class-service.php:43 2390 #: includes/class-service.php:431 387 391 msgid "Cannot connect to service." 388 392 msgstr "" 389 393 390 #: includes/class-service.php:467 includes/class-service.php:487 394 #: includes/class-service.php:447 395 msgid "" 396 "Cannot process this image because maximum execution timeout ! Please " 397 "increase max_execution_time in php.ini to fix this." 398 msgstr "" 399 400 #: includes/class-service.php:478 391 401 msgid "Success optimizer #" 392 msgstr ""393 394 #: includes/class-service.php:475 includes/class-service.php:499395 msgid "Unexpected error!"396 402 msgstr "" 397 403 -
tp-image-optimizer/trunk/readme.txt
r1725996 r1726842 4 4 Tags: image compressor, png compressor, image size reducer, image optimizer, compress image, optimize image, smaller image, compress jpg, jpg compressor, free image optimizer, compress, image, optimize, performance, resize, lossless, optimization 5 5 Requires at least: 4.0 6 Tested up to: 4.8 7 Stable tag: 2.0. 06 Tested up to: 4.8.1 7 Stable tag: 2.0.1 8 8 License: GPLv3 9 9 License URI: http://www.gnu.org/licenses/gpl-3.0.html … … 61 61 62 62 1. Install to get a free token 63 2. Enjoin with TP Image Optimizer 63 2. Settings screen 64 3. Enjoin with TP Image Optimizer 64 65 65 66 == Upgrade Notice == … … 68 69 69 70 == Changelog == 71 = 2.0.1 (September 08, 2017) : = 72 * Fix bug conflicts with WordPress notice 73 * Fix bug interrupted by timeout 70 74 71 75 = 2.0.0 (September 07, 2017) : = -
tp-image-optimizer/trunk/tp-image-optimizer.php
r1725996 r1726842 4 4 * Plugin Name: TP Image Optimizer 5 5 * Description: A WordPress plugin that allows you to reduce image file sizes and optimize all images in the media library. 6 * Version: 2.0. 06 * Version: 2.0.1 7 7 * Author: ThemesPond 8 8 * Author URI: https://themespond.com/ … … 11 11 * 12 12 * Requires at least: 4.0 13 * Tested up to: 4.8 13 * Tested up to: 4.8.1 14 14 * Text Domain: tp-image-optimizer 15 15 * Domain Path: /languages/
Note: See TracChangeset
for help on using the changeset viewer.