/**
  * @param StoreProduct $product
  * @param CUploadedFile $image
  */
 public function __construct(StoreProduct $product, CUploadedFile $image)
 {
     $name = StoreUploadedImage::createName($product, $image);
     $fullPath = StoreUploadedImage::getSavePath() . '/' . $name;
     $image->saveAs($fullPath);
     @chmod($fullPath, 0666);
     // Check if product has main image
     $is_main = (int) StoreProductImage::model()->countByAttributes(array('product_id' => $product->id, 'is_main' => 1));
     $imageModel = new StoreProductImage();
     $imageModel->product_id = $product->id;
     $imageModel->name = $name;
     $imageModel->is_main = $is_main == 0 ? true : false;
     $imageModel->uploaded_by = Yii::app()->user->getId();
     $imageModel->date_uploaded = date('Y-m-d H:i:s');
     $imageModel->save();
     $this->resize($fullPath);
     $this->watermark($fullPath);
 }
 /**
  * @param StoreProduct $model
  */
 public function handleUploadedImages(StoreProduct $model)
 {
     $images = CUploadedFile::getInstancesByName('StoreProductImages');
     if ($images && sizeof($images) > 0) {
         /** var $image CUploadedFile */
         foreach ($images as $image) {
             if (!StoreUploadedImage::hasErrors($image)) {
                 $model->addImage($image);
             } else {
                 $this->setFlashMessage(Yii::t('StoreModule.admin', 'Ошибка загрузки изображения {name}', array('{name}' => $image->getName())));
             }
         }
     }
 }