Skip to content

Commit c3ff94a

Browse files
author
Dmytro Voskoboinikov
committed
Merge branch 'MAGETWO-83426' into 2.1-bugfixes
2 parents 11f6598 + b082916 commit c3ff94a

File tree

78 files changed

+2097
-880
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+2097
-880
lines changed

app/code/Magento/Bundle/Model/ResourceModel/Indexer/Price.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,7 @@ protected function _prepareTierPriceIndex($entityIds = null)
491491
null
492492
)->join(
493493
['e' => $this->getTable('catalog_product_entity')],
494-
"i.entity_id=e.$linkField",
494+
"i.entity_id=e.entity_id",
495495
[]
496496
)->where(
497497
'e.type_id=?',
@@ -502,7 +502,7 @@ protected function _prepareTierPriceIndex($entityIds = null)
502502

503503
$select = $connection->select()->from(
504504
['tp' => $this->getTable('catalog_product_entity_tier_price')],
505-
[$linkField]
505+
['e.entity_id']
506506
)->join(
507507
['e' => $this->getTable('catalog_product_entity')],
508508
"tp.{$linkField} = e.{$linkField}",
@@ -523,11 +523,11 @@ protected function _prepareTierPriceIndex($entityIds = null)
523523
)->columns(
524524
new \Zend_Db_Expr('MIN(tp.value)')
525525
)->group(
526-
["tp.{$linkField}", 'cg.customer_group_id', 'cw.website_id']
526+
['e.entity_id', 'cg.customer_group_id', 'cw.website_id']
527527
);
528528

529529
if (!empty($entityIds)) {
530-
$select->where("tp.{$linkField} IN(?)", $entityIds);
530+
$select->where('e.entity_id IN(?)', $entityIds);
531531
}
532532

533533
$query = $select->insertFromSelect($this->_getTierPriceIndexTable());

app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,6 @@ public function execute()
129129
$isNewCategory = !isset($categoryPostData['entity_id']);
130130
$categoryPostData = $this->stringToBoolConverting($categoryPostData);
131131
$categoryPostData = $this->imagePreprocessing($categoryPostData);
132-
$categoryPostData = $this->dateTimePreprocessing($category, $categoryPostData);
133132
$storeId = isset($categoryPostData['store_id']) ? $categoryPostData['store_id'] : null;
134133
$store = $this->storeManager->getStore($storeId);
135134
$this->storeManager->setCurrentStore($store->getCode());

app/code/Magento/Catalog/Model/Product/Option/Type/Date.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ public function prepareForCart()
142142

143143
if ($this->_dateExists()) {
144144
if ($this->useCalendar()) {
145-
$timestamp += $this->_localeDate->date($value['date'], null, true, false)->getTimestamp();
145+
$timestamp += $this->_localeDate->date($value['date'], null, true)->getTimestamp();
146146
} else {
147147
$timestamp += mktime(0, 0, 0, $value['month'], $value['day'], $value['year']);
148148
}

app/code/Magento/Catalog/Model/ProductRepository.php

Lines changed: 21 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -292,27 +292,34 @@ protected function initializeProductData(array $productData, $createNew)
292292
foreach ($productData as $key => $value) {
293293
$product->setData($key, $value);
294294
}
295-
$this->assignProductToWebsites($product);
295+
$this->assignProductToWebsites($product, $createNew);
296296

297297
return $product;
298298
}
299299

300300
/**
301301
* @param \Magento\Catalog\Model\Product $product
302+
* @param bool $createNew
302303
* @return void
303304
*/
304-
private function assignProductToWebsites(\Magento\Catalog\Model\Product $product)
305+
private function assignProductToWebsites(\Magento\Catalog\Model\Product $product, $createNew)
305306
{
306-
if (!$this->storeManager->hasSingleStore()) {
307-
308-
if ($this->storeManager->getStore()->getCode() == \Magento\Store\Model\Store::ADMIN_CODE) {
309-
$websiteIds = array_keys($this->storeManager->getWebsites());
310-
} else {
311-
$websiteIds = [$this->storeManager->getStore()->getWebsiteId()];
312-
}
307+
$websiteIds = $product->getWebsiteIds();
308+
309+
if ($createNew && !$this->storeManager->hasSingleStore()) {
310+
$websiteIds = array_unique(
311+
array_merge(
312+
$websiteIds,
313+
[$this->storeManager->getStore()->getWebsiteId()]
314+
)
315+
);
316+
}
313317

314-
$product->setWebsiteIds(array_unique(array_merge($product->getWebsiteIds(), $websiteIds)));
318+
if ($createNew && $this->storeManager->getStore(true)->getCode() == \Magento\Store\Model\Store::ADMIN_CODE) {
319+
$websiteIds = array_keys($this->storeManager->getWebsites());
315320
}
321+
322+
$product->setWebsiteIds($websiteIds);
316323
}
317324

318325
/**
@@ -401,7 +408,7 @@ private function processLinks(\Magento\Catalog\Api\Data\ProductInterface $produc
401408
$linksToInitialize = [];
402409
foreach ($linksByType as $link) {
403410
$linkDataArray = $this->extensibleDataObjectConverter
404-
->toNestedArray($link, [], 'Magento\Catalog\Api\Data\ProductLinkInterface');
411+
->toNestedArray($link, [], \Magento\Catalog\Api\Data\ProductLinkInterface::class);
405412
$linkedSku = $link->getLinkedProductSku();
406413
if (!isset($linkedProductIds[$linkedSku])) {
407414
throw new NoSuchEntityException(
@@ -518,7 +525,7 @@ public function save(\Magento\Catalog\Api\Data\ProductInterface $product, $saveO
518525
}
519526

520527
$productDataArray = $this->extensibleDataObjectConverter
521-
->toNestedArray($product, [], 'Magento\Catalog\Api\Data\ProductInterface');
528+
->toNestedArray($product, [], \Magento\Catalog\Api\Data\ProductInterface::class);
522529
$productDataArray = array_replace($productDataArray, $product->getData());
523530
$ignoreLinksFlag = $product->getData('ignore_links_flag');
524531
$productLinks = null;
@@ -631,6 +638,7 @@ public function getList(\Magento\Framework\Api\SearchCriteriaInterface $searchCr
631638
$collection->setCurPage($searchCriteria->getCurrentPage());
632639
$collection->setPageSize($searchCriteria->getPageSize());
633640
$collection->load();
641+
$collection->addCategoryIds();
634642

635643
$searchResult = $this->searchResultsFactory->create();
636644
$searchResult->setSearchCriteria($searchCriteria);
@@ -717,7 +725,7 @@ private function getMediaGalleryProcessor()
717725
{
718726
if (null === $this->mediaGalleryProcessor) {
719727
$this->mediaGalleryProcessor = \Magento\Framework\App\ObjectManager::getInstance()
720-
->get('Magento\Catalog\Model\Product\Gallery\Processor');
728+
->get(\Magento\Catalog\Model\Product\Gallery\Processor::class);
721729
}
722730
return $this->mediaGalleryProcessor;
723731
}

app/code/Magento/Catalog/Test/Unit/Controller/Adminhtml/Category/SaveTest.php

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,6 @@ public function testExecute($categoryId, $storeId, $parentId)
279279
'setParentId',
280280
'setData',
281281
'addData',
282-
'getAttributes',
283282
'setAttributeSetId',
284283
'getDefaultAttributeSetId',
285284
'getProductsReadonly',
@@ -470,9 +469,6 @@ public function testExecute($categoryId, $storeId, $parentId)
470469
$categoryMock->expects($this->any())
471470
->method('getId')
472471
->will($this->returnValue($categoryId));
473-
$categoryMock->expects($this->once())
474-
->method('getAttributes')
475-
->willReturn([]);
476472
if (!$parentId) {
477473
if ($storeId) {
478474
$storeManagerMock->expects($this->once())

app/code/Magento/Catalog/Test/Unit/Model/CategoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -550,7 +550,7 @@ public function testGetCustomAttributes()
550550
$this->assertEquals("description", $this->category->getCustomAttribute($descriptionAttributeCode)->getValue());
551551

552552
//Change the attribute value, should reflect in getCustomAttribute
553-
$this->category->setData($descriptionAttributeCode, "new description");
553+
$this->category->setCustomAttribute($descriptionAttributeCode, "new description");
554554
$this->assertEquals(1, count($this->category->getCustomAttributes()));
555555
$this->assertNotNull($this->category->getCustomAttribute($descriptionAttributeCode));
556556
$this->assertEquals(

0 commit comments

Comments
 (0)