author_of_blog_post() ->distinct() ->orderBy('updated_at', 'desc') ->limit(5) ->get(); $profileViewsCount = views($user)->unique()->count(); $totalLikes = 0; $totalLikes += $user->author_of_plans()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_diets()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_blog_post()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_recipe()->distinct()->get()->sum('likes_count'); return view( 'profile.index', [ 'user' => $user, 'userPosts' => $userPosts, 'totalLikes' => $totalLikes, 'profileViewsCount' => $profileViewsCount, ] ); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { } /** * Store a newly created resource in storage. * * @return \Illuminate\Http\Response */ public function store(Request $request) { } /** * Display the specified resource. * * @return \Illuminate\Http\Response */ public function show(User $user) { $expiresAt = now()->addHours(24); $userPosts = $user ->author_of_blog_post() ->distinct() ->orderBy('updated_at', 'desc') ->limit(5) ->get(); views($user)->cooldown($expiresAt)->record(); $profileViewsCount = views($user)->unique()->count(); $totalLikes = 0; $totalLikes += $user->author_of_plans()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_diets()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_blog_post()->distinct()->get()->sum('likes_count'); $totalLikes += $user->author_of_recipe()->distinct()->get()->sum('likes_count'); return view( 'user.show', [ 'user' => $user, 'userPosts' => $userPosts, 'totalLikes' => $totalLikes, 'profileViewsCount' => $profileViewsCount, ] ); } /** * Show the form for editing the specified resource. * * @return \Illuminate\Http\Response */ public function edit(UserDetailz $userDetailz) { } /** * Update the specified resource in storage. * * @return \Illuminate\Http\Response */ public function update(Request $request, UserDetailz $userDetailz) { } /** * Remove the specified resource from storage. * * @return \Illuminate\Http\Response */ public function destroy(UserDetailz $userDetailz) { } }