From cf7dcc8b63a17dc2ad80857ae4c9d1521b08f3b9 Mon Sep 17 00:00:00 2001
From: Vincent Texier <vit@free.fr>
Date: Wed, 18 Feb 2015 21:10:46 +0100
Subject: [PATCH] Fix inaccurate actual growth in informations_tab

---
 src/cutecoin/core/community.py       | 8 ++++----
 src/cutecoin/gui/informations_tab.py | 7 ++++++-
 2 files changed, 10 insertions(+), 5 deletions(-)

diff --git a/src/cutecoin/core/community.py b/src/cutecoin/core/community.py
index b1b1a9f9..a7093c07 100644
--- a/src/cutecoin/core/community.py
+++ b/src/cutecoin/core/community.py
@@ -148,10 +148,10 @@ class Community(object):
         else:
             return 1
 
-    def get_ud_block(self):
-        ud = self.request(bma.blockchain.UD)
-        if len(ud['result']['blocks']) > 0:
-            block_number = ud['result']['blocks'][-1]
+    def get_ud_block(self, x=0):
+        blocks = self.request(bma.blockchain.UD)['result']['blocks']
+        if len(blocks) > 0:
+            block_number = blocks[len(blocks)-(1+x)]
             block = self.request(bma.blockchain.Block,
                                  req_args={'number': block_number})
             return block
diff --git a/src/cutecoin/gui/informations_tab.py b/src/cutecoin/gui/informations_tab.py
index 462094ed..6ba7a739 100644
--- a/src/cutecoin/gui/informations_tab.py
+++ b/src/cutecoin/gui/informations_tab.py
@@ -40,6 +40,11 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
         except Exception as e:
             logging.debug('community get_ud_block error : ' + str(e))
             return False
+        try:
+            block_t_minus_1 = self.community.get_ud_block(1)
+        except Exception as e:
+            logging.debug('community get_ud_block error : ' + str(e))
+            return False
 
         # set infos in label
         self.label_general.setText(
@@ -64,7 +69,7 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
                 self.get_referential_value(block['monetaryMass'] / block['membersCount']),
                 'Monetary Mass per member M(t)/N(t) in',
                 self.get_referential_name(),
-                block['dividend'] / (block['monetaryMass'] / block['membersCount']),
+                block['dividend'] / (block_t_minus_1['monetaryMass'] / block['membersCount']),
                 params['dt'] / 86400,
                 'Actual growth c = UD(t)/[M(t-1)/N(t)]',
                 datetime.datetime.fromtimestamp(block['medianTime'] + params['dt']).strftime("%d/%m/%Y %I:%M"),
-- 
GitLab