Skip to content

Wishibam/sylius-mondial-relay

Repository files navigation

Explanation

The goal is to easily integrate this map inside your select shipping workflow img_1.png

Quickstart Installation

  1. Run composer require wishibam/sylius-mondial-relay-plugin

Usage

  1. Create the config file config/packages/wishibam_sylius_mondial_relay.yaml. Full configuration example here
  2. Override the sylius template @SyliusShop/Checkout/SelectShipping/_shipment.html.twig
{% include '@WishibamSyliusMondialRelayPlugin/list_shipping_method_with_mondial_relay_map.html.twig' with {'form': form} %}
  1. Create a new shipping method in admin, and select a configuration (leave it blank if not Mondial Relay):

configuration

Requirements

  • You should have leaflet available inside your javascript.
  • Or you can use the google map (configure map.type = google and map.googleApiKey = 'xxxx'). The plugin will require the google map automatically for you. Not tested, feel free to open an issue !

Configuration

Full configuration example

Running plugin tests

  • PHPUnit

    vendor/bin/phpunit
  • PHPSpec

    vendor/bin/phpspec run
  • Behat (non-JS scenarios)

    vendor/bin/behat --strict --tags="~@javascript"
  • Behat (JS scenarios)

    1. Install Symfony CLI command.

    2. Start Headless Chrome:

    google-chrome-stable --enable-automation --disable-background-networking --no-default-browser-check --no-first-run --disable-popup-blocking --disable-default-apps --allow-insecure-localhost --disable-translate --disable-extensions --no-sandbox --enable-features=Metal --headless --remote-debugging-port=9222 --window-size=2880,1800 --proxy-server='direct://' --proxy-bypass-list='*' http://127.0.0.1
    1. Install SSL certificates (only once needed) and run test application's webserver on 127.0.0.1:8080:
    symfony server:ca:install
    APP_ENV=test symfony server:start --port=8080 --dir=tests/Application/public --daemon
    1. Run Behat:
    vendor/bin/behat --strict --tags="@javascript"
  • Static Analysis

    • Psalm

      vendor/bin/psalm
    • PHPStan

      vendor/bin/phpstan analyse -c phpstan.neon -l max src/  
  • Coding Standard

    vendor/bin/ecs check src

Opening Sylius with your plugin

  • Using test environment:

    (cd tests/Application && APP_ENV=test bin/console sylius:fixtures:load)
    (cd tests/Application && APP_ENV=test bin/console server:run -d public)
  • Using dev environment:

    (cd tests/Application && APP_ENV=dev bin/console sylius:fixtures:load)
    (cd tests/Application && APP_ENV=dev bin/console server:run -d public)
  1. From the root directory, run the following commands:

    $ (cd tests/Application && yarn install)
    $ (cd tests/Application && yarn build)
    $ (cd tests/Application && APP_ENV=test bin/console assets:install public)
    
    $ (cd tests/Application && APP_ENV=test bin/console doctrine:database:create)
    $ (cd tests/Application && APP_ENV=test bin/console doctrine:schema:create)

⚠⚠⚠ To be able to setup a plugin's database, remember to configure you database credentials in tests/Application/.env and tests/Application/.env.test. ⚠⚠⚠

About

[Live]

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 9