示例#1
0
 public function addMusic(Request $request)
 {
     $artist = $request->artist;
     $name = $request->name;
     $playlist_id = $request->playlist_id;
     $link = $request->link;
     $playlistVideo = false;
     $video_id = Youtube::parseVidFromUrl($link);
     // Si l'utilisateur est connecté, sinon on utilise l'utilisateur null null id=1
     $user_id = Auth::check() ? Auth::user()->id : 1;
     $vid = Video::where('url', $video_id)->first();
     $vid2 = Video::where('artist', 'LIKE', $artist)->where('name', 'LIKE', $name)->first();
     $check = !empty($vid) || !empty($vid2);
     if ($check) {
         if (!empty($vid)) {
             $pv = PlaylistVideo::where('video_id', $vid->id)->first();
         }
         if (empty($pv)) {
             if (!empty($vid)) {
                 $playlistVideo = PlaylistVideo::create(['video_id' => $vid->id, 'playlist_id' => $playlist_id, 'user_id' => $user_id]);
             } elseif (!empty($vid2)) {
                 $playlistVideo = PlaylistVideo::create(['video_id' => $vid2->id, 'playlist_id' => $playlist_id, 'user_id' => $user_id]);
             }
         }
     } else {
         $video = Video::create(['url' => $video_id, 'name' => $name, 'artist' => $artist, 'tags' => strtolower($name) . ' ' . strtolower($artist)]);
         $playlistVideo = PlaylistVideo::create(['video_id' => $video->id, 'playlist_id' => $playlist_id, 'user_id' => $user_id]);
     }
     if ($playlistVideo != false) {
         $playlistVideo->load('video');
     }
     return response()->json($playlistVideo);
 }