. */ /* */ /*************************************************************************************/ namespace Front\Controller; use Thelia\Controller\Front\BaseFrontController; use Thelia\Form\ContactForm; use Thelia\Form\Exception\FormValidationException; use Thelia\Model\ConfigQuery; /** * Class ContactController * @package Thelia\Controller\Front * @author Manuel Raynaud */ class ContactController extends BaseFrontController { /** * send contact message */ public function sendAction() { $error_message = false; $contactForm = new ContactForm($this->getRequest()); try { $form = $this->validateForm($contactForm); $message = \Swift_Message::newInstance($form->get('subject')->getData()) ->addFrom(ConfigQuery::read("store_email"), $form->get('name')->getData()) ->addReplyTo($form->get('email')->getData(), $form->get('name')->getData()) ->addTo(ConfigQuery::read('store_email'), ConfigQuery::read('store_name')) ->setBody($form->get('message')->getData()) ; $this->getMailer()->send($message); } catch (FormValidationException $e) { $error_message = $e->getMessage(); } if ($error_message !== false) { \Thelia\Log\Tlog::getInstance()->error(sprintf('Error during sending contact mail : %s', $error_message)); $contactForm->setErrorMessage($error_message); $this->getParserContext() ->addForm($contactForm) ->setGeneralError($error_message) ; } else { $this->redirectToRoute('contact.success'); } } }