private PlaylistItem getCurrentlyPlayingTrack() { using (var db = new Podcatcher.PlaylistDBContext()) { return(db.Playlist.FirstOrDefault(item => item.IsCurrent)); } }
private void setCurrentlyPlayingTrack(string episodeName) { using (var db = new Podcatcher.PlaylistDBContext()) { PlaylistItem current = db.Playlist.FirstOrDefault(item => item.EpisodeName == episodeName); if (current != null) { current.IsCurrent = true; db.SubmitChanges(); } } }
private void updateToDBPlaylistItem(PlaylistItem pl) { using (var db = new Podcatcher.PlaylistDBContext()) { PlaylistItem p = db.Playlist.FirstOrDefault(item => item.ItemId == pl.ItemId); if (p == null) { Debug.WriteLine("Something went horribly wrong. Cannot update playlist item to DB."); return; } p.IsCurrent = pl.IsCurrent; p.EpisodeName = pl.EpisodeName; p.EpisodeLocation = pl.EpisodeLocation; p.OrderNumber = pl.OrderNumber; p.SavedPlayPosTick = pl.SavedPlayPosTick; p.TotalPlayTicks = pl.TotalPlayTicks; db.SubmitChanges(); } }
private AudioTrack getNextPlaylistTrack() { AudioTrack track = null; using (var db = new Podcatcher.PlaylistDBContext()) { if (db.Playlist.Count() <= 1) { // Only current item in the playlist. Cannot progress to next one. return(null); } int orderNumber = db.Playlist.Where(item => item.IsCurrent).Select(item => item.OrderNumber).FirstOrDefault(); Podcatcher.ViewModels.PlaylistItem currentTrack = db.Playlist.Where(item => item.IsCurrent).FirstOrDefault(); if (currentTrack != null) { currentTrack.IsCurrent = false; } Podcatcher.ViewModels.PlaylistItem nextTrack = db.Playlist.Where(item => item.OrderNumber == orderNumber + 1).FirstOrDefault(); if (nextTrack == null) { db.SubmitChanges(); return(null); } track = new AudioTrack(new Uri(nextTrack.EpisodeLocation, UriKind.RelativeOrAbsolute), nextTrack.EpisodeName, nextTrack.PodcastName, "", new Uri(nextTrack.PodcastLogoLocation, UriKind.RelativeOrAbsolute)); nextTrack.IsCurrent = true; db.SubmitChanges(); } return(track); }
private AudioTrack getNextPlaylistTrack() { AudioTrack track = null; using (var db = new Podcatcher.PlaylistDBContext()) { if (db.Playlist.Count() <= 1) { // Only current item in the playlist. Cannot progress to next one. return null; } int orderNumber = db.Playlist.Where(item => item.IsCurrent).Select(item => item.OrderNumber).FirstOrDefault(); Podcatcher.ViewModels.PlaylistItem currentTrack = db.Playlist.Where(item => item.IsCurrent).FirstOrDefault(); if (currentTrack != null) { currentTrack.IsCurrent = false; } Podcatcher.ViewModels.PlaylistItem nextTrack = db.Playlist.Where(item => item.OrderNumber == orderNumber+1).FirstOrDefault(); if (nextTrack == null) { db.SubmitChanges(); return null; } track = new AudioTrack(new Uri(nextTrack.EpisodeLocation, UriKind.RelativeOrAbsolute), nextTrack.EpisodeName, nextTrack.PodcastName, "", new Uri(nextTrack.PodcastLogoLocation, UriKind.RelativeOrAbsolute)); nextTrack.IsCurrent = true; db.SubmitChanges(); } return track; }
private PlaylistItem getCurrentlyPlayingTrack() { using (var db = new Podcatcher.PlaylistDBContext()) { return db.Playlist.FirstOrDefault(item => item.IsCurrent); } }