From 9127cd3f03fa3038d94ebe4565d0c35b3131cbf2 Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Thu, 8 Aug 2024 17:30:57 +0200 Subject: [PATCH] MemberAdminWindow: Fix area commitment transfer for new members --- Elwig/Windows/MemberAdminWindow.xaml.cs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Elwig/Windows/MemberAdminWindow.xaml.cs b/Elwig/Windows/MemberAdminWindow.xaml.cs index e8ff054..b817019 100644 --- a/Elwig/Windows/MemberAdminWindow.xaml.cs +++ b/Elwig/Windows/MemberAdminWindow.xaml.cs @@ -726,7 +726,7 @@ namespace Elwig.Windows { private async void PredecessorMgNrInput_LostFocus(object sender, RoutedEventArgs evt) { var valid = InputLostFocus((TextBox)sender, Validator.CheckPredecessorMgNr); if (valid && ViewModel.PredecessorMgNr is int mgnr && (IsEditing || IsCreating)) { - if (MemberList.SelectedItem is not Member m || m.MgNr == mgnr) + if (ViewModel.MgNr == mgnr) return; using var ctx = new AppDbContext(); var areaComs = await ctx.AreaCommitments @@ -736,11 +736,16 @@ namespace Elwig.Windows { return; var oldMember = (await ctx.Members.FindAsync(mgnr))!; - var d = new AreaComDialog(oldMember.AdministrativeName, m.AdministrativeName, areaComs.Count, areaComs.Sum(c => c.Area)); + var newName = $"{ViewModel.FamilyName?.Replace('ß', 'ẞ').ToUpper()} " + + $"{ViewModel.Prefix}{(!string.IsNullOrEmpty(ViewModel.Prefix) ? " " : "")}" + + $"{ViewModel.GivenName}{(!string.IsNullOrEmpty(ViewModel.GivenName) ? " " : "")}" + + $"{ViewModel.Suffix}{(!string.IsNullOrEmpty(ViewModel.Suffix) ? " " : "")}"; + var d = new AreaComDialog(oldMember.AdministrativeName, newName, areaComs.Count, areaComs.Sum(c => c.Area)); if (d.ShowDialog() != true) return; ViewModel.TransferPredecessorAreaComs = d.SuccessorSeason; - SetOriginalValue(PredecessorMgNrInput, -1); // hack to allow user to save + if (IsEditing) + SetOriginalValue(PredecessorMgNrInput, -1); // hack to allow user to save UpdateButtons(); } }