Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
 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());
 }
Ejemplo n.º 3
0
        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
        }
Ejemplo n.º 4
0
        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();
        }
Ejemplo n.º 5
0
        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());
        }