@@ -98,13 +98,28 @@ public function getEntitiesRights($entities_id)
9898 */
9999 public static function getGroupEntities ($ entities )
100100 {
101+ global $ DB ;
102+
101103 $ array = [];
102104
103- $ group = new Group ();
104- $ groups = $ group ->find (['is_assign ' => 1 , 'entities_id ' => $ entities ], 'name ' );
105+ $ criteria = [
106+ 'SELECT ' => ['id ' , 'name ' ],
107+ 'FROM ' => 'glpi_groups ' ,
108+ 'WHERE ' => [
109+ 'is_assign ' => 1 ,
110+ ],
111+ 'ORDERBY ' => 'name '
112+ ];
113+ $ criteria ['WHERE ' ] = $ criteria ['WHERE ' ] + getEntitiesRestrictCriteria (
114+ 'glpi_groups ' ,'' ,$ entities , true
115+ );
116+
117+ $ iterator = $ DB ->request ($ criteria );
105118
106- foreach ($ groups as $ data ) {
107- $ array [$ data ['id ' ]] = $ data ['name ' ];
119+ if (count ($ iterator ) > 0 ) {
120+ foreach ($ iterator as $ data ) {
121+ $ array [$ data ['id ' ]] = $ data ['name ' ];
122+ }
108123 }
109124
110125 return $ array ;
@@ -364,15 +379,30 @@ public static function checkEntityETT()
364379 */
365380 public static function checkGroup ($ params )
366381 {
367- $ entity_choice = $ params [ ' entity_choice ' ] ;
382+ global $ DB ;
368383
369384 $ array = [];
370385
371- $ group = new Group ();
372- $ groups = $ group ->find (['is_assign ' => 1 , 'entities_id ' => $ entity_choice ]);
386+ $ entities = $ params ['entity_choice ' ];
387+
388+ $ criteria = [
389+ 'SELECT ' => 'id ' ,
390+ 'FROM ' => 'glpi_groups ' ,
391+ 'WHERE ' => [
392+ 'is_assign ' => 1 ,
393+ ],
394+ 'ORDERBY ' => 'name '
395+ ];
396+ $ criteria ['WHERE ' ] = $ criteria ['WHERE ' ] + getEntitiesRestrictCriteria (
397+ 'glpi_groups ' ,'' , $ entities , true
398+ );
373399
374- foreach ($ groups as $ data ) {
375- array_push ($ array , $ data ['id ' ]);
400+ $ iterator = $ DB ->request ($ criteria );
401+
402+ if (count ($ iterator ) > 0 ) {
403+ foreach ($ iterator as $ data ) {
404+ array_push ($ array , $ data ['id ' ]);
405+ }
376406 }
377407
378408 return $ array ;
0 commit comments