public function run()
 {
     ArticleJoin::create(['article_id' => 1, 'user_id' => 1, 'scan_num' => 2332, 'com_num' => 2323, 'focus_num' => 33]);
     ArticleJoin::create(['article_id' => 1, 'user_id' => 2, 'scan_num' => 2332, 'com_num' => 2323, 'focus_num' => 33]);
     ArticleJoin::create(['article_id' => 2, 'user_id' => 1, 'scan_num' => 2332, 'com_num' => 2323, 'focus_num' => 33]);
     ArticleJoin::create(['article_id' => 2, 'user_id' => 2, 'scan_num' => 2332, 'com_num' => 2323, 'focus_num' => 33]);
 }
Beispiel #2
0
 public function joinArticle()
 {
     if (!Sentry::check()) {
         return Response::json(array('errCode' => 10, 'message' => '请登录'));
     }
     $user = Sentry::getUser();
     // $user = User::find(1);
     //分页
     $per_page = Input::get('per_page');
     $page = Input::get('page');
     $article_joins = ArticleJoin::where('user_id', '=', $user->id)->orderBy('created_at', 'desc')->get();
     //总页数
     $total = ceil(count($article_joins) / $per_page);
     //参与话题
     $article_joins = StaticController::page($per_page, $page, $article_joins);
     if ($article_joins == false) {
         return Response::json(array('errCode' => 0, 'message' => '没有参与话题', 'articles' => array(), 'total' => 0));
     }
     //根据用户参与的话题取到官方话题
     $articles = array();
     foreach ($article_joins as $article_join) {
         $article = Article::where('id', '=', $article_join->article_id)->first();
         array_push($articles, $article);
     }
     //去掉重复值
     array_unique($articles);
     //取到每个话题的图片和首段文字
     foreach ($articles as $article) {
         $article_url = ArticlePart::where('article_id', '=', $article->id)->where('type', '=', 'url')->orderBy('id', 'asc')->first();
         if (isset($article_url)) {
             $article->img = StaticController::imageWH($article_url->content);
         }
         $article_text = ArticlePart::where('article_id', '=', $article->id)->where('type', '=', 'text')->orderBy('id', 'asc')->first();
         if (isset($article_text)) {
             $article->content = $article_text->content;
         }
     }
     return Response::json(array('errCode' => 0, 'message' => '返回参与话题的内容!', 'articles' => $articles, 'total' => $total));
 }
 public function involve()
 {
     //参与话题内容
     $join_id = Input::get('join_id');
     $article_join = ArticleJoin::find($join_id);
     if (!isset($article_join)) {
         return Response::json(array('errCode' => 1, 'message' => '没有该参与话题内容!'));
     }
     $article_join_parts = ArticleJoinPart::where('join_id', '=', $join_id)->orderBy('id', 'asc')->get();
     foreach ($article_join_parts as $part) {
         if ($part->type == 'url') {
             $part->img = StaticController::imageWH($part->content);
         }
     }
     //评论内容
     $per_page = Input::get('per_page');
     $page = Input::get('page');
     $join_coms = ArticleJoinCom::where('join_id', '=', $join_id)->with(['replies' => function ($query) {
         $query->select('com_id', 'content', 'sender_id')->orderBy('id', 'asc');
     }, 'sender' => function ($query) {
         $query->select('id', 'username', 'avatar');
     }, 'replies.sender' => function ($query) {
         $query->select('id', 'username');
     }])->get();
     foreach ($join_coms as $join_com) {
         $user = $join_com->sender;
         $join_com->username = $user->username;
         $join_com->avatar = $user->avatar;
         $join_com->replys = $join_com->replies;
         if (count($join_com->replys) != 0) {
             foreach ($join_com->replys as $reply) {
                 // dd($reply);
                 $reply->reply_name = $reply->sender->username;
                 unset($reply->sender);
             }
         }
         unset($join_com->replies);
         unset($join_com->sender);
     }
     // //总页数
     $total = ceil(count($join_coms) / $per_page);
     // //文章
     $join_coms = StaticController::page($per_page, $page, $join_coms);
     // $join_coms = DB::table('article_join_coms')->where('join_id', '=', $join_id)->get();
     // //总页数
     // $total = ceil(count($join_coms)/$per_page);
     // //文章
     // $join_coms = StaticController::page($per_page,$page,$join_coms);
     // if( $join_coms )
     // {
     // 	foreach($join_coms as $join_com)
     // 	{
     // 		$join_com->username = User::find($join_com->sender_id)->username;
     // 		$join_com->avatar = User::find($join_com->sender_id)->avatar;
     // 		$join_com->replys = ArticleJoinReply::where('com_id', '=', $join_com->id)->orderBy('id','asc')->get();
     // 		if(count($join_com->replys)!=0)
     // 		{
     // 			foreach($join_com->replys as $reply)
     // 			{
     // 				$reply->reply_name = User::find($reply->sender_id)->username;
     // 			}
     // 		}
     // 	}
     // }
     //是否喜欢
     $type = $this->isJoinLike($join_id);
     if ($page == 1) {
         return Response::json(array('errCode' => 0, 'message' => '返回参与话题详情', 'article_join' => $article_join, 'article_join_parts' => $article_join_parts, 'join_coms' => $join_coms, 'total' => $total, 'type' => $type));
     } else {
         return Response::json(array('errCode' => 0, 'message' => '返回参与话题详情', 'join_coms' => $join_coms, 'total' => $total, 'type' => $type));
     }
 }
Beispiel #4
0
 public function joinCollection()
 {
     if (!Sentry::check()) {
         return Response::json(array('errCode' => 10, 'message' => '请登录'));
     }
     // Sentry::login(Sentry::findUserById(5), false);
     $join_id = Input::get('join_id');
     $join_focus = DB::table('join_focus')->where('user_id', '=', Sentry::getUser()->id)->where('join_id', '=', $join_id)->first();
     if (count($join_focus) == 1) {
         try {
             DB::transaction(function () use($join_id, $join_focus) {
                 //参与话题收藏条数减1
                 $article_join = ArticleJoin::find($join_id);
                 $article_join->focus_num = $article_join->focus_num - 1;
                 $article_join->save();
                 $join_focus = DB::table('join_focus')->where('user_id', '=', Sentry::getUser()->id)->where('join_id', '=', $join_id);
                 $join_focus->delete();
             });
         } catch (\Exception $e) {
             return Response::json(array('errCode' => 11, 'message' => '操作失败'));
         }
         return Response::json(array('errCode' => 0, 'message' => '取消收藏成功!'));
     } else {
         try {
             DB::transaction(function () use($join_id) {
                 //参与话题收藏条数加1
                 $article_join = ArticleJoin::find($join_id);
                 $article_join->focus_num = $article_join->focus_num + 1;
                 $article_join->save();
                 $join_focus = new JoinFocus();
                 $join_focus->user_id = Sentry::getUser()->id;
                 $join_focus->join_id = $join_id;
                 $join_focus->save();
             });
         } catch (\Exception $e) {
             return Response::json(array('errCode' => 11, 'message' => '操作失败'));
         }
         return Response::json(array('errCode' => 0, 'message' => '收藏成功!'));
     }
 }
 public function dArticle()
 {
     if (!Sentry::check()) {
         return Response::json(array('errCode' => 10, 'message' => '请登录'));
     }
     $user = Sentry::getUser();
     $join_id = Input::get('join_id');
     $article_join = ArticleJoin::find($join_id);
     if (!isset($article_join)) {
         return Response::json(array('errCode' => 2, 'message' => '你想删除的参与话题不存在!'));
     }
     if ($user->id != $article_join->user_id) {
         return Response::json(array('errCode' => 3, 'message' => ' [权限不够]不可删除他人的参与话题!'));
     }
     try {
         DB::transaction(function () use($article_join) {
             //话题参与人数减1
             $article = Article::find($article_join->article_id);
             $article->join_num = $article->join_num - 1;
             $article->save();
             $article_join->delete();
         });
     } catch (\Exception $e) {
         return Response::json(array('errCode' => 11, 'message' => '操作失败'));
     }
     return Response::json(array('errCode' => 0, 'message' => '参与话题删除成功!'));
 }
Beispiel #6
0
 public function joinDetail()
 {
     //参与话题内容
     $join_id = Input::get('join_id');
     $article_join = ArticleJoin::find($join_id);
     if (!isset($article_join)) {
         return Response::view('errors.missing');
     }
     $article_join_parts = ArticleJoinPart::where('join_id', '=', $join_id)->orderBy('id', 'asc')->get();
     $type = $this->isJoinLike($join_id);
     $user = User::find($article_join->user_id);
     $article_join->avatar = $user->avatar;
     $article_join->username = $user->username;
     $article_join->article_title = Article::find($article_join->article_id)->title;
     return View::make('pc.discuss')->with(array('article_join' => $article_join, 'article_join_parts' => $article_join_parts, 'type' => $type));
 }