Skip to content

Commit 7f4417e

Browse files
author
Alexander Akimov
authored
Merge pull request #304 from magento-dragons/DRAGONS-PR-12
[Dragons] Bug Fixing Fixes: - Image does not save when edited via right-click and "Insert/Edit Image" - Scope selector on product page does not display all related websites for restricted user - Prices of related products on PDP changes according to product custom options - Swatches not displayed when using search - Reordered items count is not getting updated at mini cart
2 parents d323ecb + 6fae14c commit 7f4417e

File tree

9 files changed

+89
-12
lines changed

9 files changed

+89
-12
lines changed

app/code/Magento/Backend/Block/Store/Switcher.php

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88

99
/**
1010
* Store switcher block
11-
*
12-
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
1311
*/
1412
class Switcher extends \Magento\Backend\Block\Template
1513
{
@@ -152,11 +150,7 @@ public function getWebsites()
152150
{
153151
$websites = $this->_storeManager->getWebsites();
154152
if ($websiteIds = $this->getWebsiteIds()) {
155-
foreach (array_keys($websites) as $websiteId) {
156-
if (!in_array($websiteId, $websiteIds)) {
157-
unset($websites[$websiteId]);
158-
}
159-
}
153+
$websites = array_intersect_key($websites, array_flip($websiteIds));
160154
}
161155
return $websites;
162156
}
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
<?php
2+
/**
3+
* Copyright © 2016 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
7+
namespace Magento\Backend\Test\Unit\Block\Store;
8+
9+
class SwitcherTest extends \PHPUnit_Framework_TestCase
10+
{
11+
/**
12+
* @var \Magento\Backend\Block\Store\Switcher
13+
*/
14+
private $switcherBlock;
15+
16+
private $storeManagerMock;
17+
18+
protected function setUp()
19+
{
20+
$this->storeManagerMock = $this->getMock(\Magento\Store\Model\StoreManagerInterface::class);
21+
$objectHelper = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
22+
$context = $objectHelper->getObject(
23+
\Magento\Backend\Block\Template\Context::class,
24+
[
25+
'storeManager' => $this->storeManagerMock,
26+
]
27+
);
28+
29+
$this->switcherBlock = $objectHelper->getObject(
30+
\Magento\Backend\Block\Store\Switcher::class,
31+
['context' => $context]
32+
);
33+
}
34+
35+
public function testGetWebsites()
36+
{
37+
$websiteMock = $this->getMock(\Magento\Store\Model\Website::class, [], [], '', false);
38+
$websites = [0 => $websiteMock, 1 => $websiteMock];
39+
$this->storeManagerMock->expects($this->once())->method('getWebsites')->will($this->returnValue($websites));
40+
$this->assertEquals($websites, $this->switcherBlock->getWebsites());
41+
}
42+
43+
public function testGetWebsitesIfSetWebsiteIds()
44+
{
45+
$websiteMock = $this->getMock(\Magento\Store\Model\Website::class, [], [], '', false);
46+
$websites = [0 => $websiteMock, 1 => $websiteMock];
47+
$this->storeManagerMock->expects($this->once())->method('getWebsites')->will($this->returnValue($websites));
48+
49+
$this->switcherBlock->setWebsiteIds([1]);
50+
$expected = [1 => $websiteMock];
51+
$this->assertEquals($expected, $this->switcherBlock->getWebsites());
52+
}
53+
}

app/code/Magento/Catalog/view/frontend/templates/product/view/form.phtml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@
4242
'jquery',
4343
'priceBox'
4444
], function($){
45-
var priceBoxes = $('[data-role=priceBox]');
45+
var dataPriceBoxSelector = '[data-role=priceBox]',
46+
dataProductIdSelector = '[data-product-id=<?php echo $block->escapeHtml($_product->getId())?>]',
47+
priceBoxes = $(dataPriceBoxSelector + dataProductIdSelector);
4648

4749
priceBoxes = priceBoxes.filter(function(index, elem){
4850
return !$(elem).find('.price-from').length;

app/code/Magento/Catalog/view/frontend/templates/product/view/options.phtml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@
1010
?>
1111

1212
<?php $_options = $block->decorateArray($block->getOptions()) ?>
13+
<?php $_productId = $block->getProduct()->getId() ?>
1314
<?php if (count($_options)):?>
1415
<script type="text/x-magento-init">
1516
{
1617
"#product_addtocart_form": {
1718
"priceOptions": {
1819
"optionConfig": <?php /* @escapeNotVerified */ echo $block->getJsonConfig()?>,
1920
"controlContainer": ".field",
20-
"priceHolderSelector": "[data-role=priceBox]"
21+
"priceHolderSelector": "[data-product-id='<?php echo $block->escapeHtml($_productId)?>'][data-role=priceBox]"
2122
}
2223
}
2324
}

app/code/Magento/Sales/view/frontend/templates/order/history.phtml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,10 @@
4242
<span><?php /* @escapeNotVerified */ echo __('View Order') ?></span>
4343
</a>
4444
<?php if ($this->helper('Magento\Sales\Helper\Reorder')->canReorder($_order->getEntityId())) : ?>
45-
<a href="<?php /* @escapeNotVerified */ echo $block->getReorderUrl($_order) ?>" class="action order">
45+
<a href="#" data-post='<?php /* @escapeNotVerified */ echo
46+
$this->helper(\Magento\Framework\Data\Helper\PostHelper::class)
47+
->getPostData($block->getReorderUrl($_order))
48+
?>' class="action order">
4649
<span><?php /* @escapeNotVerified */ echo __('Reorder') ?></span>
4750
</a>
4851
<?php endif ?>

app/code/Magento/Sales/view/frontend/templates/order/info/buttons.phtml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@
1010
<div class="actions">
1111
<?php $_order = $block->getOrder() ?>
1212
<?php if ($this->helper('Magento\Sales\Helper\Reorder')->canReorder($_order->getEntityId())) : ?>
13-
<a class="action reorder" href="<?php /* @escapeNotVerified */ echo $block->getReorderUrl($_order) ?>">
13+
<a href="#" data-post='<?php /* @escapeNotVerified */ echo
14+
$this->helper(\Magento\Framework\Data\Helper\PostHelper::class)
15+
->getPostData($block->getReorderUrl($_order))
16+
?>' class="action order">
1417
<span><?php /* @escapeNotVerified */ echo __('Reorder') ?></span>
1518
</a>
1619
<?php endif ?>

app/code/Magento/Sales/view/frontend/templates/order/recent.phtml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,10 @@
4646
<span><?php /* @escapeNotVerified */ echo __('View Order') ?></span>
4747
</a>
4848
<?php if ($this->helper('Magento\Sales\Helper\Reorder')->canReorder($_order->getEntityId())) : ?>
49-
<a href="<?php /* @escapeNotVerified */ echo $block->getReorderUrl($_order) ?>" class="action order">
49+
<a href="#" data-post='<?php /* @escapeNotVerified */ echo
50+
$this->helper(\Magento\Framework\Data\Helper\PostHelper::class)
51+
->getPostData($block->getReorderUrl($_order))
52+
?>' class="action order">
5053
<span><?php /* @escapeNotVerified */ echo __('Reorder') ?></span>
5154
</a>
5255
<?php endif ?>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0"?>
2+
<!--
3+
/**
4+
* Copyright © 2016 Magento. All rights reserved.
5+
* See COPYING.txt for license details.
6+
*/
7+
-->
8+
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
9+
<head>
10+
<css src="Magento_Swatches::css/swatches.css"/>
11+
</head>
12+
<body>
13+
<referenceBlock name="category.product.type.details.renderers">
14+
<block class="Magento\Swatches\Block\Product\Renderer\Listing\Configurable" as="configurable" template="Magento_Swatches::product/listing/renderer.phtml" />
15+
</referenceBlock>
16+
</body>
17+
</page>

lib/web/tiny_mce/plugins/advimage/js/image.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@ var ImageDialog = {
184184
tinyMCEPopup.editor.execCommand('mceRepaint');
185185
tinyMCEPopup.editor.focus();
186186
tinyMCEPopup.close();
187+
ed.onChange.dispatch(ed);
187188
},
188189

189190
getAttrib : function(e, at) {

0 commit comments

Comments
 (0)