public function index(Request $request) { //获取登录用户所有待听列表及相应分集信息 $playlists = Playlist::with(['episode' => function ($query) { $query->join('dramas', 'dramas.id', '=', 'episodes.drama_id')->select('episodes.id as id', 'drama_id', 'dramas.title as drama_title', 'episodes.title as episode_title', 'episodes.url as url'); }])->where('user_id', Auth::id())->where('type', $request->input('type'))->orderBy('updated_at', 'desc')->paginate(50); return view('user.playlist', ['type' => $request->input('type'), 'playlists' => $playlists]); }
public function getEager() { // load all playlists and associated cards $cards = \App\Playlist::with('cards')->get(); // echo out the cards dd($cards); return json_encode($cards); }
/** * Get playlist. */ public static function getPlaylist($playlist_name, $service_name) { return Playlist::with(['songs'])->select('playlists.*')->join('users', 'users.id', '=', 'playlists.user_id')->join('services', 'services.id', '=', 'playlists.service_id')->where([['users.id', Auth::user()->getAuthIdentifier()], ['services.name', $service_name], ['playlists.name', $playlist_name]])->first(); }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { // TODO check ownership $playlist = Playlist::with('items')->find($id); if (!$playlist or !empty($result->items)) { return response()->json(['success' => false, 'error' => 'Playlist invalid or not empty']); } $result = $playlist->delete(); return response()->json(['success' => $result]); }
public function export(Request $request) { $user = Auth::user(); $playlist = Playlist::with(['playlistVideos' => function ($query) { $query->where('validation', '1'); }])->find($request->playlist_id); $videos = $playlist->videos; $title = $request->title == '' ? $playlist->name : $request->title; $title .= ' - DjMaker ' . date('d/m/Y H:i:s'); $addToDescription = 'Playlist créée avec DjMaker.'; $description = $request->description = '' ? $addToDescription : $request->description . '\\n <br /> ' . $addToDescription; $privacy = isset($request->privacy) ? 1 : 0; $array = ['title' => $title, 'description' => $description, 'privacy' => $privacy]; $user->createPlaylist($array, $playlist->videos); }