Skip to content
Snippets Groups Projects
Commit 7864c117 authored by Vincent Texier's avatar Vincent Texier
Browse files

Fix bug in informations_tab if no UD block exists

parent 11ea368d
No related branches found
No related tags found
No related merge requests found
......@@ -72,15 +72,15 @@ QGroupBox::title {
</widget>
</item>
<item>
<widget class="QGroupBox" name="group_money">
<widget class="QGroupBox" name="group_rules">
<property name="title">
<string>Money</string>
<string>Rules</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<widget class="QLabel" name="label_money">
<widget class="QLabel" name="label_rules">
<property name="text">
<string>label_money</string>
<string>label_rules</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
......@@ -91,15 +91,15 @@ QGroupBox::title {
</widget>
</item>
<item>
<widget class="QGroupBox" name="group_rules">
<widget class="QGroupBox" name="group_money">
<property name="title">
<string>Rules</string>
<string>Money</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_6">
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label_rules">
<widget class="QLabel" name="label_money">
<property name="text">
<string>label_rules</string>
<string>label_money</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
......
......@@ -47,36 +47,70 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
logging.debug('community get_ud_block error : ' + str(e))
return False
# set infos in label
self.label_general.setText(
"""
<table cellpadding="5">
<tr><td align="right"><b>{:}</b></div></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.2%} / {:} days</b></td><td>{:}</td></tr>
<tr><td align="right"><b>{:}</b></td><td>{:}</td></tr>
</table>
""".format(
round(self.get_referential_diff_value(block['dividend'])),
'Universal Dividend UD(t) in',
self.get_referential_name(),
round(self.get_referential_value(block['monetaryMass'])),
'Monetary Mass M(t) in',
self.get_referential_name(),
block['membersCount'],
'Members N(t)',
round(self.get_referential_value(block['monetaryMass'] / block['membersCount'])),
'Monetary Mass per member M(t)/N(t) in',
self.get_referential_name(),
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"),
'Next UD date and time (t+1)'
block = False
if block:
# set infos in label
self.label_general.setText(
"""
<table cellpadding="5">
<tr><td align="right"><b>{:}</b></div></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.2%} / {:} days</b></td><td>{:}</td></tr>
<tr><td align="right"><b>{:}</b></td><td>{:}</td></tr>
</table>
""".format(
round(self.get_referential_diff_value(block['dividend'])),
'Universal Dividend UD(t) in',
self.get_referential_name(),
round(self.get_referential_value(block['monetaryMass'])),
'Monetary Mass M(t) in',
self.get_referential_name(),
block['membersCount'],
'Members N(t)',
round(self.get_referential_value(block['monetaryMass'] / block['membersCount'])),
'Monetary Mass per member M(t)/N(t) in',
self.get_referential_name(),
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"),
'Next UD date and time (t+1)'
)
)
)
else:
self.label_general.setText('No Universal Dividend created yet.')
if block:
# set infos in label
self.label_rules.setText(
"""
<table cellpadding="5">
<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>
</table>
""".format(
'{:2.0%} / {:} days'.format(params['c'], params['dt'] / 86400),
'Fundamental growth (c) / Delta time (dt)',
'UD(t+1) = MAX { UD(t) ; c * M(t) / N(t) }',
'Universal Dividend (formula)',
'{:} = MAX {{ {:} {:} ; {:2.0%} * {:} {:} / {:} }}'.format(
math.ceil(max(block['dividend'], params['c'] * block['monetaryMass'] / block['membersCount'])),
round(self.get_referential_diff_value(block['dividend'])),
self.get_referential_name(),
params['c'],
round(self.get_referential_value(block['monetaryMass'])),
self.get_referential_name(),
block['membersCount']
),
'Universal Dividend (computed)'
)
)
else:
self.label_rules.setText('No Universal Dividend created yet.')
# set infos in label
self.label_money.setText(
......@@ -113,32 +147,6 @@ class InformationsTabWidget(QWidget, Ui_InformationsTabWidget):
)
)
# set infos in label
self.label_rules.setText(
"""
<table cellpadding="5">
<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>
</table>
""".format(
'{:2.0%} / {:} days'.format(params['c'], params['dt'] / 86400),
'Fundamental growth (c) / Delta time (dt)',
'UD(t+1) = MAX { UD(t) ; c * M(t) / N(t) }',
'Universal Dividend (formula)',
'{:} = MAX {{ {:} {:} ; {:2.0%} * {:} {:} / {:} }}'.format(
math.ceil(max(block['dividend'], params['c'] * block['monetaryMass'] / block['membersCount'])),
round(self.get_referential_diff_value(block['dividend'])),
self.get_referential_name(),
params['c'],
round(self.get_referential_value(block['monetaryMass'])),
self.get_referential_name(),
block['membersCount']
),
'Universal Dividend (computed)'
)
)
# set infos in label
self.label_wot.setText(
"""
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment