From 5b369002b5379e139a7f6ee58bddc3f684627691 Mon Sep 17 00:00:00 2001 From: afornerot Date: Mon, 4 Nov 2019 12:03:02 +0100 Subject: [PATCH 1/9] possiblite de fit les grid --- .../src/Cadoles/CoreBundle/Command/data/core-init-01.sql | 2 +- .../Cadoles/CoreBundle/Resources/public/css/style.css | 4 ++-- .../Resources/views/Page/viewwidget.html.twig | 9 ++------- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql index 932cd8e3..87ac2230 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql @@ -8,7 +8,7 @@ INSERT IGNORE INTO `niveau01` (`id`, `label`, `siren`) VALUES (-100, 'DRAAF', '130007107'); INSERT IGNORE INTO `user` (`id`, `niveau01_id`, `username`, `firstname`, `lastname`, `password`, `email`, `avatar`, `role`,`siren`,`authlevel`) VALUES -(-100, -100, 'admin', 'Administrateur', 'draaf', '{SSHA}e8qvl9iAOSAmoVpq/NkxAa4QSpRdn+Z2 +(-100, -100, 'admin', 'Administrateur', 'draaf', '{SSHA}kqZ/9F8nhk0LurMspUojmlG3x0R/xd93 ', 'admin@ldapbundle.ac-arno.fr', 'admin.jpg', 'ROLE_ADMIN', '130007107', 'simple'); diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css index a2a103ae..3c4373bc 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css @@ -204,9 +204,9 @@ span.item-drag { .grid { list-style-type: none; - margin: 0px; + margin: 0 auto; padding: 0; - width: 100%; + /*width: 100%;*/ min-height: 30px; background: transparent; } diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/viewwidget.html.twig b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/viewwidget.html.twig index 6762524d..15866960 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/viewwidget.html.twig +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Page/viewwidget.html.twig @@ -80,6 +80,8 @@ {% endblock %} {% block localjavascript %} + var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item', gutter: '.grid-gutter-sizer'}; + $('document').ready(function(){ // Ajustement des frames $(window).resize(function() { @@ -192,7 +194,6 @@ $(".colcontainer .col").css("padding-bottom",""); // Création des grilles d'items - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); }, update: updateLocalisation @@ -201,7 +202,6 @@ // Création des grilles d'items - var optiongrid={columnWidth: '.grid-sizer', itemSelector: '.grid-item', gutter: '.grid-gutter-sizer'}; $('body').imagesLoaded(function() { var grid = $('.grid').masonry(optiongrid); }); @@ -285,7 +285,6 @@ widget.children(".widgetbody" ).toggle(); // On recalcule les grilles - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); } @@ -460,7 +459,6 @@ $(".widget[data-id="+idwidget+"]").find(".flux-"+id).show(); } - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); } @@ -496,7 +494,6 @@ } - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); } @@ -528,7 +525,6 @@ } - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); } @@ -546,7 +542,6 @@ ele.show(); ele.removeClass("msg-hidden"); - var optiongrid={columnWidth: '.grid-sizer',itemSelector: '.grid-item'}; var grid = $('.grid').masonry(optiongrid); } From e58e6cf9c89e6718a4725c549b3772347610e626 Mon Sep 17 00:00:00 2001 From: afornerot Date: Tue, 5 Nov 2019 09:37:15 +0100 Subject: [PATCH 2/9] correction orthographe (fixes #30) --- .../src/Cadoles/CoreBundle/Controller/GroupController.php | 4 ++-- .../src/Cadoles/CoreBundle/Controller/UserController.php | 2 +- 2 files changed, 3 insertions(+), 3 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 4a60d0b9..80199359 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php @@ -565,7 +565,7 @@ class GroupController extends Controller // Notification mail auprès des managers if($group->getFgcanshare()) { - $text=$user->getUsername()." a été désinscrit dugroupe de travail : ".$group->getLabel(); + $text=$user->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( "subject" => $this->get('session')->get('appname')." : ".$user->getUsername()." = Désinscription au groupe de travail ".$group->getLabel()."\n\n".$group->getDescription(), @@ -608,7 +608,7 @@ class GroupController extends Controller // Notification mail auprès des managers if($group->getFgcanshare()) { - $text=$user->getUsername()." a été désinscrit dugroupe de travail : ".$group->getLabel(); + $text=$user->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( "subject" => $this->get('session')->get('appname')." : ".$user->getUsername()." = Désinscription au groupe de travail ".$group->getLabel()."\n\n".$group->getDescription(), 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 c76d3647..61e9ee82 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/UserController.php @@ -564,7 +564,7 @@ class UserController extends Controller // Notification mail auprès des managers if($group->getFgcanshare()) { - $text=$data->getUsername()." a été désinscrit dugroupe de travail : ".$group->getLabel(); + $text=$data->getUsername()." a été désinscrit du groupe de travail : ".$group->getLabel(); $template="template"; $mail_params=array( "subject" => $this->get('session')->get('appname')." : ".$data->getUsername()." = Désinscription au groupe de travail ".$group->getLabel()."\n\n".$group->getDescription(), From bcb284efca6c05704f73f05e62e734ace8f6abc3 Mon Sep 17 00:00:00 2001 From: afornerot Date: Tue, 5 Nov 2019 15:36:56 +0100 Subject: [PATCH 3/9] ajout icon grr --- src/ninegate-1.0/web/uploads/icon/icon_grr.png | Bin 0 -> 6737 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/ninegate-1.0/web/uploads/icon/icon_grr.png diff --git a/src/ninegate-1.0/web/uploads/icon/icon_grr.png b/src/ninegate-1.0/web/uploads/icon/icon_grr.png new file mode 100644 index 0000000000000000000000000000000000000000..0966e031ecb4262ef1c677cd784910a2138e50b2 GIT binary patch literal 6737 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 Date: Tue, 5 Nov 2019 17:00:54 +0100 Subject: [PATCH 4/9] ajout icone app --- .../web/uploads/icon/icon_dokuwiki.png | Bin 0 -> 15067 bytes .../web/uploads/icon/icon_kanboard.png | Bin 0 -> 37405 bytes .../web/uploads/icon/icon_opensondage.png | Bin 0 -> 5434 bytes .../web/uploads/icon/icon_piwik.png | Bin 0 -> 8295 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/ninegate-1.0/web/uploads/icon/icon_dokuwiki.png create mode 100755 src/ninegate-1.0/web/uploads/icon/icon_kanboard.png create mode 100644 src/ninegate-1.0/web/uploads/icon/icon_opensondage.png create mode 100644 src/ninegate-1.0/web/uploads/icon/icon_piwik.png diff --git a/src/ninegate-1.0/web/uploads/icon/icon_dokuwiki.png b/src/ninegate-1.0/web/uploads/icon/icon_dokuwiki.png new file mode 100644 index 0000000000000000000000000000000000000000..04a402e4804847d7350b7b76fb471636375419c0 GIT binary patch literal 15067 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 literal 0 HcmV?d00001 diff --git a/src/ninegate-1.0/web/uploads/icon/icon_opensondage.png b/src/ninegate-1.0/web/uploads/icon/icon_opensondage.png new file mode 100644 index 0000000000000000000000000000000000000000..1d6f3344bbc80bc8182ed747ed0fbdfb4bba069a GIT binary patch literal 5434 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 literal 0 HcmV?d00001 diff --git a/src/ninegate-1.0/web/uploads/icon/icon_piwik.png b/src/ninegate-1.0/web/uploads/icon/icon_piwik.png new file mode 100644 index 0000000000000000000000000000000000000000..b98f32944eaa6a081d7bd604d43ffc9739cdb7c5 GIT binary patch literal 8295 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 literal 0 HcmV?d00001 From 8d1b8db3f469d11450504a4f331cd1ad11a311a4 Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 8 Nov 2019 16:02:21 +0100 Subject: [PATCH 5/9] =?UTF-8?q?afficher=20l'ensemble=20des=20notices=20li?= =?UTF-8?q?=C3=A9s=20au=20profil=20lors=20de=20la=20signature=20(fixes=20#?= =?UTF-8?q?36)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/Cadoles/CoreBundle/Controller/CoreController.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/CoreController.php b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/CoreController.php index 6609b157..16bda3f4 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/CoreController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/CoreController.php @@ -57,6 +57,8 @@ class CoreController extends Controller if($user) { $notices=$em->getRepository("CadolesPortalBundle:Notice")->getNoticeToRead($user); if(! $notices->isEmpty()) { + $notices=$em->getRepository("CadolesPortalBundle:Notice")->getNoticeUser($user,false); + return $this->render('CadolesPortalBundle:Notice:mustread.html.twig',[ 'useheader' => true, 'usemenu' => false, From 3b0ac28df9fefdb08501c3374d7158111c5eaccb Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 8 Nov 2019 16:09:10 +0100 Subject: [PATCH 6/9] correctif sur gestion des groupes via console admin (fixes #35) --- .../src/Cadoles/CoreBundle/Controller/GroupController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 80199359..8693d5d7 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Controller/GroupController.php @@ -662,7 +662,7 @@ class GroupController extends Controller // Permission $permgroup=$this->get('session')->get('permgroup'); - if($access="user") { + if($access=="user") { if($permgroup=="NO_BODY") throw $this->createNotFoundException('Permission denied'); if($permgroup=="ROLE_ANIM" && $this->isGranted('ROLE_USER')) throw $this->createNotFoundException('Permission denied'); } From e553a9fdeb50914f729a554e2bce848be55e998a Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 8 Nov 2019 16:21:08 +0100 Subject: [PATCH 7/9] ne notifier que sur les messages des groupes de travail et non sur les groupes fonctionnels (fixes #34) --- .../Command/CountMessageCommand.php | 67 ++++++++++--------- 1 file changed, 34 insertions(+), 33 deletions(-) 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 891125af..8cdaf304 100644 --- a/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php +++ b/src/ninegate-1.0/src/Cadoles/WebsocketBundle/Command/CountMessageCommand.php @@ -54,42 +54,43 @@ class CountMessageCommand extends Command foreach($user->getGroups() as $usergroup) { // On calcule le nombre de message non lu pour l'utilisateur' $group=$usergroup->getGroup(); - $qb = $this->em->createQueryBuilder(); - $tm = $qb ->select($qb->expr()->count('m.id')) - ->from('CadolesWebsocketBundle:Message', 'm') - ->where('m.group = :group') - ->andWhere('m.user != :user') - ->setParameter('group', $group) - ->setParameter('user', $user) - ->getQuery()->getSingleScalarResult(); + if($group->getFgcanshare()) { + $qb = $this->em->createQueryBuilder(); + $tm = $qb ->select($qb->expr()->count('m.id')) + ->from('CadolesWebsocketBundle:Message', 'm') + ->where('m.group = :group') + ->andWhere('m.user != :user') + ->setParameter('group', $group) + ->setParameter('user', $user) + ->getQuery()->getSingleScalarResult(); - $qb = $this->em->createQueryBuilder(); - $tr = $qb ->select($qb->expr()->count('m.id')) - ->from('CadolesWebsocketBundle:Message', 'm') - ->where('m.group = :group') - ->andWhere('m.user != :user') - ->andWhere(':user MEMBER OF m.readers') - ->setParameter('group', $group) - ->setParameter('user', $user) - ->getQuery()->getSingleScalarResult(); + $qb = $this->em->createQueryBuilder(); + $tr = $qb ->select($qb->expr()->count('m.id')) + ->from('CadolesWebsocketBundle:Message', 'm') + ->where('m.group = :group') + ->andWhere('m.user != :user') + ->andWhere(':user MEMBER OF m.readers') + ->setParameter('group', $group) + ->setParameter('user', $user) + ->getQuery()->getSingleScalarResult(); - if($tm-$tr>0) $cptnotread+=($tm-$tr); + if($tm-$tr>0) $cptnotread+=($tm-$tr); + } + if($cptnotread>0) { + $this->writeln($user->getUsername()." notifié de ".$cptnotread." messages non lus"); + + $template="template"; + + $mail_params=array( + "subject" => $this->appname." : Messages non lus", + "body_html"=>"

Vous avez ".$cptnotread." messages non lus sur ".$this->appname."

Vous pouvez les consulter sur ".$this->url."

", + "body_text"=>"Vous avez ".$cptnotread." messages non lus sur ".$this->appname."\nVous pouvez les consulter sur ".$this->url, + ); + + $message = $this->container->get('cadoles.core.service.mail'); + $message->sendEmail($template, $mail_params, $user->getEmail(), $this->noreply, $this->appname); + } } - if($cptnotread>0) { - $this->writeln($user->getUsername()." notifié de ".$cptnotread." messages non lus"); - - $template="template"; - - $mail_params=array( - "subject" => $this->appname." : Messages non lus", - "body_html"=>"

Vous avez ".$cptnotread." messages non lus sur ".$this->appname."

Vous pouvez les consulter sur ".$this->url."

", - "body_text"=>"Vous avez ".$cptnotread." messages non lus sur ".$this->appname."\nVous pouvez les consulter sur ".$this->url, - ); - - $message = $this->container->get('cadoles.core.service.mail'); - $message->sendEmail($template, $mail_params, $user->getEmail(), $this->noreply, $this->appname); - } - } $this->writeln(''); return 1; From 7f2366545450e2c6060d4e4e5c347421ee471863 Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 8 Nov 2019 16:31:32 +0100 Subject: [PATCH 8/9] =?UTF-8?q?indiquer=20en=20sous=20titre=20le=20groupe?= =?UTF-8?q?=20emetteur=20du=20message=20avec=20lien=20qui=20permet=20d'y?= =?UTF-8?q?=20acc=C3=A9der=20(fixes=20#33)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PortalBundle/Controller/PagewidgetController.php | 6 +++++- .../Resources/views/Pagewidget/viewgroupmessage.html.twig | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php index 193a8d4e..087e2b22 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php @@ -2038,6 +2038,10 @@ class PagewidgetController extends Controller $this->getDoctrine()->getRepository("CadolesPortalBundle:Page")->getPagesUser($user,null,$default,$pagesuser,$pagesadmin,$groupsshared); if(is_array($groupsshared)) { foreach($groupsshared as $groupshared) { + // On récupère les info du groupe + $title=$groupshared->getLabel(); + $idpage=$groupshared->pagesshared[0]->getId(); + // On récupère l'ensemble des messages du groupes $messages=$this->getDoctrine()->getRepository("CadolesWebsocketBundle:Message")->findBy(["group"=>$groupshared]); foreach($messages as $key => $message) { @@ -2051,7 +2055,7 @@ class PagewidgetController extends Controller } foreach($messages as $key => $message) { - $tmp=["id" => $message->getId(), "user" => $message->getUser(), "date"=>$message->getSubmitdate(), "topic"=>$message->getTopic()]; + $tmp=["id" => $message->getId(), "user" => $message->getUser(), "date"=>$message->getSubmitdate(), "topic"=>$message->getTopic(), "pageid" => $idpage, "pagetitle" => $title]; array_push($mymsg,$tmp); } } diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroupmessage.html.twig b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroupmessage.html.twig index 8ffb6889..949dda5c 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroupmessage.html.twig +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroupmessage.html.twig @@ -82,7 +82,7 @@
{{message.user.lastname}} {{message.user.firstname}}
- {{message.date|date('d/m/Y H:i')}}

+ {{message.date|date('d/m/Y H:i')}} dans le groupe {{ message.pagetitle }}

{{ message.topic | raw }}
From c2412b504c7bab5ff387faf7861b642668b13a86 Mon Sep 17 00:00:00 2001 From: afornerot Date: Fri, 15 Nov 2019 11:17:25 +0100 Subject: [PATCH 9/9] prise en compte de la couleur des groupes (ref #38) --- .../src/Cadoles/CoreBundle/Command/data/core-init-01.sql | 2 +- .../src/Cadoles/CoreBundle/Resources/public/css/style.css | 4 ++++ .../PortalBundle/Controller/PagewidgetController.php | 6 ++++-- .../Resources/views/Pagewidget/viewgroup.html.twig | 3 ++- .../Resources/views/Pagewidget/viewgroupmessage.html.twig | 3 ++- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql index 87ac2230..a1d6109e 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Command/data/core-init-01.sql @@ -8,7 +8,7 @@ INSERT IGNORE INTO `niveau01` (`id`, `label`, `siren`) VALUES (-100, 'DRAAF', '130007107'); INSERT IGNORE INTO `user` (`id`, `niveau01_id`, `username`, `firstname`, `lastname`, `password`, `email`, `avatar`, `role`,`siren`,`authlevel`) VALUES -(-100, -100, 'admin', 'Administrateur', 'draaf', '{SSHA}kqZ/9F8nhk0LurMspUojmlG3x0R/xd93 +(-100, -100, 'admin', 'Administrateur', 'draaf', '{SSHA}YAgr/O4uRUcWbNTTnUPNUYGt9TyvjbjJ ', 'admin@ldapbundle.ac-arno.fr', 'admin.jpg', 'ROLE_ADMIN', '130007107', 'simple'); diff --git a/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css index 3c4373bc..335c07cc 100644 --- a/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css +++ b/src/ninegate-1.0/src/Cadoles/CoreBundle/Resources/public/css/style.css @@ -232,6 +232,10 @@ span.item-drag { display: block; } +.grid-item .grid-item-content { + height: 100%; +} + .grid-item .grid-item-content:hover { opacity: 0.8; } diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php index 087e2b22..b2f4f876 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Controller/PagewidgetController.php @@ -1980,11 +1980,12 @@ class PagewidgetController extends Controller $title=$groupshared->getLabel(); $idpage=$groupshared->pagesshared[0]->getId(); + $color=$groupshared->getColor(); $icon=null; if($groupshared->getIcon()) $icon="/".$groupshared->getIcon()->getLabel(); - array_push($mygroups,["title"=>$title,"icon"=>$icon,"id"=>$idpage]); + array_push($mygroups,["title"=>$title,"icon"=>$icon,"id"=>$idpage,"color"=>$color]); } } @@ -2041,6 +2042,7 @@ class PagewidgetController extends Controller // On récupère les info du groupe $title=$groupshared->getLabel(); $idpage=$groupshared->pagesshared[0]->getId(); + $color=$groupshared->getColor(); // On récupère l'ensemble des messages du groupes $messages=$this->getDoctrine()->getRepository("CadolesWebsocketBundle:Message")->findBy(["group"=>$groupshared]); @@ -2055,7 +2057,7 @@ class PagewidgetController extends Controller } foreach($messages as $key => $message) { - $tmp=["id" => $message->getId(), "user" => $message->getUser(), "date"=>$message->getSubmitdate(), "topic"=>$message->getTopic(), "pageid" => $idpage, "pagetitle" => $title]; + $tmp=["id" => $message->getId(), "user" => $message->getUser(), "date"=>$message->getSubmitdate(), "topic"=>$message->getTopic(), "pageid" => $idpage, "pagetitle" => $title, "color" => $color]; array_push($mymsg,$tmp); } } diff --git a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroup.html.twig b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroup.html.twig index 9cecdf02..b42ca8cf 100644 --- a/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroup.html.twig +++ b/src/ninegate-1.0/src/Cadoles/PortalBundle/Resources/views/Pagewidget/viewgroup.html.twig @@ -5,6 +5,7 @@ {% import "@CadolesPortal/Pagewidget/constants.twig" as constants %} +{% set colormain = constants.mycolormain() %} {% set stylewidget = constants.mystylewidget(entity) %} {% set stylewidgetmenu = constants.mystylewidgetmenu(entity) %} {% set stylewidgetheader = constants.mystylewidgetheader(entity) %} @@ -52,7 +53,7 @@ {% for group in groups %}