newsletter modification from account

email modification from account
This commit is contained in:
Etienne Roudeix
2013-10-24 12:10:35 +02:00
parent b9e5b4d9c7
commit ca03e374f2
7 changed files with 82 additions and 32 deletions

View File

@@ -26,6 +26,7 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Thelia\Core\Event\Newsletter\NewsletterEvent;
use Thelia\Core\Event\TheliaEvents;
use Thelia\Action\BaseAction;
use Thelia\Model\NewsletterQuery;
use Thelia\Model\Newsletter as NewsletterModel;
@@ -51,7 +52,20 @@ class Newsletter extends BaseAction implements EventSubscriberInterface
public function unsubscribe(NewsletterEvent $event)
{
// TODO
if(null !== $nl = NewsletterQuery::create()->findPk($event->getId())) {
$nl->delete();
}
}
public function update(NewsletterEvent $event)
{
if(null !== $nl = NewsletterQuery::create()->findPk($event->getId())) {
$nl->setEmail($event->getEmail())
->setFirstname($event->getFirstname())
->setLastname($event->getLastname())
->setLocale($event->getLocale())
->save();
}
}
/**
@@ -78,6 +92,7 @@ class Newsletter extends BaseAction implements EventSubscriberInterface
{
return array(
TheliaEvents::NEWSLETTER_SUBSCRIBE => array('subscribe', 128),
TheliaEvents::NEWSLETTER_UPDATE => array('update', 128),
TheliaEvents::NEWSLETTER_UNSUBSCRIBE => array('unsubscribe', 128)
);
}