|
|
|
@ -422,7 +422,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var showType = details.showType ?? string.Empty;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var info = new ProgramInfo
|
|
|
|
|
{
|
|
|
|
|
ChannelId = channel,
|
|
|
|
@ -440,10 +440,23 @@ namespace Emby.Server.Implementations.LiveTv.Listings
|
|
|
|
|
IsKids = string.Equals(details.audience, "children", StringComparison.OrdinalIgnoreCase),
|
|
|
|
|
IsSports = showType.IndexOf("sports", StringComparison.OrdinalIgnoreCase) != -1,
|
|
|
|
|
IsMovie = showType.IndexOf("movie", StringComparison.OrdinalIgnoreCase) != -1 || showType.IndexOf("film", StringComparison.OrdinalIgnoreCase) != -1,
|
|
|
|
|
ShowId = programInfo.programID,
|
|
|
|
|
Etag = programInfo.md5
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var showId = programInfo.programID ?? string.Empty;
|
|
|
|
|
|
|
|
|
|
// According to SchedulesDirect, these are generic, unidentified episodes
|
|
|
|
|
// SH005316560000
|
|
|
|
|
var hasUniqueShowId = !showId.StartsWith("SH", StringComparison.OrdinalIgnoreCase) ||
|
|
|
|
|
!showId.EndsWith("0000", StringComparison.OrdinalIgnoreCase);
|
|
|
|
|
|
|
|
|
|
if (!hasUniqueShowId)
|
|
|
|
|
{
|
|
|
|
|
showId = newID;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
info.ShowId = showId;
|
|
|
|
|
|
|
|
|
|
if (programInfo.videoProperties != null)
|
|
|
|
|
{
|
|
|
|
|
info.IsHD = programInfo.videoProperties.Contains("hdtv", StringComparer.OrdinalIgnoreCase);
|
|
|
|
|