Question

I am working with symfony2, sonata admin-bundle and mongodb, i just made an interface to add users, how can i send an email when user press create on sonataadmin's web interface, i have to override any class of Sonata-Admin?

UPDATE

//~/UserAdmin.php
      public function create($object)
        {
            parent::create($object);
    
            // send welcome email to new user
            $message = \Swift_Message::newInstance()
                ->setSubject('LOL')
                ->setFrom('no-reply@dummy.com')
                ->setTo('dummy@dummy.com')
                ->setBody('dummy message')
            ;
    
            $this->getConfigurationPool()->getContainer()->get('mailer')->send($message);
        }

I had to use $this->getConfigurationPool()->getContainer()-> to get the container and the mailer.

Was it helpful?

Solution

You probably want to override the create method in the admin class...

UserAdmin class:

public function create($object)
{
    parent::create($object);

    // send welcome email to new user
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top