Skip to content

Commit

Permalink
BO-2260 Adjustments after review.
Browse files Browse the repository at this point in the history
  • Loading branch information
asmarovydlo committed Jan 6, 2025
1 parent 89f2457 commit 20d6f40
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 35 deletions.
6 changes: 6 additions & 0 deletions _data/sidebars/pbc_all_sidebar.yml
Original file line number Diff line number Diff line change
Expand Up @@ -860,6 +860,12 @@ entries:

- title: Marketplace
nested:
- title: Install
nested:
- title: Install features
nested:
- title: Install the CMS + Marketplace Merchant Portal Core feature
url: /docs/pbc/all/content-management-system/marketplace/install-features/install-cms-merchant-portal-core-feature.html
- title: "Glue API: Retrieve abstract products in abstract product lists"
url: /docs/pbc/all/content-management-system/marketplace/glue-api-retrieve-abstract-products-in-abstract-product-lists.html

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
---
title: Marketplace Merchant Portal Core feature + CMS integration
last_updated: Mar 31, 2021
description: This document describes how to integrate the Merchant Portal Core + CMS feature into a Spryker project.
template: feature-integration-guide-template
---

This document describes how to integrate the Marketplace Merchant Portal Core + CMS feature into a Spryker project.

## Install feature core
Expand All @@ -17,8 +10,8 @@ To start feature integration, integrate the required features:

| NAME | VERSION | INTEGRATION GUIDE |
| -------------------- | ---------- | ---------|
| Spryker Core | {{page.version}} | [Spryker Core feature integration](https://documentation.spryker.com/docs/spryker-core-feature-integration) |
| CMS | {{page.version}} | [Spryker CMS feature integration](https://documentation.spryker.com/docs/cms)
| Spryker Core | {{page.version}} | [Spryker Core feature integration](/docs/pbc/all/miscellaneous/{{ page.version }}/install-and-upgrade/install-features/install-the-spryker-core-feature.html) |
| CMS | {{page.version}} | [Spryker CMS feature integration](/docs/pbc/all/content-management-system/{{ page.version }}/base-shop/install-and-upgrade/install-features/install-the-cms-feature.html)
| Marketplace Merchant Portal Core | {{page.version}} | [Marketplace Merchant Portal Core](/docs/marketplace/dev/feature-integration-guides/{{ page.version }}/merchant-portal-core-feature-integration.html)

### 1) Create merchant restore password email templates
Expand All @@ -30,28 +23,28 @@ Set up templates as follows:
**src/Pyz/Zed/MerchantUserPasswordResetMail/Presentation/Mail/merchant_restore_password.html.twig**

```html
{{ renderCmsBlockAsTwig(
\{\{ renderCmsBlockAsTwig(
'merchant_restore_password--html',
constant('APPLICATION_STORE'),
mail.locale.localeName,
{mail: mail}) }}
{mail: mail}) \}\}
```

**src/Pyz/Zed/MerchantUserPasswordResetMail/Presentation/Mail/merchant_restore_password.text.twig**

```html
{{ renderCmsBlockAsTwig(
\{\{ renderCmsBlockAsTwig(
'merchant_restore_password--text',
constant('APPLICATION_STORE'),
mail.locale.localeName,
{mail: mail}) }}
{mail: mail}) \}\}
```

### 2) Data Import

Import CMS blocks as follows (or create them via zed backoffice):

1. Add the following csv file:
1. Add cms blocks:

**data/import/common/common/cms_block.csv**

Expand All @@ -61,15 +54,13 @@ cms-block-email--merchant_restore_password--html,merchant_restore_password--html
cms-block-email--merchant_restore_password--text,merchant_restore_password--text,TEXT Email Template With Header And Footer,@CmsBlock/template/email-template-with-header-and-footer.text.twig,1,,,,,,,{{ 'mail.trans.common.hello_for_first_name' | trans }} {{ mail.user.firstName }} {{mail.user.lastName}} {{ 'mail.trans.merchant.restore_password.title' | trans }} {{ 'mail.trans.restore_password.subtitle' | trans }} {{ 'mail.trans.restore_password.change_password' | trans }} ({{ mail.resetPasswordLink }}) ,{{ 'mail.trans.common.hello_for_first_name' | trans }} {{ mail.user.firstName }} {{mail.user.lastName}} {{ 'mail.trans.merchant.restore_password.title' | trans }} {{ 'mail.trans.restore_password.subtitle' | trans }} {{ 'mail.trans.restore_password.change_password' | trans }} ({{ mail.resetPasswordLink }})
```

2. Add the following csv file:

Import cms blocks:

```bash
console data:import:cms-block
```

3. Enable cms blocks per needed store via importing the next data (or enable them via zed backoffice)
2. Enable cms blocks per needed store via importing the next data (or enable them via zed backoffice)

**data/import/common/AT/cms_block_store.csv**

Expand All @@ -95,13 +86,14 @@ cms-block-email--merchant_restore_password--text,US
```

Import cms blocks per needed store:

```bash
console data:import:cms-block-store
```

{% info_block warningBox "Verification" %}

Make sure that the following data has been added to the database
Make sure that the data from csv files above has been added to the following database tables:

* `spy_cms_block`
* `spy_cms_block_store`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -234,24 +234,24 @@ Set up the following behaviors.

#### Integrate the following plugins

| PLUGIN | SPECIFICATION | PREREQUISITES | NAMESPACE |
|------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|---------------|----------------------------------------------------------------------------------|
| ZedMerchantUserSecurityPlugin | Sets security firewalls (rules, handlers) for Marketplace users. | | Spryker\Zed\SecurityMerchantPortalGui\Communication\Plugin\Security |
| BooleanToStringTwigPlugin | Adds a Twig function for converting Boolean to String. | | Spryker\Zed\ZedUi\Communication\Plugin\Twig |
| ZedUiNavigationTwigPlugin | Adds a Twig function for rendering the navigation using web components. | | Spryker\Zed\ZedUi\Communication\Plugin |
| MerchantNavigationTypeTwigPlugin | Adds `mainMerchantNavigationType` and `secondaryMerchantNavigationType` Twig global variables. | | Spryker\Zed\MerchantPortalApplication\Communication\Plugin\Twig |
| GuiTableApplicationPlugin | Enables the GuiTable infrastructure for the Back Office. | | Spryker\Zed\GuiTable\Communication\Plugin\Application |
| GuiTableConfigurationTwigPlugin | Adds a Twig function for rendering `GuiTableConfiguration` for the `GuiTable` web component. | | Spryker\Zed\GuiTable\Communication\Plugin\Twig |
| MerchantUserSecurityTokenUpdateMerchantUserPostChangePlugin | Rewrites the Symfony security token for merchant users with `MerchantUser` and without `IS_IMPERSONATOR` roles granted. | | Spryker\Zed\SecurityMerchantPortalGui\Communication\Plugin\UserMerchantPortalGui |
| PLUGIN | SPECIFICATION | PREREQUISITES | NAMESPACE |
|-----------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|---------------|----------------------------------------------------------------------------------|
| ZedMerchantUserSecurityPlugin | Sets security firewalls (rules, handlers) for Marketplace users. | | Spryker\Zed\SecurityMerchantPortalGui\Communication\Plugin\Security |
| BooleanToStringTwigPlugin | Adds a Twig function for converting Boolean to String. | | Spryker\Zed\ZedUi\Communication\Plugin\Twig |
| ZedUiNavigationTwigPlugin | Adds a Twig function for rendering the navigation using web components. | | Spryker\Zed\ZedUi\Communication\Plugin |
| MerchantNavigationTypeTwigPlugin | Adds `mainMerchantNavigationType` and `secondaryMerchantNavigationType` Twig global variables. | | Spryker\Zed\MerchantPortalApplication\Communication\Plugin\Twig |
| GuiTableApplicationPlugin | Enables the GuiTable infrastructure for the Back Office. | | Spryker\Zed\GuiTable\Communication\Plugin\Application |
| GuiTableConfigurationTwigPlugin | Adds a Twig function for rendering `GuiTableConfiguration` for the `GuiTable` web component. | | Spryker\Zed\GuiTable\Communication\Plugin\Twig |
| MerchantUserSecurityTokenUpdateMerchantUserPostChangePlugin | Rewrites the Symfony security token for merchant users with `MerchantUser` and without `IS_IMPERSONATOR` roles granted. | | Spryker\Zed\SecurityMerchantPortalGui\Communication\Plugin\UserMerchantPortalGui |
| MerchantPortalConfigurationAclEntityMetadataConfigExpanderPlugin | Expands the provided `AclEntityMetadataConfig` transfer object with event behavior composite data. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\AclEntity |
| MerchantAclEntitiesMerchantPostCreatePlugin | Creates an ACL group, ACL role, ACL rules, ACL entity rules, and ACL entity segment for a provided merchant. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\Merchant |
| MerchantUserAclEntitiesMerchantUserPostCreatePlugin | Creates an ACL group, ACL role, ACL rules, ACL entity rules, and ACL entity segment for a provided merchant user. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| AclMerchantPortalMerchantUserRoleFilterPreConditionPlugin | Checks if Symfony security authentication roles should be filtered out. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| MerchantUserUserRoleFilterPlugin | Filters `ROLE_BACK_OFFICE_USER` to prevent a merchant user from logging into the Back Office. | | Spryker\Zed\MerchantUser\Communication\Plugin\SecurityGui |
| ProductViewerForOfferCreationAclInstallerPlugin | Provides `ProductViewerForOfferCreation` roles with rules and groups to create on installation. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| AclGroupMerchantUserLoginRestrictionPlugin | Checks if the merchant user login is restricted. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\SecurityMerchantPortalGui |
| MailMerchantUserPasswordResetRequestStrategyPlugin | Checks if strategy is applicable for a password reset request. Returns true if merchant user exists, false otherwise. | | Spryker\Zed\MerchantUserPasswordResetMail\Communication\Plugin\UserPasswordReset |
| MerchantUserPasswordResetMailTypePlugin | Builds the mail of merchant password restore type. | | Spryker\Zed\MerchantUserPasswordResetMail\Communication\Plugin\Mail |
| MerchantAclEntitiesMerchantPostCreatePlugin | Creates an ACL group, ACL role, ACL rules, ACL entity rules, and ACL entity segment for a provided merchant. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\Merchant |
| MerchantUserAclEntitiesMerchantUserPostCreatePlugin | Creates an ACL group, ACL role, ACL rules, ACL entity rules, and ACL entity segment for a provided merchant user. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| AclMerchantPortalMerchantUserRoleFilterPreConditionPlugin | Checks if Symfony security authentication roles should be filtered out. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| MerchantUserUserRoleFilterPlugin | Filters `ROLE_BACK_OFFICE_USER` to prevent a merchant user from logging into the Back Office. | | Spryker\Zed\MerchantUser\Communication\Plugin\SecurityGui |
| ProductViewerForOfferCreationAclInstallerPlugin | Provides `ProductViewerForOfferCreation` roles with rules and groups to create on installation. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\MerchantUser |
| AclGroupMerchantUserLoginRestrictionPlugin | Checks if the merchant user login is restricted. | | Spryker\Zed\AclMerchantPortal\Communication\Plugin\SecurityMerchantPortalGui |
| MailMerchantUserPasswordResetRequestStrategyPlugin | Allows to enable reset password functionality for merchant users. | | Spryker\Zed\MerchantUserPasswordResetMail\Communication\Plugin\UserPasswordReset |
| MerchantUserPasswordResetMailTypeBuilderPlugin | Builds the MailTransfer for merchant password restore email type. | | Spryker\Zed\MerchantUserPasswordResetMail\Communication\Plugin\Mail |

**src/Pyz/Zed/Twig/TwigDependencyProvider.php**

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: Install the CMS + Marketplace Merchant Portal Core feature
last_updated: Jan 6, 2025
description: This document describes how to integrate the Marketplace Merchant Portal Core + CMS feature into a Spryker project.
template: feature-integration-guide-template
---

{% include pbc/all/install-features/{{page.version}}/marketplace/install-merchant-portal-core-cms-feature.md %} <!-- To edit, see /_includes/pbc/all/install-features/202410.0/marketplace/install-merchant-portal-core-cms-feature.md -->

0 comments on commit 20d6f40

Please sign in to comment.