Skip to content
Snippets Groups Projects
Commit f23d0015 authored by inso's avatar inso
Browse files

Fix Informations + search linked identities

parent 2b658ca2
Branches
Tags
No related merge requests found
...@@ -70,23 +70,10 @@ class IdentitiesController(QObject): ...@@ -70,23 +70,10 @@ class IdentitiesController(QObject):
except NoPeerAvailable as e: except NoPeerAvailable as e:
logging.debug(str(e)) logging.debug(str(e))
@once_at_a_time def search_direct_connections(self):
@asyncify
async def search_direct_connections(self):
""" """
Search identities directly connected to account Search identities directly connected to account
:return: :return:
""" """
self_identity = await self.account.identity(self.community) identities = self.model.linked_identities()
account_connections = []
certs_of = await self_identity.unique_valid_certifiers_of(self.app.identities_registry, self.community)
for p in certs_of:
account_connections.append(p['identity'])
certifiers_of = [p for p in account_connections]
certs_by = await self_identity.unique_valid_certified_by(self.app.identities_registry, self.community)
for p in certs_by:
account_connections.append(p['identity'])
certified_by = [p for p in account_connections
if p.pubkey not in [i.pubkey for i in certifiers_of]]
identities = certifiers_of + certified_by
self.model.refresh_identities(identities) self.model.refresh_identities(identities)
import asyncio
from PyQt5.QtCore import Qt, QObject from PyQt5.QtCore import Qt, QObject
from .table_model import IdentitiesFilterProxyModel, IdentitiesTableModel from .table_model import IdentitiesFilterProxyModel, IdentitiesTableModel
...@@ -62,3 +63,18 @@ class IdentitiesModel(QObject): ...@@ -62,3 +63,18 @@ class IdentitiesModel(QObject):
If no identities is passed, use the account connections. If no identities is passed, use the account connections.
""" """
self.table_model.sourceModel().refresh_identities(identities) self.table_model.sourceModel().refresh_identities(identities)
def linked_identities(self):
# create Identity from node metadata
connection_identity = self.identities_service.get_identity(self.connection.pubkey)
linked = []
certifier_list = self.identities_service.certifications_received(connection_identity.pubkey)
for certification in tuple(certifier_list):
linked.append(self.identities_service.get_identity(certification.certifier))
certified_list = self.identities_service.certifications_sent(connection_identity.pubkey)
for certification in tuple(certified_list):
linked.append(self.identities_service.get_identity(certification.certified))
return linked
...@@ -34,6 +34,7 @@ class UserInformationController(QObject): ...@@ -34,6 +34,7 @@ class UserInformationController(QObject):
@classmethod @classmethod
def show_identity(cls, parent, app, currency, identity): def show_identity(cls, parent, app, currency, identity):
dialog = QDialog() dialog = QDialog()
dialog.setWindowTitle("Informations")
user_info = cls.create(parent, app, currency, identity) user_info = cls.create(parent, app, currency, identity)
user_info.view.setParent(dialog) user_info.view.setParent(dialog)
user_info.refresh() user_info.refresh()
...@@ -43,6 +44,7 @@ class UserInformationController(QObject): ...@@ -43,6 +44,7 @@ class UserInformationController(QObject):
@asyncify @asyncify
async def search_and_show_pubkey(cls, parent, app, currency, pubkey): async def search_and_show_pubkey(cls, parent, app, currency, pubkey):
dialog = QDialog(parent) dialog = QDialog(parent)
dialog.setWindowTitle("Informations")
layout = QVBoxLayout(dialog) layout = QVBoxLayout(dialog)
tabwidget = QTabWidget(dialog) tabwidget = QTabWidget(dialog)
layout.addWidget(tabwidget) layout.addWidget(tabwidget)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment