public static void AddGroupHeaders(MovieBrowser browser) { Browser = browser; for (int i = Browser.Facade.Count - 1; i >= 0; i--) { string priorGroupName = ""; string thisGroupName = ""; DBMovieInfo thisMovie = ((DBMovieInfo)Browser.Facade[i].TVTag); thisGroupName = DetermineGroupName(thisMovie); if (i > 0) { DBMovieInfo priorMovie = ((DBMovieInfo)Browser.Facade[i - 1].TVTag); priorGroupName = DetermineGroupName(priorMovie); } else { priorGroupName = ""; } if (priorGroupName != thisGroupName) { // if this movie's group differs from the prior, insert a group header try { InsertGroupHeader(i, thisGroupName); } catch (TypeLoadException) { logger.Warn("Grouping headers are not supported with this version of MediaPortal!"); } } } }
public static bool GetCurrentMediaItem(out MediaItem currentMediaItem, out bool isDetailsView) { FileLog.Info("Getting selected movie information from MovingPictures."); currentMediaItem = new MediaItem(); browser = MovingPicturesCore.Browser; isDetailsView = browser.CurrentView.ToString().Equals("DETAILS"); selectedMovie = browser.SelectedMovie; currentMediaItem.Title = selectedMovie.Title; currentMediaItem.Year = selectedMovie.Year; currentMediaItem.Plot = selectedMovie.Summary; currentMediaItem.Poster = selectedMovie.CoverFullPath; // Get local file information currentMediaItem.FullPath = selectedMovie.LocalMedia.First().FullPath; // Check if TMDb ID is available string tmdbid = GetTmdbID(selectedMovie); if (!string.IsNullOrEmpty(tmdbid)) { currentMediaItem.TMDb = tmdbid; } // Next best ID to use string imdbid = selectedMovie.ImdbID; if (!string.IsNullOrEmpty(imdbid) && imdbid.Length == 9) { currentMediaItem.IMDb = imdbid; } return(true); }