Beispiel #1
0
 /**
  * @param string $roleSlug
  * @return array
  */
 public static function getIdNameMapByRoleSlug($roleSlug)
 {
     $roleTable = CoreTables::TABLE_ROLE;
     $userTable = CoreTables::TABLE_USER;
     $siteTable = CoreTables::TABLE_SITE;
     $siteMemberTable = CoreTables::TABLE_SITE_MEMBER;
     $users = User::find()->leftJoin($siteMemberTable, "{$siteMemberTable}.userId = {$userTable}.id")->leftJoin($siteTable, "{$siteTable}.id = {$siteMemberTable}.siteId")->leftJoin($roleTable, "{$roleTable}.id = {$siteMemberTable}.roleId")->where("{$roleTable}.slug=:slug AND {$siteTable}.name=:name", [':slug' => $roleSlug, ':name' => Yii::$app->cmgCore->getSiteName()])->all();
     $usersMap = [];
     foreach ($users as $user) {
         $usersMap[$user->id] = $user->getName();
     }
     return $usersMap;
 }