Skip to content

Commit bd8b9e5

Browse files
author
Stanislav Idolov
authored
ENGCOM-2302: [Forwardport] Fix for GitHub issue #14035. #16742
2 parents b13a9eb + a34f82a commit bd8b9e5

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

app/code/Magento/Catalog/Model/Api/SearchCriteria/CollectionProcessor/FilterProcessor/ProductCategoryFilter.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,13 @@ class ProductCategoryFilter implements CustomFilterInterface
2121
*/
2222
public function apply(Filter $filter, AbstractDb $collection)
2323
{
24-
$conditionType = $filter->getConditionType() ?: 'eq';
25-
$categoryFilter = [$conditionType => [$filter->getValue()]];
24+
$value = $filter->getValue();
25+
$conditionType = $filter->getConditionType() ?: 'in';
26+
$filterValue = [$value];
27+
if (($conditionType === 'in' || $conditionType === 'nin') && is_string($value)) {
28+
$filterValue = explode(',', $value);
29+
}
30+
$categoryFilter = [$conditionType => $filterValue];
2631

2732
/** @var Collection $collection */
2833
$collection->addCategoriesFilter($categoryFilter);

app/code/Magento/Catalog/Test/Unit/Model/Api/SearchCriteria/CollectionProcessor/FilterProcessor/ProductCategoryFilterTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public function testApplyWithoutCondition()
6666

6767
$collectionMock->expects($this->once())
6868
->method('addCategoriesFilter')
69-
->with(['eq' => ['value']]);
69+
->with(['in' => ['value']]);
7070

7171
$this->assertTrue($this->model->apply($filterMock, $collectionMock));
7272
}

0 commit comments

Comments
 (0)