void dpt_Tick(object sender, System.EventArgs e) { ticks++; if (incremented | Player.Instance.NetStreamingConfigsLoaded) { return; } if (Player.Instance.Wave != null && ticks > Player.Instance.Wave.Duration / 2 | ticks > 4000) { incremented = true; EventHandler handler = IncrementListens; if (handler != null) { handler(this, EventArgs.Empty); } //track update Track existingTrack = TrackQuery.GetTrack(CoreMain.CurrentTrack.Path); if (existingTrack != null) { existingTrack.Listens++; TrackQuery.SaveTrack(existingTrack); } //artistUpdate ArtistViewModel existingArtist = ArtistQuery.GetArtistViewModel(CoreMain.CurrentTrack.Artist); if (existingArtist != null) { existingArtist.Listens++; existingArtist.SaveArtist(); } //albumUpdate AlbumViewModel existingAlbum = AlbumQuery.GetAlbumViewModel(CoreMain.CurrentTrack.Album); if (existingAlbum != null) { existingAlbum.Listens++; existingAlbum.SaveAlbum(); } //a;bumUpdate ViewModels.GenreViewModel existingGenre = GenreQuery.GetGenreViewModel(CoreMain.CurrentTrack.Genre); if (existingGenre != null) { existingGenre.Listens++; existingGenre.SaveGenre(); } //scrobble LastFm.ScrobbleTrack(LastFm.CurrentTrack); } }
void RateControl_MouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e) { Rate = (Rate < 3) ? 5 : 0; using (var db = new SQLiteConnection(Tables.DBPath)) { db.TimeExecution = true; if (RateType == "") { var query = db.Table <Track>() .FirstOrDefault( c => c.Path == Path); if (query != null) { query.Rate = Rate; try { TrackQuery.SaveTrack(query); } catch (Exception exception) { Console.WriteLine(exception); } } } else if (RateType == "Artist") { var query = db.Table <Artist>() .FirstOrDefault( c => c.Name == Path); if (query != null) { query.Rate = Rate; try { db.Update(query); } catch (Exception exception) { Console.WriteLine(exception); } } } } }
private void TrackFavChanged(object sender, MouseButtonEventArgs e) { tracklist.InvalidateVisual(); var Rate = 2; var t = sender as TextBlock; if (t.Text == "") //2 { t.Text = ""; //5 Rate = 5; t.Opacity = 1; } else { t.Text = ""; Rate = 2; t.Opacity = .25; } using (var db = new SQLiteConnection(Tables.DBPath)) { db.TimeExecution = true; var query = db.Table <Track>() .FirstOrDefault( c => c.Path == t.Tag.ToString()); if (query != null) { query.Rate = Rate; try { TrackQuery.SaveTrack(query); } catch (Exception exception) { Console.WriteLine(exception); } } } }