Plugin Directory

Changeset 3149231


Ignore:
Timestamp:
09/10/2024 12:31:41 PM (19 months ago)
Author:
ilovepdf
Message:

Update to version 2.2.1 from GitHub

Location:
watermark-protect-images
Files:
16 edited
1 copied

Legend:

Unmodified
Added
Removed
  • watermark-protect-images/tags/2.2.1/README.md

    r3119477 r3149231  
    1 === Best Watermark - Protect images on your site with iLoveIMG ===
    2 Plugin Name: Best Watermark - Protect images on your site with iLoveIMG
    3 Version: 2.2.0
    4 Author: iLovePDF
    5 Author URI: https://www.iloveimg.com/
    6 Contributors: iLovePDF
    7 Tags: watermark, image protection, photography, picture, e-commerce
    8 Requires at least: 5.3
    9 Tested up to: 6.6
    10 Stable tag: 2.2.0
    11 Requires PHP: 7.4
    12 License: GPLv2 or later
    13 License URI: https://www.gnu.org/licenses/gpl-2.0.html
     1# Best Watermark - Protect Images on Your Site with iLoveIMG
    142
    153Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.
    164
    17 == Description ==
     5## Description
    186
    19 Protect your images from theft. Now you can get a powerful, easy to use, and reliable Watermark plugin for your image protection needs. With full automation and powerful features, iLoveIMG makes it easy to prevent unauthorized usage of your images by helping you create highly customized watermarks in just a few seconds.
     7**Best Watermark - Protect Images on Your Site with iLoveIMG** is a powerful, easy-to-use watermarking plugin designed to safeguard your images from unauthorized use. In just a few seconds, you can create highly customizable watermarks, combining image and text to prevent your images from being shared or displayed without your consent.
    208
    21 Create custom watermarks combining image and text and protect your images from being shared or featured without owner consent.
     9**Key Features:**
    2210
    23 Trust reliable developers. **Best Watermark - Protect images on your site with iLoveIMG** is brought to you by the same developers of iLoveIMG.com, popular image editor trusted by millions.
     11- **Text and Image Watermarks**: Add text or image watermarks anywhere on your photos.
     12- **Extensive Customization**: Adjust typography, font size, transparency, and rotation to personalize your watermark.
     13- **Batch Processing**: Watermark multiple images at once, saving time for more important tasks.
     14- **Popular Image Formats Supported**: Works with JPG, PNG, and GIF formats.
     15- **Media Library Protection**: Apply watermarks to images already uploaded to your WordPress media library.
     16- **Restore Option**: Automatically backs up images before applying a watermark, allowing you to restore the original version if needed.
     17- **Ease of Use**: Intuitive design for effortless image protection.
    2418
    25 **If you are looking for the best watermarking tool, iLoveIMG plugin comes packed with plenty of features.**
     19**Advanced Capabilities:**
    2620
    27 - **Text and image watermarks** - Place image or text watermarks anywhere on your photo.
    28 - **Plenty of custom settings** - Adjust typography, font, size, transparency, and rotation to personalize watermark.
    29 - **Bulk protection** - Batch protect your images in a single click and save time for more important concerns.
    30 - **Popular image formats supported** - Watermark JPG, PNG and GIF to ensure fast site navigation.
    31 - **Extensive coverage** - Protect images already uploaded to Media Library.
    32 - **Restore option** - Image backup is created before watermark is added.
    33 - **Incredibly easy to use** - Designed with ease of use in mind.
     21- **Image Optimization**: Fully compatible with our Image Compression plugin to optimize images, improve page speed, and boost SEO.
     22- **eCommerce Friendly**: Perfect for WooCommerce, NextGen Gallery, and other eCommerce solutions.
     23- **Privacy Focused**: No data is stored or collected. Complies with GDPR.
     24- **Freemium Service**: Use up to 2500 credits per month for free. Need more? Subscribe to [Premium](https://iloveapi.com/pricing) or buy a [prepaid package](https://iloveapi.com/pricing).
    3425
    35 **Beyond the basics, iLoveIMG is a fully compatible and extendable image watermarking plugin.**
     26Ensure your online images are protected from unauthorized use with iLoveIMG Watermark plugin.
    3627
    37 - **Optimization option available** - Full Compatible with our Image Compressor plugin. Optimize your Wordpress images and make your site load faster to boost search engine ranking.
    38 - **Good for eCommerce** - Works great for eCommerce websites using WooCommerce, NextGen Gallery and other plugins for e-commerce.
    39 - **Security first** - Your data is not stored nor collected on our services. We are GDPR compliant.
    40 - **Frequent updates** - Get a stable and frequently updated image compression plugin.
    41 - **Freemium service** - Freely up to 2500 credits per month. Need more? Subscribe our [Premium plan](https://iloveapi.com/pricing) or buy a [prepaid package](https://iloveapi.com/pricing) to use at your convenience.
     28## Installation
    4229
    43 With online images being shared and re-shared all over the Internet, it's easy to lose track of the original author. iLoveIMG Watermark plugin helps you protect the rights of your online photos.
     30### From the WordPress Admin Panel:
     311. Navigate to **Plugins > Add New**.
     322. Search for "iLoveIMG" and click **Install Now**.
     333. After installation, activate the plugin from your **Plugins page.**
    4434
    45 == Installation ==
     35### Manual Installation:
     361. Upload the `watermark-protect-images` folder to the `/wp-content/plugins/` directory.
     372. Activate the plugin through the **Plugins** menu in WordPress.
     383. Go to the plugin settings page and create a free account or log in with an existing iLoveAPI account.
     394. Configure the settings as per your requirements.
    4640
    47 1. **Click the ‘Install Now’ button**. WordPress will download and install the plugin for you.
    48 2. **Wait for the success message**. A pop-up window with a link to activate the plugin will appear.
    49 3. **Activate the plugin**. iLoveIMG plugin can be installed on your site, but it will not work unless you activate it. So go ahead and click on the link to activate the plugin on your WordPress site.
     41## Frequently Asked Questions
    5042
    51 == Frequently Asked Questions ==
     43### Can I use the plugin for free?
     44Yes, free users have up to 2500 credits per month. Once you reach this limit, you will need to wait until the next month or purchase credits.
    5245
    53 **Can I use the plugin for free?**
     46### Can I make a one-time payment?
     47Absolutely. You can buy a prepaid package with credits that never expire.
    5448
    55 Absolutely. As a free user, we let you process your first 2500 monthly credits. Once this limit is reached, you cannot watermark new images until next month unless you purchase credits.
     49### What happens to my original images?
     50iLoveIMG creates backups of your original images before watermarking. You can restore them anytime.
    5651
    57 **Can I make a one-time payment?**
     52### Do I need coding skills to use this plugin?
     53No. The plugin is designed for users of all skill levels, requiring no technical knowledge.
    5854
    59 Yes, you can. You can buy a pre-paid package, which will never expire.
     55### How can I optimize my photos?
     56You can install the iLoveIMG Image Compression plugin to optimize your site images for faster load times.
    6057
    61 **What happens with my original images?**
     58### Which image formats are supported?
     59The plugin supports watermarking for JPG, PNG, and GIF formats.
    6260
    63 iLoveIMG automatically replaces your uploaded images with an optimized version.
     61### Do you have a REST API?
     62Yes! This plugin is powered by our API, and you can integrate it into your own software. Learn more about the [iLoveAPI](https://iloveapi.com).
    6463
    65 **Do I need to have coding skills to use iLoveIMG Plugin?**
    66 
    67 Absolutely not. You can watermark image galleries without any coding or technical knowledge. We like to make things easy.
    68 
    69 **How can I optimize my photos?**
    70 
    71 Get Image Compression Plugin by iLoveIMG to optimize your site images and speed up your website. 
    72 
    73 **Which formats can be protected?**
    74 
    75 iLoveIMG Watermark plugin can optimize images in JPG, PNG and GIF format.
    76 
    77 **Do you have an API REST?**
    78 
    79 Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveIMG API for developers](https://iloveapi.com).
    80 
    81 **Do you care about the privacy of my images?**
    82 
    83 All our servers are strictly monitored as we comply with the European Data Privacy Regulation, one of the highest standards in the EU.  All uploaded files use https/SSL and include our end-to-end encryption for further privacy of your data.
    84 
    85 Moreover, all processed files are automatically deleted from our servers after being processed in a time range of one, two and twenty-four hours (depending on your user status). You can check detailed info at our [Privacy Policy](https://www.iloveimg.com/help/privacy) and our [Terms and Conditions](https://www.iloveimg.com/help/terms)
    86 
    87 == Changelog ==
    88 
    89 == 2.2.0 ==
    90 Improved
    91 * Update Libraries.
    92 * Now IloveIMG will use credits to process the files.
    93 * Now iloveimg accounts have been migrated to ilovepdf.
    94 * Improved the function to restore all files.
    95 
    96 Fixed
    97 * When autowatermark is activated and you wanted to restore a specific file, it was watermarked again.
    98 
    99 == 2.1.0 ==
    100 Added
    101 * Functionality to restore images individually.
    102 
    103 Improved
    104 * Update Libraries.
    105 * Time limit is set for PHP when it is less than 300.
    106 * On the individual page of a file, iloveimg watermark buttons are now displayed whenever the file is a IMAGE.
    107 
    108 Fixed
    109 * Fixed a problem with restoring files and cleaning backups.
    110 
    111 == 2.0.3 ==
    112 Added
    113 * Update libraries.
    114 * Assets files were optimized.
    115 
    116 == 2.0.2 ==
    117 Added
    118 * Update iloveimg-php library
    119 
    120 == 2.0.1 ==
    121 Added
    122 * Improved class loading.
    123 
    124 Fixed
    125 * check if key iloveimg_field_image exist.
    126 
    127 == 2.0.0 ==
    128 Changed
    129 * Minimum Support WP Version to 5.3
    130 * Minimum Support PHP to 7.4
    131 * Support WP 6.4.1
    132 
    133 Fixed
    134 * catch processing error for php 8.
    135 
    136 = 1.0.4 =
    137 Changed
    138 * Formatting and comment files according to php/wordpress standards.
    139 * remove comments.
    140 * dirname() to __DIR__ constant.
    141 * constant names in uppercase.
    142 * function names is not snake case format.
    143 * classes name with prefix and capital letter.
    144 * variables name is not snake case  format and include prefix.
    145 * classes files rename.
    146 * Use Yoda Conditions to check.
    147 * hook names with prefix.
    148 * Increment operators.
    149 * gmdate() instead date().
    150 * change from json_encode() to wp_json_encode().
    151 * change from unlink() to wp_delete_file().
    152 * Use WP_Filesystem.
    153 * Update iloveimg-php library to V1.1.16
    154 
    155 Added
    156 * missing documentation.
    157 * Missing Domain text.
    158 * Escape/sanitize data.
    159 * using strict comparison for in_array.
    160 
    161 Fixed
    162 * Logical operator "and" changed to "&&"
    163 * Logical operator "or" changed to "||"
    164 * Visibility must be declared on method.
    165 * Assignments must be the first block of code on a line.
    166 * Loose comparisons are not allowed.
    167 * Fix conversion from number string to int.
    168 * Check if superglobal variables exist.
    169 * name of function.
    170 * Error checking.
    171 * Noce verification.
    172 * Serialized data has known vulnerability problems with Object Injection. Changed to JSON Encode.
    173 * Variables $height, $width, $options_value, $ilove_img_wm_is_logged not be defined.
    174 * Negated boolean expression is always true.
    175 * An infinite loop was generated. The method itself called itself every time the process failed.
    176 * on some servers, the $path_file variable did not contain the correct url.
    177 
    178 = 1.0.3 =
    179 * Synchronize repositories
    180 
    181 = 1.0.2 =
    182 - Fix: Bug fixes
    183 
    184 = 1.0.1 =
    185 
    186 - Fix: Bug fixes
     64### How do you ensure the privacy of my images?
     65We comply with the GDPR and use end-to-end encryption. Files are automatically deleted from our servers within a time range of 1 to 24 hours, depending on your user status. Read more in our [Privacy Policy](https://www.iloveimg.com/help/privacy) and [Terms and Conditions](https://www.iloveimg.com/help/terms).
  • watermark-protect-images/tags/2.2.1/README.txt

    r3119477 r3149231  
    11=== Best Watermark - Protect images on your site with iLoveIMG ===
    22Plugin Name: Best Watermark - Protect images on your site with iLoveIMG
    3 Version: 2.2.0
     3Version: 2.2.1
    44Author: iLovePDF
    55Author URI: https://www.iloveimg.com/
     
    77Tags: watermark, image protection, photography, picture, e-commerce
    88Requires at least: 5.3
    9 Tested up to: 6.6
    10 Stable tag: 2.2.0
     9Tested up to: 6.6.1
     10Stable tag: 2.2.1
    1111Requires PHP: 7.4
    1212License: GPLv2 or later
     
    4545== Installation ==
    4646
    47 1. **Click the ‘Install Now’ button**. WordPress will download and install the plugin for you.
    48 2. **Wait for the success message**. A pop-up window with a link to activate the plugin will appear.
    49 3. **Activate the plugin**. iLoveIMG plugin can be installed on your site, but it will not work unless you activate it. So go ahead and click on the link to activate the plugin on your WordPress site.
     47From your Admin panel:
     481. Visit Plugins > Add New.
     492. Search for **iloveIMG** and press the **Install Now** button.
     503. Activate the plugin from your Plugins page.
     51
     52Manual:
     531. Upload `watermark-protect-images` to the `/wp-content/plugins/` directory
     542. Activate the plugin through the 'Plugins' menu in WordPress
     553. Create a free account in the plugin settings page, or use your existing one
     564. Configure the plugin as you like
    5057
    5158== Frequently Asked Questions ==
     
    7784**Do you have an API REST?**
    7885
    79 Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveIMG API for developers](https://iloveapi.com).
     86Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveAPI for developers](https://iloveapi.com).
    8087
    8188**Do you care about the privacy of my images?**
     
    8592Moreover, all processed files are automatically deleted from our servers after being processed in a time range of one, two and twenty-four hours (depending on your user status). You can check detailed info at our [Privacy Policy](https://www.iloveimg.com/help/privacy) and our [Terms and Conditions](https://www.iloveimg.com/help/terms)
    8693
     94== Screenshots ==
     95
     961. Account settings and tool configuration.
     972. Configure Watermark IMG.
     983. Backup available.
     994. Image listing page.
     100
    87101== Changelog ==
    88102
    89 == 2.2.0 ==
     103= 2.2.1 =
     104Improved
     105* Update Libraries.
     106* Improved error handling when a credential issue occurs.
     107* Improved readme texts.
     108
     109= 2.2.0 =
    90110Improved
    91111* Update Libraries.
     
    97117* When autowatermark is activated and you wanted to restore a specific file, it was watermarked again.
    98118
    99 == 2.1.0 ==
     119= 2.1.0 =
    100120Added
    101121* Functionality to restore images individually.
     
    109129* Fixed a problem with restoring files and cleaning backups.
    110130
    111 == 2.0.3 ==
     131= 2.0.3 =
    112132Added
    113133* Update libraries.
    114134* Assets files were optimized.
    115135
    116 == 2.0.2 ==
     136= 2.0.2 =
    117137Added
    118138* Update iloveimg-php library
    119139
    120 == 2.0.1 ==
     140= 2.0.1 =
    121141Added
    122142* Improved class loading.
     
    125145* check if key iloveimg_field_image exist.
    126146
    127 == 2.0.0 ==
     147= 2.0.0 =
    128148Changed
    129149* Minimum Support WP Version to 5.3
  • watermark-protect-images/tags/2.2.1/admin/Ilove_Img_Wm_Plugin.php

    r3119477 r3149231  
    1919     * @var      string    VERSION    The current version of the plugin.
    2020     */
    21     const VERSION = '2.2.0';
     21    const VERSION = '2.2.1';
    2222
    2323    /**
     
    139139            $images        = $ilove->watermark( $attachment_id );
    140140
    141             if ( false !== $images ) {
     141            if ( ! $images['error'] ) {
    142142                Ilove_Img_Wm_Resources::render_watermark_details( $attachment_id );
    143143            } else {
    144144                ?>
    145                 <p>There was a problem processing your image.</p>
     145                <p><?php echo esc_html( $images['error_msg'] ); ?></p>
    146146                <?php
    147147            }
  • watermark-protect-images/tags/2.2.1/admin/Ilove_Img_Wm_Process.php

    r3119477 r3149231  
    173173                update_post_meta( $images_id, 'iloveimg_status_watermark', 2 ); // status watermarked
    174174
    175                 return $images;
     175                return array(
     176                    'error'  => false,
     177                    'images' => $images,
     178                );
    176179
    177180            } else {
    178181                update_post_meta( $images_id, 'iloveimg_status_watermark', 3 ); // status queue
    179182
    180                 return false;
     183                return array(
     184                    'error'     => true,
     185                    'error_msg' => __( 'There was a problem processing your image.', 'iloveimg-watermark' ),
     186                );
    181187            }
    182188        } catch ( \Exception $e ) {
     
    184190            error_log('Exception on watermark Method: ' . print_r($e, true)); // phpcs:ignore
    185191
    186             return false;
     192            $error_msg = 'There was a problem processing your image.';
     193
     194            if ( 401 === $e->getCode() ) {
     195                $error_msg = 'Check your credentials in the plugin settings page. If you recently deleted a project in your iloveapi account, try switching to another project to correctly save your API Keys.';
     196            }
     197
     198            return array(
     199                'error'     => true,
     200                'error_msg' => $error_msg,
     201            );
    187202        }
    188203    }
  • watermark-protect-images/tags/2.2.1/ilove-img-watermark.php

    r3119477 r3149231  
    1616 * Plugin URI:        https://iloveapi.com/
    1717 * Description:       Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.
    18  * Version:           2.2.0
     18 * Version:           2.2.1
    1919 * Requires at least: 5.3
    2020 * Requires PHP:      7.4
  • watermark-protect-images/tags/2.2.1/package.json

    r3119477 r3149231  
    22  "name": "iloveimg-wp-watermark",
    33  "version": "1.0.0",
    4   "description": "=== Best Watermark - Protect images on your site with iLoveIMG ===\r Plugin Name: Best Watermark - Protect images on your site with iLoveIMG\r Version: 2.0.3\r Author: iLovePDF\r Author URI: https://www.iloveimg.com/\r Contributors: iLovePDF\r Tags: watermark, image protection, photography, picture, e-commerce\r Requires at least: 5.3\r Tested up to: 6.4.3\r Stable tag: 2.0.3\r Requires PHP: 7.4\r License: GPLv2 or later\r License URI: https://www.gnu.org/licenses/gpl-2.0.html",
     4  "description": "Best Watermark - Protect images on your site with iLoveIMG. Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.",
    55  "main": "index.js",
    66  "scripts": {
     
    1717    "gulp-uglify": "^3.0.2",
    1818    "merge-stream": "^2.0.0",
    19     "sass": "^1.77.8"
     19    "sass": "^1.78"
    2020  }
    2121}
  • watermark-protect-images/tags/2.2.1/vendor/composer/installed.json

    r3119477 r3149231  
    6969        {
    7070            "name": "guzzlehttp/guzzle",
    71             "version": "7.8.1",
    72             "version_normalized": "7.8.1.0",
     71            "version": "7.9.2",
     72            "version_normalized": "7.9.2.0",
    7373            "source": {
    7474                "type": "git",
    7575                "url": "https://github.com/guzzle/guzzle.git",
    76                 "reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
    77             },
    78             "dist": {
    79                 "type": "zip",
    80                 "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
    81                 "reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
     76                "reference": "d281ed313b989f213357e3be1a179f02196ac99b"
     77            },
     78            "dist": {
     79                "type": "zip",
     80                "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b",
     81                "reference": "d281ed313b989f213357e3be1a179f02196ac99b",
    8282                "shasum": ""
    8383            },
    8484            "require": {
    8585                "ext-json": "*",
    86                 "guzzlehttp/promises": "^1.5.3 || ^2.0.1",
    87                 "guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
     86                "guzzlehttp/promises": "^1.5.3 || ^2.0.3",
     87                "guzzlehttp/psr7": "^2.7.0",
    8888                "php": "^7.2.5 || ^8.0",
    8989                "psr/http-client": "^1.0",
     
    9696                "bamarni/composer-bin-plugin": "^1.8.2",
    9797                "ext-curl": "*",
    98                 "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
     98                "guzzle/client-integration-tests": "3.0.2",
    9999                "php-http/message-factory": "^1.1",
    100                 "phpunit/phpunit": "^8.5.36 || ^9.6.15",
     100                "phpunit/phpunit": "^8.5.39 || ^9.6.20",
    101101                "psr/log": "^1.1 || ^2.0 || ^3.0"
    102102            },
     
    106106                "psr/log": "Required for using the Log middleware"
    107107            },
    108             "time": "2023-12-03T20:35:24+00:00",
     108            "time": "2024-07-24T11:22:20+00:00",
    109109            "type": "library",
    110110            "extra": {
     
    178178            "support": {
    179179                "issues": "https://github.com/guzzle/guzzle/issues",
    180                 "source": "https://github.com/guzzle/guzzle/tree/7.8.1"
     180                "source": "https://github.com/guzzle/guzzle/tree/7.9.2"
    181181            },
    182182            "funding": [
     
    198198        {
    199199            "name": "guzzlehttp/promises",
    200             "version": "2.0.2",
    201             "version_normalized": "2.0.2.0",
     200            "version": "2.0.3",
     201            "version_normalized": "2.0.3.0",
    202202            "source": {
    203203                "type": "git",
    204204                "url": "https://github.com/guzzle/promises.git",
    205                 "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
    206             },
    207             "dist": {
    208                 "type": "zip",
    209                 "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
    210                 "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
     205                "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8"
     206            },
     207            "dist": {
     208                "type": "zip",
     209                "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
     210                "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
    211211                "shasum": ""
    212212            },
     
    216216            "require-dev": {
    217217                "bamarni/composer-bin-plugin": "^1.8.2",
    218                 "phpunit/phpunit": "^8.5.36 || ^9.6.15"
    219             },
    220             "time": "2023-12-03T20:19:20+00:00",
     218                "phpunit/phpunit": "^8.5.39 || ^9.6.20"
     219            },
     220            "time": "2024-07-18T10:29:17+00:00",
    221221            "type": "library",
    222222            "extra": {
     
    264264            "support": {
    265265                "issues": "https://github.com/guzzle/promises/issues",
    266                 "source": "https://github.com/guzzle/promises/tree/2.0.2"
     266                "source": "https://github.com/guzzle/promises/tree/2.0.3"
    267267            },
    268268            "funding": [
     
    284284        {
    285285            "name": "guzzlehttp/psr7",
    286             "version": "2.6.2",
    287             "version_normalized": "2.6.2.0",
     286            "version": "2.7.0",
     287            "version_normalized": "2.7.0.0",
    288288            "source": {
    289289                "type": "git",
    290290                "url": "https://github.com/guzzle/psr7.git",
    291                 "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
    292             },
    293             "dist": {
    294                 "type": "zip",
    295                 "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
    296                 "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
     291                "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201"
     292            },
     293            "dist": {
     294                "type": "zip",
     295                "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
     296                "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
    297297                "shasum": ""
    298298            },
     
    309309            "require-dev": {
    310310                "bamarni/composer-bin-plugin": "^1.8.2",
    311                 "http-interop/http-factory-tests": "^0.9",
    312                 "phpunit/phpunit": "^8.5.36 || ^9.6.15"
     311                "http-interop/http-factory-tests": "0.9.0",
     312                "phpunit/phpunit": "^8.5.39 || ^9.6.20"
    313313            },
    314314            "suggest": {
    315315                "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
    316316            },
    317             "time": "2023-12-03T20:05:35+00:00",
     317            "time": "2024-07-18T11:15:46+00:00",
    318318            "type": "library",
    319319            "extra": {
     
    383383            "support": {
    384384                "issues": "https://github.com/guzzle/psr7/issues",
    385                 "source": "https://github.com/guzzle/psr7/tree/2.6.2"
     385                "source": "https://github.com/guzzle/psr7/tree/2.7.0"
    386386            },
    387387            "funding": [
     
    455455        {
    456456            "name": "php-stubs/wordpress-stubs",
    457             "version": "v6.5.3",
    458             "version_normalized": "6.5.3.0",
     457            "version": "v6.6.0",
     458            "version_normalized": "6.6.0.0",
    459459            "source": {
    460460                "type": "git",
    461461                "url": "https://github.com/php-stubs/wordpress-stubs.git",
    462                 "reference": "e611a83292d02055a25f83291a98fadd0c21e092"
    463             },
    464             "dist": {
    465                 "type": "zip",
    466                 "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/e611a83292d02055a25f83291a98fadd0c21e092",
    467                 "reference": "e611a83292d02055a25f83291a98fadd0c21e092",
     462                "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2"
     463            },
     464            "dist": {
     465                "type": "zip",
     466                "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/86e8753e89d59849276dcdd91b9a7dd78bb4abe2",
     467                "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2",
    468468                "shasum": ""
    469469            },
     
    471471                "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
    472472                "nikic/php-parser": "^4.13",
    473                 "php": "^7.4 || ~8.0.0",
     473                "php": "^7.4 || ^8.0",
    474474                "php-stubs/generator": "^0.8.3",
    475                 "phpdocumentor/reflection-docblock": "5.3",
     475                "phpdocumentor/reflection-docblock": "^5.4.1",
    476476                "phpstan/phpstan": "^1.10.49",
    477477                "phpunit/phpunit": "^9.5",
    478                 "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^0.11"
     478                "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^1.0",
     479                "wp-coding-standards/wpcs": "3.1.0 as 2.3.0"
    479480            },
    480481            "suggest": {
     
    483484                "szepeviktor/phpstan-wordpress": "WordPress extensions for PHPStan"
    484485            },
    485             "time": "2024-05-08T02:12:31+00:00",
     486            "time": "2024-07-17T08:50:38+00:00",
    486487            "type": "library",
    487488            "installation-source": "dist",
     
    499500            "support": {
    500501                "issues": "https://github.com/php-stubs/wordpress-stubs/issues",
    501                 "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.5.3"
     502                "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.6.0"
    502503            },
    503504            "install-path": "../php-stubs/wordpress-stubs"
     
    505506        {
    506507            "name": "phpstan/extension-installer",
    507             "version": "1.4.1",
    508             "version_normalized": "1.4.1.0",
     508            "version": "1.4.3",
     509            "version_normalized": "1.4.3.0",
    509510            "source": {
    510511                "type": "git",
    511512                "url": "https://github.com/phpstan/extension-installer.git",
    512                 "reference": "f6b87faf9fc7978eab2f7919a8760bc9f58f9203"
    513             },
    514             "dist": {
    515                 "type": "zip",
    516                 "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/f6b87faf9fc7978eab2f7919a8760bc9f58f9203",
    517                 "reference": "f6b87faf9fc7978eab2f7919a8760bc9f58f9203",
     513                "reference": "85e90b3942d06b2326fba0403ec24fe912372936"
     514            },
     515            "dist": {
     516                "type": "zip",
     517                "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/85e90b3942d06b2326fba0403ec24fe912372936",
     518                "reference": "85e90b3942d06b2326fba0403ec24fe912372936",
    518519                "shasum": ""
    519520            },
     
    521522                "composer-plugin-api": "^2.0",
    522523                "php": "^7.2 || ^8.0",
    523                 "phpstan/phpstan": "^1.9.0"
     524                "phpstan/phpstan": "^1.9.0 || ^2.0"
    524525            },
    525526            "require-dev": {
     
    528529                "phpstan/phpstan-strict-rules": "^0.11 || ^0.12 || ^1.0"
    529530            },
    530             "time": "2024-06-10T08:20:49+00:00",
     531            "time": "2024-09-04T20:21:43+00:00",
    531532            "type": "composer-plugin",
    532533            "extra": {
     
    544545            ],
    545546            "description": "Composer plugin for automatic installation of PHPStan extensions",
     547            "keywords": [
     548                "dev",
     549                "static analysis"
     550            ],
    546551            "support": {
    547552                "issues": "https://github.com/phpstan/extension-installer/issues",
    548                 "source": "https://github.com/phpstan/extension-installer/tree/1.4.1"
     553                "source": "https://github.com/phpstan/extension-installer/tree/1.4.3"
    549554            },
    550555            "install-path": "../phpstan/extension-installer"
     
    552557        {
    553558            "name": "phpstan/phpstan",
    554             "version": "1.11.7",
    555             "version_normalized": "1.11.7.0",
     559            "version": "1.12.3",
     560            "version_normalized": "1.12.3.0",
    556561            "source": {
    557562                "type": "git",
    558563                "url": "https://github.com/phpstan/phpstan.git",
    559                 "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d"
    560             },
    561             "dist": {
    562                 "type": "zip",
    563                 "url": "https://api.github.com/repos/phpstan/phpstan/zipball/52d2bbfdcae7f895915629e4694e9497d0f8e28d",
    564                 "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d",
     564                "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009"
     565            },
     566            "dist": {
     567                "type": "zip",
     568                "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0fcbf194ab63d8159bb70d9aa3e1350051632009",
     569                "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009",
    565570                "shasum": ""
    566571            },
     
    571576                "phpstan/phpstan-shim": "*"
    572577            },
    573             "time": "2024-07-06T11:17:41+00:00",
     578            "time": "2024-09-09T08:10:35+00:00",
    574579            "bin": [
    575580                "phpstan",
     
    899904        {
    900905            "name": "symfony/polyfill-php73",
    901             "version": "v1.30.0",
    902             "version_normalized": "1.30.0.0",
     906            "version": "v1.31.0",
     907            "version_normalized": "1.31.0.0",
    903908            "source": {
    904909                "type": "git",
    905910                "url": "https://github.com/symfony/polyfill-php73.git",
    906                 "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1"
    907             },
    908             "dist": {
    909                 "type": "zip",
    910                 "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/ec444d3f3f6505bb28d11afa41e75faadebc10a1",
    911                 "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1",
    912                 "shasum": ""
    913             },
    914             "require": {
    915                 "php": ">=7.1"
    916             },
    917             "time": "2024-05-31T15:07:36+00:00",
     911                "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb"
     912            },
     913            "dist": {
     914                "type": "zip",
     915                "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
     916                "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
     917                "shasum": ""
     918            },
     919            "require": {
     920                "php": ">=7.2"
     921            },
     922            "time": "2024-09-09T11:45:10+00:00",
    918923            "type": "library",
    919924            "extra": {
     
    958963            ],
    959964            "support": {
    960                 "source": "https://github.com/symfony/polyfill-php73/tree/v1.30.0"
     965                "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0"
    961966            },
    962967            "funding": [
  • watermark-protect-images/tags/2.2.1/vendor/composer/installed.php

    r3119477 r3149231  
    44        'pretty_version' => 'dev-develop',
    55        'version' => 'dev-develop',
    6         'reference' => '5252aeac3967ac73f942ff7c80bd503951eddecd',
     6        'reference' => 'd693f139d7bc1a83ea7133ebd51cc842eff9ec50',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    2121        ),
    2222        'guzzlehttp/guzzle' => array(
    23             'pretty_version' => '7.8.1',
    24             'version' => '7.8.1.0',
    25             'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104',
     23            'pretty_version' => '7.9.2',
     24            'version' => '7.9.2.0',
     25            'reference' => 'd281ed313b989f213357e3be1a179f02196ac99b',
    2626            'type' => 'library',
    2727            'install_path' => __DIR__ . '/../guzzlehttp/guzzle',
     
    3030        ),
    3131        'guzzlehttp/promises' => array(
    32             'pretty_version' => '2.0.2',
    33             'version' => '2.0.2.0',
    34             'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223',
     32            'pretty_version' => '2.0.3',
     33            'version' => '2.0.3.0',
     34            'reference' => '6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8',
    3535            'type' => 'library',
    3636            'install_path' => __DIR__ . '/../guzzlehttp/promises',
     
    3939        ),
    4040        'guzzlehttp/psr7' => array(
    41             'pretty_version' => '2.6.2',
    42             'version' => '2.6.2.0',
    43             'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221',
     41            'pretty_version' => '2.7.0',
     42            'version' => '2.7.0.0',
     43            'reference' => 'a70f5c95fb43bc83f07c9c948baa0dc1829bf201',
    4444            'type' => 'library',
    4545            'install_path' => __DIR__ . '/../guzzlehttp/psr7',
     
    6161            'pretty_version' => 'dev-develop',
    6262            'version' => 'dev-develop',
    63             'reference' => '5252aeac3967ac73f942ff7c80bd503951eddecd',
     63            'reference' => 'd693f139d7bc1a83ea7133ebd51cc842eff9ec50',
    6464            'type' => 'wordpress-plugin',
    6565            'install_path' => __DIR__ . '/../../',
     
    6868        ),
    6969        'php-stubs/wordpress-stubs' => array(
    70             'pretty_version' => 'v6.5.3',
    71             'version' => '6.5.3.0',
    72             'reference' => 'e611a83292d02055a25f83291a98fadd0c21e092',
     70            'pretty_version' => 'v6.6.0',
     71            'version' => '6.6.0.0',
     72            'reference' => '86e8753e89d59849276dcdd91b9a7dd78bb4abe2',
    7373            'type' => 'library',
    7474            'install_path' => __DIR__ . '/../php-stubs/wordpress-stubs',
     
    7777        ),
    7878        'phpstan/extension-installer' => array(
    79             'pretty_version' => '1.4.1',
    80             'version' => '1.4.1.0',
    81             'reference' => 'f6b87faf9fc7978eab2f7919a8760bc9f58f9203',
     79            'pretty_version' => '1.4.3',
     80            'version' => '1.4.3.0',
     81            'reference' => '85e90b3942d06b2326fba0403ec24fe912372936',
    8282            'type' => 'composer-plugin',
    8383            'install_path' => __DIR__ . '/../phpstan/extension-installer',
     
    8686        ),
    8787        'phpstan/phpstan' => array(
    88             'pretty_version' => '1.11.7',
    89             'version' => '1.11.7.0',
    90             'reference' => '52d2bbfdcae7f895915629e4694e9497d0f8e28d',
     88            'pretty_version' => '1.12.3',
     89            'version' => '1.12.3.0',
     90            'reference' => '0fcbf194ab63d8159bb70d9aa3e1350051632009',
    9191            'type' => 'library',
    9292            'install_path' => __DIR__ . '/../phpstan/phpstan',
     
    158158        ),
    159159        'symfony/polyfill-php73' => array(
    160             'pretty_version' => 'v1.30.0',
    161             'version' => '1.30.0.0',
    162             'reference' => 'ec444d3f3f6505bb28d11afa41e75faadebc10a1',
     160            'pretty_version' => 'v1.31.0',
     161            'version' => '1.31.0.0',
     162            'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb',
    163163            'type' => 'library',
    164164            'install_path' => __DIR__ . '/../symfony/polyfill-php73',
  • watermark-protect-images/trunk/README.md

    r3119477 r3149231  
    1 === Best Watermark - Protect images on your site with iLoveIMG ===
    2 Plugin Name: Best Watermark - Protect images on your site with iLoveIMG
    3 Version: 2.2.0
    4 Author: iLovePDF
    5 Author URI: https://www.iloveimg.com/
    6 Contributors: iLovePDF
    7 Tags: watermark, image protection, photography, picture, e-commerce
    8 Requires at least: 5.3
    9 Tested up to: 6.6
    10 Stable tag: 2.2.0
    11 Requires PHP: 7.4
    12 License: GPLv2 or later
    13 License URI: https://www.gnu.org/licenses/gpl-2.0.html
     1# Best Watermark - Protect Images on Your Site with iLoveIMG
    142
    153Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.
    164
    17 == Description ==
     5## Description
    186
    19 Protect your images from theft. Now you can get a powerful, easy to use, and reliable Watermark plugin for your image protection needs. With full automation and powerful features, iLoveIMG makes it easy to prevent unauthorized usage of your images by helping you create highly customized watermarks in just a few seconds.
     7**Best Watermark - Protect Images on Your Site with iLoveIMG** is a powerful, easy-to-use watermarking plugin designed to safeguard your images from unauthorized use. In just a few seconds, you can create highly customizable watermarks, combining image and text to prevent your images from being shared or displayed without your consent.
    208
    21 Create custom watermarks combining image and text and protect your images from being shared or featured without owner consent.
     9**Key Features:**
    2210
    23 Trust reliable developers. **Best Watermark - Protect images on your site with iLoveIMG** is brought to you by the same developers of iLoveIMG.com, popular image editor trusted by millions.
     11- **Text and Image Watermarks**: Add text or image watermarks anywhere on your photos.
     12- **Extensive Customization**: Adjust typography, font size, transparency, and rotation to personalize your watermark.
     13- **Batch Processing**: Watermark multiple images at once, saving time for more important tasks.
     14- **Popular Image Formats Supported**: Works with JPG, PNG, and GIF formats.
     15- **Media Library Protection**: Apply watermarks to images already uploaded to your WordPress media library.
     16- **Restore Option**: Automatically backs up images before applying a watermark, allowing you to restore the original version if needed.
     17- **Ease of Use**: Intuitive design for effortless image protection.
    2418
    25 **If you are looking for the best watermarking tool, iLoveIMG plugin comes packed with plenty of features.**
     19**Advanced Capabilities:**
    2620
    27 - **Text and image watermarks** - Place image or text watermarks anywhere on your photo.
    28 - **Plenty of custom settings** - Adjust typography, font, size, transparency, and rotation to personalize watermark.
    29 - **Bulk protection** - Batch protect your images in a single click and save time for more important concerns.
    30 - **Popular image formats supported** - Watermark JPG, PNG and GIF to ensure fast site navigation.
    31 - **Extensive coverage** - Protect images already uploaded to Media Library.
    32 - **Restore option** - Image backup is created before watermark is added.
    33 - **Incredibly easy to use** - Designed with ease of use in mind.
     21- **Image Optimization**: Fully compatible with our Image Compression plugin to optimize images, improve page speed, and boost SEO.
     22- **eCommerce Friendly**: Perfect for WooCommerce, NextGen Gallery, and other eCommerce solutions.
     23- **Privacy Focused**: No data is stored or collected. Complies with GDPR.
     24- **Freemium Service**: Use up to 2500 credits per month for free. Need more? Subscribe to [Premium](https://iloveapi.com/pricing) or buy a [prepaid package](https://iloveapi.com/pricing).
    3425
    35 **Beyond the basics, iLoveIMG is a fully compatible and extendable image watermarking plugin.**
     26Ensure your online images are protected from unauthorized use with iLoveIMG Watermark plugin.
    3627
    37 - **Optimization option available** - Full Compatible with our Image Compressor plugin. Optimize your Wordpress images and make your site load faster to boost search engine ranking.
    38 - **Good for eCommerce** - Works great for eCommerce websites using WooCommerce, NextGen Gallery and other plugins for e-commerce.
    39 - **Security first** - Your data is not stored nor collected on our services. We are GDPR compliant.
    40 - **Frequent updates** - Get a stable and frequently updated image compression plugin.
    41 - **Freemium service** - Freely up to 2500 credits per month. Need more? Subscribe our [Premium plan](https://iloveapi.com/pricing) or buy a [prepaid package](https://iloveapi.com/pricing) to use at your convenience.
     28## Installation
    4229
    43 With online images being shared and re-shared all over the Internet, it's easy to lose track of the original author. iLoveIMG Watermark plugin helps you protect the rights of your online photos.
     30### From the WordPress Admin Panel:
     311. Navigate to **Plugins > Add New**.
     322. Search for "iLoveIMG" and click **Install Now**.
     333. After installation, activate the plugin from your **Plugins page.**
    4434
    45 == Installation ==
     35### Manual Installation:
     361. Upload the `watermark-protect-images` folder to the `/wp-content/plugins/` directory.
     372. Activate the plugin through the **Plugins** menu in WordPress.
     383. Go to the plugin settings page and create a free account or log in with an existing iLoveAPI account.
     394. Configure the settings as per your requirements.
    4640
    47 1. **Click the ‘Install Now’ button**. WordPress will download and install the plugin for you.
    48 2. **Wait for the success message**. A pop-up window with a link to activate the plugin will appear.
    49 3. **Activate the plugin**. iLoveIMG plugin can be installed on your site, but it will not work unless you activate it. So go ahead and click on the link to activate the plugin on your WordPress site.
     41## Frequently Asked Questions
    5042
    51 == Frequently Asked Questions ==
     43### Can I use the plugin for free?
     44Yes, free users have up to 2500 credits per month. Once you reach this limit, you will need to wait until the next month or purchase credits.
    5245
    53 **Can I use the plugin for free?**
     46### Can I make a one-time payment?
     47Absolutely. You can buy a prepaid package with credits that never expire.
    5448
    55 Absolutely. As a free user, we let you process your first 2500 monthly credits. Once this limit is reached, you cannot watermark new images until next month unless you purchase credits.
     49### What happens to my original images?
     50iLoveIMG creates backups of your original images before watermarking. You can restore them anytime.
    5651
    57 **Can I make a one-time payment?**
     52### Do I need coding skills to use this plugin?
     53No. The plugin is designed for users of all skill levels, requiring no technical knowledge.
    5854
    59 Yes, you can. You can buy a pre-paid package, which will never expire.
     55### How can I optimize my photos?
     56You can install the iLoveIMG Image Compression plugin to optimize your site images for faster load times.
    6057
    61 **What happens with my original images?**
     58### Which image formats are supported?
     59The plugin supports watermarking for JPG, PNG, and GIF formats.
    6260
    63 iLoveIMG automatically replaces your uploaded images with an optimized version.
     61### Do you have a REST API?
     62Yes! This plugin is powered by our API, and you can integrate it into your own software. Learn more about the [iLoveAPI](https://iloveapi.com).
    6463
    65 **Do I need to have coding skills to use iLoveIMG Plugin?**
    66 
    67 Absolutely not. You can watermark image galleries without any coding or technical knowledge. We like to make things easy.
    68 
    69 **How can I optimize my photos?**
    70 
    71 Get Image Compression Plugin by iLoveIMG to optimize your site images and speed up your website. 
    72 
    73 **Which formats can be protected?**
    74 
    75 iLoveIMG Watermark plugin can optimize images in JPG, PNG and GIF format.
    76 
    77 **Do you have an API REST?**
    78 
    79 Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveIMG API for developers](https://iloveapi.com).
    80 
    81 **Do you care about the privacy of my images?**
    82 
    83 All our servers are strictly monitored as we comply with the European Data Privacy Regulation, one of the highest standards in the EU.  All uploaded files use https/SSL and include our end-to-end encryption for further privacy of your data.
    84 
    85 Moreover, all processed files are automatically deleted from our servers after being processed in a time range of one, two and twenty-four hours (depending on your user status). You can check detailed info at our [Privacy Policy](https://www.iloveimg.com/help/privacy) and our [Terms and Conditions](https://www.iloveimg.com/help/terms)
    86 
    87 == Changelog ==
    88 
    89 == 2.2.0 ==
    90 Improved
    91 * Update Libraries.
    92 * Now IloveIMG will use credits to process the files.
    93 * Now iloveimg accounts have been migrated to ilovepdf.
    94 * Improved the function to restore all files.
    95 
    96 Fixed
    97 * When autowatermark is activated and you wanted to restore a specific file, it was watermarked again.
    98 
    99 == 2.1.0 ==
    100 Added
    101 * Functionality to restore images individually.
    102 
    103 Improved
    104 * Update Libraries.
    105 * Time limit is set for PHP when it is less than 300.
    106 * On the individual page of a file, iloveimg watermark buttons are now displayed whenever the file is a IMAGE.
    107 
    108 Fixed
    109 * Fixed a problem with restoring files and cleaning backups.
    110 
    111 == 2.0.3 ==
    112 Added
    113 * Update libraries.
    114 * Assets files were optimized.
    115 
    116 == 2.0.2 ==
    117 Added
    118 * Update iloveimg-php library
    119 
    120 == 2.0.1 ==
    121 Added
    122 * Improved class loading.
    123 
    124 Fixed
    125 * check if key iloveimg_field_image exist.
    126 
    127 == 2.0.0 ==
    128 Changed
    129 * Minimum Support WP Version to 5.3
    130 * Minimum Support PHP to 7.4
    131 * Support WP 6.4.1
    132 
    133 Fixed
    134 * catch processing error for php 8.
    135 
    136 = 1.0.4 =
    137 Changed
    138 * Formatting and comment files according to php/wordpress standards.
    139 * remove comments.
    140 * dirname() to __DIR__ constant.
    141 * constant names in uppercase.
    142 * function names is not snake case format.
    143 * classes name with prefix and capital letter.
    144 * variables name is not snake case  format and include prefix.
    145 * classes files rename.
    146 * Use Yoda Conditions to check.
    147 * hook names with prefix.
    148 * Increment operators.
    149 * gmdate() instead date().
    150 * change from json_encode() to wp_json_encode().
    151 * change from unlink() to wp_delete_file().
    152 * Use WP_Filesystem.
    153 * Update iloveimg-php library to V1.1.16
    154 
    155 Added
    156 * missing documentation.
    157 * Missing Domain text.
    158 * Escape/sanitize data.
    159 * using strict comparison for in_array.
    160 
    161 Fixed
    162 * Logical operator "and" changed to "&&"
    163 * Logical operator "or" changed to "||"
    164 * Visibility must be declared on method.
    165 * Assignments must be the first block of code on a line.
    166 * Loose comparisons are not allowed.
    167 * Fix conversion from number string to int.
    168 * Check if superglobal variables exist.
    169 * name of function.
    170 * Error checking.
    171 * Noce verification.
    172 * Serialized data has known vulnerability problems with Object Injection. Changed to JSON Encode.
    173 * Variables $height, $width, $options_value, $ilove_img_wm_is_logged not be defined.
    174 * Negated boolean expression is always true.
    175 * An infinite loop was generated. The method itself called itself every time the process failed.
    176 * on some servers, the $path_file variable did not contain the correct url.
    177 
    178 = 1.0.3 =
    179 * Synchronize repositories
    180 
    181 = 1.0.2 =
    182 - Fix: Bug fixes
    183 
    184 = 1.0.1 =
    185 
    186 - Fix: Bug fixes
     64### How do you ensure the privacy of my images?
     65We comply with the GDPR and use end-to-end encryption. Files are automatically deleted from our servers within a time range of 1 to 24 hours, depending on your user status. Read more in our [Privacy Policy](https://www.iloveimg.com/help/privacy) and [Terms and Conditions](https://www.iloveimg.com/help/terms).
  • watermark-protect-images/trunk/README.txt

    r3119477 r3149231  
    11=== Best Watermark - Protect images on your site with iLoveIMG ===
    22Plugin Name: Best Watermark - Protect images on your site with iLoveIMG
    3 Version: 2.2.0
     3Version: 2.2.1
    44Author: iLovePDF
    55Author URI: https://www.iloveimg.com/
     
    77Tags: watermark, image protection, photography, picture, e-commerce
    88Requires at least: 5.3
    9 Tested up to: 6.6
    10 Stable tag: 2.2.0
     9Tested up to: 6.6.1
     10Stable tag: 2.2.1
    1111Requires PHP: 7.4
    1212License: GPLv2 or later
     
    4545== Installation ==
    4646
    47 1. **Click the ‘Install Now’ button**. WordPress will download and install the plugin for you.
    48 2. **Wait for the success message**. A pop-up window with a link to activate the plugin will appear.
    49 3. **Activate the plugin**. iLoveIMG plugin can be installed on your site, but it will not work unless you activate it. So go ahead and click on the link to activate the plugin on your WordPress site.
     47From your Admin panel:
     481. Visit Plugins > Add New.
     492. Search for **iloveIMG** and press the **Install Now** button.
     503. Activate the plugin from your Plugins page.
     51
     52Manual:
     531. Upload `watermark-protect-images` to the `/wp-content/plugins/` directory
     542. Activate the plugin through the 'Plugins' menu in WordPress
     553. Create a free account in the plugin settings page, or use your existing one
     564. Configure the plugin as you like
    5057
    5158== Frequently Asked Questions ==
     
    7784**Do you have an API REST?**
    7885
    79 Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveIMG API for developers](https://iloveapi.com).
     86Yes, in fact this plugin is powered by our API. And you can integrate our image optimization tools into your software apps too! Learn more about [iLoveAPI for developers](https://iloveapi.com).
    8087
    8188**Do you care about the privacy of my images?**
     
    8592Moreover, all processed files are automatically deleted from our servers after being processed in a time range of one, two and twenty-four hours (depending on your user status). You can check detailed info at our [Privacy Policy](https://www.iloveimg.com/help/privacy) and our [Terms and Conditions](https://www.iloveimg.com/help/terms)
    8693
     94== Screenshots ==
     95
     961. Account settings and tool configuration.
     972. Configure Watermark IMG.
     983. Backup available.
     994. Image listing page.
     100
    87101== Changelog ==
    88102
    89 == 2.2.0 ==
     103= 2.2.1 =
     104Improved
     105* Update Libraries.
     106* Improved error handling when a credential issue occurs.
     107* Improved readme texts.
     108
     109= 2.2.0 =
    90110Improved
    91111* Update Libraries.
     
    97117* When autowatermark is activated and you wanted to restore a specific file, it was watermarked again.
    98118
    99 == 2.1.0 ==
     119= 2.1.0 =
    100120Added
    101121* Functionality to restore images individually.
     
    109129* Fixed a problem with restoring files and cleaning backups.
    110130
    111 == 2.0.3 ==
     131= 2.0.3 =
    112132Added
    113133* Update libraries.
    114134* Assets files were optimized.
    115135
    116 == 2.0.2 ==
     136= 2.0.2 =
    117137Added
    118138* Update iloveimg-php library
    119139
    120 == 2.0.1 ==
     140= 2.0.1 =
    121141Added
    122142* Improved class loading.
     
    125145* check if key iloveimg_field_image exist.
    126146
    127 == 2.0.0 ==
     147= 2.0.0 =
    128148Changed
    129149* Minimum Support WP Version to 5.3
  • watermark-protect-images/trunk/admin/Ilove_Img_Wm_Plugin.php

    r3119477 r3149231  
    1919     * @var      string    VERSION    The current version of the plugin.
    2020     */
    21     const VERSION = '2.2.0';
     21    const VERSION = '2.2.1';
    2222
    2323    /**
     
    139139            $images        = $ilove->watermark( $attachment_id );
    140140
    141             if ( false !== $images ) {
     141            if ( ! $images['error'] ) {
    142142                Ilove_Img_Wm_Resources::render_watermark_details( $attachment_id );
    143143            } else {
    144144                ?>
    145                 <p>There was a problem processing your image.</p>
     145                <p><?php echo esc_html( $images['error_msg'] ); ?></p>
    146146                <?php
    147147            }
  • watermark-protect-images/trunk/admin/Ilove_Img_Wm_Process.php

    r3119477 r3149231  
    173173                update_post_meta( $images_id, 'iloveimg_status_watermark', 2 ); // status watermarked
    174174
    175                 return $images;
     175                return array(
     176                    'error'  => false,
     177                    'images' => $images,
     178                );
    176179
    177180            } else {
    178181                update_post_meta( $images_id, 'iloveimg_status_watermark', 3 ); // status queue
    179182
    180                 return false;
     183                return array(
     184                    'error'     => true,
     185                    'error_msg' => __( 'There was a problem processing your image.', 'iloveimg-watermark' ),
     186                );
    181187            }
    182188        } catch ( \Exception $e ) {
     
    184190            error_log('Exception on watermark Method: ' . print_r($e, true)); // phpcs:ignore
    185191
    186             return false;
     192            $error_msg = 'There was a problem processing your image.';
     193
     194            if ( 401 === $e->getCode() ) {
     195                $error_msg = 'Check your credentials in the plugin settings page. If you recently deleted a project in your iloveapi account, try switching to another project to correctly save your API Keys.';
     196            }
     197
     198            return array(
     199                'error'     => true,
     200                'error_msg' => $error_msg,
     201            );
    187202        }
    188203    }
  • watermark-protect-images/trunk/ilove-img-watermark.php

    r3119477 r3149231  
    1616 * Plugin URI:        https://iloveapi.com/
    1717 * Description:       Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.
    18  * Version:           2.2.0
     18 * Version:           2.2.1
    1919 * Requires at least: 5.3
    2020 * Requires PHP:      7.4
  • watermark-protect-images/trunk/package.json

    r3119477 r3149231  
    22  "name": "iloveimg-wp-watermark",
    33  "version": "1.0.0",
    4   "description": "=== Best Watermark - Protect images on your site with iLoveIMG ===\r Plugin Name: Best Watermark - Protect images on your site with iLoveIMG\r Version: 2.0.3\r Author: iLovePDF\r Author URI: https://www.iloveimg.com/\r Contributors: iLovePDF\r Tags: watermark, image protection, photography, picture, e-commerce\r Requires at least: 5.3\r Tested up to: 6.4.3\r Stable tag: 2.0.3\r Requires PHP: 7.4\r License: GPLv2 or later\r License URI: https://www.gnu.org/licenses/gpl-2.0.html",
     4  "description": "Best Watermark - Protect images on your site with iLoveIMG. Protect your site from image theft with our reliable and easy-to-use watermark plugin. Effective protection for your images.",
    55  "main": "index.js",
    66  "scripts": {
     
    1717    "gulp-uglify": "^3.0.2",
    1818    "merge-stream": "^2.0.0",
    19     "sass": "^1.77.8"
     19    "sass": "^1.78"
    2020  }
    2121}
  • watermark-protect-images/trunk/vendor/composer/installed.json

    r3119477 r3149231  
    6969        {
    7070            "name": "guzzlehttp/guzzle",
    71             "version": "7.8.1",
    72             "version_normalized": "7.8.1.0",
     71            "version": "7.9.2",
     72            "version_normalized": "7.9.2.0",
    7373            "source": {
    7474                "type": "git",
    7575                "url": "https://github.com/guzzle/guzzle.git",
    76                 "reference": "41042bc7ab002487b876a0683fc8dce04ddce104"
    77             },
    78             "dist": {
    79                 "type": "zip",
    80                 "url": "https://api.github.com/repos/guzzle/guzzle/zipball/41042bc7ab002487b876a0683fc8dce04ddce104",
    81                 "reference": "41042bc7ab002487b876a0683fc8dce04ddce104",
     76                "reference": "d281ed313b989f213357e3be1a179f02196ac99b"
     77            },
     78            "dist": {
     79                "type": "zip",
     80                "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b",
     81                "reference": "d281ed313b989f213357e3be1a179f02196ac99b",
    8282                "shasum": ""
    8383            },
    8484            "require": {
    8585                "ext-json": "*",
    86                 "guzzlehttp/promises": "^1.5.3 || ^2.0.1",
    87                 "guzzlehttp/psr7": "^1.9.1 || ^2.5.1",
     86                "guzzlehttp/promises": "^1.5.3 || ^2.0.3",
     87                "guzzlehttp/psr7": "^2.7.0",
    8888                "php": "^7.2.5 || ^8.0",
    8989                "psr/http-client": "^1.0",
     
    9696                "bamarni/composer-bin-plugin": "^1.8.2",
    9797                "ext-curl": "*",
    98                 "php-http/client-integration-tests": "dev-master#2c025848417c1135031fdf9c728ee53d0a7ceaee as 3.0.999",
     98                "guzzle/client-integration-tests": "3.0.2",
    9999                "php-http/message-factory": "^1.1",
    100                 "phpunit/phpunit": "^8.5.36 || ^9.6.15",
     100                "phpunit/phpunit": "^8.5.39 || ^9.6.20",
    101101                "psr/log": "^1.1 || ^2.0 || ^3.0"
    102102            },
     
    106106                "psr/log": "Required for using the Log middleware"
    107107            },
    108             "time": "2023-12-03T20:35:24+00:00",
     108            "time": "2024-07-24T11:22:20+00:00",
    109109            "type": "library",
    110110            "extra": {
     
    178178            "support": {
    179179                "issues": "https://github.com/guzzle/guzzle/issues",
    180                 "source": "https://github.com/guzzle/guzzle/tree/7.8.1"
     180                "source": "https://github.com/guzzle/guzzle/tree/7.9.2"
    181181            },
    182182            "funding": [
     
    198198        {
    199199            "name": "guzzlehttp/promises",
    200             "version": "2.0.2",
    201             "version_normalized": "2.0.2.0",
     200            "version": "2.0.3",
     201            "version_normalized": "2.0.3.0",
    202202            "source": {
    203203                "type": "git",
    204204                "url": "https://github.com/guzzle/promises.git",
    205                 "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223"
    206             },
    207             "dist": {
    208                 "type": "zip",
    209                 "url": "https://api.github.com/repos/guzzle/promises/zipball/bbff78d96034045e58e13dedd6ad91b5d1253223",
    210                 "reference": "bbff78d96034045e58e13dedd6ad91b5d1253223",
     205                "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8"
     206            },
     207            "dist": {
     208                "type": "zip",
     209                "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
     210                "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
    211211                "shasum": ""
    212212            },
     
    216216            "require-dev": {
    217217                "bamarni/composer-bin-plugin": "^1.8.2",
    218                 "phpunit/phpunit": "^8.5.36 || ^9.6.15"
    219             },
    220             "time": "2023-12-03T20:19:20+00:00",
     218                "phpunit/phpunit": "^8.5.39 || ^9.6.20"
     219            },
     220            "time": "2024-07-18T10:29:17+00:00",
    221221            "type": "library",
    222222            "extra": {
     
    264264            "support": {
    265265                "issues": "https://github.com/guzzle/promises/issues",
    266                 "source": "https://github.com/guzzle/promises/tree/2.0.2"
     266                "source": "https://github.com/guzzle/promises/tree/2.0.3"
    267267            },
    268268            "funding": [
     
    284284        {
    285285            "name": "guzzlehttp/psr7",
    286             "version": "2.6.2",
    287             "version_normalized": "2.6.2.0",
     286            "version": "2.7.0",
     287            "version_normalized": "2.7.0.0",
    288288            "source": {
    289289                "type": "git",
    290290                "url": "https://github.com/guzzle/psr7.git",
    291                 "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221"
    292             },
    293             "dist": {
    294                 "type": "zip",
    295                 "url": "https://api.github.com/repos/guzzle/psr7/zipball/45b30f99ac27b5ca93cb4831afe16285f57b8221",
    296                 "reference": "45b30f99ac27b5ca93cb4831afe16285f57b8221",
     291                "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201"
     292            },
     293            "dist": {
     294                "type": "zip",
     295                "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
     296                "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
    297297                "shasum": ""
    298298            },
     
    309309            "require-dev": {
    310310                "bamarni/composer-bin-plugin": "^1.8.2",
    311                 "http-interop/http-factory-tests": "^0.9",
    312                 "phpunit/phpunit": "^8.5.36 || ^9.6.15"
     311                "http-interop/http-factory-tests": "0.9.0",
     312                "phpunit/phpunit": "^8.5.39 || ^9.6.20"
    313313            },
    314314            "suggest": {
    315315                "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
    316316            },
    317             "time": "2023-12-03T20:05:35+00:00",
     317            "time": "2024-07-18T11:15:46+00:00",
    318318            "type": "library",
    319319            "extra": {
     
    383383            "support": {
    384384                "issues": "https://github.com/guzzle/psr7/issues",
    385                 "source": "https://github.com/guzzle/psr7/tree/2.6.2"
     385                "source": "https://github.com/guzzle/psr7/tree/2.7.0"
    386386            },
    387387            "funding": [
     
    455455        {
    456456            "name": "php-stubs/wordpress-stubs",
    457             "version": "v6.5.3",
    458             "version_normalized": "6.5.3.0",
     457            "version": "v6.6.0",
     458            "version_normalized": "6.6.0.0",
    459459            "source": {
    460460                "type": "git",
    461461                "url": "https://github.com/php-stubs/wordpress-stubs.git",
    462                 "reference": "e611a83292d02055a25f83291a98fadd0c21e092"
    463             },
    464             "dist": {
    465                 "type": "zip",
    466                 "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/e611a83292d02055a25f83291a98fadd0c21e092",
    467                 "reference": "e611a83292d02055a25f83291a98fadd0c21e092",
     462                "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2"
     463            },
     464            "dist": {
     465                "type": "zip",
     466                "url": "https://api.github.com/repos/php-stubs/wordpress-stubs/zipball/86e8753e89d59849276dcdd91b9a7dd78bb4abe2",
     467                "reference": "86e8753e89d59849276dcdd91b9a7dd78bb4abe2",
    468468                "shasum": ""
    469469            },
     
    471471                "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
    472472                "nikic/php-parser": "^4.13",
    473                 "php": "^7.4 || ~8.0.0",
     473                "php": "^7.4 || ^8.0",
    474474                "php-stubs/generator": "^0.8.3",
    475                 "phpdocumentor/reflection-docblock": "5.3",
     475                "phpdocumentor/reflection-docblock": "^5.4.1",
    476476                "phpstan/phpstan": "^1.10.49",
    477477                "phpunit/phpunit": "^9.5",
    478                 "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^0.11"
     478                "szepeviktor/phpcs-psr-12-neutron-hybrid-ruleset": "^1.0",
     479                "wp-coding-standards/wpcs": "3.1.0 as 2.3.0"
    479480            },
    480481            "suggest": {
     
    483484                "szepeviktor/phpstan-wordpress": "WordPress extensions for PHPStan"
    484485            },
    485             "time": "2024-05-08T02:12:31+00:00",
     486            "time": "2024-07-17T08:50:38+00:00",
    486487            "type": "library",
    487488            "installation-source": "dist",
     
    499500            "support": {
    500501                "issues": "https://github.com/php-stubs/wordpress-stubs/issues",
    501                 "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.5.3"
     502                "source": "https://github.com/php-stubs/wordpress-stubs/tree/v6.6.0"
    502503            },
    503504            "install-path": "../php-stubs/wordpress-stubs"
     
    505506        {
    506507            "name": "phpstan/extension-installer",
    507             "version": "1.4.1",
    508             "version_normalized": "1.4.1.0",
     508            "version": "1.4.3",
     509            "version_normalized": "1.4.3.0",
    509510            "source": {
    510511                "type": "git",
    511512                "url": "https://github.com/phpstan/extension-installer.git",
    512                 "reference": "f6b87faf9fc7978eab2f7919a8760bc9f58f9203"
    513             },
    514             "dist": {
    515                 "type": "zip",
    516                 "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/f6b87faf9fc7978eab2f7919a8760bc9f58f9203",
    517                 "reference": "f6b87faf9fc7978eab2f7919a8760bc9f58f9203",
     513                "reference": "85e90b3942d06b2326fba0403ec24fe912372936"
     514            },
     515            "dist": {
     516                "type": "zip",
     517                "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/85e90b3942d06b2326fba0403ec24fe912372936",
     518                "reference": "85e90b3942d06b2326fba0403ec24fe912372936",
    518519                "shasum": ""
    519520            },
     
    521522                "composer-plugin-api": "^2.0",
    522523                "php": "^7.2 || ^8.0",
    523                 "phpstan/phpstan": "^1.9.0"
     524                "phpstan/phpstan": "^1.9.0 || ^2.0"
    524525            },
    525526            "require-dev": {
     
    528529                "phpstan/phpstan-strict-rules": "^0.11 || ^0.12 || ^1.0"
    529530            },
    530             "time": "2024-06-10T08:20:49+00:00",
     531            "time": "2024-09-04T20:21:43+00:00",
    531532            "type": "composer-plugin",
    532533            "extra": {
     
    544545            ],
    545546            "description": "Composer plugin for automatic installation of PHPStan extensions",
     547            "keywords": [
     548                "dev",
     549                "static analysis"
     550            ],
    546551            "support": {
    547552                "issues": "https://github.com/phpstan/extension-installer/issues",
    548                 "source": "https://github.com/phpstan/extension-installer/tree/1.4.1"
     553                "source": "https://github.com/phpstan/extension-installer/tree/1.4.3"
    549554            },
    550555            "install-path": "../phpstan/extension-installer"
     
    552557        {
    553558            "name": "phpstan/phpstan",
    554             "version": "1.11.7",
    555             "version_normalized": "1.11.7.0",
     559            "version": "1.12.3",
     560            "version_normalized": "1.12.3.0",
    556561            "source": {
    557562                "type": "git",
    558563                "url": "https://github.com/phpstan/phpstan.git",
    559                 "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d"
    560             },
    561             "dist": {
    562                 "type": "zip",
    563                 "url": "https://api.github.com/repos/phpstan/phpstan/zipball/52d2bbfdcae7f895915629e4694e9497d0f8e28d",
    564                 "reference": "52d2bbfdcae7f895915629e4694e9497d0f8e28d",
     564                "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009"
     565            },
     566            "dist": {
     567                "type": "zip",
     568                "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0fcbf194ab63d8159bb70d9aa3e1350051632009",
     569                "reference": "0fcbf194ab63d8159bb70d9aa3e1350051632009",
    565570                "shasum": ""
    566571            },
     
    571576                "phpstan/phpstan-shim": "*"
    572577            },
    573             "time": "2024-07-06T11:17:41+00:00",
     578            "time": "2024-09-09T08:10:35+00:00",
    574579            "bin": [
    575580                "phpstan",
     
    899904        {
    900905            "name": "symfony/polyfill-php73",
    901             "version": "v1.30.0",
    902             "version_normalized": "1.30.0.0",
     906            "version": "v1.31.0",
     907            "version_normalized": "1.31.0.0",
    903908            "source": {
    904909                "type": "git",
    905910                "url": "https://github.com/symfony/polyfill-php73.git",
    906                 "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1"
    907             },
    908             "dist": {
    909                 "type": "zip",
    910                 "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/ec444d3f3f6505bb28d11afa41e75faadebc10a1",
    911                 "reference": "ec444d3f3f6505bb28d11afa41e75faadebc10a1",
    912                 "shasum": ""
    913             },
    914             "require": {
    915                 "php": ">=7.1"
    916             },
    917             "time": "2024-05-31T15:07:36+00:00",
     911                "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb"
     912            },
     913            "dist": {
     914                "type": "zip",
     915                "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
     916                "reference": "0f68c03565dcaaf25a890667542e8bd75fe7e5bb",
     917                "shasum": ""
     918            },
     919            "require": {
     920                "php": ">=7.2"
     921            },
     922            "time": "2024-09-09T11:45:10+00:00",
    918923            "type": "library",
    919924            "extra": {
     
    958963            ],
    959964            "support": {
    960                 "source": "https://github.com/symfony/polyfill-php73/tree/v1.30.0"
     965                "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0"
    961966            },
    962967            "funding": [
  • watermark-protect-images/trunk/vendor/composer/installed.php

    r3119477 r3149231  
    44        'pretty_version' => 'dev-develop',
    55        'version' => 'dev-develop',
    6         'reference' => '5252aeac3967ac73f942ff7c80bd503951eddecd',
     6        'reference' => 'd693f139d7bc1a83ea7133ebd51cc842eff9ec50',
    77        'type' => 'wordpress-plugin',
    88        'install_path' => __DIR__ . '/../../',
     
    2121        ),
    2222        'guzzlehttp/guzzle' => array(
    23             'pretty_version' => '7.8.1',
    24             'version' => '7.8.1.0',
    25             'reference' => '41042bc7ab002487b876a0683fc8dce04ddce104',
     23            'pretty_version' => '7.9.2',
     24            'version' => '7.9.2.0',
     25            'reference' => 'd281ed313b989f213357e3be1a179f02196ac99b',
    2626            'type' => 'library',
    2727            'install_path' => __DIR__ . '/../guzzlehttp/guzzle',
     
    3030        ),
    3131        'guzzlehttp/promises' => array(
    32             'pretty_version' => '2.0.2',
    33             'version' => '2.0.2.0',
    34             'reference' => 'bbff78d96034045e58e13dedd6ad91b5d1253223',
     32            'pretty_version' => '2.0.3',
     33            'version' => '2.0.3.0',
     34            'reference' => '6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8',
    3535            'type' => 'library',
    3636            'install_path' => __DIR__ . '/../guzzlehttp/promises',
     
    3939        ),
    4040        'guzzlehttp/psr7' => array(
    41             'pretty_version' => '2.6.2',
    42             'version' => '2.6.2.0',
    43             'reference' => '45b30f99ac27b5ca93cb4831afe16285f57b8221',
     41            'pretty_version' => '2.7.0',
     42            'version' => '2.7.0.0',
     43            'reference' => 'a70f5c95fb43bc83f07c9c948baa0dc1829bf201',
    4444            'type' => 'library',
    4545            'install_path' => __DIR__ . '/../guzzlehttp/psr7',
     
    6161            'pretty_version' => 'dev-develop',
    6262            'version' => 'dev-develop',
    63             'reference' => '5252aeac3967ac73f942ff7c80bd503951eddecd',
     63            'reference' => 'd693f139d7bc1a83ea7133ebd51cc842eff9ec50',
    6464            'type' => 'wordpress-plugin',
    6565            'install_path' => __DIR__ . '/../../',
     
    6868        ),
    6969        'php-stubs/wordpress-stubs' => array(
    70             'pretty_version' => 'v6.5.3',
    71             'version' => '6.5.3.0',
    72             'reference' => 'e611a83292d02055a25f83291a98fadd0c21e092',
     70            'pretty_version' => 'v6.6.0',
     71            'version' => '6.6.0.0',
     72            'reference' => '86e8753e89d59849276dcdd91b9a7dd78bb4abe2',
    7373            'type' => 'library',
    7474            'install_path' => __DIR__ . '/../php-stubs/wordpress-stubs',
     
    7777        ),
    7878        'phpstan/extension-installer' => array(
    79             'pretty_version' => '1.4.1',
    80             'version' => '1.4.1.0',
    81             'reference' => 'f6b87faf9fc7978eab2f7919a8760bc9f58f9203',
     79            'pretty_version' => '1.4.3',
     80            'version' => '1.4.3.0',
     81            'reference' => '85e90b3942d06b2326fba0403ec24fe912372936',
    8282            'type' => 'composer-plugin',
    8383            'install_path' => __DIR__ . '/../phpstan/extension-installer',
     
    8686        ),
    8787        'phpstan/phpstan' => array(
    88             'pretty_version' => '1.11.7',
    89             'version' => '1.11.7.0',
    90             'reference' => '52d2bbfdcae7f895915629e4694e9497d0f8e28d',
     88            'pretty_version' => '1.12.3',
     89            'version' => '1.12.3.0',
     90            'reference' => '0fcbf194ab63d8159bb70d9aa3e1350051632009',
    9191            'type' => 'library',
    9292            'install_path' => __DIR__ . '/../phpstan/phpstan',
     
    158158        ),
    159159        'symfony/polyfill-php73' => array(
    160             'pretty_version' => 'v1.30.0',
    161             'version' => '1.30.0.0',
    162             'reference' => 'ec444d3f3f6505bb28d11afa41e75faadebc10a1',
     160            'pretty_version' => 'v1.31.0',
     161            'version' => '1.31.0.0',
     162            'reference' => '0f68c03565dcaaf25a890667542e8bd75fe7e5bb',
    163163            'type' => 'library',
    164164            'install_path' => __DIR__ . '/../symfony/polyfill-php73',
Note: See TracChangeset for help on using the changeset viewer.