Models: Add MemberEmailAddr
This commit is contained in:
@ -266,7 +266,7 @@ namespace Elwig.Windows {
|
||||
}
|
||||
|
||||
private void Menu_Member_SendEmail_Click(object sender, RoutedEventArgs evt) {
|
||||
Utils.MailTo(((Member)MemberList.SelectedItem).Email);
|
||||
Utils.MailTo(((Member)MemberList.SelectedItem).EmailAddresses.First().Address);
|
||||
}
|
||||
|
||||
private void FocusSearchInput(object sender, RoutedEventArgs evt) {
|
||||
@ -349,8 +349,6 @@ namespace Elwig.Windows {
|
||||
m.PostalDestId = ((AT_PlzDest)OrtInput.SelectedItem).Id;
|
||||
m.Address = AddressInput.Text;
|
||||
|
||||
m.Email = (EmailAddressInput.Text == "") ? null : EmailAddressInput.Text;
|
||||
|
||||
m.Iban = (IbanInput.Text == "") ? null : IbanInput.Text.Replace(" ", "");
|
||||
m.Bic = (BicInput.Text == "") ? null : BicInput.Text;
|
||||
|
||||
@ -424,6 +422,27 @@ namespace Elwig.Windows {
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
var input = i == 0 ? EmailAddress1Input : EmailAddress2Input;
|
||||
var emailAddr = m.EmailAddresses.FirstOrDefault(a => a.Nr - 1 == i);
|
||||
if (input.Text == "") {
|
||||
if (emailAddr != null) {
|
||||
Context.Remove(emailAddr);
|
||||
}
|
||||
} else {
|
||||
MemberEmailAddr a = emailAddr ?? Context.CreateProxy<MemberEmailAddr>();
|
||||
a.Nr = i + 1;
|
||||
a.Address = input.Text;
|
||||
a.Comment = null;
|
||||
if (emailAddr == null) {
|
||||
a.MgNr = newMgNr;
|
||||
await Context.AddAsync(a);
|
||||
} else {
|
||||
Context.Update(a);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
await Context.SaveChangesAsync();
|
||||
|
||||
if (newMgNr != m.MgNr) {
|
||||
@ -475,7 +494,10 @@ namespace Elwig.Windows {
|
||||
OrtInput.SelectedItem = null;
|
||||
}
|
||||
|
||||
EmailAddressInput.Text = m.Email;
|
||||
var emailAddrs = m.EmailAddresses.OrderBy(a => a.Nr).ToList();
|
||||
EmailAddress1Input.Text = emailAddrs.Count > 0 ? emailAddrs[0].Address : "";
|
||||
EmailAddress2Input.Text = emailAddrs.Count > 1 ? emailAddrs[1].Address : "";
|
||||
|
||||
var phoneNrs = m.TelephoneNumbers.OrderBy(p => p.Nr).ToList();
|
||||
for (int i = 0; i < PhoneNrInputs.Length; i++) {
|
||||
if (i < phoneNrs.Count) {
|
||||
@ -525,7 +547,7 @@ namespace Elwig.Windows {
|
||||
|
||||
AreaCommitment.Text = $"{m.ActiveAreaCommitments.Select(c => c.Area).Sum():N0} m²";
|
||||
|
||||
Menu_Member_SendEmail.IsEnabled = m.Email != null;
|
||||
Menu_Member_SendEmail.IsEnabled = m.EmailAddresses.Count > 0;
|
||||
|
||||
FinishInputFilling();
|
||||
}
|
||||
|
Reference in New Issue
Block a user