public JsonResult getPlayList()
        {
            //Se não houver sessão ativa, redireciona para o login
            if ((string)Session["Token"] == null)
            {
                return(Json(false, JsonRequestBehavior.AllowGet));
            }
            else
            {
                try {
                    _spotifyApi.Token = (string)Session["Token"];
                    SpotifyService spotifyService = new SpotifyService(_spotifyApi);

                    //Get user_id and user displayName
                    SpotifyUser spotifyUser = spotifyService.GetUserProfile();
                    ViewBag.UserName = spotifyUser.DisplayName;

                    //Get user playlists ids
                    Playlists playlists = spotifyService.GetPlaylists(spotifyUser.UserId);

                    //Get all tracks from user
                    List <string> tracks = spotifyService.GetTracksAndArtistsFromPlaylists(playlists);

                    //Generate the new playlist
                    List <string> newPlayList = spotifyService.GenerateNewPlaylist(spotifyUser.DisplayName, tracks);

                    return(Json(newPlayList, JsonRequestBehavior.AllowGet));
                } catch (Exception ex) {
                    return(Json(false, JsonRequestBehavior.AllowGet));
                }
            }
        }
        public ActionResult Index(string access_token, string error)
        {
            if (error != null || error == "access_denied")
            {
                return(View("Error"));
            }

            if (string.IsNullOrEmpty(access_token))
            {
                return(View());
            }

            try
            {
                _spotifyApi.Token = access_token;
                SpotifyService spotifyService = new SpotifyService(_spotifyApi);
                //Get user_id and user displayName
                SpotifyUser spotifyUser = spotifyService.GetUserProfile();
                ViewBag.UserName = spotifyUser.DisplayName;

                //Get user playlists ids
                Playlists playlists = spotifyService.GetPlaylists(spotifyUser.UserId);

                //Get all tracks from user
                List <string> tracks = spotifyService.GetTracksAndArtistsFromPlaylists(playlists);

                //Generate the new playlist
                List <string> newPlayList = spotifyService.GenerateNewPlaylist(spotifyUser.DisplayName, tracks);

                return(RedirectToAction("Index", "Home", new { token = access_token }));
            }
            catch (Exception)
            {
                return(View("Error"));
            }
        }