Ejemplo n.º 1
0
 /**
  * Row validation.
  *
  * @param array $rowData
  * @param int $rowNum
  * @return bool
  */
 public function validateRow(array $rowData, $rowNum)
 {
     $sku = false;
     if (isset($this->_validatedRows[$rowNum])) {
         return !isset($this->_invalidRows[$rowNum]);
     }
     $this->_validatedRows[$rowNum] = true;
     // BEHAVIOR_DELETE use specific validation logic
     if (\Magento\ImportExport\Model\Import::BEHAVIOR_DELETE == $this->getBehavior()) {
         if (!isset($rowData[self::COL_SKU])) {
             $this->addRowError(ValidatorInterface::ERROR_SKU_IS_EMPTY, $rowNum);
             return false;
         }
         return true;
     }
     if (!$this->_validator->isValid($rowData)) {
         foreach ($this->_validator->getMessages() as $message) {
             $this->addRowError($message, $rowNum);
         }
     }
     if (isset($rowData[self::COL_SKU])) {
         $sku = $rowData[self::COL_SKU];
     }
     if (false === $sku) {
         $this->addRowError(ValidatorInterface::ERROR_ROW_IS_ORPHAN, $rowNum);
     }
     return !isset($this->_invalidRows[$rowNum]);
 }