diff --git a/src/cutecoin/core/account.py b/src/cutecoin/core/account.py index b81b54052c72849063c99c031d658137a95e5973..e490f5f01e7d56aa44e5c5103e591738e5b68436 100644 --- a/src/cutecoin/core/account.py +++ b/src/cutecoin/core/account.py @@ -82,7 +82,12 @@ class Account(object): return (key.pubkey == self.pubkey) def add_contact(self, person): - self.contacts.append(person) + same_contact = [contact for contact in self.contacts if person.pubkey == contact.pubkey] + if len(same_contact) == 0: + print("add contact") + self.contacts.append(person) + return True + return False def add_community(self, server, port): logging.debug("Adding a community") diff --git a/src/cutecoin/gui/add_contact.py b/src/cutecoin/gui/add_contact.py index d6fae219b068c5b7db37c4cbbf4255b3018a9c90..4e9546d3773d65e773eff1ae70ac8ff16dc8bf80 100644 --- a/src/cutecoin/gui/add_contact.py +++ b/src/cutecoin/gui/add_contact.py @@ -31,9 +31,10 @@ class AddContactDialog(QDialog, Ui_AddContactDialog): def accept(self): name = self.edit_name.text() pubkey = self.edit_pubkey.text() - self.account.add_contact(Person(name, pubkey)) - self.main_window.menu_contacts_list.addAction(name) - self.main_window.app.save(self.account) + result = self.account.add_contact(Person(name, pubkey)) + if result: + self.main_window.menu_contacts_list.addAction(name) + self.main_window.app.save(self.account) self.close() def name_edited(self, new_name):