public void PopulatePlaylistObjects() { PlaylistObjects.Clear(); if (string.IsNullOrEmpty(this.PlaylistItems)) { return; } string[] items = this.PlaylistItems.Split('|'); foreach (string pitem in items) { string[] parms = pitem.Split(';'); if (parms.Length != 2) { continue; } int objType = -1; int objID = -1; if (!int.TryParse(parms[0], out objType)) { continue; } if (!int.TryParse(parms[1], out objID)) { continue; } if ((PlaylistItemType)objType == PlaylistItemType.AnimeSeries) { // get the series JMMServerBinary.Contract_AnimeSeries serContract = JMMServerVM.Instance.clientBinaryHTTP.GetSeries(objID, JMMServerVM.Instance.CurrentUser.JMMUserID.Value); if (serContract != null) { AnimeSeriesVM ser = new AnimeSeriesVM(serContract); PlaylistObjects.Add(new PlaylistItemVM(this.PlaylistID.Value, PlaylistItemType.AnimeSeries, ser)); } } else { // get the episode JMMServerBinary.Contract_AnimeEpisode epContract = JMMServerVM.Instance.clientBinaryHTTP.GetEpisode(objID, JMMServerVM.Instance.CurrentUser.JMMUserID.Value); if (epContract != null) { AnimeEpisodeVM ep = new AnimeEpisodeVM(epContract); //ep.SetTvDBInfo(); PlaylistObjects.Add(new PlaylistItemVM(this.PlaylistID.Value, PlaylistItemType.Episode, ep)); } } } SetDependendProperties(); }
public void PopulatePlaylistObjects() { PlaylistObjects.Clear(); if (string.IsNullOrEmpty(PlaylistItems)) { return; } string[] items = PlaylistItems.Split('|'); foreach (string pitem in items) { string[] parms = pitem.Split(';'); if (parms.Length != 2) { continue; } int objType; int objID; if (!int.TryParse(parms[0], out objType)) { continue; } if (!int.TryParse(parms[1], out objID)) { continue; } if ((PlaylistItemType)objType == PlaylistItemType.AnimeSeries) { VM_AnimeSeries_User ser; if (VM_MainListHelper.Instance.AllSeriesDictionary.TryGetValue(objID, out ser) == false) { // get the series ser = (VM_AnimeSeries_User)VM_ShokoServer.Instance.ShokoServices.GetSeries(objID, VM_ShokoServer.Instance.CurrentUser.JMMUserID); if (ser != null) { VM_MainListHelper.Instance.AllSeriesDictionary[objID] = ser; } } if (ser != null) { PlaylistObjects.Add(new VM_PlaylistItem(PlaylistID, PlaylistItemType.AnimeSeries, ser)); } } else { // get the episode VM_AnimeEpisode_User ep = (VM_AnimeEpisode_User)VM_ShokoServer.Instance.ShokoServices.GetEpisode(objID, VM_ShokoServer.Instance.CurrentUser.JMMUserID); if (ep != null) { //ep.SetTvDBInfo(); PlaylistObjects.Add(new VM_PlaylistItem(PlaylistID, PlaylistItemType.Episode, ep)); } } } SetDependendProperties(); }