<div class="row"> <div class="col-md-2"><?php echo YBoard::t('yboard', 'Newest member'); ?> </div> <div class="col-md-1"><?php $member = YBoardMember::find()->newestScope()->one(); echo $member == null ? YBoard::t('yboard', 'None') : Html::a($member->profile->username, ['member/view', 'id' => $member->id]); ?> </div> <div class="col-md-9"></div> </div> <div class="row"> <div class="col-md-2"><?php echo YBoard::t('yboard', 'Visitors today'); ?> </div> <div class="col-md-1"><?php echo YBoardSession::find()->count(); ?> </div> <div class="col-md-9"></div> </div> </div> </div> <?php echo $this->render('_changeForum'); ?>
<?php use app\modules\yboard\models\YBoardMember; use app\modules\yboard\models\YBoardSession; use app\modules\yboard\models\YBoardTopic; use app\modules\yboard\models\YBoardPost; use app\modules\yboard\models\YBoardSpider; use yii\helpers\Html; use app\modules\yboard\YBoard; /* @var $this ForumController */ $guests = YBoardSession::find()->where('user_id IS NULL')->count(); $members = YBoardSession::find()->where('user_id IS NOT NULL')->count(); ?> <div id="yboard-footer"> <div class="row"> <div class="online col-md-9"> <div> <span class="header2" id="online-record"><?php echo YBoard::t('yboard', '{{guests}} guest(s) and {{members}} active member(s)', ['{guests}' => $guests, '{members}' => $members]); ?> </span> <?php echo YBoard::t('yboard', '(in the past 15 minutes)'); ?> </div> <div> <?php $members = YBoardMember::find()->presentScope()->all(); foreach ($members as $member) { echo Html::a($member->profile->username, ['member/view', 'id' => $member->id], ['style' => 'color:#' . ($member->group == null ? '' : $member->group->color)]) . ' ';
/** * @return YBoardMembergroup */ public function getStatus() { $isOnline = YBoardSession::find()->where(['user_id' => $this->id])->count(); if ($this->show_online > 0) { if ($isOnline > 0) { return YBoard::t('yboard', 'Online'); } else { return YBoard::t('yboard', 'Offline'); } } else { return YBoard::t('yboard', 'Hidden'); } }
public function actionUpdateOnlineStatus($id, $uid = null) { $time = time() - $this->module->onlineLimit; // delete older session entries YBoardSession::deleteAll("last_visit <" . $time); $session = YBoardSession::findOne($id); //print_r($session); die(); if ($session == null) { $session = new YBoardSession(); $session->setAttributes(['last_visit' => time(), 'id' => $id, 'user_id' => $uid]); } else { $session->setAttribute('last_visit', time()); } $success = $session->save(); $guests = YBoardSession::find()->where('user_id IS NULL')->count(); $members = YBoardSession::find()->where('user_id IS NOT NULL')->count(); //echo json_encode(['success'=>$success, 'errors'=>$session->errors, 'users'=>['guests'=>$guests, 'members'=>$members]]); echo json_encode(['time' => $time, 'success' => $success, 'errors' => $session->errors, 'message' => YBoard::t('yboard', '{{guests}} guest(s) and {{members}} active member(s)', ['{guests}' => $guests, '{members}' => $members])]); }