Exemplo n.º 1
0
def modificar_contacto():
    """Activa la opcion de modificar un contacto en la agenda."""

    while True:
        print("""
        {}Aqui puedes modificar un contacto atraves de su indice(id)
        asegurate de saber el indice correcto antes de modificar.{}

        {}NOTA: Los cambios no son reversibles.{}
        """.format(c.VERDE + c.BOLD, c.ENDC, c.ROJO + c.BOLD, c.ENDC))

        opcion = input(c.CYAN + "[DESEAS CONTINUAR?][SI/NO]: " + c.ENDC)

        if opcion.lower() == 'si':
            indice = input(c.VERDE + "[ID]: " + c.ENDC)
            nombre = input(c.VERDE + "[NOMBRE]: " + c.ENDC)
            apellido = input(c.VERDE + "[APELLIDO]: " + c.ENDC)
            edad = input(c.VERDE + "[EDAD]: " + c.ENDC)
            telefono = input(c.VERDE + "[TELEFONO]: " + c.ENDC)
            email = input(c.VERDE + "[CORREO]: " + c.ENDC)

            if indice != '' and nombre != '' and apellido != '' and \
                    edad != '' and telefono != '' and email != '':

                modificado = Contacto(nombre, apellido, edad, telefono, email)
                if modificado.es_valido():
                    Agenda.modificar_registro(indice,
                                              *modificado.obtener_datos())
                    c.success(
                        "El contacto con el ID {} se ha modificado!".format(
                            indice))

                else:
                    c.error("Verifica los datos, algo anda mal.")
            else:
                c.error("Faltan datos, el contacto no se ha modificado!!")

        elif opcion.lower() == 'no':
            print(c.AMARILLO, "\n[!] Regresando al menu anterior...", c.ENDC)
            sleep(1.5)
            break

        else:
            c.error("Solo puedes responder Si o No.")
Exemplo n.º 2
0
def menu_principal():
    """Menu principal de la agenda donde puede interactuarse
    con las opciones principales del programa."""

    while True:
        portada()

        print("""
        ------------------- MENU PRINCIPAL ---------------------

        1 - {uno}
        2 - {dos}
        3 - {tres}
        4 - {cuatro}
        5 - {cinco}
        6 - {seis}
        7 - {siete}
        8 - Salir
        """.format(
            uno=c.VERDE + "[+] Generar el archivo de la agenda." + c.ENDC,
            dos=c.ROJO + "[x] Borrar todo el contenido de la agenda." + c.ENDC,
            tres=c.VERDE + "[+] Agregar un nuevo contacto" + c.ENDC,
            cuatro=c.CYAN + "[-] Ver lista de contactos." + c.ENDC,
            cinco=c.AMARILLO + "[!] Realizar una busqueda personalizada." +
            c.ENDC,
            seis=c.ROJO + "[x] Eliminar un contacto." + c.ENDC,
            siete=c.AZUL + "[!=] Modificar un contacto." + c.ENDC))

        # capturar la opcion elegida en el menu principal
        opcion = input(c.CYAN + "[ESCOGE UNA OPCION]: " + c.ENDC)

        if opcion.isdecimal():
            if opcion == '1':
                Agenda.crear_agenda()

            elif opcion == '2':
                Agenda.borrar_agenda()

            elif opcion == '3':
                solicitar_contacto()

            elif opcion == '4':
                ver_contactos()

            elif opcion == '5':
                busqueda_personalizada()

            elif opcion == '6':
                eliminar_contacto()

            elif opcion == '7':
                modificar_contacto()

            elif opcion == '8':
                c.success("Cerrando la agenda...")
                break

            else:
                c.error("Opcion desconocida!!")
        else:
            c.error("Caracteres alfabeticos no son bienvenidos aqui!!")