Ejemplo n.º 1
0
 private function resolveUsers()
 {
     $commentDao = new Comments_CommentDao(Database::obtain());
     $result = $commentDao->getThreadContributorUids($this->struct);
     $userDao = new Users_UserDao(Database::obtain());
     $users = $userDao->getByUids($result);
     $owner = $userDao->getProjectOwner($this->job['id']);
     if (!empty($owner)) {
         array_push($users, $owner[0]);
     }
     $users = array_filter($users, function ($item) {
         if ($this->userIsLogged && $this->current_user->uid == $item->uid) {
             return false;
         }
         // FIXME: unoptimal way to find deep duplicates
         foreach ($users as $k => $v) {
             if ($item->uid == $v->uid) {
                 return false;
             }
         }
         return true;
     });
     return $users;
 }