private static void Update(Contact contact) { var firstName = PromptE.Input("First name", contact.FirstName, new[] { new MinLengthValidator("First name", 3), }); var middleName = PromptE.Input("Middle name", contact.MiddleName, new[] { new MinLengthValidator("Middle name", 3, true), }); var lastName = PromptE.Input("Last name", contact.LastName, new[] { new MinLengthValidator("Last name", 3), }); var email = PromptE.Input("Email", contact.Email, new InputValidator <string>[] { new MinLengthValidator("Email name", 3), new EmailValidator(), }); var cellphone = PromptE.Input("Cellphone number", contact.CellphoneNumber, new InputValidator <string>[] { new MinLengthValidator("Cellphone number", 3), new CellphoneValidator(), }); contact.FirstName = firstName; contact.MiddleName = middleName; contact.LastName = lastName; contact.Email = email; contact.CellphoneNumber = CellphoneUtils.Parse(cellphone); }
public static Func <Contact, object> Show() { return(PromptE.Select <Func <Contact, object> >("Ordering method") .Option("First name", x => x.FirstName) .Option("Middle name", x => x.MiddleName) .Option("Last name", x => x.LastName) .Option("Email", x => x.Email) .Option("Cellphone number", x => x.CellphoneNumber) .Option("Cancel", null) .Show()); }
public static void Show(ContactBook book) { while (true) { PromptE.Menu("[UVV Contacts] Pick an option") .Action(new AddContactButton(book)) .Action("List contacts", () => ContactsMenu.Show(book)) .Action(new ExitApplicationAction()) .Show(); } // ReSharper disable once FunctionNeverReturns }
public static void Show(ContactBook book) { var contact = ContactSelectorMenu.Show(book); if (contact == null) { return; } PromptE.Menu($"[name: {contact.DisplayName} | email: {contact.Email} | cell: {contact.CellphoneNumber}]") .Action(new UpdateContactAction(book, contact)) .Action("Delete", () => book.Remove(contact)) .Action("[Cancel]", null) .Show(); }
public static Contact Show(ContactBook book) { var orderingField = OrderingMethodMenu.Show(); if (orderingField == null) { return(null); } var contacts = book.OrderBy(orderingField); var builder = PromptE.Select <Contact>("Select contact"); foreach (var contact in contacts) { builder.Option(contact.DisplayName, contact); } builder.Option("[Cancel]", null); return(builder.Show()); }