Completed
Pull Request — master (#12)
by
unknown
03:41
created

OnPasswordResetTokenCreated   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 6

Importance

Changes 2
Bugs 0 Features 1
Metric Value
wmc 2
c 2
b 0
f 1
lcom 1
cbo 6
dl 0
loc 28
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 8 1
A onPasswordResetTokenCreated() 0 10 1
1
<?php
2
3
namespace SumoCoders\FrameworkMultiUserBundle\Event;
4
5
use Swift_Mailer;
6
use Swift_Message;
7
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
8
use Symfony\Component\Translation\TranslatorInterface;
9
10
class OnPasswordResetTokenCreated
11
{
12
    private $mailer;
13
14
    private $translator;
15
16
    private $emailFrom;
17
18
    public function __construct(EventDispatcherInterface $dispatcher, Swift_Mailer $mailer, TranslatorInterface $translator, $emailFrom)
19
    {
20
        $this->mailer = $mailer;
21
        $this->translator = $translator;
22
        $this->emailFrom = $emailFrom;
23
        
24
        $dispatcher->addListener(PasswordResetTokenCreated::NAME, [$this, 'onPasswordResetTokenCreated']);
25
    }
26
27
    public function onPasswordResetTokenCreated(PasswordResetTokenCreated $event)
28
    {
29
        $message = Swift_Message::newInstance()
30
            ->setSubject('Password reset requested')
31
            ->setFrom($this->emailFrom)
32
            ->setTo($event->getUser()->getEmail())
33
            ->setBody('', 'text/plain');
34
35
        return $this->mailer->send($message);
36
    }
37
}
38