Exemplo n.º 1
0
 /**
  * Updates product image in Prestashop.
  * 
  * @param integer $id_product, integer $id_img, string $url, string $name_photo
  * @return integer 
  * @see $this->copyImg
  *
  */
 public function updateImageInPrestashop($id_product, $id_img, $url, $name_photo)
 {
     if (empty($id_img)) {
         return (int) $this->insertImageInPrestashop($id_product, $url, $name_photo);
     } else {
         $shops = Shop::getShops(true, null, true);
         $image = new ImageCore((int) $id_img);
         $image->id_product = $id_product;
         $tmp = explode(".", $name_photo);
         $name_photo_product = "";
         $name_for_legend = "";
         if (count($tmp) == 1) {
             $name_photo_product = trim($url) . $name_photo . ".jpg";
             $name_for_legend = $name_photo . ".jpg";
         } else {
             $name_photo_product = trim($url) . $name_photo;
             $name_for_legend = $name_photo;
         }
         $image->legend = array('1' => trim($name_for_legend));
         if ($image->validateFields(false, true) === true && $image->validateFieldsLang(false, true) === true && $image->update()) {
             $image->associateTo($shops);
             if (!$this->copyImg($id_product, $id_img, $name_photo_product, 'products')) {
                 $image->delete();
             }
         }
         return (int) $image->id;
     }
 }