Виджет "Сейчас онлайн"

Неработающая опция "Выводить только группы"

#1 18 сентября 2014 в 15:45
Всем привет!

Столкнулся с тем, что опция "Выводить только группы" в виджете "Сейчас онлайн" не работает. Не нашел ответа на форуме, решил добавить, может, кому понадобится.

Исправим функцию run в \system\controllers\users\widgets\online\widget.php таким образом:
  1.  
  2. public function run(){
  3.  
  4. $is_avatars = $this->getOption('is_avatars');
  5.  
  6. $show_groups = $this->getOption('groups');
  7. $model = cmsCore::getModel('users');
  8.  
  9. $profiles = $model->getOnlineUsers($show_groups);
  10.  
  11. if (!$profiles) { return false; }
  12.  
  13. return array(
  14. 'profiles' => $profiles,
  15. 'is_avatars' => $is_avatars,
  16. );
  17.  
  18. }
  19.  
добавим функцию getOnlineUsers($show_groups) в модель users \system\controllers\users\model.php :

  1.  
  2. public function getOnlineUsers($show_groups){
  3.  
  4. if ($show_groups) {
  5. $this->filterGroups($show_groups);
  6. }
  7. $user = $this->filterEqual('is_online', 1)->getUsers();
  8.  
  9. return $user;
  10.  
  11. }
  12.  
… и опция начинает работать.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.