Skip to content

Commit afdb6a9

Browse files
author
Joan He
committed
Merge remote-tracking branch 'upstream/2.3-develop' into libs-upgrade
2 parents 78e9fbe + f6a0a90 commit afdb6a9

File tree

7 files changed

+27
-36
lines changed

7 files changed

+27
-36
lines changed

app/code/Magento/Sales/Helper/Guest.php

Lines changed: 14 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ class Guest extends \Magento\Framework\App\Helper\AbstractHelper
8383
/**
8484
* @var \Magento\Store\Model\StoreManagerInterface
8585
*/
86-
private $_storeManager;
86+
private $storeManager;
8787

8888
/**
8989
* @var string
@@ -119,7 +119,7 @@ public function __construct(
119119
\Magento\Framework\Api\SearchCriteriaBuilder $searchCriteria = null
120120
) {
121121
$this->coreRegistry = $coreRegistry;
122-
$this->_storeManager = $storeManager;
122+
$this->storeManager = $storeManager;
123123
$this->customerSession = $customerSession;
124124
$this->cookieManager = $cookieManager;
125125
$this->cookieMetadataFactory = $cookieMetadataFactory;
@@ -158,9 +158,10 @@ public function loadValidOrder(App\RequestInterface $request)
158158
// It is unique place in the class that process exception and only InputException. It is need because by
159159
// input data we found order and one more InputException could be throws deeper in stack trace
160160
try {
161-
$order = (!empty($post) && isset($post['oar_order_id'], $post['oar_type']))
161+
$order = (!empty($post)
162+
&& isset($post['oar_order_id'], $post['oar_type'])
163+
&& !$this->hasPostDataEmptyFields($post))
162164
? $this->loadFromPost($post) : $this->loadFromCookie($fromCookie);
163-
$this->validateOrderStoreId($order->getStoreId());
164165
$this->coreRegistry->register('current_order', $order);
165166
return true;
166167
} catch (InputException $e) {
@@ -186,7 +187,7 @@ public function getBreadcrumbs(\Magento\Framework\View\Result\Page $resultPage)
186187
[
187188
'label' => __('Home'),
188189
'title' => __('Go to Home Page'),
189-
'link' => $this->_storeManager->getStore()->getBaseUrl()
190+
'link' => $this->storeManager->getStore()->getBaseUrl()
190191
]
191192
);
192193
$breadcrumbs->addCrumb(
@@ -247,12 +248,9 @@ private function loadFromCookie($fromCookie)
247248
*/
248249
private function loadFromPost(array $postData)
249250
{
250-
if ($this->hasPostDataEmptyFields($postData)) {
251-
throw new InputException();
252-
}
253251
/** @var $order \Magento\Sales\Model\Order */
254252
$order = $this->getOrderRecord($postData['oar_order_id']);
255-
if (!$this->compareSoredBillingDataWithInput($order, $postData)) {
253+
if (!$this->compareStoredBillingDataWithInput($order, $postData)) {
256254
throw new InputException(__('You entered incorrect data. Please try again.'));
257255
}
258256
$toCookie = base64_encode($order->getProtectCode() . ':' . $postData['oar_order_id']);
@@ -267,7 +265,7 @@ private function loadFromPost(array $postData)
267265
* @param array $postData
268266
* @return bool
269267
*/
270-
private function compareSoredBillingDataWithInput(Order $order, array $postData)
268+
private function compareStoredBillingDataWithInput(Order $order, array $postData)
271269
{
272270
$type = $postData['oar_type'];
273271
$email = $postData['oar_email'];
@@ -288,7 +286,7 @@ private function compareSoredBillingDataWithInput(Order $order, array $postData)
288286
private function hasPostDataEmptyFields(array $postData)
289287
{
290288
return empty($postData['oar_order_id']) || empty($postData['oar_billing_lastname']) ||
291-
empty($postData['oar_type']) || empty($this->_storeManager->getStore()->getId()) ||
289+
empty($postData['oar_type']) || empty($this->storeManager->getStore()->getId()) ||
292290
!in_array($postData['oar_type'], ['email', 'zip'], true) ||
293291
('email' === $postData['oar_type'] && empty($postData['oar_email'])) ||
294292
('zip' === $postData['oar_type'] && empty($postData['oar_zip']));
@@ -306,26 +304,15 @@ private function getOrderRecord($incrementId)
306304
$records = $this->orderRepository->getList(
307305
$this->searchCriteriaBuilder
308306
->addFilter('increment_id', $incrementId)
307+
->addFilter('store_id', $this->storeManager->getStore()->getId())
309308
->create()
310309
);
311-
if ($records->getTotalCount() < 1) {
312-
throw new InputException(__($this->inputExceptionMessage));
313-
}
314-
$items = $records->getItems();
315-
return array_shift($items);
316-
}
317310

318-
/**
319-
* Check that store_id from order are equals with system
320-
*
321-
* @param int $orderStoreId
322-
* @return void
323-
* @throws InputException
324-
*/
325-
private function validateOrderStoreId($orderStoreId)
326-
{
327-
if ($orderStoreId != $this->_storeManager->getStore()->getId()) {
311+
$items = $records->getItems();
312+
if (empty($items)) {
328313
throw new InputException(__($this->inputExceptionMessage));
329314
}
315+
316+
return array_shift($items);
330317
}
331318
}

app/code/Magento/Sales/etc/adminhtml/system.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,15 +106,15 @@
106106
<comment>We'll use the default error above if you leave this empty.</comment>
107107
</field>
108108
</group>
109-
<group id="dashboard" translate="label,comment" sortOrder="60" showInDefault="1" showInWebsite="0" showInStore="0">
109+
<group id="dashboard" translate="label comment" sortOrder="60" showInDefault="1" showInWebsite="0" showInStore="0">
110110
<label>Dashboard</label>
111111
<field id="use_aggregated_data" translate="label" sortOrder="10" type="select" showInDefault="1" showInWebsite="0" showInStore="0" canRestore="1">
112112
<label>Use Aggregated Data</label>
113113
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
114114
<comment>Improves dashboard performance but provides non-realtime data.</comment>
115115
</field>
116116
</group>
117-
<group id="orders" translate="label,comment" sortOrder="70" showInDefault="1" showInWebsite="1" showInStore="0">
117+
<group id="orders" translate="label comment" sortOrder="70" showInDefault="1" showInWebsite="1" showInStore="0">
118118
<label>Orders Cron Settings</label>
119119
<field id="delete_pending_after" translate="label" type="text" sortOrder="6" showInDefault="1" showInWebsite="1" showInStore="0" canRestore="1">
120120
<label>Pending Payment Order Lifetime (minutes)</label>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Cms/Section/CmsNewPagePageActionsSection.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
<element name="cmsPageTitle" type="text" selector=".page-header .page-title"/>
1919
<element name="pageTitle" type="input" selector="//*[@name='title']"/>
2020
<element name="showHideEditor" type="button" selector="//*[@id='togglecms_page_form_content']"/>
21+
<element name="contentSectionName" type="input" selector="//div[@class='fieldset-wrapper-title']//span[.='Content']"/>
2122
<element name="content" type="input" selector="//textarea[@name='content']"/>
2223
<element name="spinner" type="input" selector='//div[@data-component="cms_page_form.cms_page_form"]' />
2324
<element name="saveAndClose" type="button" selector="#save_and_close" timeout="10"/>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Cms/Test/AdminCreateCmsBlockTest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
</annotations>
2121
<before>
2222
<actionGroup ref="LoginActionGroup" stepKey="loginGetFromGeneralFile"/>
23+
<actionGroup ref="DisabledWYSIWYG" stepKey="disableWYSIWYG"/>
2324
</before>
2425
<after>
2526
<actionGroup ref="logout" stepKey="logout"/>

dev/tests/acceptance/tests/functional/Magento/FunctionalTest/Cms/Test/AdminCreateCmsPageTest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@
9090
</annotations>
9191
<before>
9292
<actionGroup ref="LoginActionGroup" stepKey="loginGetFromGeneralFile"/>
93+
<actionGroup ref="DisabledWYSIWYG" stepKey="disableWYSIWYG"/>
9394
</before>
9495
<after>
9596
<actionGroup ref="logout" stepKey="logout"/>

lib/internal/Magento/Framework/Stdlib/Cookie/PhpCookieManager.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,14 +204,14 @@ private function checkAbilityToSendCookie($name, $value)
204204

205205
$sizeOfCookie = $this->sizeOfCookie($name, $value);
206206

207-
if ($numCookies > PhpCookieManager::MAX_NUM_COOKIES) {
207+
if ($numCookies > static::MAX_NUM_COOKIES) {
208208
$this->logger->warning(
209209
new Phrase('Unable to send the cookie. Maximum number of cookies would be exceeded.'),
210210
array_merge($_COOKIE, ['user-agent' => $this->httpHeader->getHttpUserAgent()])
211211
);
212212
}
213213

214-
if ($sizeOfCookie > PhpCookieManager::MAX_COOKIE_SIZE) {
214+
if ($sizeOfCookie > static::MAX_COOKIE_SIZE) {
215215
throw new CookieSizeLimitReachedException(
216216
new Phrase(
217217
'Unable to send the cookie. Size of \'%name\' is %size bytes.',

lib/internal/Magento/Framework/Stdlib/Test/Unit/Cookie/PhpCookieManagerTest.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@ class PhpCookieManagerTest extends \PHPUnit\Framework\TestCase
4747
const COOKIE_HTTP_ONLY = true;
4848
const COOKIE_NOT_HTTP_ONLY = false;
4949
const COOKIE_EXPIRE_END_OF_SESSION = 0;
50-
const MAX_NUM_COOKIES = 50;
51-
const MAX_COOKIE_SIZE = 4096;
5250

5351
/**
5452
* Mapping from constant names to functions that handle the assertions.
@@ -499,7 +497,9 @@ public function testSetCookieSizeTooLarge()
499497
);
500498

501499
$cookieValue = '';
502-
for ($i = 0; $i < self::MAX_COOKIE_SIZE + 1; $i++) {
500+
501+
$cookieManager = $this->cookieManager;
502+
for ($i = 0; $i < $cookieManager::MAX_COOKIE_SIZE + 1; $i++) {
503503
$cookieValue = $cookieValue . 'a';
504504
}
505505

@@ -527,8 +527,9 @@ public function testSetTooManyCookies()
527527

528528
$userAgent = 'some_user_agent';
529529

530-
// Set self::MAX_NUM_COOKIES number of cookies in superglobal $_COOKIE.
531-
for ($i = count($_COOKIE); $i < self::MAX_NUM_COOKIES; $i++) {
530+
$cookieManager = $this->cookieManager;
531+
// Set $cookieManager::MAX_NUM_COOKIES number of cookies in superglobal $_COOKIE.
532+
for ($i = count($_COOKIE); $i < $cookieManager::MAX_NUM_COOKIES; $i++) {
532533
$_COOKIE['test_cookie_' . $i] = self::COOKIE_VALUE . '_' . $i;
533534
}
534535

0 commit comments

Comments
 (0)