Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Add writting authorization by the server on directory /img/ (in most cases, a recursive chmod 766 is enough)
  2. Re-install the module

 

 

Error- " (...) must be writable "

...

  1. You could :
    1. Manually copy the files  (cf. Manuel Configurateur Visuel , Paragraphe "Installation") via some FTP client
    2. OR, just make all directories mentionned in the documentation writtable by the server Manuel Configurateur Visuel, Paragraphe "Installation"
  2. Re-install the module

...

 

Error- " Cannot delete (...) "

...

  1. You could:
    1. turn off the "devel mode" ( file config/defines.inc.php ):

      Code Block
      define('_PS_MODE_DEV_', false)
    2. AND/OR (since Prestashop 1.5.3.1), fix the Prestashop's core on ImageManager class ( ImageManager.php)
      https://github.com/Shagshag/PrestaShop/commit/d79c2c5a313d0c3096345f17c3b2b7c1a672ba19

      File : https://github.com/Shagshag/PrestaShop/blob/d79c2c5a313d0c3096345f17c3b2b7c1a672ba19/classes/ImageManager.php

      Code Block
      collapsetrue
      public static function resize($src_file, $dst_file, $dst_width = null, $dst_height = null, $file_type = 'jpg', $force_type = false)
       {
       // Avoid Warning in PHP 5.2 : "Wrong parameter count for clearstatcache()"
       if (version_compare(PHP_VERSION, '5.3.0', '<')) {
       clearstatcache();
       } else {
       clearstatcache(true, $src_file);
       }
      
      
       if (!file_exists($src_file) || !filesize($src_file))
       return false;
       list($src_width, $src_height, $type) = getimagesize($src_file);
      
      
       // If PS_IMAGE_QUALITY is activated, the generated image will be a PNG with .jpg as a file extension.
       // This allow for higher quality and for transparency. JPG source files will also benefit from a higher quality
       // because JPG reencoding by GD, even with max quality setting, degrades the image.
       if (Configuration::get('PS_IMAGE_QUALITY') == 'png_all'
       || (Configuration::get('PS_IMAGE_QUALITY') == 'png' && $type == IMAGETYPE_PNG) && !$force_type)
       $file_type = 'png';
      
      
       if (!$src_width)
       return false;
       if (!$dst_width)
       $dst_width = $src_width;
       if (!$dst_height)
       $dst_height = $src_height;
      
      
       $src_image = ImageManager::create($type, $src_file);
      
      
       $width_diff = $dst_width / $src_width;
       $height_diff = $dst_height / $src_height;
      
      
       if ($width_diff > 1 && $height_diff > 1)
       {
       $next_width = $src_width;
       $next_height = $src_height;
       }
       else
       {
       if (Configuration::get('PS_IMAGE_GENERATION_METHOD') == 2 || (!Configuration::get('PS_IMAGE_GENERATION_METHOD') && $width_diff > $height_diff))
       {
       $next_height = $dst_height;
       $next_width = round(($src_width * $next_height) / $src_height);
       $dst_width = (int)(!Configuration::get('PS_IMAGE_GENERATION_METHOD') ? $dst_width : $next_width);
       }
       else
       {
       $next_width = $dst_width;
       $next_height = round($src_height * $dst_width / $src_width);
       $dst_height = (int)(!Configuration::get('PS_IMAGE_GENERATION_METHOD') ? $dst_height : $next_height);
       }
       }
      
      
       $dest_image = imagecreatetruecolor($dst_width, $dst_height);
      
      
       // If image is a PNG and the output is PNG, fill with transparency. Else fill with white background.
       if ($file_type == 'png' && $type == IMAGETYPE_PNG)
       {
       imagealphablending($dest_image, false);
       imagesavealpha($dest_image, true);
       $transparent = imagecolorallocatealpha($dest_image, 255, 255, 255, 127);
       imagefilledrectangle($dest_image, 0, 0, $dst_width, $dst_height, $transparent);
       }
       else
       {
       $white = imagecolorallocate($dest_image, 255, 255, 255);
       imagefilledrectangle ($dest_image, 0, 0, $dst_width, $dst_height, $white);
       }
      
      
       imagecopyresampled($dest_image, $src_image, (int)(($dst_width - $next_width) / 2), (int)(($dst_height - $next_height) / 2), 0, 0, $next_width, $next_height, $src_width, $src_height);
       return (ImageManager::write($file_type, $dest_image, $dst_file));
       }
      
      
  2. Try to re-install the module
Uninstall :

...

keep Zones' data

Before 1.5.4.0 versions of Prestashop, when unsintalling the module, simply comment line 114 of file configurateurvisuel.php to keep all the data you already set for products' zones :

...