From ae0613aade77a752d5d84b1669e476c02491fbad Mon Sep 17 00:00:00 2001 From: inso <insomniak.fr@gmaiL.com> Date: Wed, 11 Jan 2017 20:45:03 +0100 Subject: [PATCH] Sakia is only able to use one currency/database --- src/sakia/gui/dialogs/connection_cfg/controller.py | 3 ++- src/sakia/gui/dialogs/connection_cfg/model.py | 7 ++++++- src/sakia/gui/dialogs/connection_cfg/view.py | 3 ++- src/sakia/gui/navigation/informations/view.py | 3 --- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/sakia/gui/dialogs/connection_cfg/controller.py b/src/sakia/gui/dialogs/connection_cfg/controller.py index d5d8f73f..3bc124a0 100644 --- a/src/sakia/gui/dialogs/connection_cfg/controller.py +++ b/src/sakia/gui/dialogs/connection_cfg/controller.py @@ -130,7 +130,8 @@ class ConnectionConfigController(QObject): self.password_asker = PasswordAskerDialog(self.model.connection) except (DisconnectedError, ClientError, MalformedDocumentError, ValueError, TimeoutError) as e: self._logger.debug(str(e)) - self.view.display_info(self.tr("Could not connect. Check hostname, ip address or port : </br>str(e)")) + self.view.display_info(self.tr("Could not connect. Check hostname, ip address or port : <br/>" + + str(e))) self.step_node = asyncio.Future() self.view.button_connect.setEnabled(True) self.view.button_register.setEnabled(True) diff --git a/src/sakia/gui/dialogs/connection_cfg/model.py b/src/sakia/gui/dialogs/connection_cfg/model.py index 919b4972..ef1001a8 100644 --- a/src/sakia/gui/dialogs/connection_cfg/model.py +++ b/src/sakia/gui/dialogs/connection_cfg/model.py @@ -30,8 +30,13 @@ class ConnectionConfigModel(QObject): self.identities_processor = identities_processor async def create_connection(self, server, port, secured): - self.node_connector = await NodeConnector.from_address(None, secured, server, port, + node_connector = await NodeConnector.from_address(None, secured, server, port, user_parameters=self.app.parameters) + currencies = self.app.db.connections_repo.get_currencies() + if len(currencies) > 0 and node_connector.node.currency != currencies[0]: + raise ValueError("""This node is running for {0} network.<br/> +Current database is storing {1} network.""".format(node_connector.node.currency, currencies[0])) + self.node_connector = node_connector self.connection = Connection(self.node_connector.node.currency, "", "") self.node_connector.node.state = Node.ONLINE diff --git a/src/sakia/gui/dialogs/connection_cfg/view.py b/src/sakia/gui/dialogs/connection_cfg/view.py index a686d01f..45824214 100644 --- a/src/sakia/gui/dialogs/connection_cfg/view.py +++ b/src/sakia/gui/dialogs/connection_cfg/view.py @@ -1,5 +1,5 @@ from PyQt5.QtWidgets import QDialog -from PyQt5.QtCore import pyqtSignal +from PyQt5.QtCore import pyqtSignal, Qt from .connection_cfg_uic import Ui_ConnectionConfigurationDialog from duniterpy.key import SigningKey, ScryptParams from math import ceil, log @@ -36,6 +36,7 @@ class ConnectionConfigView(QDialog, Ui_ConnectionConfigurationDialog): self.spin_p.setMaximum(128) self.spin_p.setValue(self.scrypt_params.p) self.spin_p.valueChanged.connect(self.handle_p_change) + self.label_info.setTextFormat(Qt.RichText) def handle_combo_change(self, index): strengths = [ diff --git a/src/sakia/gui/navigation/informations/view.py b/src/sakia/gui/navigation/informations/view.py index 3355d2dc..cc8bae79 100644 --- a/src/sakia/gui/navigation/informations/view.py +++ b/src/sakia/gui/navigation/informations/view.py @@ -200,7 +200,6 @@ class InformationsView(QWidget, Ui_InformationsWidget): <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr> <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr> <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr> - <tr><td align="right"><b>{:}</b></td><td>{:}</td></tr> <tr><td align="right"><b>{:2.0%}</b></td><td>{:}</td></tr> </table> """).format( @@ -218,8 +217,6 @@ class InformationsView(QWidget, Ui_InformationsWidget): self.tr('The average time in seconds for writing 1 block (wished time)'), params.dt_diff_eval, self.tr('The number of blocks required to evaluate again PoWMin value'), - params.blocks_rot, - self.tr('The number of previous blocks to check for personalized difficulty'), params.percent_rot, self.tr('The percent of previous issuers to reach for personalized difficulty') ) -- GitLab