private ProgramInfo GetProgram(Channel channel, EpgEvent2 epg)
        {
            var info = new ProgramInfo
            {
                ChannelId = channel.channelOID.ToString(_usCulture),
                Id = epg.OID.ToString(_usCulture),
                Overview = epg.Desc,
                StartDate = DateTime.Parse(epg.StartTime).ToUniversalTime(),
                EndDate = DateTime.Parse(epg.EndTime).ToUniversalTime(),
                Genres = epg.Genres.Where(g => !string.IsNullOrWhiteSpace(g)).ToList(),
                OriginalAirDate = DateTime.Parse(epg.OriginalAirdate).ToUniversalTime(),
                Name = epg.Title,
                OfficialRating = epg.Rating,
                CommunityRating = ParseCommunityRating(epg.StarRating),
                EpisodeTitle = epg.Subtitle,
                Audio = ParseAudio(epg.Audio),
                IsHD = string.Equals(epg.Quality, "hdtv", StringComparison.OrdinalIgnoreCase),
                IsRepeat = !epg.FirstRun,
                IsSeries = !string.IsNullOrEmpty(epg.Subtitle),
                ImageUrl = string.IsNullOrEmpty(epg.FanArt) ? null : (_baseUrl + "/" + epg.FanArt),
                HasImage = !string.IsNullOrEmpty(epg.FanArt),
                IsNews = epg.Genres.Contains("news", StringComparer.OrdinalIgnoreCase),
                IsMovie = epg.Genres.Contains("movie", StringComparer.OrdinalIgnoreCase),
                IsKids = epg.Genres.Contains("kids", StringComparer.OrdinalIgnoreCase),

                IsSports = epg.Genres.Contains("sports", StringComparer.OrdinalIgnoreCase) ||
                    epg.Genres.Contains("Sports non-event", StringComparer.OrdinalIgnoreCase) ||
                    epg.Genres.Contains("Sports event", StringComparer.OrdinalIgnoreCase) ||
                    epg.Genres.Contains("Sports talk", StringComparer.OrdinalIgnoreCase) ||
                    epg.Genres.Contains("Sports news", StringComparer.OrdinalIgnoreCase)
            };

            return info;
        }
示例#2
0
        private ProgramInfo GetProgram(Channel channel, EpgEvent2 epg)
        {
            var info = new ProgramInfo
            {
                ChannelId       = channel.channelOID.ToString(_usCulture),
                Id              = epg.OID.ToString(_usCulture),
                Overview        = epg.Desc,
                StartDate       = DateTime.Parse(epg.StartTime).ToUniversalTime(),
                EndDate         = DateTime.Parse(epg.EndTime).ToUniversalTime(),
                Genres          = epg.Genres.Where(g => !string.IsNullOrWhiteSpace(g)).ToList(),
                OriginalAirDate = DateTime.Parse(epg.OriginalAirdate).ToUniversalTime(),
                Name            = epg.Title,
                OfficialRating  = epg.Rating,
                CommunityRating = ParseCommunityRating(epg.StarRating),
                EpisodeTitle    = epg.Subtitle,
                Audio           = ParseAudio(epg.Audio),
                IsHD            = string.Equals(epg.Quality, "hdtv", StringComparison.OrdinalIgnoreCase),
                IsRepeat        = !epg.FirstRun,
                IsSeries        = true, //!string.IsNullOrEmpty(epg.Subtitle),  http://emby.media/community/index.php?/topic/21264-series-record-ability-missing-in-emby-epg/#entry239633
                ImageUrl        = string.IsNullOrEmpty(epg.FanArt) ? null : (_baseUrl + "/" + epg.FanArt),
                HasImage        = !string.IsNullOrEmpty(epg.FanArt),
                IsNews          = epg.Genres.Contains("news", StringComparer.OrdinalIgnoreCase),
                IsMovie         = epg.Genres.Contains("movie", StringComparer.OrdinalIgnoreCase),
                IsKids          = epg.Genres.Contains("kids", StringComparer.OrdinalIgnoreCase),

                IsSports = epg.Genres.Contains("sports", StringComparer.OrdinalIgnoreCase) ||
                           epg.Genres.Contains("Sports non-event", StringComparer.OrdinalIgnoreCase) ||
                           epg.Genres.Contains("Sports event", StringComparer.OrdinalIgnoreCase) ||
                           epg.Genres.Contains("Sports talk", StringComparer.OrdinalIgnoreCase) ||
                           epg.Genres.Contains("Sports news", StringComparer.OrdinalIgnoreCase)
            };

            return(info);
        }