Ejemplo n.º 1
0
 /**
  * This function performs the validation work for complex object models.
  *
  * In addition to checking the current object, all related objects will
  * also be validated.  If all pass then <code>true</code> is returned; otherwise
  * an aggreagated array of ValidationFailed objects will be returned.
  *
  * @param      array $columns Array of column names to validate.
  * @return     mixed <code>true</code> if all validations pass; array of <code>ValidationFailed</code> objets otherwise.
  */
 protected function doValidate($columns = null)
 {
     if (!$this->alreadyInValidation) {
         $this->alreadyInValidation = true;
         $retval = null;
         $failureMap = array();
         // We call the validate method on the following object(s) if they
         // were passed to this object by their coresponding set
         // method.  This object relates to these object(s) by a
         // foreign key reference.
         if ($this->aImages !== null) {
             if (!$this->aImages->validate($columns)) {
                 $failureMap = array_merge($failureMap, $this->aImages->getValidationFailures());
             }
         }
         if (($retval = ColorPeer::doValidate($this, $columns)) !== true) {
             $failureMap = array_merge($failureMap, $retval);
         }
         if ($this->collProductHasColors !== null) {
             foreach ($this->collProductHasColors as $referrerFK) {
                 if (!$referrerFK->validate($columns)) {
                     $failureMap = array_merge($failureMap, $referrerFK->getValidationFailures());
                 }
             }
         }
         $this->alreadyInValidation = false;
     }
     return !empty($failureMap) ? $failureMap : true;
 }
Ejemplo n.º 2
0
 public function actionCreate()
 {
     $model = new DatasetAttributes();
     $att = Attribute::model()->findByAttributes(array('attribute_name' => Attribute::FUP));
     if (!$att) {
         $att = new Attribute();
         $att->attribute_name = Attribute::FUP;
         $att->definition = '';
         $att->save();
     }
     $model->attribute_id = $att->id;
     $image = new Images();
     if (isset($_POST['DatasetAttributes'])) {
         $args = $_POST['DatasetAttributes'];
         $exist = DatasetAttributes::model()->findByAttributes(array('dataset_id' => $args['dataset_id'], 'attribute_id' => $att->id));
         if ($exist) {
             $model = $exist;
         }
         $model->attributes = $args;
         $model->value = '';
         //$image->attributes = $_POST['Images'];
         $image->license = "no license";
         $image->photographer = "no author";
         $image->source = "gigadb";
         if ($image->validate()) {
             $image->save();
         } else {
             Yii::log(print_r($image->getErrors(), true), 'debug');
         }
         if ($image) {
             $model->image_id = $image->id;
         }
         if ($model->validate()) {
             $model->save();
             $this->redirect('/dataset/' . $model->dataset->identifier);
         } else {
             Yii::log(print_r($model->getErrors(), true), 'debug');
         }
     }
     $this->render('create', array('model' => $model, 'image' => $image));
 }
Ejemplo n.º 3
0
 if (isset($_POST['removed_images'])) {
     foreach ($_POST['removed_images'] as $k => $path) {
         if ($Products->CheckPhotosOnModeration($path)) {
             $Images->remove($GLOBALS['PATH_root'] . str_replace('/files/', 'files/', $path));
         }
     }
 }
 // elseif(isset($_GET['remove']) == true){
 // 	if($Products->CheckPhotosOnModeration($_POST['image'])){
 // 		$Images->remove($GLOBALS['PATH_root']."files/".$_SESSION['member']['email']."/".$_POST['image']);
 // 	}
 // 	echo str_replace($GLOBALS['PATH_root'], '/', $GLOBALS['PATH_root']."files/".$_SESSION['member']['email']."/".$_POST['image']);
 // 	exit(0);
 // }
 if (isset($_GET['validate']) == true) {
     $Images->validate($_FILES, $GLOBALS['PATH_root'] . "files/" . $_SESSION['member']['email'] . "/");
     exit(0);
 } elseif (isset($_GET['upload']) == true) {
     $path = isset($_REQUEST['path']) ? !strpos($_REQUEST['path'], $GLOBALS['PATH_global_root']) ? $_REQUEST['path'] : $GLOBALS['PATH_global_root'] . $_REQUEST['path'] : $GLOBALS['PATH_global_root'] . 'temp/';
     echo str_replace($GLOBALS['PATH_global_root'], '/', $Images->upload($_FILES, $path));
     exit(0);
 } elseif (isset($_POST['editionsubmit']) == true) {
     //Расчет обьема продукта
     $_POST['volume'] = $_POST['height'] * $_POST['width'] * $_POST['length'] * 1.0E-6;
     if ($Products->AddSupplierProduct($_POST)) {
         header('Location: ' . _base_url . '/cabinet/productsonmoderation/');
     }
     exit(0);
 }
 if (isset($_GET['id']) == true && is_numeric($_GET['id']) && $_GET['type'] == 'moderation') {
     $list = $Products->GetProductOnModeration($_GET['id']);