ikuzostudio/rma-plugin

RMA plugin for Sylius

Installs: 177

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:sylius-plugin


README

68747470733a2f2f64656d6f2e73796c6975732e636f6d2f6173736574732f73686f702f696d672f6c6f676f2e706e67

RMA Plugin

Add RMA contact page into Sylius.

/!\ Currently in alpha /!\

Quickstart

$ composer require ikuzostudio/rma-plugin

Add plugin dependencies to your config/bundles.php file:

return [
  // ...
  Ikuzo\SyliusRMAPlugin\IkuzoSyliusRMAPlugin::class => ['all' => true],
];

Import required config in your config/packages/_sylius.yaml file:

# config/packages/_sylius.yaml

imports:
  ...
  - { resource: "@IkuzoSyliusRMAPlugin/Resources/config/app/config.yaml"}

Add routes in config/routes.yaml

# config/routes.yaml

ikuzo_rma_routes:
    resource: "@IkuzoSyliusRMAPlugin/Resources/config/routes.yaml"
    prefix: /{_locale}
    requirements:
        _locale: ^[a-z]{2}(?:_[A-Z]{2})?$

To override existing reasons, in your config/packages/_sylius.yaml file:

# config/packages/_sylius.yaml

ikuzo_sylius_rma:
  reasons:
    damaged: ikuzo_rma.form.reasons.damaged
    wrong_product: ikuzo_rma.form.reasons.wrong_product
    other: ikuzo_rma.form.reasons.other
    ...

Add the RMAChannelInterface to the Channel model and implement it with the RMAChannelTrait

use Ikuzo\SyliusRMAPlugin\Model\RMAChannelInterface;
use Ikuzo\SyliusRMAPlugin\Model\RMAChannelTrait;

class Channel extends BaseChannel implements RMAChannelInterface
{
    use RMAChannelTrait;
}

Create a migration and run it

bin/console make:migration
bin/console doctrine:migration:migrate

Go in the admin panel and enable the RMA for the wanted channels