Пример #1
0
 public function show(Request $request, $id)
 {
     $song = Song::find($id, ['id', 'title', 'alias', 'artist', 'url', 'poster_url', 'staff', 'lyrics', 'reviews', 'favorites']);
     $reviews = Songrev::with(['user' => function ($query) {
         $query->select('id', 'name');
     }])->select('id', 'user_id', 'title', 'content', 'created_at')->where('song_id', $id)->orderBy('id', 'desc')->take(20)->get();
     $favorites = Songfav::with(['user' => function ($query) {
         $query->select('id', 'name');
     }])->select('user_id', 'created_at')->where('song_id', $id)->orderBy('created_at', 'desc')->take(10)->get();
     $eds = Ed::with(['drama' => function ($query) {
         $query->select('id', 'title');
     }, 'episode' => function ($query) {
         $query->select('id', 'title');
     }])->where('song_id', $id)->get();
     if (Auth::check()) {
         $user_id = $request->user()->id;
         $favorite = Songfav::selectRaw(1)->where('user_id', $user_id)->where('song_id', $id)->first();
         $userReviews = Songrev::select('id', 'title', 'content', 'created_at')->where('user_id', $user_id)->where('song_id', $id)->get();
     } else {
         $favorite = 0;
         $userReviews = 0;
     }
     return view('song.show', ['song' => $song, 'eds' => $eds, 'reviews' => $reviews, 'favorites' => $favorites, 'favorite' => $favorite, 'userReviews' => $userReviews]);
 }
Пример #2
0
 public function songs($id)
 {
     $episode = Episode::find($id, ['id', 'drama_id', 'title']);
     $drama = Drama::find($episode->drama_id, ['title']);
     $eds = Ed::with(['song' => function ($query) {
         $query->select('id', 'title');
     }])->where('episode_id', $id)->get();
     return view('episode.songs', ['drama' => $drama, 'episode' => $episode, 'eds' => $eds]);
 }