THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline

#1 action.order_before_create ?

(19-06-2018 16:09:32)


Je voudrais utiliser l'évènement order_before_create  pour notre module de marketplace.

Voici ce que j'ai :

\ArtabanMarketplace\Config\config.xml

....
        <service id="ArtabanMarketplace.action.order_before_create" class="ArtabanMarketplace\Actions\OrderSeller">
            <tag name="kernel.event_subscriber"/>
        </service>
....

ArtabanMarketplace\Actions\OrderSeller.php

....
namespace ArtabanMarketplace\Actions;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Thelia\Core\Event\ActionEvent;

class OrderSeller implements EventSubscriberInterface {

    public function generateOrderSeller(ActionEvent $event) {
        var_dump("Pouet");
        die();
    }

    public static function getSubscribedEvents() {
        return array(
            "action.order_before_create" => array("generateOrderSeller"),
        );
    }

}

Quand je passe commande, à aucun moment, je vois mon superbe "Pouet" !!!!?????

Est ce que quelqu'un aurait une piste ?

Merci d'avance !

Offline


Regarde la methode getSubscribedEvents() de la classe Actions\Order.php pour connaitre les noms des évènements à utiliser, et plus généralement la classe Thelia\Core\Event\TheliaEvents

Pour travailler efficacement, un IDE professionnel comme PhpStorm te sera d'une aide extrêmement précieuse.


OpenStudio Toulouse

Offline


Merci de ta réponse.
On m'a déjà recommandé PhpStorm. Pour le moment, je suis sur Netbeans.

En fait, pour le nom, je me suis fié à http://doc.thelia.net/api/master/Thelia … vents.html...

Je vais voir ça de près ;-)

[ EDIT ]

J'ai mis :

ArtabanMarketplace\Actions\OrderSeller.php

....
use Thelia\Core\Event\TheliaEvents;
....
    public static function getSubscribedEvents() {
        return array(
            TheliaEvents::ORDER_BEFORE_CREATE => array("generateOrderSeller"),
        );
    }
......

Et ça marche !!!!!!

Encore merci pour ta réponse.

Last edited by GillesL (19-06-2018 16:58:56)