Example #1
0
 public function setMembers()
 {
     $cgus = ChatGroupUser::find()->where(['group_id' => $this->id])->all();
     $ids = [];
     foreach ($cgus as $cgu) {
         $ids[] = $cgu->user_id;
     }
     $this->members = implode(',', $ids);
 }
Example #2
0
 /**
  * Собеседники из всех групп
  */
 public function getGroupUsers()
 {
     $talkers = [];
     $groupIds = [];
     $chus = ChatGroupUser::find()->where(['user_id' => $this->id])->all();
     foreach ($chus as $chu) {
         $groupIds[] = $chu->group_id;
     }
     $groupUsers = ChatGroupUser::find()->where(['group_id' => $groupIds])->andWhere('user_id <> ' . $this->id)->with('user')->groupBy('user_id')->all();
     foreach ($groupUsers as $groupUser) {
         $talkers[] = $groupUser->user;
     }
     return $talkers;
 }