// GET: Genre public ActionResult Genre() { var model = new FormModel() { SelectedGenres = new [] { "techno" }, Genres = FormModelListItemHelper.GetGenres(), SelectedArtists = new [] { "1btv9qmIpbp7q1ixCYNdHu" }, Artists = FormModelListItemHelper.GetArtists(), SelectedTracks = new[] { "0OUU3JfuXy4bU18ROT5AED" }, Tracks = FormModelListItemHelper.GetTracks() }; return(View(model)); }
public ActionResult Tracks(FormModel model) { var spotifyApi = new SpotifyIntegration.SpotifyIntegration(); var tracksModel = new TracksModel(); if (model.Name != null && model.Name.ToLower() == "tom araya") { tracksModel.TrackList = spotifyApi.GetSingleTrack("4Yx9Tw9dTgQ8eGCq3PRDyn"); } else { var targetTrack = new TuneableTrack() { Valence = model.Valence / 100, Danceability = model.FeelLikeDancing / 100, }; if (model.SelectedGenres.Length + model.SelectedArtists.Length + model.SelectedTracks.Length > 5) { model.Genres = FormModelListItemHelper.GetGenres(); model.Tracks = FormModelListItemHelper.GetTracks(); model.Artists = FormModelListItemHelper.GetArtists(); model.ErrorMessage = "Whoops, according to Spotify you can only select a total of 5 tracks, genres and artists for recommendations. Deselect a few and try again and sorry for the inconvenience."; return(View("~/Views/Genre/Genre.cshtml", model)); //RedirectToRoute("Genre", model); } tracksModel.TrackList = spotifyApi.GetRecommendations( artists: model.SelectedArtists.ToList(), tracks: model.SelectedTracks.ToList(), genres: model.SelectedGenres.ToList(), targetTrack: targetTrack); } return(View(tracksModel)); }