@ -39,7 +39,7 @@ public class DeleteChannelHandler : IRequestHandler<DeleteChannel, Either<BaseEr
@@ -39,7 +39,7 @@ public class DeleteChannelHandler : IRequestHandler<DeleteChannel, Either<BaseEr
@ -45,7 +45,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -45,7 +45,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -68,7 +68,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -68,7 +68,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -302,7 +302,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -302,7 +302,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -329,7 +329,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -329,7 +329,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
i++;
}
}
privatestaticasyncTaskWriteBlockPlayoutXml(
RefreshChannelDatarequest,
List<PlayoutItem>sorted,
@ -367,7 +367,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -367,7 +367,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
item,
start,
stop,
hasCustomTitle:false,
false,
templateContext,
movieTemplate,
episodeTemplate,
@ -481,7 +481,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -481,7 +481,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
{
metadata.Genres??=[];
metadata.Guids??=[];
stringposter=Optional(metadata.Artwork).Flatten()
.Filter(a=>a.ArtworkKind==ArtworkKind.Poster)
.HeadOrNone()
@ -491,9 +491,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -491,9 +491,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -516,7 +516,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -516,7 +516,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -546,9 +546,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -546,9 +546,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -560,13 +560,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -560,13 +560,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -606,9 +606,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -606,9 +606,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -639,7 +639,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -639,7 +639,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -663,9 +663,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -663,9 +663,9 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
{
ProgrammeStart=start,
ProgrammeStop=stop,
ChannelNumber=request.ChannelNumber,
request.ChannelNumber,
HasCustomTitle=hasCustomTitle,
CustomTitle=displayItem.CustomTitle,
displayItem.CustomTitle,
SongTitle=subtitle,
SongArtists=metadata.Artists,
SongAlbumArtists=metadata.AlbumArtists,
@ -682,7 +682,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -682,7 +682,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
SongAlbum=metadata.Album,
SongHasReleaseDate=metadata.ReleaseDate.HasValue,
SongReleaseDate=metadata.ReleaseDate,
SongStudios=metadata.Studios.Map(s=>s.Name),
SongStudios=metadata.Studios.Map(s=>s.Name)
};
varscriptObject=newScriptObject();
@ -694,7 +694,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -694,7 +694,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -710,14 +710,14 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -710,14 +710,14 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -741,13 +741,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -741,13 +741,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -760,17 +760,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -760,17 +760,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -783,17 +783,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -783,17 +783,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -806,17 +806,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -806,17 +806,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -829,17 +829,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -829,17 +829,17 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -863,10 +863,12 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -863,10 +863,12 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -1025,7 +1027,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -1025,7 +1027,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
foreach(ExternalJsonChannelchannelinmaybeChannel)
{
// TODO: null start time should log and throw
DateTimeOffsetstartTime=DateTimeOffset.Parse(
channel.StartTime??string.Empty,
CultureInfo.InvariantCulture,
@ -1077,14 +1079,15 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -1077,14 +1079,15 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
varartwork=newList<Artwork>();
if(!string.IsNullOrWhiteSpace(program.Icon))
{
artwork.Add(newArtwork
{
ArtworkKind=ArtworkKind.Thumbnail,
Path=program.Icon,
SourcePath=program.Icon
});
artwork.Add(
newArtwork
{
ArtworkKind=ArtworkKind.Thumbnail,
Path=program.Icon,
SourcePath=program.Icon
});
}
returnnewEpisode
{
MediaVersions=
@ -1100,7 +1103,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -1100,7 +1103,7 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
{
EpisodeNumber=program.Episode,
Title=program.Title
},
}
],
Season=newSeason
{
@ -1125,12 +1128,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@@ -1125,12 +1128,13 @@ public class RefreshChannelDataHandler : IRequestHandler<RefreshChannelData>
@ -39,13 +39,13 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@@ -39,13 +39,13 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@ -63,11 +63,11 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@@ -63,11 +63,11 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@ -83,7 +83,7 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@@ -83,7 +83,7 @@ public class RefreshChannelListHandler : IRequestHandler<RefreshChannelList>
@ -26,16 +26,24 @@ public class UpdateGeneralSettingsHandler : IRequestHandler<UpdateGeneralSetting
@@ -26,16 +26,24 @@ public class UpdateGeneralSettingsHandler : IRequestHandler<UpdateGeneralSetting
@ -15,16 +15,16 @@ public class GetGeneralSettingsHandler : IRequestHandler<GetGeneralSettings, Gen
@@ -15,16 +15,16 @@ public class GetGeneralSettingsHandler : IRequestHandler<GetGeneralSettings, Gen
@ -101,11 +101,11 @@ public class UpdateFFmpegSettingsHandler : IRequestHandler<UpdateFFmpegSettings,
@@ -101,11 +101,11 @@ public class UpdateFFmpegSettingsHandler : IRequestHandler<UpdateFFmpegSettings,
@ -16,7 +16,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -16,7 +16,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
{
request=requestwith{ImageFolderDuration=0.01};
}
// delete entry if null
if(request.ImageFolderDurationisnull)
{
@ -48,7 +48,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -48,7 +48,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@ -59,7 +59,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -59,7 +59,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@ -73,7 +73,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -73,7 +73,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
{
currentFolder=null;
}
foreach(LibraryFolderparentinmaybeParent)
{
currentFolder=parent;
@ -83,7 +83,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -83,7 +83,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@ -109,7 +109,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@@ -109,7 +109,7 @@ public class UpdateImageFolderDurationHandler(IDbContextFactory<TvContext> dbCon
@ -16,8 +16,8 @@ public record SynchronizeJellyfinLibraryByIdIfNeeded(int JellyfinLibraryId) : IS
@@ -16,8 +16,8 @@ public record SynchronizeJellyfinLibraryByIdIfNeeded(int JellyfinLibraryId) : IS
@ -104,10 +105,10 @@ public abstract class CallLibraryScannerHandler<TRequest>
@@ -104,10 +105,10 @@ public abstract class CallLibraryScannerHandler<TRequest>
@ -143,7 +144,7 @@ public abstract class CallLibraryScannerHandler<TRequest>
@@ -143,7 +144,7 @@ public abstract class CallLibraryScannerHandler<TRequest>
@ -32,7 +32,7 @@ public class CreateLocalLibraryHandler : LocalLibraryHandlerBase,
@@ -32,7 +32,7 @@ public class CreateLocalLibraryHandler : LocalLibraryHandlerBase,
@ -28,7 +28,7 @@ public class DeleteLocalLibraryHandler : LocalLibraryHandlerBase,
@@ -28,7 +28,7 @@ public class DeleteLocalLibraryHandler : LocalLibraryHandlerBase,
@ -39,7 +39,7 @@ public class MoveLocalLibraryPathHandler : IRequestHandler<MoveLocalLibraryPath,
@@ -39,7 +39,7 @@ public class MoveLocalLibraryPathHandler : IRequestHandler<MoveLocalLibraryPath,
@ -37,7 +37,7 @@ public class UpdateLocalLibraryHandler : LocalLibraryHandlerBase,
@@ -37,7 +37,7 @@ public class UpdateLocalLibraryHandler : LocalLibraryHandlerBase,
@ -44,7 +44,7 @@ public class DeleteTraktListHandler : TraktCommandBase, IRequestHandler<DeleteTr
@@ -44,7 +44,7 @@ public class DeleteTraktListHandler : TraktCommandBase, IRequestHandler<DeleteTr
@ -32,7 +32,7 @@ public class RemoveItemsFromCollectionHandler : IRequestHandler<RemoveItemsFromC
@@ -32,7 +32,7 @@ public class RemoveItemsFromCollectionHandler : IRequestHandler<RemoveItemsFromC
@ -32,7 +32,7 @@ public class UpdateCollectionCustomOrderHandler : IRequestHandler<UpdateCollecti
@@ -32,7 +32,7 @@ public class UpdateCollectionCustomOrderHandler : IRequestHandler<UpdateCollecti
@ -56,7 +56,7 @@ public class UpdateCollectionHandler : IRequestHandler<UpdateCollection, Either<
@@ -56,7 +56,7 @@ public class UpdateCollectionHandler : IRequestHandler<UpdateCollection, Either<
@ -36,7 +36,7 @@ public class UpdateMultiCollectionHandler : IRequestHandler<UpdateMultiCollectio
@@ -36,7 +36,7 @@ public class UpdateMultiCollectionHandler : IRequestHandler<UpdateMultiCollectio
@ -120,7 +120,7 @@ public class UpdateMultiCollectionHandler : IRequestHandler<UpdateMultiCollectio
@@ -120,7 +120,7 @@ public class UpdateMultiCollectionHandler : IRequestHandler<UpdateMultiCollectio
@ -100,7 +100,8 @@ public class BuildPlayoutHandler : IRequestHandler<BuildPlayout, Either<BaseErro
@@ -100,7 +100,8 @@ public class BuildPlayoutHandler : IRequestHandler<BuildPlayout, Either<BaseErro
@ -41,7 +41,9 @@ public class CreateFloodPlayoutHandler : IRequestHandler<CreateFloodPlayout, Eit
@@ -41,7 +41,9 @@ public class CreateFloodPlayoutHandler : IRequestHandler<CreateFloodPlayout, Eit
@ -52,7 +54,9 @@ public class UpdateExternalJsonPlayoutHandler : IRequestHandler<UpdateExternalJs
@@ -52,7 +54,9 @@ public class UpdateExternalJsonPlayoutHandler : IRequestHandler<UpdateExternalJs
@ -29,7 +29,7 @@ public class AddProgramScheduleItemHandler : ProgramScheduleItemCommandBase,
@@ -29,7 +29,7 @@ public class AddProgramScheduleItemHandler : ProgramScheduleItemCommandBase,
@ -24,7 +26,7 @@ public class CreateBlockGroupHandler(IDbContextFactory<TvContext> dbContextFacto
@@ -24,7 +26,7 @@ public class CreateBlockGroupHandler(IDbContextFactory<TvContext> dbContextFacto
@ -13,7 +13,7 @@ public class CreateBlockHandler(IDbContextFactory<TvContext> dbContextFactory)
@@ -13,7 +13,7 @@ public class CreateBlockHandler(IDbContextFactory<TvContext> dbContextFactory)
@ -24,17 +24,30 @@ public class CreateBlockHandler(IDbContextFactory<TvContext> dbContextFactory)
@@ -24,17 +24,30 @@ public class CreateBlockHandler(IDbContextFactory<TvContext> dbContextFactory)
@ -40,7 +40,7 @@ public class EraseBlockPlayoutItemsHandler(IDbContextFactory<TvContext> dbContex
@@ -40,7 +40,7 @@ public class EraseBlockPlayoutItemsHandler(IDbContextFactory<TvContext> dbContex
@ -28,7 +28,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact
@@ -28,7 +28,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact
@ -67,7 +67,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact
@@ -67,7 +67,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact
.Include(b=>b.Items)
.SelectOneAsync(b=>b.Id,b=>b.Id==blockId)
.Map(o=>o.ToValidation<BaseError>("[BlockId] does not exist."));
@ -75,7 +75,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact
@@ -75,7 +75,7 @@ public class ReplaceBlockItemsHandler(IDbContextFactory<TvContext> dbContextFact