From 20c131db2ed6f89000e4229bd29c6cdc567e414a Mon Sep 17 00:00:00 2001 From: afornerot Date: Tue, 4 May 2021 11:03:11 +0200 Subject: [PATCH] desactivation possible des notifications de groupe de travail --- .../src/Cadoles/CoreBundle/Controller/GroupController.php | 8 ++++---- .../src/Cadoles/CoreBundle/Controller/UserController.php | 7 ++++--- .../Cadoles/CoreBundle/EventListener/sessionListener.php | 2 -- .../WebsocketBundle/Command/CountMessageCommand.php | 4 ++++ tmpl/ninegate-init-01.sql | 1 + 5 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php index fd139666..67fb8fa5 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php @@ -588,7 +588,7 @@ class GroupController extends Controller $websocket = $this->container->get('cadoles.websocket.pushmessage')->send($key->toString(),$userid,$groupid,$message); // Notification mail auprès de la personne inscrite - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $idpage =$group->getPages()->first()->getId(); $url = $this->generateUrl('cadoles_core_redirect', ["route"=>"cadoles_core_home","id"=>$idpage], UrlGeneratorInterface::ABSOLUTE_URL); $texthtml="Vous venez d'être inscrit dans le groupe de travail : ".$group->getLabel()."
Suivez le lien suivant pour y accéder = $url"; @@ -642,7 +642,7 @@ class GroupController extends Controller $em->flush(); // Notification mail auprès des managers - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $text=$user->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( @@ -688,7 +688,7 @@ class GroupController extends Controller $em->flush(); // Notification mail auprès des managers - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $text=$user->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( @@ -888,7 +888,7 @@ class GroupController extends Controller $this->ctrlFgcanshare($data,$access); // Si le propriétaire change de main on prévient le nouveau propriétaire - if($data->getOwner()&&$data->getOwner()!=$oldowner) { + if($data->getOwner()&&$data->getOwner()!=$oldowner&&$this->get('session')->get('fgnotifgroup')) { // Email à destination de l'inscript pour le prévenir qu'un administrateur doit valider $text="On vient de vous tranférer la propriété du groupe ".$data->getLabel(); $template="template"; diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php index d7928696..1530a64a 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php @@ -429,7 +429,7 @@ class UserController extends Controller $websocket = $this->container->get('cadoles.websocket.pushmessage')->send($key->toString(),$iduser,$idgroup,$message); // Notification mail auprès de la personne inscrite - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $idpage =$group->getPages()->first()->getId(); $url = $this->generateUrl('cadoles_core_redirect', ["route"=>"cadoles_core_home","id"=>$idpage], UrlGeneratorInterface::ABSOLUTE_URL); $texthtml="Vous venez d'être inscrit dans le groupe de travail : ".$group->getLabel()."
Suivez le lien suivant pour y accéder = $url"; @@ -489,6 +489,7 @@ class UserController extends Controller $oldpassword=$data->getPassword(); $fields=$this->getDefaultDatauser(); + // Si un acces modo via console d'admin on s'assure qu'il a les droit dessus sinon retour à la liste if($this->isGranted('ROLE_MODO')&&$access=="config") { $niveau01=$data->getNiveau01(); @@ -580,7 +581,7 @@ class UserController extends Controller $websocket = $this->container->get('cadoles.websocket.pushmessage')->send($key->toString(),$id,$idgroup,$message); // Notification mail auprès de la personne inscrite - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $idpage =$group->getPages()->first()->getId(); $url = $this->generateUrl('cadoles_core_redirect', ["route"=>"cadoles_core_home","id"=>$idpage], UrlGeneratorInterface::ABSOLUTE_URL); $texthtml="Vous venez d'être inscrit dans le groupe de travail : ".$group->getLabel()."
Suivez le lien suivant pour y accéder = $url"; @@ -623,7 +624,7 @@ class UserController extends Controller $em->flush(); // Notification mail auprès des managers - if($group->getFgcanshare()) { + if($group->getFgcanshare()&&$this->get('session')->get('fgnotifgroup')) { $text=$data->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php index beef91fd..7424d150 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/EventListener/sessionListener.php @@ -46,8 +46,6 @@ public function onDomainParse(Event $event) { $session = new Session(); - - $configs = $this->em->getRepository("CadolesCoreBundle:Config")->findAll(); foreach($configs as $config) { //dump($config->getId()." = ".strval($config->getValue())); diff --git a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php index 2f7a161e..45c65118 100644 --- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php +++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php @@ -34,6 +34,10 @@ class CountMessageCommand extends Command $this->rootlog = $this->container->get('kernel')->getRootDir()."/../var/logs/"; $this->noreply = $this->container->getParameter('noreply'); + // S'assurer que la fonction de notification de mail est bien actif + $config = $this->em->getRepository("CadolesCoreBundle:Config")->find("fgnotifgroup"); + if($config && !$config->getValue()) return 1; + $this->writelnred(''); $this->writelnred('== Websocket:Countmessage'); diff --git a/tmpl/ninegate-init-01.sql b/tmpl/ninegate-init-01.sql index 73cab836..ce1daf4d 100644 --- a/tmpl/ninegate-init-01.sql +++ b/tmpl/ninegate-init-01.sql @@ -122,6 +122,7 @@ INSERT IGNORE INTO `config` (`order`, `visible`, `changeable`, `required`, `type ('500', 1, 1, 1, 'permgroup', 'permgroup', 'ROLE_ANIM', '', 'Determine quel rôle aura la permission de créer des groupes de travail'), ('501', 1, 1, 1, 'permgroup', 'permannu', 'ROLE_USER', '', 'Determine quel rôle aura la permission de voir l\'annuaire'), ('502', 1, 1, 1, 'boolean', 'permunsubscribe', '0', '', 'Permettre aux utilisateurs de se désinscrire par eux-mêmes des groupes de travail'), +('503', 1, 1, 1, 'boolean', 'fgnotifgroup', '1', '', 'Activer les notifications mails sur les groupes de travail'), ('600', 1, 1, 1, 'string', 'labelbookmarkuser','Favoris', '', 'Titre sur la section des items créés par l\'utilisateur, et qui ne sont listés que dans cette section.'), ('601', 1, 1, 1, 'string', 'labelbookmarkitem','Mes Ressources', '', 'Titre sur la section des items créés par l\'administrateur ou le modérateur, mis à la disposition de l\'utilisateur, et sélectionnés par ce dernier pour apparaitre dans cette section plutôt que dans leur catégorie d\'origine.');