# HG changeset patch # User Anael Lorimier <anael.lorimier@xcg-consulting.fr> # Date 1369217246 -7200 # Wed May 22 12:07:26 2013 +0200 # Node ID f400baef1bb6e6d03d7825b6350a6da16cb2be97 # Parent b417f317c2dc44d303fbebeb2bca4d98f7293b7f Fixes #1 Add functions to process URL most click graphs Adding a button in the Campaign Form to access graphs view Update js injection to auto-update graphs field diff --git a/__openerp__.py b/__openerp__.py --- a/__openerp__.py +++ b/__openerp__.py @@ -43,6 +43,7 @@ 'marketing_campaign_tracker_view.xml', 'wizard/wizard.xml', 'report/analytic.xml', + 'report/marketing_campaign_view.xml', ], 'js': ['static/src/js/report_analytic.js'], 'demo_xml': [ diff --git a/report/board_analytic.py b/report/board_analytic.py --- a/report/board_analytic.py +++ b/report/board_analytic.py @@ -31,14 +31,9 @@ _name = 'board.board' _inherit = 'board.board' - def update_graph(self, cr, uid, ids, context=None): - self.pool.get('marketing_campaign_tracker.analytic').update_graphs(cr, uid, ids, context=context) - def board_update(self, cr, uid, ids, context=None): - print "**********************" - print cr - print uid - print ids - print context - print "**********************" + def board_update(self, cr, uid, id_, context=None): + campaign_id = context.get('campaign_id', None) + if campaign_id: + self.pool.get('marketing_campaign_tracker.analytic').update_graphs(cr, uid, campaign_id, context=context) return 0 diff --git a/report/marketing_campaign_view.xml b/report/marketing_campaign_view.xml new file mode 100644 --- /dev/null +++ b/report/marketing_campaign_view.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + <record id="view_marketing_campaign_analytic_form" model="ir.ui.view"> + <field name="name">marketing.campaign.analytic.form</field> + <field name="model">marketing.campaign</field> + <field name="type">form</field> + <field name="inherit_id" ref="marketing_campaign.view_marketing_campaign_form"/> + <field name="arch" type="xml"> + <xpath expr="//button[@string='Segments']" position="after"> + <button type="action" + name="%(open_board_marketing_campaign_tracker_analytic)d" + string="Campaign Analytic"/> + </xpath> + </field> + </record> + </data> +</openerp> + diff --git a/static/src/js/report_analytic.js b/static/src/js/report_analytic.js --- a/static/src/js/report_analytic.js +++ b/static/src/js/report_analytic.js @@ -12,11 +12,10 @@ }, start: function() { - var context = new instance.web.CompoundContext(this.build_context(), {}); this._super.apply(this, arguments); if (this.view.dataset.context['live_update'] == 1) { - this.ds_model.call('board_update', [this.session.uid, context]); + this.ds_model.call('board_update', [this.session.uid, this.view.dataset.context]); } } });