@ -152,7 +152,11 @@ namespace Emby.Server.Implementations.LiveTv.Listings
responseString ) ;
var programDict = programDetails . ToDictionary ( p = > p . programID , y = > y ) ;
var images = await GetImageForPrograms ( info , programDetails . Where ( p = > p . hasImageArtwork ) . Select ( p = > p . programID ) . ToList ( ) , cancellationToken ) ;
var programIdsWithImages =
programDetails . Where ( p = > p . hasImageArtwork ) . Select ( p = > p . programID )
. ToList ( ) ;
var images = await GetImageForPrograms ( info , programIdsWithImages , cancellationToken ) ;
var schedules = dailySchedules . SelectMany ( d = > d . programs ) ;
foreach ( ScheduleDirect . Program schedule in schedules )
@ -439,13 +443,20 @@ namespace Emby.Server.Implementations.LiveTv.Listings
List < string > programIds ,
CancellationToken cancellationToken )
{
if ( programIds . Count = = 0 )
{
return new List < ScheduleDirect . ShowImages > ( ) ;
}
var imageIdString = "[" ;
foreach ( var i in programIds )
{
if ( ! imageIdString . Contains ( i . Substring ( 0 , 10 ) ) )
var imageId = i . Substring ( 0 , 10 ) ;
if ( ! imageIdString . Contains ( imageId ) )
{
imageIdString + = "\"" + i . Substring ( 0 , 10 ) + "\"," ;
imageIdString + = "\"" + i mageId + "\"," ;
}
}
@ -461,14 +472,21 @@ namespace Emby.Server.Implementations.LiveTv.Listings
// The data can be large so give it some extra time
TimeoutMs = 60000
} ;
List < ScheduleDirect . ShowImages > images ;
using ( var innerResponse2 = await Post ( httpOptions , true , info ) . ConfigureAwait ( false ) )
try
{
images = _jsonSerializer . DeserializeFromStream < List < ScheduleDirect . ShowImages > > (
innerResponse2 . Content ) ;
using ( var innerResponse2 = await Post ( httpOptions , true , info ) . ConfigureAwait ( false ) )
{
return _jsonSerializer . DeserializeFromStream < List < ScheduleDirect . ShowImages > > (
innerResponse2 . Content ) ;
}
}
catch ( Exception ex )
{
_logger . ErrorException ( "Error getting image info from schedules direct" , ex ) ;
return images ;
return new List < ScheduleDirect . ShowImages > ( ) ;
}
}
public async Task < List < NameIdPair > > GetHeadends ( ListingsProviderInfo info , string country , string location , CancellationToken cancellationToken )