/// <summary> /// Sync new Playlist with localDb and serverDb /// </summary> public void initializePlaylist() { PlaylistsNwManager.PostPlaylist(this); PlaylistsManager.db_Add_Update_Record(PlaylistsNwManager.GetPlaylists().FindLast(e => e.name == this.name)); Playlist temp = PlaylistsManager.db_GetAllPlaylists().FindLast(e => e.name == this.name); this.id = temp.id; this.resource_uri = temp.resource_uri; }
/// <summary> /// Synchronize locale Database with Server /// </summary> private void synchronizeDatabase() { NetworkHandler.SyncLocalDbWithServerDb(); // Synchronize View with local database foreach (Playlist playlist in PlaylistsManager.db_GetAllPlaylists()) { Playlists.Add(playlist.name); } }
/// <summary> /// Plays a selected playlist from ListView /// </summary> /// <param name="selectedPlaylist"></param> private void playSelectedPlaylist(string selectedPlaylist) { Playlist currentPlaylist = PlaylistsManager.db_GetAllPlaylists().Find(x => x.name == selectedPlaylist); musicplayer.Musicqueue.LoadPlayableContainerInQueue(currentPlaylist); //To decide between all Tracks and a Playlist SelectAllTracks = false; musicplayer.NextTrack(); musicplayer.PrevTrack(); playMusic(); Tracks.Clear(); CurrentFrame = "TitleView.xaml"; foreach (Track track in currentPlaylist.Tracks) { Tracks.Add(new TrackMetadata { Title = track.title }); } }
public MainViewModel() { musicplayer.Musicqueue.PropertyChanged += TrackChanged; // Subscribes to all View Commands this.StartPlayerCommand = new RelayCommand(this.changePlayerState); this.PlayPreviousCommand = new RelayCommand(this.playPrevious); this.PlayNextCommand = new RelayCommand(this.playNext); this.PlayerSettingCommand = new RelayCommand(this.setRenderingModeIcon); this.BigPlayerCommand = new RelayCommand(this.createBigPlayerView); this.ArtistsCommand = new RelayCommand(this.createArtistsView); this.AlbumsCommand = new RelayCommand(this.createAlbumsView); this.TracksCommand = new RelayCommand(this.createTracksView); this.ListViewCommand = new RelayCommand <TrackMetadata>((item) => this.playSelectedTrack(item)); this.PlaylistCommand = new RelayCommand <string>((item) => this.playSelectedPlaylist(item)); this.ChangeViewCommand = new RelayCommand(this.changeView); this.LoginCommand = new RelayCommand(this.openLoginDialog); this.SleepCommand = new RelayCommand(this.controlSleepTimer); this.UploadCommand = new RelayCommand(this.uploadFiles); this.DownloadCommand = new RelayCommand(this.synchronizeDatabase); // Set inital values _volumn = musicplayer.Mediaplayer.Volume; foreach (Playlist playlist in PlaylistsManager.db_GetAllPlaylists()) { Playlists.Add(playlist.name); } DispatcherTimer timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromSeconds(1); timer.Tick += timer_Tick; timer.Start(); }