Skip to content

Commit 9320b05

Browse files
MC-41755: Add PP PayLater to Home page
- add configuration and banner
1 parent 2ae8844 commit 9320b05

File tree

5 files changed

+125
-1
lines changed

5 files changed

+125
-1
lines changed

app/code/Magento/Paypal/Model/System/Config/Source/PayLater/Position.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,17 @@ public function getPositionsCPP(): array
2424
'near_pp_button' => __('Near PayPal Credit checkout button')
2525
];
2626
}
27+
28+
/**
29+
* PayLater positions source getter for Home Page
30+
*
31+
* @return array
32+
*/
33+
public function getPositionsHP(): array
34+
{
35+
return [
36+
'header' => __('Header (center)'),
37+
'sidebar' => __('Sidebar')
38+
];
39+
}
2740
}

app/code/Magento/Paypal/etc/adminhtml/system/express_checkout.xml

Lines changed: 92 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,98 @@
322322
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
323323
<attribute type="shared">1</attribute>
324324
</field>
325-
<group id="settings_paylater_productpage" translate="label" showInDefault="1" showInWebsite="1" showInStore="1" sortOrder="20">
325+
<group id="settings_paylater_homepage" translate="label" showInDefault="1" showInWebsite="1" showInStore="1" sortOrder="20">
326+
<label>Home Page</label>
327+
<depends>
328+
<field id="paylater_enabled">1</field>
329+
</depends>
330+
<field id="paylater_homepage_display" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="10">
331+
<label>Display</label>
332+
<config_path>payment/paypal_paylater/homepage_display</config_path>
333+
<source_model>Magento\Config\Model\Config\Source\Yesno</source_model>
334+
<attribute type="shared">1</attribute>
335+
</field>
336+
<field id="paylater_homepage_position" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="20">
337+
<label>Position</label>
338+
<config_path>payment/paypal_paylater/homepage_position</config_path>
339+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\Position::getPositionsHP</source_model>
340+
<attribute type="shared">1</attribute>
341+
<depends>
342+
<field id="paylater_homepage_display">1</field>
343+
</depends>
344+
</field>
345+
<field id="paylater_homepage_stylelayout" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="30">
346+
<label>Style Layout</label>
347+
<config_path>payment/paypal_paylater/homepage_stylelayout</config_path>
348+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\StyleLayout</source_model>
349+
<attribute type="shared">1</attribute>
350+
<depends>
351+
<field id="paylater_homepage_display">1</field>
352+
</depends>
353+
</field>
354+
<field id="paylater_homepage_logotype" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="40">
355+
<label>Logo Type</label>
356+
<config_path>payment/paypal_paylater/homepage_logotype</config_path>
357+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\LogoType</source_model>
358+
<attribute type="shared">1</attribute>
359+
<depends>
360+
<field id="paylater_homepage_display">1</field>
361+
<field id="paylater_homepage_stylelayout">text</field>
362+
</depends>
363+
</field>
364+
<field id="paylater_homepage_logoposition" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="50">
365+
<label>Logo Position</label>
366+
<config_path>payment/paypal_paylater/homepage_logoposition</config_path>
367+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\LogoPosition</source_model>
368+
<attribute type="shared">1</attribute>
369+
<depends>
370+
<field id="paylater_homepage_display">1</field>
371+
<field id="paylater_homepage_stylelayout">text</field>
372+
<field id="paylater_homepage_logotype" separator=",">primary,alternative</field>
373+
</depends>
374+
</field>
375+
<field id="paylater_homepage_textcolor" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="60">
376+
<label>Text Color</label>
377+
<config_path>payment/paypal_paylater/homepage_textcolor</config_path>
378+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\TextColor</source_model>
379+
<attribute type="shared">1</attribute>
380+
<depends>
381+
<field id="paylater_homepage_display">1</field>
382+
<field id="paylater_homepage_stylelayout">text</field>
383+
</depends>
384+
</field>
385+
<field id="paylater_homepage_textsize" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="70">
386+
<label>Text Size</label>
387+
<config_path>payment/paypal_paylater/homepage_textsize</config_path>
388+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\TextSize</source_model>
389+
<attribute type="shared">1</attribute>
390+
<depends>
391+
<field id="paylater_homepage_display">1</field>
392+
<field id="paylater_homepage_stylelayout">text</field>
393+
</depends>
394+
</field>
395+
<field id="paylater_homepage_ratio" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="80">
396+
<label>Ratio</label>
397+
<config_path>payment/paypal_paylater/homepage_ratio</config_path>
398+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\Ratio</source_model>
399+
<attribute type="shared">1</attribute>
400+
<depends>
401+
<field id="paylater_homepage_display">1</field>
402+
<field id="paylater_homepage_stylelayout">flex</field>
403+
</depends>
404+
</field>
405+
<field id="paylater_homepage_color" translate="label" type="select" showInDefault="1" showInWebsite="1" sortOrder="90">
406+
<label>Color</label>
407+
<config_path>payment/paypal_paylater/homepage_color</config_path>
408+
<source_model>Magento\Paypal\Model\System\Config\Source\PayLater\Color</source_model>
409+
<attribute type="shared">1</attribute>
410+
<depends>
411+
<field id="paylater_homepage_display">1</field>
412+
<field id="paylater_homepage_stylelayout">flex</field>
413+
</depends>
414+
</field>
415+
</group>
416+
<group id="settings_paylater_productpage" translate="label" showInDefault="1" showInWebsite="1" showInStore="1" sortOrder="30">
326417
<label>Catalog Product Page</label>
327418
<depends>
328419
<field id="paylater_enabled">1</field>

app/code/Magento/Paypal/etc/config.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,11 @@
196196
<productpage_logoposition>left</productpage_logoposition>
197197
<productpage_textcolor>black</productpage_textcolor>
198198
<productpage_textsize>12</productpage_textsize>
199+
<homepage_display>0</homepage_display>
200+
<homepage_position>header</homepage_position>
201+
<homepage_stylelayout>flex</homepage_stylelayout>
202+
<homepage_ratio>1x1</homepage_ratio>
203+
<homepage_color>blue</homepage_color>
199204
</paypal_paylater>
200205
</payment>
201206
</default>

app/code/Magento/Paypal/i18n/en_US.csv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -761,3 +761,4 @@ User,User
761761
"Display pay later messaging on your site for offers like Pay in 3, which lets customers pay with 3 interest- free monthly payments. We’ll show messages on your site to promote this feature for you. You may not promote pay later offers with any other content, marketing, or materials.","Display pay later messaging on your site for offers like Pay in 3, which lets customers pay with 3 interest- free monthly payments. We’ll show messages on your site to promote this feature for you. You may not promote pay later offers with any other content, marketing, or materials."
762762
"Monochrome","Monochrome"
763763
"Grayscale","Grayscale"
764+
"Sidebar","Sidebar"

app/code/Magento/Paypal/view/frontend/layout/cms_index_index.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,13 @@
1515
<argument name="position" xsi:type="number">1</argument>
1616
</arguments>
1717
</block>
18+
<block class="Magento\Paypal\Block\PayLater\Banner" name="sidebar.container.paylater"
19+
template="Magento_Paypal::paylater/banner.phtml">
20+
<arguments>
21+
<argument name="placement" xsi:type="string">home</argument>
22+
<argument name="position" xsi:type="string">sidebar</argument>
23+
</arguments>
24+
</block>
1825
</referenceContainer>
1926
<referenceContainer name="top.container">
2027
<block class="Magento\Paypal\Block\Bml\Banners" name="bml.center.logo" template="Magento_Paypal::bml.phtml">
@@ -23,6 +30,13 @@
2330
<argument name="position" xsi:type="number">0</argument>
2431
</arguments>
2532
</block>
33+
<block class="Magento\Paypal\Block\PayLater\Banner" name="top.container.paylater"
34+
template="Magento_Paypal::paylater/banner.phtml">
35+
<arguments>
36+
<argument name="placement" xsi:type="string">home</argument>
37+
<argument name="position" xsi:type="string">header</argument>
38+
</arguments>
39+
</block>
2640
</referenceContainer>
2741
</body>
2842
</page>

0 commit comments

Comments
 (0)