Ejemplo n.º 1
0
        public OptionSet CopyScheduleToOptionsSet(string name)
        {
            var optionSet = new OptionSet(ParentSchedule.OptionsContent);

            optionSet.Name = name;

            var defaultLogo = Programs.FirstOrDefault()?.Logo;

            if (defaultLogo != null)
            {
                optionSet.Logo = defaultLogo.Clone <ImageSource, ImageSource>();
            }

            optionSet.ShowSpots = true;
            optionSet.SpotType  = ParentSchedule.OptionsContent.OptionsSummary.SpotType;

            foreach (var program in Programs)
            {
                var optionProgram = new OptionProgram(optionSet);
                optionProgram.Name    = program.Name;
                optionProgram.Logo    = program.Logo.Clone <ImageSource, ImageSource>();
                optionProgram.Station = program.Station;
                optionProgram.Day     = program.Day;
                optionProgram.Time    = program.Time;
                optionProgram.Length  = program.Length;
                optionProgram.Rate    = (Decimal?)program.Rate;;
                optionProgram.Spot    = program.TotalSpots;
                optionSet.Programs.Add(optionProgram);
            }

            ParentSchedule.OptionsContent.Options.Add(optionSet);

            return(optionSet);
        }
			public override string GetValue(OptionProgram program)
			{
				return program.Cost.HasValue ? program.Cost.Value.ToString("$#,###") : String.Empty;
			}
			public override string GetValue(OptionProgram program)
			{
				return program.Length;
			}
			public override string GetValue(OptionProgram program)
			{
				return program.Rate.HasValue ? program.Rate.Value.ToString(program.Parent.UseDecimalRates ? "$#,##0.00" : "$#,##0") : String.Empty;
			}
			public override string GetValue(OptionProgram program)
			{
				return program.Spot.HasValue ? String.Format("{0}{1}", program.Spot.Value.ToString("#,###"), program.Parent.ShowSpotsX ? "x" : String.Empty) : "-";
			}
			public override string GetValue(OptionProgram program)
			{
				return program.Time;
			}
			public abstract string GetValue(OptionProgram program);