/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* Phonebook.cpp :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: aortigos index = 0; } void Phonebook::addContacts() { std::string str; str = ""; while (str == "") { std::cout << "Introduzca el nombre: "; std::getline(std::cin, str); } this->contacts[this->index % 8].setName(str); str = ""; while (str == "") { std::cout << "Introduzca el apellido: "; std::getline(std::cin, str); } this->contacts[this->index % 8].setSurname(str); str = ""; while (str == "") { std::cout << "Introduzca el nickname: "; std::getline(std::cin, str); } this->contacts[this->index % 8].setNickname(str); str = ""; while (str == "") { std::cout << "Introduzca el telefono: "; std::getline(std::cin, str); } this->contacts[this->index % 8].setPhoneNumber(str); str = ""; while (str == "") { std::cout << "Introduzca el secreto: "; std::getline(std::cin, str); } this->contacts[this->index % 8].setSecret(str); this->index++; } static void print_name(std::string str) { int i; int j; i = 9; j = 0; while (str[j] != '\0') j++; while (i >= j && j <= 10) { std::cout << " "; i--; } i = 0; while (str[i] != '\0' && i <= 9) { if (i == 9 && j > 10) std::cout << "."; else std::cout << str[i]; i++; } std::cout << "|"; } void Phonebook::print_table() { int i; int j; std::string c; i = 0; j = 0; std::cout << "---------------------------------------------" << std::endl; std::cout << "| Index| Nombre| Apellido| Nickname|" << std::endl; std::cout << "---------------------------------------------" << std::endl; if (this->index >= 9) j = 8; else j = this->index; while (i < j) { c = std::string(1, i + '0'); std::cout << "|"; print_name(c); print_name(this->contacts[i].getName()); print_name(this->contacts[i].getSurname()); print_name(this->contacts[i].getNickname()); std::cout << std::endl; i++; } std::cout << "---------------------------------------------" << std::endl; } void Phonebook::find_contact(int i) { if(this->contacts[i].getName() != "NULL") { std::cout << "----------------------------------" << std::endl; std::cout << "Nombre: " << this->contacts[i].getName() << std::endl; std::cout << "Apellido: " << this->contacts[i].getSurname() << std::endl; std::cout << "Nickname: " << this->contacts[i].getNickname() << std::endl; std::cout << "Numero: " << this->contacts[i].getPhoneNumber() << std::endl; std::cout << "Secreto: " << this->contacts[i].getSecret() << std::endl; std::cout << "----------------------------------" << std::endl; } else { std::cout << "Contacto no encontrado" << std::endl; } } void Phonebook::showContacts() { int i; std::string str; i = 0; str = ""; if (this->index == 0) { std::cout << "No hay contactos." << std::endl; return ; } print_table(); while (str == "" || str.length() != 1 || (str[0] < '0' || str[0] > '7')) { std::cout << "Introduzca el index a buscar: "; std::getline(std::cin, str); } i = str[0] - '0'; find_contact(i); }