/** * Lists all Feed models. * @return mixed */ public function actionIndex() { $query = new Query(); $query->select('id, content, feed_data, template, created_at')->from('{{%home_feed}}')->where('user_id=:user_id', [':user_id' => Yii::$app->user->id])->orderBy('created_at DESC'); $pages = Tools::Pagination($query); return $this->render('index', ['feeds' => $pages['result'], 'pages' => $pages['pages']]); }
public function actionPost($id) { $model = $this->findModel($id); $query = (new Query())->select('*')->from('{{%home_post}}')->where('user_id=:user_id', [':user_id' => $model->id])->orderBy('created_at DESC'); $posts = Tools::Pagination($query); return $this->render('/user/post', ['model' => $model, 'posts' => $posts['result'], 'pages' => $posts['pages']]); }
public function actionPhotos() { $query = new Query(); $query->select('a.id, a.name, p.path, u.username, u.avatar')->from('{{%home_album}} as a')->join('LEFT JOIN', '{{%home_photo}} as p', 'p.album_id=a.id')->join('LEFT JOIN', '{{%user}} as u', 'a.created_by=u.id')->where('a.status=:type', [':type' => Album::TYPE_PUBLIC])->orderBy('a.id DESC'); $photosResult = Tools::Pagination($query, 25); return $this->render('photos', ['photos' => $photosResult['result'], 'pages' => $photosResult['pages']]); }
public function getPhotos() { $query = new Query(); $query->select('id, name, path')->from('{{%home_photo}}')->where('album_id=:id', [':id' => $this->id]); $photos = Tools::Pagination($query); return ['photos' => $photos['result'], 'pages' => $photos['pages']]; }
public function actionInbox() { $user = $this->findUserModel(); $query = new Query(); $query->select('*')->from('{{%user_message}}')->where('sendto=:sendto', [':sendto' => $user->id])->orderBy('created_at DESC'); $pages = Tools::Pagination($query); return $this->render('inbox', ['messages' => $pages['result'], 'pages' => $pages['pages'], 'count' => $this->getMessageCount()]); }
public function actionForumpost() { $model = $this->findModel(); $query = new Query(); $query = $query->select('*')->from('{{%forum_post}}')->where(['user_id' => $model->id])->orderBy('created_at desc'); $pages = Tools::Pagination($query); return $this->render('myposts', ['model' => $model, 'posts' => $pages['result'], 'pages' => $pages['pages']]); }
public function actionOutbox() { $user = $this->findUserModel(); $query = new Query(); $query->select('u.username, u.avatar, m.id, m.subject, m.read_indicator, m.created_at')->from('{{%user_message}} as m')->join('LEFT JOIN', '{{%user}} as u', 'u.id=m.sendto')->where('sendfrom=:sendfrom', [':sendfrom' => $user->id])->orderBy('m.created_at DESC'); $pages = Tools::Pagination($query); return $this->render('messageList', ['messages' => $pages['result'], 'pages' => $pages['pages'], 'type' => 'outbox', 'count' => $this->getMessageCount()]); }
public function actionIndex() { $this->layout = '@app/modules/user/views/layouts/user'; $query = new Query(); $query = $query->select('*')->from('{{%home_post}}')->where('user_id=:user_id', [':user_id' => Yii::$app->user->id])->orderBy('created_at DESC'); $pages = Tools::Pagination($query); return $this->render('index', ['posts' => $pages['result'], 'pages' => $pages['pages']]); }
/** * 获取话题 * @return array */ public function getThreads() { $query = new Query(); $query->select('t.id, t.title, t.content, t.created_at, t.user_id, u.username, u.avatar')->from('{{%forum_thread}} as t')->join('LEFT JOIN', '{{%user}} as u', 'u.id=t.user_id')->where('t.board_id=:id', [':id' => $this->id])->orderBy('t.created_at DESC'); $result = Tools::Pagination($query); return ['threads' => $result['result'], 'pages' => $result['pages']]; }
/** * 获取所有关注的用户信息 * @param string $type 类型,'following':关注用户, 'follower':粉丝 */ public function getFollow($type) { $query = new Query(); switch ($type) { case 'following': $query->select('u.id, u.username, u.avatar')->from('{{%user}} as u')->join('LEFT JOIN', '{{%user_follow}} as f', 'f.people_id = u.id')->where('f.user_id = :user_id', [':user_id' => $this->id])->orderBy('f.id DESC'); break; case 'follower': $query->select('u.id, u.username, u.avatar')->from('{{%user}} as u')->join('LEFT JOIN', '{{%user_follow}} as f', 'f.user_id = u.id')->where('f.people_id = :user_id', [':user_id' => $this->id])->orderBy('f.id DESC'); break; default: return false; break; } return Tools::Pagination($query); }
/** * 获取回复的帖子 * @return array */ public function getPosts() { $query = new Query(); $query->select('p.id, p.content, p.created_at, p.user_id, u.username, u.avatar')->from('{{%forum_post}} as p')->join('LEFT JOIN', '{{%user}} as u', 'u.id=p.user_id')->where('p.thread_id=:id', [':id' => $this->id]); $result = Tools::Pagination($query); return ['posts' => $result['result'], 'pages' => $result['pages']]; }
/** * 获取论坛的评论 */ public function getComments() { $query = new Query(); $query = $query->select('t.id, t.title, t.content, p.user_id, p.content as comment, p.created_at, u.username, u.avatar')->from('{{%forum_post}} as p')->join('LEFT JOIN', '{{%forum_thread}} as t', 'p.thread_id=t.id')->join('LEFT JOIN', '{{%user}} as u', 'u.id=p.user_id')->where('t.user_id=:user_id and p.user_id !=:user_id', [':user_id' => $this->id])->orderBy('p.created_at DESC'); return Tools::Pagination($query); }
public function getBroadcasts() { $query = new Query(); $query = $query->select('*')->from('{{%forum_broadcast}}' . ' p')->where('forum_id=:forum_id', [':forum_id' => $this->id])->orderBy('created_at DESC'); return \app\components\Tools::Pagination($query); }