File tree Expand file tree Collapse file tree 5 files changed +61
-2
lines changed Expand file tree Collapse file tree 5 files changed +61
-2
lines changed Original file line number Diff line number Diff line change 45
45
<actualResult type =" variable" >isCookieSecure</actualResult >
46
46
<expectedResult type =" string" >true</expectedResult >
47
47
</assertEquals >
48
+ <executeJS function =" return jQuery.mage.cookies.defaults.secure ? 'true' : 'false'" stepKey =" isCookieSecure2" />
49
+ <assertEquals stepKey =" assertCookieIsSecure2" >
50
+ <actualResult type =" variable" >isCookieSecure2</actualResult >
51
+ <expectedResult type =" string" >true</expectedResult >
52
+ </assertEquals >
48
53
</test >
49
54
</tests >
Original file line number Diff line number Diff line change 32
32
<actualResult type =" variable" >isCookieSecure</actualResult >
33
33
<expectedResult type =" string" >false</expectedResult >
34
34
</assertEquals >
35
+ <executeJS function =" return jQuery.mage.cookies.defaults.secure ? 'true' : 'false'" stepKey =" isCookieSecure2" />
36
+ <assertEquals stepKey =" assertCookieIsSecure2" >
37
+ <actualResult type =" variable" >isCookieSecure2</actualResult >
38
+ <expectedResult type =" string" >false</expectedResult >
39
+ </assertEquals >
35
40
</test >
36
41
</tests >
Original file line number Diff line number Diff line change
1
+ <?php
2
+ /**
3
+ * Copyright © Magento, Inc. All rights reserved.
4
+ * See COPYING.txt for license details.
5
+ */
6
+ declare (strict_types=1 );
7
+
8
+ namespace Magento \Theme \ViewModel \Block ;
9
+
10
+ use Magento \Framework \Session \Config \ConfigInterface ;
11
+ use Magento \Framework \View \Element \Block \ArgumentInterface ;
12
+
13
+ /**
14
+ * Provide cookie configuration
15
+ */
16
+ class SessionConfig implements ArgumentInterface
17
+ {
18
+ /**
19
+ * Session config
20
+ *
21
+ * @var ConfigInterface
22
+ */
23
+ private $ sessionConfig ;
24
+
25
+ /**
26
+ * Constructor
27
+ *
28
+ * @param ConfigInterface $sessionConfig
29
+ */
30
+ public function __construct (
31
+ ConfigInterface $ sessionConfig
32
+ ) {
33
+ $ this ->sessionConfig = $ sessionConfig ;
34
+ }
35
+ /**
36
+ * Get session.cookie_secure
37
+ *
38
+ * @return bool
39
+ * @SuppressWarnings(PHPMD.BooleanGetMethodName)
40
+ */
41
+ public function getCookieSecure (): bool
42
+ {
43
+ return $ this ->sessionConfig ->getCookieSecure ();
44
+ }
45
+ }
Original file line number Diff line number Diff line change 12
12
<block name =" require.js" class =" Magento\Framework\View\Element\Template" template =" Magento_Theme::page/js/require_js.phtml" />
13
13
<referenceContainer name =" after.body.start" >
14
14
<block class =" Magento\RequireJs\Block\Html\Head\Config" name =" requirejs-config" />
15
- <block class =" Magento\Framework\View\Element\Js\Cookie" name =" js_cookies" template =" Magento_Theme::js/cookie.phtml" />
15
+ <block class =" Magento\Framework\View\Element\Js\Cookie" name =" js_cookies" template =" Magento_Theme::js/cookie.phtml" >
16
+ <arguments >
17
+ <argument name =" session_config" xsi : type =" object" >Magento\Theme\ViewModel\Block\SessionConfig</argument >
18
+ </arguments >
19
+ </block >
16
20
<block class =" Magento\Theme\Block\Html\Notices" name =" global_notices" template =" Magento_Theme::html/notices.phtml" />
17
21
</referenceContainer >
18
22
<referenceBlock name =" top.links" >
Original file line number Diff line number Diff line change 18
18
"expires": null,
19
19
"path": "<?= $ block ->escapeJs ($ block ->getPath ()) ?> ",
20
20
"domain": "<?= $ block ->escapeJs ($ block ->getDomain ()) ?> ",
21
- "secure": false,
21
+ "secure": <?= $ block -> getSessionConfig ()-> getCookieSecure () ? ' true ' : ' false ' ; ?> ,
22
22
"lifetime": "<?= $ block ->escapeJs ($ block ->getLifetime ()) ?> "
23
23
}
24
24
}
You can’t perform that action at this time.
0 commit comments