Merge branch 'master' into dist/envole/6/master

This commit is contained in:
Arnaud Fornerot 2021-03-09 10:31:18 +01:00
commit 4247ead6bd
1 changed files with 10 additions and 2 deletions

View File

@ -32,9 +32,11 @@ class ItemRepository extends EntityRepository
// Initialisation du calcul des items // Initialisation du calcul des items
$items=new ArrayCollection(); $items=new ArrayCollection();
$itemalls=new ArrayCollection();
// Récupération des items par rôles // Récupération des items par rôles
$itemsroles=[]; $itemsroles=[];
foreach($roles as $role) { foreach($roles as $role) {
$qb = $this->getEntityManager()->createQueryBuilder(); $qb = $this->getEntityManager()->createQueryBuilder();
$qb->select('item') $qb->select('item')
@ -54,6 +56,7 @@ class ItemRepository extends EntityRepository
$itemsroles=$qb->getQuery()->getResult(); $itemsroles=$qb->getQuery()->getResult();
foreach($itemsroles as $itemrole) { foreach($itemsroles as $itemrole) {
if(!$bookmarksitems->contains($itemrole) && !$items->contains($itemrole)) $items->add($itemrole); if(!$bookmarksitems->contains($itemrole) && !$items->contains($itemrole)) $items->add($itemrole);
if(!$itemalls->contains($itemrole)) $itemalls->add($itemrole);
} }
} }
@ -79,9 +82,12 @@ class ItemRepository extends EntityRepository
$itemsgroups=$qb->getQuery()->getResult(); $itemsgroups=$qb->getQuery()->getResult();
foreach($itemsgroups as $itemgroup) { foreach($itemsgroups as $itemgroup) {
if(!$bookmarksitems->contains($itemgroup) && !$items->contains($itemgroup)) $items->add($itemgroup); if(!$bookmarksitems->contains($itemgroup) && !$items->contains($itemgroup)) $items->add($itemgroup);
if(!$itemalls->contains($itemgroup)) $itemalls->add($itemgroup);
} }
} }
// Récupération des items par niveau01 // Récupération des items par niveau01
$itemsniveau01s=[]; $itemsniveau01s=[];
@ -105,6 +111,7 @@ class ItemRepository extends EntityRepository
$itemsniveau01s=$qb->getQuery()->getResult(); $itemsniveau01s=$qb->getQuery()->getResult();
foreach($itemsniveau01s as $itemniveau01) { foreach($itemsniveau01s as $itemniveau01) {
if(!$bookmarksitems->contains($itemniveau01) && !$items->contains($itemniveau01)) $items->add($itemniveau01); if(!$bookmarksitems->contains($itemniveau01) && !$items->contains($itemniveau01)) $items->add($itemniveau01);
if(!$itemalls->contains($itemniveau01)) $itemalls->add($itemniveau01);
} }
} }
@ -130,6 +137,7 @@ class ItemRepository extends EntityRepository
$itemsssoitems=$qb->getQuery()->getResult(); $itemsssoitems=$qb->getQuery()->getResult();
foreach($itemsssoitems as $itemssoitem) { foreach($itemsssoitems as $itemssoitem) {
if(!$bookmarksitems->contains($itemssoitem) && !$items->contains($itemssoitem)) $items->add($itemssoitem); if(!$bookmarksitems->contains($itemssoitem) && !$items->contains($itemssoitem)) $items->add($itemssoitem);
if(!$itemalls->contains($itemssoitem)) $itemalls->add($itemssoitem);
} }
} }
@ -137,7 +145,7 @@ class ItemRepository extends EntityRepository
foreach($bookmarks as $key => $bookmark) { foreach($bookmarks as $key => $bookmark) {
$item=$bookmark->getItem(); $item=$bookmark->getItem();
if($item) { if($item) {
if(!in_array($item,$itemsroles) && !in_array($item,$itemsgroups) && !in_array($item,$itemsniveau01s) && !in_array($item,$itemsssoitems) ) { if(!$itemalls->contains($item) ) {
unset($bookmarks[$key]); unset($bookmarks[$key]);
} }
} }