/** * Функция выводит все 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; }