Skip to content

Commit

Permalink
Merge branch 'MAGETWO-59413' into backports-2.0.11
Browse files Browse the repository at this point in the history
  • Loading branch information
valdislav committed Oct 27, 2016
2 parents fbdb307 + 4f82185 commit c6595d1
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,11 @@ public function prepareAttributesWithDefaultValueForSave(array $rowData, $withDe
$resultAttrs[$attrCode] = $attrParams['options'][strtolower($rowData[$attrCode])];
} elseif ('multiselect' == $attrParams['type']) {
$resultAttrs[$attrCode] = [];
foreach ($this->parseMultiselectValues($this->_entityModel, $rowData[$attrCode]) as $value) {
$multiSelectValues = $this->parseMultiSelectValues(
$this->_entityModel->getParameters(),
$rowData[$attrCode]
);
foreach ($multiSelectValues as $value) {
$resultAttrs[$attrCode][] = $attrParams['options'][strtolower($value)];
}
$resultAttrs[$attrCode] = implode(',', $resultAttrs[$attrCode]);
Expand Down Expand Up @@ -529,12 +533,12 @@ public function saveData()
/**
* Parse values of multiselect attributes depends on "Fields Enclosure" parameter
*
* @param array $parameters
* @param string $values
* @return array
*/
private function parseMultiselectValues(\Magento\CatalogImportExport\Model\Import\Product $context, $values)
private function parseMultiSelectValues(array $parameters, $values)
{
$parameters = $context->getParameters();
if (empty($parameters[\Magento\ImportExport\Model\Import::FIELDS_ENCLOSURE])) {
return explode(\Magento\CatalogImportExport\Model\Import\Product::PSEUDO_MULTI_LINE_SEPARATOR, $values);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ public function isAttributeValid($attrCode, array $attrParams, array $rowData)
$valid = $this->validateOption($attrCode, $attrParams['options'], $rowData[$attrCode]);
break;
case 'multiselect':
$values = $this->parseMultiselectValues($this->context, $rowData[$attrCode]);
$values = $this->parseMultiSelectValues($this->context->getParameters(), $rowData[$attrCode]);
foreach ($values as $value) {
$valid = $this->validateOption($attrCode, $attrParams['options'], $value);
if (!$valid) {
Expand Down Expand Up @@ -293,12 +293,12 @@ public function init($context)
/**
* Parse values of multiselect attributes depends on "Fields Enclosure" parameter
*
* @param array $parameters
* @param string $values
* @return array
*/
private function parseMultiselectValues(\Magento\CatalogImportExport\Model\Import\Product $context, $values)
private function parseMultiSelectValues(array $parameters, $values)
{
$parameters = $context->getParameters();
if (empty($parameters[\Magento\ImportExport\Model\Import::FIELDS_ENCLOSURE])) {
return explode(\Magento\CatalogImportExport\Model\Import\Product::PSEUDO_MULTI_LINE_SEPARATOR, $values);
}
Expand Down

0 comments on commit c6595d1

Please sign in to comment.