80 lines
3.0 KiB
PHP
Executable File
80 lines
3.0 KiB
PHP
Executable File
<?php
|
|
|
|
namespace Cadoles\CoreBundle\Controller;
|
|
|
|
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
|
|
use Symfony\Component\HttpFoundation\Request;
|
|
use Symfony\Component\HttpFoundation\Response;
|
|
use Symfony\Component\Form\FormError;
|
|
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
|
|
|
|
|
|
use Cadoles\CoreBundle\Entity\Mail;
|
|
use Cadoles\CoreBundle\Form\MailType;
|
|
|
|
class MailController extends Controller
|
|
{
|
|
public function invitationgroupAction($id,Request $request)
|
|
{
|
|
// Recherche du groupe
|
|
$em = $this->getDoctrine()->getManager();
|
|
$group = $em->getRepository("CadolesCoreBundle:Group")->find($id);
|
|
if (!$group) {
|
|
throw $this->createNotFoundException('Unable to find '.$this->labeldata);
|
|
}
|
|
|
|
// Création du formulaire
|
|
$form = $this->createForm(MailType::class);
|
|
|
|
// Récupération des data du formulaire
|
|
$form->handleRequest($request);
|
|
|
|
// Sujet
|
|
$subject = $this->get('session')->get('appname')." : Invitation au groupe de travail ".$group->getLabel();
|
|
|
|
// Sujet
|
|
$url = $this->generateUrl('cadoles_core_registration',[], UrlGeneratorInterface::ABSOLUTE_URL)."?group=".$group->getId();
|
|
$message = "Bonjour,<br><br>Vous êtes invité à participer au groupe de travail = <b>".$group->getLabel()."</b><br><br>";
|
|
$message.= "Pour cela vous devez vous inscrire sur <b>".$this->get('session')->get('appname')."</b> en suivant le lien suivant<br>";
|
|
$message.= "<a href='$url'>$url</a><br><br>";
|
|
$message.= "Une foi le processus d'inscription complété, vous serez automatiquement rattaché à notre groupe de travail<br><br>";
|
|
$message.= "Cordialement<br>";
|
|
$message.= $this->getUser()->getFirstname()." ".$this->getUser()->getLastname();
|
|
|
|
// To close ?
|
|
$closed = false;
|
|
|
|
// Sur validation
|
|
if ($form->get('submit')->isClicked() && $form->isValid()) {
|
|
$closed = true;
|
|
|
|
|
|
$destinataires=$form->get("destinataire")->getData();
|
|
$to=explode(";",$destinataires);
|
|
$text=$form->get("message")->getData();
|
|
$subject=$form->get("subject")->getData();
|
|
$template="template";
|
|
$mail_params=array(
|
|
"subject" => $subject,
|
|
"body_html"=>nl2br($text),
|
|
"body_text"=>$text
|
|
);
|
|
$from = $this->getUser()->getEmail();
|
|
$fromName = $this->getUser()->getFirstname()." ".$this->getUser()->getLastname();
|
|
$message = $this->container->get('cadoles.core.service.mail');
|
|
$message->sendEmail($template, $mail_params, $to, $from, $fromName);
|
|
}
|
|
|
|
return $this->render('CadolesCoreBundle:Mail:mail.html.twig',[
|
|
'useheader' => false,
|
|
'usemenu' => false,
|
|
'usesidebar' => false,
|
|
'closed' => $closed,
|
|
'subject' => $subject,
|
|
'message' => $message,
|
|
'form' => $form->createView()
|
|
]);
|
|
}
|
|
|
|
}
|