diff --git a/src/cutecoin/core/community.py b/src/cutecoin/core/community.py index 3b05d30c21e2b921e9913a70a676827d2d9c1e86..387b0a90a2103fe85eaaf695aa4788180d12e445 100644 --- a/src/cutecoin/core/community.py +++ b/src/cutecoin/core/community.py @@ -57,7 +57,7 @@ class Community(object): ''' self.currency = currency self.peers = [p for p in peers if p.currency == currency] - self.cache = Cache(self) + self._cache = Cache(self) # After initializing the community from latest peers, # we refresh its peers tree @@ -72,7 +72,7 @@ class Community(object): logging.debug("{0} peers found".format(len(self.peers))) try: - self.cache.refresh() + self._cache.refresh() except NoPeerAvailable: pass @@ -164,9 +164,12 @@ class Community(object): members.append(m['pubkey']) return members + def refresh_cache(self): + self._cache.refresh() + def request(self, request, req_args={}, get_args={}, cached=True): if cached: - return self.cache.request(request, req_args, get_args) + return self._cache.request(request, req_args, get_args) else: for peer in self.peers.copy(): e = next(e for e in peer.endpoints if type(e) is BMAEndpoint) diff --git a/src/cutecoin/gui/certification.py b/src/cutecoin/gui/certification.py index 05c61bf01e2c48c36da18e2c0c0c56c2741891f2..7ced4776f8c332ca6984cfb3aeb611e53c646b0b 100644 --- a/src/cutecoin/gui/certification.py +++ b/src/cutecoin/gui/certification.py @@ -54,6 +54,10 @@ class CertificationDialog(QDialog, Ui_CertificationDialog): QMessageBox.critical(self, "Certification", "Couldn't connect to network : {0}".format(e), QMessageBox.Ok) + except Exception as e: + QMessageBox.critical(self, "Error", + "{0}".format(e), + QMessageBox.Ok) self.accepted.emit() self.close() diff --git a/src/cutecoin/gui/community_tab.py b/src/cutecoin/gui/community_tab.py index 7e35e1481c2b2273d36d1c5739a8387a92afaf00..674b454862b6bd9d28f227b4ba11c6ccea3f2c3b 100644 --- a/src/cutecoin/gui/community_tab.py +++ b/src/cutecoin/gui/community_tab.py @@ -115,6 +115,10 @@ class CommunityTabWidget(QWidget, Ui_CommunityTabWidget): QMessageBox.critical(self, "Network error", "Couldn't connect to network : {0}".format(e), QMessageBox.Ok) + except Exception as e: + QMessageBox.critical(self, "Error", + "{0}".format(e), + QMessageBox.Ok) def send_membership_leaving(self): password = self.password_asker.ask() @@ -132,3 +136,8 @@ class CommunityTabWidget(QWidget, Ui_CommunityTabWidget): QMessageBox.critical(self, "Network error", "Couldn't connect to network : {0}".format(e), QMessageBox.Ok) + except Exception as e: + QMessageBox.critical(self, "Error", + "{0}".format(e), + QMessageBox.Ok) + diff --git a/src/cutecoin/gui/currency_tab.py b/src/cutecoin/gui/currency_tab.py index 6a626f1a0c80a194558020a263231a862c43fca3..6e8864b195e51784cd18e50afa715adbc24c2405 100644 --- a/src/cutecoin/gui/currency_tab.py +++ b/src/cutecoin/gui/currency_tab.py @@ -37,6 +37,7 @@ class BlockchainWatcher(QObject): blockid = self.community.current_blockid() block_number = blockid['number'] if self.last_block != block_number: + self.community.refresh_cache() for w in self.account.wallets: w.refresh_cache(self.community) diff --git a/src/cutecoin/gui/transfer.py b/src/cutecoin/gui/transfer.py index e95968f6a0fe52f8e8f864d6c53314b7c01c0bc6..c00149b7ff961d40a8b4c403badeea2bad59937a 100644 --- a/src/cutecoin/gui/transfer.py +++ b/src/cutecoin/gui/transfer.py @@ -78,6 +78,10 @@ class TransferMoneyDialog(QDialog, Ui_TransferMoneyDialog): QMessageBox.critical(self, "Money transfer", "Couldn't connect to network : {0}".format(e), QMessageBox.Ok) + except Exception as e: + QMessageBox.critical(self, "Error", + "{0}".format(e), + QMessageBox.Ok) self.accepted.emit() self.close()