From 0aa973b9f024ebefaa2f2ec9f47060e721a5c54a Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Mon, 25 Mar 2013 17:15:27 +0100 Subject: [PATCH] [IMP] refresh button for plan bzr revid: mat@openerp.com-20130325161527-qes3lqpzevdmdsx6 --- addons/gamification/plan.py | 8 ++++++++ addons/gamification/static/src/css/goal.css | 4 ++++ addons/gamification/static/src/js/gamification.js | 11 +++++++++-- addons/gamification/static/src/xml/gamification.xml | 5 +++-- 4 files changed, 24 insertions(+), 4 deletions(-) diff --git a/addons/gamification/plan.py b/addons/gamification/plan.py index a9e4498edd0..607f04ca98b 100644 --- a/addons/gamification/plan.py +++ b/addons/gamification/plan.py @@ -262,6 +262,14 @@ class gamification_goal_plan(osv.Model): self.report_progress(cr, uid, plan, context=context) self.write(cr, uid, plan.id, {'last_report_date': fields.date.today}, context=context) + def quick_update(self, cr, uid, plan_id, context=None): + """Update all the goals of a plan, no generation of new goals""" + if not context: context = {} + plan = self.browse(cr, uid, plan_id, context=context) + goal_ids = self.pool.get('gamification.goal').search(cr, uid, [('plan_id', '=', plan_id)], context=context) + self.pool.get('gamification.goal').update(cr, uid, goal_ids, context=context) + return True + def action_start(self, cr, uid, ids, context=None): """Start a draft goal plan diff --git a/addons/gamification/static/src/css/goal.css b/addons/gamification/static/src/css/goal.css index 8feb80ed4ad..84f07df8e4a 100644 --- a/addons/gamification/static/src/css/goal.css +++ b/addons/gamification/static/src/css/goal.css @@ -72,6 +72,10 @@ .openerp .oe_mail_wall .oe_mail_wall_aside li p { margin:5px 0; } +.openerp .oe_mail_wall .oe_mail_wall_aside .oe_update_plan { + display: inline-block; + float: right; +} .openerp .oe_mail_wall .oe_mail { display: inline-block; } \ No newline at end of file diff --git a/addons/gamification/static/src/js/gamification.js b/addons/gamification/static/src/js/gamification.js index 28323b29421..08b6155a4f1 100644 --- a/addons/gamification/static/src/js/gamification.js +++ b/addons/gamification/static/src/js/gamification.js @@ -19,6 +19,14 @@ openerp.gamification = function(instance) { self.get_goal_todo_info(); }); }, + 'click a.oe_update_plan': function(event) { + var self = this; + var plan_id = parseInt(event.currentTarget.id); + var goals_updated = new instance.web.Model('gamification.goal.plan').call('quick_update', [plan_id]); + $.when(goals_updated).done(function() { + self.get_goal_todo_info(); + }); + }, 'click a.oe_show_description': function(event) { var goal_id = parseInt(event.currentTarget.id); this.$el.find('.oe_type_description_'+goal_id).toggle(10); @@ -35,8 +43,7 @@ openerp.gamification = function(instance) { //var form = action_manager.dialog_widget.views.form.controller; }); - - } + }, }, renderElement: function() { var self = this; diff --git a/addons/gamification/static/src/xml/gamification.xml b/addons/gamification/static/src/xml/gamification.xml index be287bdccaf..70a47eeb6df 100644 --- a/addons/gamification/static/src/xml/gamification.xml +++ b/addons/gamification/static/src/xml/gamification.xml @@ -4,6 +4,7 @@
+ refresh

    @@ -22,9 +23,9 @@ (less than ) - +