Ejemplo n.º 1
0
 /**
  * Функция выводит все CAuthItem, которые содержит группа LDAP, включая детей
  * 
  * @return array
  */
 public static function GetAuthItemsbyUserLDAP()
 {
     $autharr = [];
     if (isset(Yii::app()->user->memberof)) {
         $connection = Yii::app()->db;
         $sql = 'SELECT AuthItem.NAME FROM groupldap INNER JOIN authassignmentldap ON authassignmentldap.groupid = groupldap.id INNER JOIN AuthItem ON authassignmentldap.itemname = AuthItem.NAME WHERE groupldap.groupname IN ("' . implode('","', Yii::app()->user->memberof) . '")';
         $command = $connection->createCommand($sql);
         $rows = $command->queryAll();
         foreach ($rows as $i => $row) {
             array_push($autharr, $row['NAME']);
         }
     }
     $result = [];
     if (count((array) $autharr) > 0) {
         Proc::getItemChildrenRecursive($autharr, $result);
     }
     return $result;
 }