Plugin Directory

Changeset 3473504

Timestamp:
03/03/2026 10:21:47 AM (43 hours ago)
Author:
petredobrescu
Message:

Version 4.1.8

  • Fix: Unauthorized modification and deletion of media files vulnerability responsibly disclosed by the WordFence team;
  • Fix: The plugin works for RTL languages now;
  • Fix: Textdomain modules are loaded properly in all cases;
  • Tweak: Added a permission check for the ShortPixel recommendation displayed after the replacement;
  • Tweak: Added the raw file path to the filemodel filter;
  • Tweak: Added a filter to disable the database replacements (thanks @seed-glauco);
  • Tweak: Updated the banners from the plugin pages.
Location:
enable-media-replace
Files:
6 added
4 deleted
32 edited
1 copied

Legend:

Unmodified
Added
Removed
  • enable-media-replace/tags/4.1.8/build/shortpixel/filesystem/src/Model/File/FileModel.php

    r2898302 r3473504  
    194194  }
    195195
    196   public function hasBackup()
    197   {
    198       $directory = $this->getBackupDirectory();
    199       if (! $directory)
    200         return false;
    201 
    202       $backupFile =  $directory . $this->getFileName();
    203 
    204       if (file_exists($backupFile) && ! is_dir($backupFile) )
    205         return true;
    206       else {
    207         return false;
    208       }
    209   }
     196
    210197
    211198
     
    522509
    523510         // This filter checks if some supplier will be able to handle the file when needed.
    524      $path = apply_filters('shortpixel/image/urltopath', false, $url);
     511     $path = apply_filters('shortpixel/image/urltopath', false, $url);
    525512
    526513         if ($path !== false)
  • enable-media-replace/tags/4.1.8/build/shortpixel/log/src/DebugItem.php

    r2822720 r3473504  
    3333        {
    3434          $data[] = $this->message;
    35           $this->message = __('[Data]');
     35          $this->message = __('[Data]');
    3636        }
    3737        if (is_array($data) && count($data) > 0)
  • enable-media-replace/tags/4.1.8/build/shortpixel/notices/src/NoticeModel.php

    r2967042 r3473504  
    275275      $output .= '<div class="details-wrapper">
    276276      <input type="checkbox" name="detailhider" id="check-' . $id .'">
    277       <label for="check-' . $id . '"  class="show-details"><span>' . __('See Details', 'shortpixel-image-optimiser')   . '</span>
     277      <label for="check-' . $id . '"  class="show-details"><span>' . __('See Details', '')   . '</span>
    278278      </label>';
    279279
    280280      $output .= "<div class='detail-content-wrapper'><p class='detail-content'>" . $this->parseDetails() . "</p></div>";
    281       $output .= '<label for="check-' . $id . '" class="hide-details"><span>' . __('Hide Details', 'shortpixel-image-optimiser') . '</span></label>';
     281      $output .= '<label for="check-' . $id . '" class="hide-details"><span>' . __('Hide Details', '') . '</span></label>';
    282282
    283283      $output .= '</div>'; // detail wrapper
     
    288288    if ($this->is_removable)
    289289    {
    290                   $output .= '<button type="button" id="button-' . $id . '" class="notice-dismiss" data-dismiss="' . $this->suppress_period . '" ><span class="screen-reader-text">' . __('Dismiss this notice', 'shortpixel-image-optimiser') . '</span></button>';
     290                  $output .= '<button type="button" id="button-' . $id . '" class="notice-dismiss" data-dismiss="' . $this->suppress_period . '" ><span class="screen-reader-text">' . __('Dismiss this notice', '') . '</span></button>';
    291291
    292292       if (! $this->is_persistent)
  • enable-media-replace/tags/4.1.8/classes/Controller/ReplaceController.php

    r2970258 r3473504  
    195195      $target_metadata = wp_generate_attachment_metadata( $this->post_id, $this->targetFile->getFullPath() );
    196196            do_action('emr/converter/prevent-offload-off', $this->post_id);
     197
    197198      wp_update_attachment_metadata( $this->post_id, $target_metadata );
    198 
    199199
    200200            $Replacer->setTargetMeta($target_metadata);
     
    249249      );
    250250
    251             $Replacer->replace($args);
    252 
     251            $doreplace = apply_filters('emr/replace/doreplace', true);
     252            if(true === $doreplace){
     253                $Replacer->replace($args);
     254            }
     255           
    253256            // Here Updatedata and a ffew others.
    254257            $this->updateDate();
  • enable-media-replace/tags/4.1.8/classes/ViewController/RemoveBackgroundViewController.php

    r2967042 r3473504  
    3838     }
    3939
    40 
    4140     $attachment_id = intval($_REQUEST['attachment_id']);
    4241     $attachment = get_post($attachment_id);
     42
     43
     44
     45
     46
     47
    4348
    4449     $uiHelper = \emr()->uiHelper();
     
    7883         {
    7984             $this->viewError(self::ERROR_KEY);
    80              //wp_die(esc_html__('Error while sending form (no key). Please try again.', 'enable-media-replace'));
    8185         }
    8286
     
    8488         if (is_null($post_id)) {
    8589                 $this->viewError(self::ERROR_FORM);
    86 //           wp_die(esc_html__('Error in request. Please try again', 'enable-media-replace'));
    8790         }
     91
     92
     93
     94
     95
     96
     97
     98
    8899
    89100         $this->setView($post_id);
     
    93104         {
    94105              $this->view->errorMessage = $result->message;
    95                 $this->viewError();
     106                $this->viewError();
    96107         }
    97108         elseif (! file_exists($result->image))
     
    100111         }
    101112
    102 //       $result = $replacer->replaceWith($result->image, $source->getFileName() , true);
    103 //$params = array();
    104113        $replaceController = new ReplaceController($post_id);
    105114        $sourceFile = $replaceController->getSourceFile();
  • enable-media-replace/tags/4.1.8/classes/ViewController/UploadViewController.php

    r2903341 r3473504  
    9191             $this->viewSuccess();
    9292        }
     93
     94
    9395     }
    9496
  • enable-media-replace/tags/4.1.8/classes/emr-plugin.php

    r3371681 r3473504  
    2222    public function __construct()
    2323    {
    24         add_action('plugins_loaded', array($this, 'runtime')); //lowInit, before theme setup!
     24        add_action('init', array($this, 'runtime'));
     25       // add_action('init', [$this, 'init']);  // init for user authentication, not set on plugins_loaded.
    2526                add_action('admin_init', array($this, 'adminInit')); // adminInit, after functions.php
    2627    }
     
    3031         $this->nopriv_plugin_actions();
    3132
    32         if (EMR_CAPABILITY !== false) {
    33             if (is_array(EMR_CAPABILITY)) {
    34                 $this->general_cap = EMR_CAPABILITY[0];
    35                 $this->user_cap = EMR_CAPABILITY[1];
    36 
    37                 if (! current_user_can($this->general_cap) && ! current_user_can($this->user_cap)) {
    38                     return;
    39                 }
    40             } else {
    41                 $this->general_cap = EMR_CAPABILITY;
    42                 if (! current_user_can($this->general_cap)) {
    43                     return;
    44                 }
    45             }
    46         } elseif (! current_user_can('upload_files')) {
    47             return;
    48         }
    49 
     33        if (EMR_CAPABILITY !== false) {
     34          if (is_array(EMR_CAPABILITY)) {
     35              $this->general_cap = EMR_CAPABILITY[0];
     36              $this->user_cap = EMR_CAPABILITY[1];
     37
     38              if (! current_user_can($this->general_cap) && ! current_user_can($this->user_cap)) {
     39                  return;
     40              }
     41          } else {
     42              $this->general_cap = EMR_CAPABILITY;
     43              if (! current_user_can($this->general_cap)) {
     44                  return;
     45              }
     46          }
     47      current_user_can('upload_files')) {
     48          return;
     49      }
     50     
    5051                new Externals();
    5152
    5253        $this->plugin_actions(); // init
     54
     55
     56
     57
     58
     59
    5360    }
    5461
     
    291298    public function admin_scripts()
    292299    {
    293         if (is_rtl()) {
    294             wp_register_style('emr_style', plugins_url('css/admin.rtl.css', EMR_ROOT_FILE));
     300       if (is_rtl()) {
     301            wp_register_style('emr_style', plugins_url('css/.css', EMR_ROOT_FILE));
    295302        } else {
    296303            wp_register_style('emr_style', plugins_url('css/admin.css', EMR_ROOT_FILE));
    297         }
     304       }
    298305
    299306        wp_register_style('emr_edit-attachment', plugins_url('css/edit_attachment.css', EMR_ROOT_FILE));
  • enable-media-replace/tags/4.1.8/classes/external/upsell_installer.php

    r2888216 r3473504  
    1313    {
    1414        // Send back a response.
    15         wp_send_json(array('result'=> false));
     15       
     16        wp_send_json(array('result'=> false, 'message' => 'Install permission issue'));
    1617        die;
    1718    }
     
    2021    {
    2122         case "envira":
    22             $download_url = 'https://downloads.wordpress.org/plugin/envira-gallery-lite.zip';
     23        $download_url = 'https://downloads.wordpress.org/plugin/envira-gallery-lite.zip';
    2324         break;
    2425         case 'spio':
    25                 $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-image-optimiser.zip';
     26            $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-image-optimiser.zip';
    2627         break;
    2728         case 'spai':
    28              $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-adaptive-images.zip';
     29            $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-adaptive-images.zip';
     30         break;
     31         case 'fp':
     32            $download_url = 'https://downloads.wordpress.org/plugin/fastpixel-website-accelerator.zip';
    2933         break;
    3034    }
     
    3337    if ( ! is_null($download_url ) ) {
    3438
    35         //$download_url = esc_url_raw( wp_unslash( $_POST['plugin'] ) );
    3639        global $hook_suffix;
    3740
     
    4346        $url    = add_query_arg(
    4447            array(
    45             //  'page' => 'envira-gallery-settings',
    4648            ),
    4749            admin_url( 'admin.php' )
     
    6971        // We do not need any extra credentials if we have gotten this far, so let's install the plugin.
    7072        require_once (ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
    71         require_once (plugin_dir_path( EMR_ROOT_FILE ) . 'classes/external/upgrader_skin.php');
    7273
    7374        // Create the plugin upgrader with our custom skin.
    74         $skin      = new EMR_Envira_Gallery_Skin();
     75        $skin      = new _Skin();
    7576        $installer = new Plugin_Upgrader( $skin );
    7677        $installer->install( $download_url );
     
    8283            $plugin_basename = $installer->plugin_info();
    8384
    84         ob_clean();
     85        ob_clean();
    8586
    8687
     
    9293
    9394    // Send back a response.
    94     wp_send_json(array('result'=> false));
     95    wp_send_json(array('result'=> false));
    9596    die;
    9697
     
    128129     break;
    129130     case 'spai':
    130          $plugin = 'shortpixel-adaptive-images/short-pixel-ai.php';
     131            $plugin = 'shortpixel-adaptive-images/short-pixel-ai.php';
     132     break;
     133     case 'fp':
     134            $plugin = 'fastpixel-website-accelerator/fastpixel.php';
    131135     break;
    132136}
  • enable-media-replace/tags/4.1.8/classes/external/wp-offload.php

    r2967042 r3473504  
    207207                }
    208208
    209 
    210209                $original_path = $item->original_path(); // Original path (non-scaled-)
    211210                $original_source_path = $item->original_source_path();
     
    214213
    215214                $wp_original = wp_get_original_image_path($post_id, apply_filters( 'emr_unfiltered_get_attached_file', true ));
     215
    216216                $wp_original = apply_filters('emr/replace/original_image_path', $wp_original, $post_id);
    217217                $wp_source = trim(get_attached_file($post_id, apply_filters( 'emr_unfiltered_get_attached_file', true )));
    218 
    219218                $updated = false;
    220219
     
    233232
    234233                     $item->save();
     234
    235235                }
    236236        }
  • enable-media-replace/tags/4.1.8/css/admin.css

    r2888216 r3473504  
    12971297  float: right;
    12981298  clear: both;
    1299   background-color: #dcfdff;
     1299  background-color: #fff;
     1300}
     1301.emr_upload_form .shortpixel-offer.fp {
     1302  background-color: #fff;
    13001303}
    13011304.emr_upload_form .shortpixel-offer h3 {
     
    13141317}
    13151318.emr_upload_form .shortpixel-offer .cyan {
    1316   color: #00d0e5;
     1319  color: #;
    13171320}
    13181321.emr_upload_form .shortpixel-offer .grey {
     
    13241327.emr_upload_form .shortpixel-offer a {
    13251328  text-decoration: none;
     1329
     1330
     1331
    13261332}
    13271333.emr_upload_form .shortpixel-offer .button-wrapper {
     
    13381344  font-size: 20px;
    13391345  text-transform: uppercase;
     1346
    13401347}
    13411348.emr_upload_form .shortpixel-offer .hidden {
     
    13441351.emr_upload_form .shortpixel-offer .img-wrapper {
    13451352  text-align: center;
    1346   margin: 0 0 25px 0;
     1353  margin: px 0;
    13471354}
    13481355.emr_upload_form .shortpixel-offer .img-wrapper img {
     
    13591366.emr_upload_form .shortpixel-offer.theme-offer img {
    13601367  max-width: 100%;
     1368
     1369
     1370
    13611371}
    13621372@media (max-width: 1200px) {
  • enable-media-replace/tags/4.1.8/css/admin.css.map

    r2888216 r3473504  
    1 {"version":3,"sourceRoot":"","sources":["../scss/_datepicker.scss","../scss/_screens.scss","../scss/admin.scss"],"names":[],"mappings":"AAEA;EACC;EACA;EACA;;;AAID;EACC;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;;;AAGD;AACA;EACC;;;AAED;EACC;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;EACA;EACA;;;AAGD;AACA;EACC;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;AAAA;AAAA;AAAA;EAIC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;;;AAGD;AACA;EAAiB;;;AACjB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAuB;;;AACvB;EAAuB;;;AACvB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAA0B;;;AAC1B;EAA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GN;EAAK;;;AChCR;EAIC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;;;AAOA;EAEE;;AACA;EAEE;;AAIL;EAEC;;AAED;EACC;;AAGD;EAGG;EACA;;AAEA;EAEE;EAEA;EACA;EACA;;AAIL;EACC;EACA;EACA;EACA;;AACA;EACC;EACA;;AAMD;EAEE;;AAGA;EAEE;EACH;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACJ;EACA;EACA;;AAEA;EAAM;;AAEN;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACL;;AAGG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEG;EACA;EACA;EACA;;AAEP;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EAEA;EACA;EACA;EACA;;AAMG;EAAiC;;AAMjC;EAAM;;AACN;EAAa;;AAEX;EACE;EACA;EACA;;AASZ;EAEE;EACA;EACA;EAEA;EACA;;AACA;EACI;EACA;EACA;;AAIN;EAEE;;AAGF;EAEE;;AAGF;EAEE;EACA;EACA;;AACA;EAEE;EACA;;AAKA;EAEE;;AAEF;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAOR;EAEE;EACA;EACA;EACA;;AAGE;EACE;;AAEF;EAEE;;AAGN;EAEE;;AACA;EACC;EACA;;AAOG;EAEE;;AAMJ;EAAQ;;AAEV;EAEE;EACA;EACA;;AAEF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AACA;EAEE;EACA;EACA;;AAIN;EAEE;EACA;;AACA;EAEE;EACA;;AAKN;EAEE;EACA;EACA;EACA;;AACA;EAEE;EACA;;AAIJ;EAEG;;AAIH;EAEE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACF;;AACE;EACE;EACA;EACA;EACA;EACA;;AAEJ;EAEE;EACA;;AAEF;EAAO;;AACP;EAAQ;;AACR;EAAQ;;AACR;EAAS;;AACR;EACE;;AAED;EAEE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACJ;;AAGF;EAAU;;AAER;EAEE;EACA;;AACA;EAAM;EAAkB;EAAmB;;AAU/C;EAEE;;AAEF;EAEE;;AACA;EACC;;AAKH;EAEI;IAEG;;EAEH;IACE;;EACA;IACE;;;AAGR;EAEE;IAAkB;;;AAErB;EAEE;IACE;IACA;IACA;;EAIA;IACE;IACD","file":"admin.css"}
     1{"version":3,"sourceRoot":"","sources":["../scss/_datepicker.scss","../scss/_screens.scss","../scss/admin.scss"],"names":[],"mappings":"AAEA;EACC;EACA;EACA;;;AAID;EACC;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;;;AAGD;AACA;EACC;;;AAED;EACC;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;EACA;EACA;;;AAGD;AACA;EACC;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;AAAA;AAAA;AAAA;EAIC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;;;AAGD;AACA;EAAiB;;;AACjB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAuB;;;AACvB;EAAuB;;;AACvB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAA0B;;;AAC1B;EAA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GN;EAAK;;;AChCR;EAIC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;;;AAOA;EAEE;;AACA;EAEE;;AAIL;EAEC;;AAED;EACC;;AAGD;EAGG;EACA;;AAEA;EAEE;EAEA;EACA;EACA;;AAIL;EACC;EACA;EACA;EACA;;AACA;EACC;EACA;;AAMD;EAEE;;AAGA;EAEE;EACH;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACJ;EACA;EACA;;AAEA;EAAM;;AAEN;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACL;;AAGG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEG;EACA;EACA;EACA;;AAEP;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EAEA;EACA;EACA;EACA;;AAMG;EAAiC;;AAMjC;EAAM;;AACN;EAAa;;AAEX;EACE;EACA;EACA;;AASZ;EAEE;EACA;EACA;EAEA;EACA;;AACA;EACI;EACA;EACA;;AAIN;EAEE;;AAGF;EAEE;;AAGF;EAEE;EACA;EACA;;AACA;EAEE;EACA;;AAKA;EAEE;;AAEF;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAOR;EAEE;EACA;EACA;EACA;;AAGE;EACE;;AAEF;EAEE;;AAGN;EAEE;;AACA;EACC;EACA;;AAOG;EAEE;;AAMJ;EAAQ;;AAEV;EAEE;EACA;EACA;;AAEF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AACA;EAEE;EACA;EACA;;AAIN;EAEE;EACA;;AACA;EAEE;EACA;;AAKN;EAEE;EACA;EACA;EACA;;AACA;EAEE;EACA;;AAIJ;EAEG;;AAIH;EAEE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAC;;AAKH;EAEI;IAEG;;EAEH;IACE;;EACA;IACE;;;AAGR;EAEE;IAAkB;;;AAErB;EAEE;IACE;IACA;IACA;;EAIA;IACE;IACD","file":"admin.css"}
  • enable-media-replace/tags/4.1.8/enable-media-replace.php

    r3372196 r3473504  
    44 * Plugin URI: https://shortpixel.com
    55 * Description: Enable replacing media files by uploading a new file in the "Edit Media" section of the WordPress Media Library.
    6  * Version: 4.1.7
     6 * Version: 4.1.
    77 * Author: ShortPixel
    88 * Author URI: https://shortpixel.com
     
    2626 */
    2727
    28 define( 'EMR_VERSION', '4.1.7' );
     28define( 'EMR_VERSION', '4.1.' );
    2929
    3030if ( ! defined( 'ABSPATH' ) ) {
     
    3232}
    3333
    34 /* Not sure why we define this?
    35 if(!defined("S3_UPLOADS_AUTOENABLE")) {
    36     define('S3_UPLOADS_AUTOENABLE', true);
    37 } */
    3834
    3935if ( ! defined( 'EMR_ROOT_FILE' ) ) {
     
    4137}
    4238
    43 if ( ! defined( 'SHORTPIXEL_AFFILIATE_CODE' ) ) {
    44     define( 'SHORTPIXEL_AFFILIATE_CODE', 'VKG6LYN28044' );
    45 }
    4639
    4740/** Usage:
  • enable-media-replace/tags/4.1.8/readme.txt

    r3412082 r3473504  
    66Tested up to: 6.9
    77Requires PHP: 5.6
    8 Stable tag: 4.1.7
     8Stable tag: 4.1.
    99License: GPLv2 or later
    1010License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    8080
    8181== Changelog ==
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
    8293
    8394= 4.1.7 =
  • enable-media-replace/tags/4.1.8/scss/admin.scss

    r2888216 r3473504  
    371371    float: right;
    372372    clear: both;
    373         background-color: #dcfdff;
     373    //background-color: #dcfdff;
     374    background-color: #fff;
     375    &.fp {
     376      background-color: #fff;
     377    }
    374378    h3 {
    375379      color: #00d0e5;
     
    385389        }
    386390        .red { color: #ff0000; }
    387         .cyan { color: #00d0e5; }
     391        .cyan { color: #; }
    388392        .grey { color: grey; }
    389393        .ucase { text-transform: uppercase; }
     
    391395                text-decoration: none
    392396         }
     397
     398
     399
    393400    .button-wrapper
    394401    {
     
    404411        font-size: 20px;
    405412                text-transform: uppercase;
     413
    406414      }
    407415    }
     
    411419    {
    412420      text-align: center;
    413       margin: 0 0 25px 0;
     421      margin: px 0;
    414422      img { max-width: 140px; max-height: 140px; margin: 0; }
    415423    }
     
    432440                 max-width: 100%;
    433441             }
     442
     443
     444
     445
    434446        }
    435447  }
  • enable-media-replace/tags/4.1.8/views/success.php

    r2888216 r3473504  
    1919    <p><?php _e('Your image has been successfully replaced!', 'enable-media-replace'); ?></p>
    2020
    21     <p><?php _e('Did you know that you can also optimize the images on your website to make them load faster?', 'enable-media-replace'); ?></p>
     21    <?php if (apply_filters('emr/upsell', current_user_can('install_plugins'))) { ?>
     22        <p><?php _e('Did you know that you can also optimize the images on your website to make them load faster?', 'enable-media-replace'); ?></p>
    2223
    23     <p><?php printf(esc_html__('Try the %sShortPixel Image Optimizer%s plugin!', 'enable-media-replace'), '<a href="https://wordpress.org/plugins/shortpixel-image-optimiser/" target="_blank">', '</a>'); ?></p>
     24        <p><?php printf(esc_html__('Try the %sShortPixel Image Optimizer%s plugin!', 'enable-media-replace'), '<a href="https://wordpress.org/plugins/shortpixel-image-optimiser/" target="_blank">', '</a>'); ?></p>
     25    <?php } ?>
    2426
    2527    <p><?php _e('You will be redirect to the image screen in a few seconds.', 'enable-media-replace');
  • enable-media-replace/tags/4.1.8/views/upsell.php

    r2888216 r3473504  
    2121    $spai_active = is_plugin_active('shortpixel-adaptive-images/short-pixel-ai.php');
    2222
     23
     24
     25
    2326    $envira_installed = isset($plugins['envira-gallery-lite/envira-gallery-lite.php']);
    2427    $envira_active = is_plugin_active('envira-gallery-lite/envira-gallery-lite.php');
     
    4043      </div>
    4144            <h4 class="grey">
    42              <?php echo esc_html__("ShortPixel Image Optimizer", "enable-media-replace"); ?>
     45            <?php echo esc_html__("ShortPixel Image Optimizer", "enable-media-replace"); ?>
    4346             </h4>
    44             <h3 class="red ucase"><?php _e('Is your website slow?', 'enable-media-replace'); ?></h3>
    45             <br>
    46             <h3 class="cyan ucase"><?php printf(__('Optimize all images %s automatically', 'enable-media-replace'), '<br>'); ?></h3>
     47            <h3 class="cyan ucase"><?php _e('Unlimited Image Optimizations', 'enable-media-replace'); ?></h3>
     48            </br>
     49            <h3 class="cyan ucase"><?php _e('Unlimited AI Captioning', 'enable-media-replace'); ?></h3>
     50            </br>
     51            <h3 class="cyan ucase"><?php _e('Unlimited Background removal', 'enable-media-replace'); ?></h3>
    4752      <p class='button-wrapper '>
    4853            <?php
     
    6570    <!--- // SHORTPIXEL -->
    6671
    67         <!--- SHORTPIXEL AI -->
     72
     73        <!--- FASTPIXEL -->
     74    <?php if(! $fp_active): ?>
     75
     76    <div class='shortpixel-offer fp'>
     77      <div class='img-wrapper'>
     78          <img width="150" height="" src="<?php echo esc_url(emr()->getPluginURL('img/fastpixel-logo.svg')) ?>" alt="FastPixel">
     79      </div>
     80            <h4 class="grey">
     81             <?php echo esc_html__("FastPixel Website Accelerator", "enable-media-replace"); ?>
     82             </h4>
     83
     84
     85            <h3 class="cyan ucase"><?php printf(__('Faster WordPress', 'enable-media-replace')); ?></h3>
     86            <h3 class="red ucase"><?php _e('Made Easy', 'enable-media-replace'); ?></h3>
     87      <p class='button-wrapper '>
     88            <?php
     89              $install_class = (! $fp_installed) ? '' : 'hidden';
     90                $activate_class = ($fp_installed && ! $fp_active) ? '' : 'hidden';
     91            ?>
     92                    <a class="emr-installer <?php echo $install_class ?>"  data-action="install" data-plugin="fp" href="javascript:void(0)">
     93                        <?php _e('INSTALL NOW', 'enable-media-replace') ?>
     94                    </a>
     95
     96                <a class='emr-activate <?php echo $activate_class ?>' data-action="activate" data-plugin="fp" href="javascript:void(0)">
     97                    <?php _e('ACTIVATE', 'enable-media-replace') ?>
     98                </a>
     99
     100                <h4 class='emr-activate-done hidden' data-plugin='fp'><?php _e('FastPixel activated!', 'enable-media-replace'); ?></h4>
     101            </p>
     102
     103    </div>
     104    <?php endif; ?>
     105    <!--- // FASTPIXEL -->
     106
     107        <!--- SHORTPIXEL AI
    68108    <?php if(! $spai_active): ?>
    69109
     
    99139    <!--- // SHORTPIXEL AI -->
    100140
    101   <!--- Shortpixel THEME -->
    102     <div class='shortpixel-offer theme-offer'>
    103         <p><a href="https://wordpress.org/themes/superb-pixels/" target="_blank"><img src="<?php echo esc_url(emr()->getPluginURL('img/sp-banner-theme.jpg')); ?>" alt='ShortPixel Theme' ></a></p>
    104 
    105     </div>
    106     <!--- // Shortpixel THEME -->
    107 
    108     <!--- WPSO -->
    109     <?php /*
    110     <div class='shortpixel-offer site-speed'>
    111       <p class='img-wrapper'><img width="40" height="40" src="<?php echo emr()->getPluginURL('img/sp-logo-wink.svg'); ?>" alt='ShortPixel'></p>
    112       <h3><?php printf(__('GET AN ASSESSMENT FOR %s YOUR WEBSITE %s AND %s %s FIND OUT HOW TO MAKE IT FASTER %s', 'enable-media-replace'),'<br>', '<br>','<br>', '<span class="red">','</span>'); ?></h3>
    113 
    114       <p class='button-wrapper'><a href='https://wso.shortpixel.com/?utm_source=EMR' target="_blank"><?php _e('FIND OUT MORE', 'enable-media-replace') ?></a></p>
    115     </div>
    116 */ ?>
    117     <!--- // WPSO -->
    118 
    119 
    120 
    121         <!--- ENVIRA temprary deactivated
    122         <?php if (! $envira_pro_active): ?>
    123   <div class='envira-shortpixel-install shortpixel-offer'>
    124 
    125     <p class='img-wrapper'><img src="<?php echo emr()->getPluginURL('img/envira-logo.png'); ?>" alt='Envira Gallery'></p>
    126     <p><?php esc_html_e('Create beautiful, fast-loading photo & video galleries for your site in minutes.', 'enable-media-replace' ); ?></p>
    127 
    128          <?php
    129               $install_class = (! $envira_installed) ? '' : 'hidden';
    130                 $activate_class = ($envira_installed && ! $envira_active) ? '' : 'hidden';
    131          ?>
    132          <?php if (! $envira_active) { ?>
    133        <p class='button-wrapper envira-emr-button-wrap'>
    134 
    135              <a class="emr-installer button button-envira-emr emr-install-envira <?php echo $install_class ?>"  data-action="install" data-plugin="envira" href='javascript:void(0)'><?php _e('Install now', 'enable-media-replace') ?></a>
    136 
    137              <a class="emr-activate button button-envira-emr emr-activate-envira <?php echo $activate_class ?>" href='javascript:void(0)' data-action="activate" data-plugin="envira" ><?php _e('Activate', 'enable-media-replace') ?></a>
    138 
    139                 <h4 class='emr-activate-done hidden' data-plugin='envira'><?php _e('Envira Gallery activated!', 'enable-media-replace'); ?></h4>
    140 
    141         </p>
    142 
    143         <?php } else {
    144                 if ( is_plugin_active( 'envira-gallery-lite/envira-gallery-lite.php' ) ) {
    145             ?>
    146                 <p class='button-wrapper envira-emr-button-wrap'><a class="button button-envira-emr" href='https://enviragallery.com/pricing' target="_blank"><?php _e('Get Pro', 'enable-media-replace') ?></a></p>
    147 
    148                 <?php } else { ?>
    149 
    150                 <?php }
    151             } ?>
    152     </div>
    153     <style>
    154         .envira-emr-button-wrap {
    155         text-align: center;
    156     }
    157     .button-envira-emr {
    158         background-color: #7cc048 !important;
    159         border: none !important;
    160         color: rgb(255,255,255) !important;
    161         font-size: 21px !important;
    162     }
    163     .button-envira-emr:hover {
    164         background-color: #95dc5e !important;
    165     }
    166     </style>
    167     <?php endif; // envira ?>
    168 -->
    169 
    170141</section>
  • enable-media-replace/trunk/build/shortpixel/filesystem/src/Model/File/FileModel.php

    r2898302 r3473504  
    194194  }
    195195
    196   public function hasBackup()
    197   {
    198       $directory = $this->getBackupDirectory();
    199       if (! $directory)
    200         return false;
    201 
    202       $backupFile =  $directory . $this->getFileName();
    203 
    204       if (file_exists($backupFile) && ! is_dir($backupFile) )
    205         return true;
    206       else {
    207         return false;
    208       }
    209   }
     196
    210197
    211198
     
    522509
    523510         // This filter checks if some supplier will be able to handle the file when needed.
    524      $path = apply_filters('shortpixel/image/urltopath', false, $url);
     511     $path = apply_filters('shortpixel/image/urltopath', false, $url);
    525512
    526513         if ($path !== false)
  • enable-media-replace/trunk/build/shortpixel/log/src/DebugItem.php

    r2822720 r3473504  
    3333        {
    3434          $data[] = $this->message;
    35           $this->message = __('[Data]');
     35          $this->message = __('[Data]');
    3636        }
    3737        if (is_array($data) && count($data) > 0)
  • enable-media-replace/trunk/build/shortpixel/notices/src/NoticeModel.php

    r2967042 r3473504  
    275275      $output .= '<div class="details-wrapper">
    276276      <input type="checkbox" name="detailhider" id="check-' . $id .'">
    277       <label for="check-' . $id . '"  class="show-details"><span>' . __('See Details', 'shortpixel-image-optimiser')   . '</span>
     277      <label for="check-' . $id . '"  class="show-details"><span>' . __('See Details', '')   . '</span>
    278278      </label>';
    279279
    280280      $output .= "<div class='detail-content-wrapper'><p class='detail-content'>" . $this->parseDetails() . "</p></div>";
    281       $output .= '<label for="check-' . $id . '" class="hide-details"><span>' . __('Hide Details', 'shortpixel-image-optimiser') . '</span></label>';
     281      $output .= '<label for="check-' . $id . '" class="hide-details"><span>' . __('Hide Details', '') . '</span></label>';
    282282
    283283      $output .= '</div>'; // detail wrapper
     
    288288    if ($this->is_removable)
    289289    {
    290                   $output .= '<button type="button" id="button-' . $id . '" class="notice-dismiss" data-dismiss="' . $this->suppress_period . '" ><span class="screen-reader-text">' . __('Dismiss this notice', 'shortpixel-image-optimiser') . '</span></button>';
     290                  $output .= '<button type="button" id="button-' . $id . '" class="notice-dismiss" data-dismiss="' . $this->suppress_period . '" ><span class="screen-reader-text">' . __('Dismiss this notice', '') . '</span></button>';
    291291
    292292       if (! $this->is_persistent)
  • enable-media-replace/trunk/classes/Controller/ReplaceController.php

    r2970258 r3473504  
    195195      $target_metadata = wp_generate_attachment_metadata( $this->post_id, $this->targetFile->getFullPath() );
    196196            do_action('emr/converter/prevent-offload-off', $this->post_id);
     197
    197198      wp_update_attachment_metadata( $this->post_id, $target_metadata );
    198 
    199199
    200200            $Replacer->setTargetMeta($target_metadata);
     
    249249      );
    250250
    251             $Replacer->replace($args);
    252 
     251            $doreplace = apply_filters('emr/replace/doreplace', true);
     252            if(true === $doreplace){
     253                $Replacer->replace($args);
     254            }
     255           
    253256            // Here Updatedata and a ffew others.
    254257            $this->updateDate();
  • enable-media-replace/trunk/classes/ViewController/RemoveBackgroundViewController.php

    r2967042 r3473504  
    3838     }
    3939
    40 
    4140     $attachment_id = intval($_REQUEST['attachment_id']);
    4241     $attachment = get_post($attachment_id);
     42
     43
     44
     45
     46
     47
    4348
    4449     $uiHelper = \emr()->uiHelper();
     
    7883         {
    7984             $this->viewError(self::ERROR_KEY);
    80              //wp_die(esc_html__('Error while sending form (no key). Please try again.', 'enable-media-replace'));
    8185         }
    8286
     
    8488         if (is_null($post_id)) {
    8589                 $this->viewError(self::ERROR_FORM);
    86 //           wp_die(esc_html__('Error in request. Please try again', 'enable-media-replace'));
    8790         }
     91
     92
     93
     94
     95
     96
     97
     98
    8899
    89100         $this->setView($post_id);
     
    93104         {
    94105              $this->view->errorMessage = $result->message;
    95                 $this->viewError();
     106                $this->viewError();
    96107         }
    97108         elseif (! file_exists($result->image))
     
    100111         }
    101112
    102 //       $result = $replacer->replaceWith($result->image, $source->getFileName() , true);
    103 //$params = array();
    104113        $replaceController = new ReplaceController($post_id);
    105114        $sourceFile = $replaceController->getSourceFile();
  • enable-media-replace/trunk/classes/ViewController/UploadViewController.php

    r2903341 r3473504  
    9191             $this->viewSuccess();
    9292        }
     93
     94
    9395     }
    9496
  • enable-media-replace/trunk/classes/emr-plugin.php

    r3371681 r3473504  
    2222    public function __construct()
    2323    {
    24         add_action('plugins_loaded', array($this, 'runtime')); //lowInit, before theme setup!
     24        add_action('init', array($this, 'runtime'));
     25       // add_action('init', [$this, 'init']);  // init for user authentication, not set on plugins_loaded.
    2526                add_action('admin_init', array($this, 'adminInit')); // adminInit, after functions.php
    2627    }
     
    3031         $this->nopriv_plugin_actions();
    3132
    32         if (EMR_CAPABILITY !== false) {
    33             if (is_array(EMR_CAPABILITY)) {
    34                 $this->general_cap = EMR_CAPABILITY[0];
    35                 $this->user_cap = EMR_CAPABILITY[1];
    36 
    37                 if (! current_user_can($this->general_cap) && ! current_user_can($this->user_cap)) {
    38                     return;
    39                 }
    40             } else {
    41                 $this->general_cap = EMR_CAPABILITY;
    42                 if (! current_user_can($this->general_cap)) {
    43                     return;
    44                 }
    45             }
    46         } elseif (! current_user_can('upload_files')) {
    47             return;
    48         }
    49 
     33        if (EMR_CAPABILITY !== false) {
     34          if (is_array(EMR_CAPABILITY)) {
     35              $this->general_cap = EMR_CAPABILITY[0];
     36              $this->user_cap = EMR_CAPABILITY[1];
     37
     38              if (! current_user_can($this->general_cap) && ! current_user_can($this->user_cap)) {
     39                  return;
     40              }
     41          } else {
     42              $this->general_cap = EMR_CAPABILITY;
     43              if (! current_user_can($this->general_cap)) {
     44                  return;
     45              }
     46          }
     47      current_user_can('upload_files')) {
     48          return;
     49      }
     50     
    5051                new Externals();
    5152
    5253        $this->plugin_actions(); // init
     54
     55
     56
     57
     58
     59
    5360    }
    5461
     
    291298    public function admin_scripts()
    292299    {
    293         if (is_rtl()) {
    294             wp_register_style('emr_style', plugins_url('css/admin.rtl.css', EMR_ROOT_FILE));
     300       if (is_rtl()) {
     301            wp_register_style('emr_style', plugins_url('css/.css', EMR_ROOT_FILE));
    295302        } else {
    296303            wp_register_style('emr_style', plugins_url('css/admin.css', EMR_ROOT_FILE));
    297         }
     304       }
    298305
    299306        wp_register_style('emr_edit-attachment', plugins_url('css/edit_attachment.css', EMR_ROOT_FILE));
  • enable-media-replace/trunk/classes/external/upsell_installer.php

    r2888216 r3473504  
    1313    {
    1414        // Send back a response.
    15         wp_send_json(array('result'=> false));
     15       
     16        wp_send_json(array('result'=> false, 'message' => 'Install permission issue'));
    1617        die;
    1718    }
     
    2021    {
    2122         case "envira":
    22             $download_url = 'https://downloads.wordpress.org/plugin/envira-gallery-lite.zip';
     23        $download_url = 'https://downloads.wordpress.org/plugin/envira-gallery-lite.zip';
    2324         break;
    2425         case 'spio':
    25                 $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-image-optimiser.zip';
     26            $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-image-optimiser.zip';
    2627         break;
    2728         case 'spai':
    28              $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-adaptive-images.zip';
     29            $download_url = 'https://downloads.wordpress.org/plugin/shortpixel-adaptive-images.zip';
     30         break;
     31         case 'fp':
     32            $download_url = 'https://downloads.wordpress.org/plugin/fastpixel-website-accelerator.zip';
    2933         break;
    3034    }
     
    3337    if ( ! is_null($download_url ) ) {
    3438
    35         //$download_url = esc_url_raw( wp_unslash( $_POST['plugin'] ) );
    3639        global $hook_suffix;
    3740
     
    4346        $url    = add_query_arg(
    4447            array(
    45             //  'page' => 'envira-gallery-settings',
    4648            ),
    4749            admin_url( 'admin.php' )
     
    6971        // We do not need any extra credentials if we have gotten this far, so let's install the plugin.
    7072        require_once (ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
    71         require_once (plugin_dir_path( EMR_ROOT_FILE ) . 'classes/external/upgrader_skin.php');
    7273
    7374        // Create the plugin upgrader with our custom skin.
    74         $skin      = new EMR_Envira_Gallery_Skin();
     75        $skin      = new _Skin();
    7576        $installer = new Plugin_Upgrader( $skin );
    7677        $installer->install( $download_url );
     
    8283            $plugin_basename = $installer->plugin_info();
    8384
    84         ob_clean();
     85        ob_clean();
    8586
    8687
     
    9293
    9394    // Send back a response.
    94     wp_send_json(array('result'=> false));
     95    wp_send_json(array('result'=> false));
    9596    die;
    9697
     
    128129     break;
    129130     case 'spai':
    130          $plugin = 'shortpixel-adaptive-images/short-pixel-ai.php';
     131            $plugin = 'shortpixel-adaptive-images/short-pixel-ai.php';
     132     break;
     133     case 'fp':
     134            $plugin = 'fastpixel-website-accelerator/fastpixel.php';
    131135     break;
    132136}
  • enable-media-replace/trunk/classes/external/wp-offload.php

    r2967042 r3473504  
    207207                }
    208208
    209 
    210209                $original_path = $item->original_path(); // Original path (non-scaled-)
    211210                $original_source_path = $item->original_source_path();
     
    214213
    215214                $wp_original = wp_get_original_image_path($post_id, apply_filters( 'emr_unfiltered_get_attached_file', true ));
     215
    216216                $wp_original = apply_filters('emr/replace/original_image_path', $wp_original, $post_id);
    217217                $wp_source = trim(get_attached_file($post_id, apply_filters( 'emr_unfiltered_get_attached_file', true )));
    218 
    219218                $updated = false;
    220219
     
    233232
    234233                     $item->save();
     234
    235235                }
    236236        }
  • enable-media-replace/trunk/css/admin.css

    r2888216 r3473504  
    12971297  float: right;
    12981298  clear: both;
    1299   background-color: #dcfdff;
     1299  background-color: #fff;
     1300}
     1301.emr_upload_form .shortpixel-offer.fp {
     1302  background-color: #fff;
    13001303}
    13011304.emr_upload_form .shortpixel-offer h3 {
     
    13141317}
    13151318.emr_upload_form .shortpixel-offer .cyan {
    1316   color: #00d0e5;
     1319  color: #;
    13171320}
    13181321.emr_upload_form .shortpixel-offer .grey {
     
    13241327.emr_upload_form .shortpixel-offer a {
    13251328  text-decoration: none;
     1329
     1330
     1331
    13261332}
    13271333.emr_upload_form .shortpixel-offer .button-wrapper {
     
    13381344  font-size: 20px;
    13391345  text-transform: uppercase;
     1346
    13401347}
    13411348.emr_upload_form .shortpixel-offer .hidden {
     
    13441351.emr_upload_form .shortpixel-offer .img-wrapper {
    13451352  text-align: center;
    1346   margin: 0 0 25px 0;
     1353  margin: px 0;
    13471354}
    13481355.emr_upload_form .shortpixel-offer .img-wrapper img {
     
    13591366.emr_upload_form .shortpixel-offer.theme-offer img {
    13601367  max-width: 100%;
     1368
     1369
     1370
    13611371}
    13621372@media (max-width: 1200px) {
  • enable-media-replace/trunk/css/admin.css.map

    r2888216 r3473504  
    1 {"version":3,"sourceRoot":"","sources":["../scss/_datepicker.scss","../scss/_screens.scss","../scss/admin.scss"],"names":[],"mappings":"AAEA;EACC;EACA;EACA;;;AAID;EACC;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;;;AAGD;AACA;EACC;;;AAED;EACC;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;EACA;EACA;;;AAGD;AACA;EACC;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;AAAA;AAAA;AAAA;EAIC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;;;AAGD;AACA;EAAiB;;;AACjB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAuB;;;AACvB;EAAuB;;;AACvB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAA0B;;;AAC1B;EAA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GN;EAAK;;;AChCR;EAIC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;;;AAOA;EAEE;;AACA;EAEE;;AAIL;EAEC;;AAED;EACC;;AAGD;EAGG;EACA;;AAEA;EAEE;EAEA;EACA;EACA;;AAIL;EACC;EACA;EACA;EACA;;AACA;EACC;EACA;;AAMD;EAEE;;AAGA;EAEE;EACH;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACJ;EACA;EACA;;AAEA;EAAM;;AAEN;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACL;;AAGG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEG;EACA;EACA;EACA;;AAEP;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EAEA;EACA;EACA;EACA;;AAMG;EAAiC;;AAMjC;EAAM;;AACN;EAAa;;AAEX;EACE;EACA;EACA;;AASZ;EAEE;EACA;EACA;EAEA;EACA;;AACA;EACI;EACA;EACA;;AAIN;EAEE;;AAGF;EAEE;;AAGF;EAEE;EACA;EACA;;AACA;EAEE;EACA;;AAKA;EAEE;;AAEF;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAOR;EAEE;EACA;EACA;EACA;;AAGE;EACE;;AAEF;EAEE;;AAGN;EAEE;;AACA;EACC;EACA;;AAOG;EAEE;;AAMJ;EAAQ;;AAEV;EAEE;EACA;EACA;;AAEF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AACA;EAEE;EACA;EACA;;AAIN;EAEE;EACA;;AACA;EAEE;EACA;;AAKN;EAEE;EACA;EACA;EACA;;AACA;EAEE;EACA;;AAIJ;EAEG;;AAIH;EAEE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACF;;AACE;EACE;EACA;EACA;EACA;EACA;;AAEJ;EAEE;EACA;;AAEF;EAAO;;AACP;EAAQ;;AACR;EAAQ;;AACR;EAAS;;AACR;EACE;;AAED;EAEE;EACA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACJ;;AAGF;EAAU;;AAER;EAEE;EACA;;AACA;EAAM;EAAkB;EAAmB;;AAU/C;EAEE;;AAEF;EAEE;;AACA;EACC;;AAKH;EAEI;IAEG;;EAEH;IACE;;EACA;IACE;;;AAGR;EAEE;IAAkB;;;AAErB;EAEE;IACE;IACA;IACA;;EAIA;IACE;IACD","file":"admin.css"}
     1{"version":3,"sourceRoot":"","sources":["../scss/_datepicker.scss","../scss/_screens.scss","../scss/admin.scss"],"names":[],"mappings":"AAEA;EACC;EACA;EACA;;;AAID;EACC;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;;;AAED;EACC;EACA;;;AAED;AAAA;EAEC;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;EACA;EACA;EACA;EACA;EACA;;;AAED;EACC;;;AAGD;AACA;EACC;;;AAED;EACC;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;EACC;EACA;EACA;;;AAGD;AACA;EACC;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;EACA;;;AAED;EACC;;;AAED;EACC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;EACA;;;AAGD;AACA;EACC;EACA;EACA;EACA;EACA;EACA;;;AAGD;EACC;EACA;;;AAED;AAAA;EAEC;;;AAED;EACC;;;AAED;AAAA;AAAA;AAAA;EAIC;;;AAED;AAAA;EAEC;;;AAED;AAAA;EAEC;;;AAGD;AACA;EAAiB;;;AACjB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAqB;;;AACrB;EAAsB;;;AACtB;EAAuB;;;AACvB;EAAuB;;;AACvB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAAwB;;;AACxB;EAAyB;;;AACzB;EAA0B;;;AAC1B;EAA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GN;EAAK;;;AChCR;EAIC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;AAGD;EAEC;;;AAOA;EAEE;;AACA;EAEE;;AAIL;EAEC;;AAED;EACC;;AAGD;EAGG;EACA;;AAEA;EAEE;EAEA;EACA;EACA;;AAIL;EACC;EACA;EACA;EACA;;AACA;EACC;EACA;;AAMD;EAEE;;AAGA;EAEE;EACH;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACJ;EACA;EACA;;AAEA;EAAM;;AAEN;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAED;EACC;;AAEG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACL;;AAGG;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEG;EACA;EACA;EACA;;AAEP;EAEC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EAEA;EACA;EACA;EACA;;AAMG;EAAiC;;AAMjC;EAAM;;AACN;EAAa;;AAEX;EACE;EACA;EACA;;AASZ;EAEE;EACA;EACA;EAEA;EACA;;AACA;EACI;EACA;EACA;;AAIN;EAEE;;AAGF;EAEE;;AAGF;EAEE;EACA;EACA;;AACA;EAEE;EACA;;AAKA;EAEE;;AAEF;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACE;EACA;EACA;;AAOR;EAEE;EACA;EACA;EACA;;AAGE;EACE;;AAEF;EAEE;;AAGN;EAEE;;AACA;EACC;EACA;;AAOG;EAEE;;AAMJ;EAAQ;;AAEV;EAEE;EACA;EACA;;AAEF;EAEE;EACA;EACA;;AACA;EACE;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;;AACA;EAEE;EACA;EACA;;AAIN;EAEE;EACA;;AACA;EAEE;EACA;;AAKN;EAEE;EACA;EACA;EACA;;AACA;EAEE;EACA;;AAIJ;EAEG;;AAIH;EAEE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EAC;;AAKH;EAEI;IAEG;;EAEH;IACE;;EACA;IACE;;;AAGR;EAEE;IAAkB;;;AAErB;EAEE;IACE;IACA;IACA;;EAIA;IACE;IACD","file":"admin.css"}
  • enable-media-replace/trunk/enable-media-replace.php

    r3372196 r3473504  
    44 * Plugin URI: https://shortpixel.com
    55 * Description: Enable replacing media files by uploading a new file in the "Edit Media" section of the WordPress Media Library.
    6  * Version: 4.1.7
     6 * Version: 4.1.
    77 * Author: ShortPixel
    88 * Author URI: https://shortpixel.com
     
    2626 */
    2727
    28 define( 'EMR_VERSION', '4.1.7' );
     28define( 'EMR_VERSION', '4.1.' );
    2929
    3030if ( ! defined( 'ABSPATH' ) ) {
     
    3232}
    3333
    34 /* Not sure why we define this?
    35 if(!defined("S3_UPLOADS_AUTOENABLE")) {
    36     define('S3_UPLOADS_AUTOENABLE', true);
    37 } */
    3834
    3935if ( ! defined( 'EMR_ROOT_FILE' ) ) {
     
    4137}
    4238
    43 if ( ! defined( 'SHORTPIXEL_AFFILIATE_CODE' ) ) {
    44     define( 'SHORTPIXEL_AFFILIATE_CODE', 'VKG6LYN28044' );
    45 }
    4639
    4740/** Usage:
  • enable-media-replace/trunk/readme.txt

    r3412082 r3473504  
    66Tested up to: 6.9
    77Requires PHP: 5.6
    8 Stable tag: 4.1.7
     8Stable tag: 4.1.
    99License: GPLv2 or later
    1010License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    8080
    8181== Changelog ==
     82
     83
     84
     85
     86
     87
     88
     89
     90
     91
     92
    8293
    8394= 4.1.7 =
  • enable-media-replace/trunk/scss/admin.scss

    r2888216 r3473504  
    371371    float: right;
    372372    clear: both;
    373         background-color: #dcfdff;
     373    //background-color: #dcfdff;
     374    background-color: #fff;
     375    &.fp {
     376      background-color: #fff;
     377    }
    374378    h3 {
    375379      color: #00d0e5;
     
    385389        }
    386390        .red { color: #ff0000; }
    387         .cyan { color: #00d0e5; }
     391        .cyan { color: #; }
    388392        .grey { color: grey; }
    389393        .ucase { text-transform: uppercase; }
     
    391395                text-decoration: none
    392396         }
     397
     398
     399
    393400    .button-wrapper
    394401    {
     
    404411        font-size: 20px;
    405412                text-transform: uppercase;
     413
    406414      }
    407415    }
     
    411419    {
    412420      text-align: center;
    413       margin: 0 0 25px 0;
     421      margin: px 0;
    414422      img { max-width: 140px; max-height: 140px; margin: 0; }
    415423    }
     
    432440                 max-width: 100%;
    433441             }
     442
     443
     444
     445
    434446        }
    435447  }
  • enable-media-replace/trunk/views/success.php

    r2888216 r3473504  
    1919    <p><?php _e('Your image has been successfully replaced!', 'enable-media-replace'); ?></p>
    2020
    21     <p><?php _e('Did you know that you can also optimize the images on your website to make them load faster?', 'enable-media-replace'); ?></p>
     21    <?php if (apply_filters('emr/upsell', current_user_can('install_plugins'))) { ?>
     22        <p><?php _e('Did you know that you can also optimize the images on your website to make them load faster?', 'enable-media-replace'); ?></p>
    2223
    23     <p><?php printf(esc_html__('Try the %sShortPixel Image Optimizer%s plugin!', 'enable-media-replace'), '<a href="https://wordpress.org/plugins/shortpixel-image-optimiser/" target="_blank">', '</a>'); ?></p>
     24        <p><?php printf(esc_html__('Try the %sShortPixel Image Optimizer%s plugin!', 'enable-media-replace'), '<a href="https://wordpress.org/plugins/shortpixel-image-optimiser/" target="_blank">', '</a>'); ?></p>
     25    <?php } ?>
    2426
    2527    <p><?php _e('You will be redirect to the image screen in a few seconds.', 'enable-media-replace');
  • enable-media-replace/trunk/views/upsell.php

    r2888216 r3473504  
    2121    $spai_active = is_plugin_active('shortpixel-adaptive-images/short-pixel-ai.php');
    2222
     23
     24
     25
    2326    $envira_installed = isset($plugins['envira-gallery-lite/envira-gallery-lite.php']);
    2427    $envira_active = is_plugin_active('envira-gallery-lite/envira-gallery-lite.php');
     
    4043      </div>
    4144            <h4 class="grey">
    42              <?php echo esc_html__("ShortPixel Image Optimizer", "enable-media-replace"); ?>
     45            <?php echo esc_html__("ShortPixel Image Optimizer", "enable-media-replace"); ?>
    4346             </h4>
    44             <h3 class="red ucase"><?php _e('Is your website slow?', 'enable-media-replace'); ?></h3>
    45             <br>
    46             <h3 class="cyan ucase"><?php printf(__('Optimize all images %s automatically', 'enable-media-replace'), '<br>'); ?></h3>
     47            <h3 class="cyan ucase"><?php _e('Unlimited Image Optimizations', 'enable-media-replace'); ?></h3>
     48            </br>
     49            <h3 class="cyan ucase"><?php _e('Unlimited AI Captioning', 'enable-media-replace'); ?></h3>
     50            </br>
     51            <h3 class="cyan ucase"><?php _e('Unlimited Background removal', 'enable-media-replace'); ?></h3>
    4752      <p class='button-wrapper '>
    4853            <?php
     
    6570    <!--- // SHORTPIXEL -->
    6671
    67         <!--- SHORTPIXEL AI -->
     72
     73        <!--- FASTPIXEL -->
     74    <?php if(! $fp_active): ?>
     75
     76    <div class='shortpixel-offer fp'>
     77      <div class='img-wrapper'>
     78          <img width="150" height="" src="<?php echo esc_url(emr()->getPluginURL('img/fastpixel-logo.svg')) ?>" alt="FastPixel">
     79      </div>
     80            <h4 class="grey">
     81             <?php echo esc_html__("FastPixel Website Accelerator", "enable-media-replace"); ?>
     82             </h4>
     83
     84
     85            <h3 class="cyan ucase"><?php printf(__('Faster WordPress', 'enable-media-replace')); ?></h3>
     86            <h3 class="red ucase"><?php _e('Made Easy', 'enable-media-replace'); ?></h3>
     87      <p class='button-wrapper '>
     88            <?php
     89              $install_class = (! $fp_installed) ? '' : 'hidden';
     90                $activate_class = ($fp_installed && ! $fp_active) ? '' : 'hidden';
     91            ?>
     92                    <a class="emr-installer <?php echo $install_class ?>"  data-action="install" data-plugin="fp" href="javascript:void(0)">
     93                        <?php _e('INSTALL NOW', 'enable-media-replace') ?>
     94                    </a>
     95
     96                <a class='emr-activate <?php echo $activate_class ?>' data-action="activate" data-plugin="fp" href="javascript:void(0)">
     97                    <?php _e('ACTIVATE', 'enable-media-replace') ?>
     98                </a>
     99
     100                <h4 class='emr-activate-done hidden' data-plugin='fp'><?php _e('FastPixel activated!', 'enable-media-replace'); ?></h4>
     101            </p>
     102
     103    </div>
     104    <?php endif; ?>
     105    <!--- // FASTPIXEL -->
     106
     107        <!--- SHORTPIXEL AI
    68108    <?php if(! $spai_active): ?>
    69109
     
    99139    <!--- // SHORTPIXEL AI -->
    100140
    101   <!--- Shortpixel THEME -->
    102     <div class='shortpixel-offer theme-offer'>
    103         <p><a href="https://wordpress.org/themes/superb-pixels/" target="_blank"><img src="<?php echo esc_url(emr()->getPluginURL('img/sp-banner-theme.jpg')); ?>" alt='ShortPixel Theme' ></a></p>
    104 
    105     </div>
    106     <!--- // Shortpixel THEME -->
    107 
    108     <!--- WPSO -->
    109     <?php /*
    110     <div class='shortpixel-offer site-speed'>
    111       <p class='img-wrapper'><img width="40" height="40" src="<?php echo emr()->getPluginURL('img/sp-logo-wink.svg'); ?>" alt='ShortPixel'></p>
    112       <h3><?php printf(__('GET AN ASSESSMENT FOR %s YOUR WEBSITE %s AND %s %s FIND OUT HOW TO MAKE IT FASTER %s', 'enable-media-replace'),'<br>', '<br>','<br>', '<span class="red">','</span>'); ?></h3>
    113 
    114       <p class='button-wrapper'><a href='https://wso.shortpixel.com/?utm_source=EMR' target="_blank"><?php _e('FIND OUT MORE', 'enable-media-replace') ?></a></p>
    115     </div>
    116 */ ?>
    117     <!--- // WPSO -->
    118 
    119 
    120 
    121         <!--- ENVIRA temprary deactivated
    122         <?php if (! $envira_pro_active): ?>
    123   <div class='envira-shortpixel-install shortpixel-offer'>
    124 
    125     <p class='img-wrapper'><img src="<?php echo emr()->getPluginURL('img/envira-logo.png'); ?>" alt='Envira Gallery'></p>
    126     <p><?php esc_html_e('Create beautiful, fast-loading photo & video galleries for your site in minutes.', 'enable-media-replace' ); ?></p>
    127 
    128          <?php
    129               $install_class = (! $envira_installed) ? '' : 'hidden';
    130                 $activate_class = ($envira_installed && ! $envira_active) ? '' : 'hidden';
    131          ?>
    132          <?php if (! $envira_active) { ?>
    133        <p class='button-wrapper envira-emr-button-wrap'>
    134 
    135              <a class="emr-installer button button-envira-emr emr-install-envira <?php echo $install_class ?>"  data-action="install" data-plugin="envira" href='javascript:void(0)'><?php _e('Install now', 'enable-media-replace') ?></a>
    136 
    137              <a class="emr-activate button button-envira-emr emr-activate-envira <?php echo $activate_class ?>" href='javascript:void(0)' data-action="activate" data-plugin="envira" ><?php _e('Activate', 'enable-media-replace') ?></a>
    138 
    139                 <h4 class='emr-activate-done hidden' data-plugin='envira'><?php _e('Envira Gallery activated!', 'enable-media-replace'); ?></h4>
    140 
    141         </p>
    142 
    143         <?php } else {
    144                 if ( is_plugin_active( 'envira-gallery-lite/envira-gallery-lite.php' ) ) {
    145             ?>
    146                 <p class='button-wrapper envira-emr-button-wrap'><a class="button button-envira-emr" href='https://enviragallery.com/pricing' target="_blank"><?php _e('Get Pro', 'enable-media-replace') ?></a></p>
    147 
    148                 <?php } else { ?>
    149 
    150                 <?php }
    151             } ?>
    152     </div>
    153     <style>
    154         .envira-emr-button-wrap {
    155         text-align: center;
    156     }
    157     .button-envira-emr {
    158         background-color: #7cc048 !important;
    159         border: none !important;
    160         color: rgb(255,255,255) !important;
    161         font-size: 21px !important;
    162     }
    163     .button-envira-emr:hover {
    164         background-color: #95dc5e !important;
    165     }
    166     </style>
    167     <?php endif; // envira ?>
    168 -->
    169 
    170141</section>
Note: See TracChangeset for help on using the changeset viewer.