Ejemplo n.º 1
0
 public function edit(Request $request, $drama_id)
 {
     $drama = Drama::find($drama_id, ['id', 'title']);
     $user_id = $request->user()->id;
     $favorite = Favorite::select('type', 'rating', 'tags')->where('user_id', $user_id)->where('drama_id', $drama_id)->first();
     $review = Review::select('title', 'content', 'visible')->where('user_id', $user_id)->where('drama_id', $drama_id)->where('episode_id', 0)->first();
     $tagmaps = Tagmap::with('tag')->select(DB::raw('count(*) as count, tag_id'))->where('user_id', $request->user()->id)->groupBy('tag_id')->orderBy('count', 'desc')->take(15)->get();
     return view('favorite.edit', ['drama' => $drama, 'favorite' => $favorite, 'review' => $review, 'tagmaps' => $tagmaps]);
 }
Ejemplo n.º 2
0
 public function destroy(Request $request, $id)
 {
     $version = Dramaver::select('user_id')->where('drama_id', $id)->where('first', 1)->first();
     if ($version->user_id != $request->user()->id) {
         return '抱歉, 目前仅支持添加此条目的用户删除剧集> <';
     }
     $episode = Episode::select('id')->where('drama_id', $id)->first();
     if ($episode) {
         return '抱歉,请先逐一删除分集后再删除本剧';
     }
     $favorite = Favorite::select('user_id')->where('drama_id', $id)->first();
     if ($favorite) {
         return '抱歉, 已有人收藏本剧,不能删除> <';
     }
     $review = Review::select('id')->where('drama_id', $id)->first();
     if ($review) {
         return '抱歉,已有人评论本剧,不能删除> <';
     }
     $item = Item::select('id')->where('drama_id', $id)->first();
     if ($item) {
         return '抱歉,已有剧单收录本剧,不能删除> <';
     }
     $ed = Ed::select('id')->where('drama_id', $id)->first();
     if ($ed) {
         return '抱歉,请先逐一删除歌曲关联后再删除本剧';
     }
     $drama = Drama::find($id, ['id']);
     if ($drama->delete()) {
         return redirect('/');
     } else {
         return '删除失败';
     }
 }
Ejemplo n.º 3
0
 public function show(Request $request, $id)
 {
     $drama = Drama::find($id, ['id', 'title', 'alias', 'type', 'era', 'genre', 'original', 'count', 'state', 'sc', 'introduction', 'reviews']);
     $drama->load(['episodes' => function ($query) {
         $query->select('id', 'drama_id', 'title', 'alias', 'release_date', 'poster_url')->orderByRaw('release_date, id')->get();
     }]);
     $drama->commtags = Tagmap::with('tag')->select(DB::raw('count(*) as count, tag_id'))->where('drama_id', $id)->groupBy('tag_id')->orderBy('count', 'desc')->take(5)->get();
     if (Auth::check()) {
         $user_id = $request->user()->id;
         $drama->userFavorite = Favorite::select('id', 'type', 'rating', 'tags')->where('user_id', $user_id)->where('drama_id', $id)->first();
         $drama->userTags = Tagmap::with('tag')->select(DB::raw('count(*) as count, tag_id'))->where('user_id', $user_id)->groupBy('tag_id')->orderBy('count', 'desc')->take(10)->get();
     }
     return $drama;
 }