[IMP]: Convert buttons into stat button in gamification module

bzr revid: ypa@tinyerp.com-20140326122549-imqefk86wbxdxmpm
This commit is contained in:
Yogesh Parekh (OpenERP) 2014-03-26 17:55:49 +05:30
parent 45585f7346
commit 21bb79d47e
2 changed files with 18 additions and 1 deletions

View File

@ -114,6 +114,15 @@ class gamification_challenge(osv.Model):
return self.pool.get('ir.model.data').get_object_reference(cr, uid, 'gamification', 'simple_report_template')[1]
except ValueError:
return False
def _count_goals(self, cr, uid, ids, field_name, arg, context=None):
res = {}
try:
for goals in self.browse(cr, uid, ids, context=context):
res[goals.id] = len(goals.goals_ids)
except:
pass
return res
_order = 'end_date, start_date, name, id'
_columns = {
@ -191,6 +200,8 @@ class gamification_challenge(osv.Model):
'category': fields.selection(lambda s, *a, **k: s._get_categories(*a, **k),
string="Appears in", help="Define the visibility of the challenge through menus", required=True),
'goals_ids': fields.one2many('gamification.goal', 'challenge_id', 'Related Goals'),
'goals_count': fields.function(_count_goals, type='integer', string='Related Goals')
}
_defaults = {

View File

@ -53,7 +53,13 @@
<!-- action buttons -->
<div class="oe_right oe_button_box">
<button type="action" name="%(goals_from_challenge_act)d" string="Related Goals" attrs="{'invisible': [('state','=','draft')]}" />
<button type="action"
name="%(goals_from_challenge_act)d"
class="oe_stat_button"
icon="fa-globe"
attrs="{'invisible': [('state','=','draft')]}">
<field name="goals_count" widget="statinfo" string="Related Goals"/>
</button>
</div>
<group>
<group>