24 lines
836 B
C#
24 lines
836 B
C#
using ErsatzTV.Application.Channels;
|
|
using ErsatzTV.Application.Playouts;
|
|
using ErsatzTV.Application.ProgramSchedules;
|
|
|
|
namespace ErsatzTV.ViewModels;
|
|
|
|
public class PlayoutEditViewModel
|
|
{
|
|
public string Kind { get; set; }
|
|
public ChannelViewModel Channel { get; set; }
|
|
public ProgramScheduleViewModel ProgramSchedule { get; set; }
|
|
public string ExternalJsonFile { get; set; }
|
|
public string YamlFile { get; set; }
|
|
|
|
public CreatePlayout ToCreate() =>
|
|
Kind switch
|
|
{
|
|
PlayoutKind.ExternalJson => new CreateExternalJsonPlayout(Channel.Id, ExternalJsonFile),
|
|
PlayoutKind.Yaml => new CreateYamlPlayout(Channel.Id, YamlFile),
|
|
PlayoutKind.Block => new CreateBlockPlayout(Channel.Id),
|
|
_ => new CreateFloodPlayout(Channel.Id, ProgramSchedule.Id)
|
|
};
|
|
}
|