diff --git a/BeWo/View/Detail/AbsenceTimesView.xaml.cs b/BeWo/View/Detail/AbsenceTimesView.xaml.cs index ba7773989..be1fdb1d0 100644 --- a/BeWo/View/Detail/AbsenceTimesView.xaml.cs +++ b/BeWo/View/Detail/AbsenceTimesView.xaml.cs @@ -47,7 +47,10 @@ namespace BeWo.View.Detail private void AddAbsenceTimes() { - if(!PruefeAufUeberschneidungen()) + var ueberschneidungen = PruefeAufUeberschneidungen(); + AbwesenheitenMitUeberschneidungenFaerben(ueberschneidungen); + + if (ueberschneidungen.Count == 0) { AbsenceTimes?.NewVM.ValidateDates(() => { @@ -61,7 +64,7 @@ namespace BeWo.View.Detail } } - private bool PruefeAufUeberschneidungen() + private List PruefeAufUeberschneidungen() { bool ueberschneidung = false; var neu = AbsenceTimes.NewVM; @@ -111,22 +114,39 @@ namespace BeWo.View.Detail } if (ueberschneidung) + { abwesenheitenMitUeberschneidungen.Add(time); + ueberschneidung = false; + } } - if(abwesenheitenMitUeberschneidungen.Count > 0) - AbwesenheitenMitUeberschneidungenFaerben(abwesenheitenMitUeberschneidungen); - - return ueberschneidung; + return abwesenheitenMitUeberschneidungen; } private void AbwesenheitenMitUeberschneidungenFaerben(List abwesenheitenMitUeberschneidungen) { string color = ServiceFacade.DoOperationsServiceSync(s => s.GetColorForServiceRecordView2()); + string white = "#FFFFFF"; + foreach (var vm in AbsenceTimes.VMList) + { + vm.BackgroundColor = white; + } foreach (var vm in abwesenheitenMitUeberschneidungen) { vm.BackgroundColor = color; } + //foreach (var item in abwesenheitenMitUeberschneidungen) + //{ + // foreach (var vm in AbsenceTimes.VMList) + // { + // if (vm.DataContract.AbsenceTimeOid == item.DataContract.AbsenceTimeOid) + // item.BackgroundColor = color; + // else + // item.BackgroundColor = white; + // } + + //} + } private void RemoveAbsenceTime()