public function like(Request $request) { onlyAllowPostRequest($request); $post_id = $request->input('id'); $user_id = $request->input('user'); /** * Dữ liệu trả về */ $response = new stdClass(); $likes = Like::all()->where('user_id', intval($user_id))->where('post_id', intval($post_id)); if ($likes->count() > 0) { $response->error = true; $response->error_msg = 'Bạn đã cảm ơn bài viết này!'; return response()->json($response); } $like = Like::create(['user_id' => $user_id, 'post_id' => $post_id]); $posts = Post::all()->where('id', intval($post_id)); if ($posts->count() == 0) { $response->error = true; $response->error_msg = 'Bạn đã cảm ơn bài viết này!'; return response()->json($response); } $count_like = intval($posts->first()->like); $count_like++; $p = DB::table('posts')->where('id', intval($post_id))->update(['like' => $count_like]); $response->error = false; $response->msg = 'Cảm ơn bạn!'; return response()->json($response); }
function create() { if (Session::has('user')) { $aLike = ['liked' => false, 'unliked' => false]; $iLikeFromType = Input::get('like_from_type'); $iToUserID = Input::get('to_user_id'); $iUserID = Session::get('user')['id']; $iLikeFromID = Input::get('like_from_id'); switch ($iLikeFromType) { case Like::LIKE_TYPE_USER: $iFromWhereID = "user_id"; break; case Like::LIKE_TYPE_CHARACTER: $iFromWhereID = "character_id"; break; case Like::LIKE_TYPE_FAMILY: $iFromWhereID = "family_id"; break; case Like::LIKE_TYPE_SPECY: $iFromWhereID = "specy_id"; break; case Like::LIKE_TYPE_PHOTO: $iFromWhereID = "photo_id"; break; case Like::LIKE_TYPE_POST: $iFromWhereID = "post_id"; break; case Like::LIKE_TYPE_MATE: $iFromWhereID = "mate_id"; break; case Like::LIKE_TYPE_COMMENT: $iFromWhereID = "comment_id"; } //If no result on hasLiked, create like $oResultHasLike = self::hasLiked($iFromWhereID, $iToUserID, $iUserID, $iLikeFromType, $iLikeFromID); if (!$oResultHasLike) { $oResult = Like::create(['from_user_id' => $iUserID, 'to_user_id' => $iToUserID, 'like_type' => $iLikeFromType, $iFromWhereID => $iLikeFromID]); Update::create(['user_id' => $iUserID, 'update_type' => Update::UPDATE_TYPE_LIKE, 'like_id' => $oResult['id'], 'status' => Update::UPDATE_STATUS_ACTIVE]); if ($oResult) { $aLike['liked'] = true; return response()->json(['status' => true, 'message' => "Successfully liked", 'like' => json_encode($aLike)]); } else { return response()->json(['status' => false, 'message' => "Something went wrong. Please try again later"]); } } else { $bResult = Like::where('id', $oResultHasLike['id'])->update(['status' => Like::LIKE_STATUS_DISLIKED_BY_USER]); Update::where('like_id', $oResultHasLike['id'])->update(['status' => Update::UPDATE_STATUS_DEACTIVATED_BY_USER]); if ($bResult) { $aLike['unliked'] = true; return response()->json(['status' => true, 'message' => "Successfully disliked", 'like' => json_encode($aLike)]); } else { return response()->json(['status' => false, 'message' => "Something went wrong. Please try again later"]); } } } }
public function newLike(Request $request, $entry_id) { $user = JWTAuth::parseToken()->authenticate(); $newLike['entry_id'] = $entry_id; $newLike['user_id'] = $user->id; if (Like::where(['entry_id' => $newLike['entry_id'], 'user_id' => $newLike['user_id']])->exists()) { abort(403, 'Like is already registered'); } else { return Like::create($newLike); } }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { //Get the Media from given URL $media = Media::where('url', $request->url)->first(); if (!$media) { return response()->json(['success' => false, 'message' => "No such media in our DB"]); } if (!$media->publishable) { return response()->json(['success' => false, 'message' => "You cannot like this media"]); } return response()->json(['success' => true, 'message' => "Successfully liked", 'like' => Like::create(['user_id' => User::getCurrentUserId(), 'media_id' => $media->id])]); }
/** * Run the database seeds. * * @return void */ public function run() { $user = new User(); $user->name = 'hisyam'; $user->email = '*****@*****.**'; //$user->photo = 'southern_miss_logo.0.0.jpeg'; $user->password = bcrypt('admin1'); $user->save(); $stat = Stat::create(['user_id' => '1', 'content' => 'Lorem Ipsum', 'published_at' => Carbon\Carbon::now()]); $like = Like::create(['stat_id' => '1', 'count' => 45]); $comment = Comment::create(['stat_id' => 1, 'user_id' => 1, 'content' => 'Lorem Ipsum', 'published_at' => Carbon\Carbon::now()]); }
public function storeLike(Request $request, $name) { $data = $request->all(); if ($data['like'] == "true") { $data['like'] = true; } else { $data['like'] = false; } $data['user_id'] = Auth::user()->id; //CHECK WHETHER LIKED OR DISLIKED AND REACT ACCORDINGLY $likeObject = new Like(); $isLike = $likeObject->isLike($data['user_id'], $data['post_id']); $isDislike = $likeObject->isDislike($data['user_id'], $data['post_id']); if (!$isLike && !$isDislike) { //if not liked and not disliked Like::create($data); } elseif ($isLike && !$isDislike && $data['like'] == true) { //already liked,not disliked,pressed like button //dd("already liked,not disliked,pressed like button"); Like::where(['post_id' => $data['post_id'], 'user_id' => $data['user_id']])->delete(); } elseif ($isLike && !$isDislike && $data['like'] == false) { //already liked,not disliked,but pressed dislike button //dd("already liked,not disliked,but pressed dislike button"); Like::where(['post_id' => $data['post_id'], 'user_id' => $data['user_id']])->update(array('like' => false)); } elseif (!$isLike && $isDislike && $data['like'] == true) { //not liked,already disliked,but pressed like button //dd("not liked,already disliked,but pressed like button"); Like::where(['post_id' => $data['post_id'], 'user_id' => $data['user_id']])->update(array('like' => true)); } elseif (!$isLike && $isDislike && $data['like'] == false) { //not liked,already disliked,but pressed dislike button //dd("not liked,already disliked,but pressed dislike button"); Like::where(['post_id' => $data['post_id'], 'user_id' => $data['user_id']])->delete(); } $post = Post::find($data['post_id']); $countLikeDislike = null; $countLikeDislike['likes'] = $post->Likes()->count(); $countLikeDislike['dislikes'] = $post->Dislikes()->count(); $countLikeDislike['icon_flag'] = $data['like']; return $countLikeDislike; }
public function like(Request $request, $id) { if (\Auth::check()) { $forms = Form::findorfail($id); $userid = \Auth::user(); Like::create(['user_id' => $userid->id, 'form_id' => $forms->id]); $likes = Like::all(); $likedata = $this->countLikes($likes, $forms); echo json_encode($likedata); } else { return redirect('auth/login'); } }
public function likeUnlike($id, $action) { //Get Proposal $proposal = $this->proposalsRepository->find($id); //Get User if (!Auth::check()) { // The user is not logged in... // Retrieve UUID from Cookie $user_id = null; $unique = Cookie::get('uuid'); } else { //Retrieve UUID from User $user_id = Auth::user()->id; $unique = Auth::user()->uuid; } //Possible Values: Null, 0 or 1 $existing_like = Like::where('uuid', $unique)->where('proposal_id', $id)->value('like'); switch ($existing_like) { // Already Unliked case '0': switch ($action) { case 'like': Like::where('uuid', $unique)->where('proposal_id', $id)->update(['like' => $action == 'like']); Session::flash('flash_msg', 'Você voltou a curtir essa Ideia Legislativa!'); break; case 'unlike': Session::flash('error_msg', 'Você já deixou de curtir essa Ideia Legislativa!'); break; } break; // Already Liked // Already Liked case '1': switch ($action) { case 'like': Session::flash('error_msg', 'Você já curtiu essa Ideia Legislativa!'); break; case 'unlike': Like::where('uuid', $unique)->where('proposal_id', $id)->update(['like' => $action == 'like']); Session::flash('flash_msg', 'Você deixou de curtir essa Ideia Legislativa!'); break; } break; // New Like // New Like case null: //dd($existing_like, $action, $str_action); Like::create(['user_id' => $user_id, 'uuid' => $unique, 'proposal_id' => $proposal->id, 'like' => $action == 'like', 'ip_address' => Request::ip()]); $approval_url = route('proposal.approval', $id); $msg = 'Sua curtida foi computada com sucesso. Caso queira apoiar oficialmente esta proposta, <a href="' . $approval_url . '">clique aqui</a>.'; Session::flash('flash_msg', $msg); break; } return redirect()->back(); }