diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/MailController.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/MailController.php index 226e7614..d472bb2e 100755 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/MailController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/MailController.php @@ -50,7 +50,22 @@ class MailController extends Controller $destinataires=$form->get("destinataire")->getData(); - $to=explode(";",$destinataires); + $to=explode(";",$destinataires); + + // On s'assure que les destinataires ne sont pas déjà inscrit dans le portail + $usersnotin=[]; + $usersin=[]; + foreach($to as $key => $mail) { + // Si le mail existe on l'enlève de la liste des utilisateurs à inviter + $user=$em->getRepository("CadolesCoreBundle:User")->findOneBy(["email"=>$mail]); + if($user) { + unset($to[$key]); + $usergroup=$em->getRepository("CadolesCoreBundle:UserGroup")->findOneBy(["user"=>$user,"group"=>$group]); + if($usergroup) array_push($usersin,$user); + else array_push($usersnotin,$user); + } + } + $text=$form->get("message")->getData(); $subject=$form->get("subject")->getData(); $template="template"; @@ -65,15 +80,27 @@ class MailController extends Controller $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() - ]); + if($closed && (!empty($usersin)||!empty($usersnotin))) { + return $this->render('CadolesCoreBundle:Mail:users.html.twig',[ + 'useheader' => false, + 'usemenu' => false, + 'usesidebar' => false, + 'usersin' => $usersin, + 'usersnotin' => $usersnotin, + 'group' => $group + ]); + } + else { + return $this->render('CadolesCoreBundle:Mail:mail.html.twig',[ + 'useheader' => false, + 'usemenu' => false, + 'usesidebar' => false, + 'closed' => $closed, + 'subject' => $subject, + 'message' => $message, + 'form' => $form->createView() + ]); + } } } diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/views/Mail/users.html.twig b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/views/Mail/users.html.twig new file mode 100644 index 00000000..a631bbc6 --- /dev/null +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/views/Mail/users.html.twig @@ -0,0 +1,93 @@ +{% extends '@CadolesCore/base.html.twig' %} + +{% block pagewrapper %} + Fermer + +

+ + {% if not usersnotin is empty %} +

Les utilisateurs suivants existent déjà dans {{ app.session.get('appname') }}

+ Vous pouvez les ajouter dès maintenant à votre groupe
+ +
+ + + + + + + + + + + + {% for user in usersnotin %} + + + + + + + {% endfor %} + +
ActionAvatarLoginEmail
{{user.username}}{{user.email}}
+
+ + {% endif %} + + {% if not usersin is empty %} +

Les utilisateurs suivants déjà rattachés à votre groupe

+
+ + + + + + + + + + + {% for user in usersin %} + + + + + + {% endfor %} + +
AvatarLoginEmail
{{user.username}}{{user.email}}
+
+ + {% endif %} + +{% endblock %} + +{% block localjavascript %} + $(document).ready(function() { + }); + + function addUsers(userid) { + $.ajax({ + rowId: 2, + method: "POST", + url: "{{ path('cadoles_core_user_group_ajax_usergroup_add') }}", + data: "userid="+userid+"&groupid="+{{ group.id }}, + success: function(data, dataType) + { + var row=$("#dataTablesnotin").DataTable().row("#user"+userid); + row.remove().draw(); + }, + + error: function(XMLHttpRequest, textStatus, errorThrown) + { + + } + }); + } + + function closeModal() { + window.parent.location.reload(); + } + +{% endblock %} \ No newline at end of file