summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorParamjit Singh Sahota <psa@openerp.com>2015-05-19 17:09:12 +0200
committerJérome Maes <jem@openerp.com>2015-05-20 17:56:37 +0200
commit68dbacac1eec7b8196ffc108f533667c31b08cbb (patch)
tree019b8d033322483b0c87b8b492c33f4abf4ccc69 /addons
parent3daebb6ccaecf3ad2cac306b6ef05843dbbf99e7 (diff)
[IMP] event, event_sale, website_event, website_event_sale : clear registration badge handeling
Now, - event contains the HTML badge fields and the report (and report templates) to print badges - event_sale add the ticket type on badges - website_event allow the edition of badge throught website editor. When the editor will be available in backend, event will be allow to edit badge report, so the action should be moved from website_Event to event module.
Diffstat (limited to 'addons')
-rw-r--r--addons/event/__openerp__.py6
-rw-r--r--addons/event/email_template.xml16
-rw-r--r--addons/event/event.py33
-rw-r--r--addons/event/event_report.xml28
-rw-r--r--addons/event/event_tip_data.xml2
-rw-r--r--addons/event/event_view.xml13
-rw-r--r--addons/event/report/event_event_reports.xml39
-rw-r--r--addons/event/report/event_event_templates.xml104
-rw-r--r--addons/event/views/report_registrationbadge.xml39
-rw-r--r--addons/event_sale/__openerp__.py2
-rw-r--r--addons/event_sale/models/event.py4
-rw-r--r--addons/event_sale/report/event_event_templates.xml20
-rw-r--r--addons/event_sale/views/report_registrationbadge.xml62
-rw-r--r--addons/website/static/src/css/website.css3
-rw-r--r--addons/website/static/src/css/website.sass4
-rw-r--r--addons/website_event/models/event.py10
-rw-r--r--addons/website_event/views/website_event_backend.xml9
17 files changed, 250 insertions, 144 deletions
diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py
index 9de11b3bd61..d4e14c420b5 100644
--- a/addons/event/__openerp__.py
+++ b/addons/event/__openerp__.py
@@ -25,13 +25,13 @@ Key Features
'wizard/event_confirm_view.xml',
'event_view.xml',
'report/report_event_registration_view.xml',
+ 'report/event_event_templates.xml',
+ 'report/event_event_reports.xml',
'event_data.xml',
'event_tip_data.xml',
'res_config_view.xml',
- 'email_template.xml',
'views/event.xml',
- 'event_report.xml',
- 'views/report_registrationbadge.xml',
+ 'email_template.xml',
],
'demo': [
'event_demo.xml',
diff --git a/addons/event/email_template.xml b/addons/event/email_template.xml
index 26a9341b756..c31102294d6 100644
--- a/addons/event/email_template.xml
+++ b/addons/event/email_template.xml
@@ -2,6 +2,22 @@
<openerp>
<data>
+ <record id="event_registration_mail_template_badge" model="mail.template">
+ <field name="name">Event: Registration Badge</field>
+ <field name="model_id" ref="event.model_event_registration"/>
+ <field name="email_from">${(object.event_id.organizer_id.email or object.event_id.user_id.email or '')|safe}</field>
+ <field name="email_to" >${object.email|safe}</field>
+ <field name="subject">Your badge for ${object.event_id.name}</field>
+ <field name="auto_delete" eval="True"/>
+ <field name="report_template" ref="report_event_registration_badge"/>
+ <field name="report_name">badge_of_${(object.event_id.name or '').replace('/','_')}</field>
+ <field name="body_html"><![CDATA[<p>Hello ${object.name},</p>
+<p>We confirm that your subscription to the event ${object.event_id.name} has been recorded.
+Please, Find your <b>Event Badge</b> attached with this mail.</p>
+<p>Thank you for your participation!</p>
+<p>Best regards</p>]]></field>
+ </record>
+
<record id="event_subscription" model="mail.template">
<field name="name">Event subscription</field>
<field name="model_id" ref="event.model_event_registration"/>
diff --git a/addons/event/event.py b/addons/event/event.py
index 4eba6e7f16d..f9915ff38fc 100644
--- a/addons/event/event.py
+++ b/addons/event/event.py
@@ -168,6 +168,12 @@ class event_event(models.Model):
description = fields.Html(
string='Description', oldname='note', translate=True,
readonly=False, states={'done': [('readonly', True)]})
+ # badge fields
+ badge_front = fields.Html(string='Badge Front')
+ badge_back = fields.Html(string='Badge Back')
+ badge_innerleft = fields.Html(string='Badge Innner Left')
+ badge_innerright = fields.Html(string='Badge Inner Right')
+ event_logo = fields.Html(string='Event Logo')
@api.multi
@api.depends('name', 'date_begin', 'date_end')
@@ -363,3 +369,30 @@ class event_registration(models.Model):
if attendee.partner_id:
attendee._message_add_suggested_recipient(recipients, partner=attendee.partner_id, reason=_('Customer'))
return recipients
+
+ @api.multi
+ def action_send_badge_email(self):
+ """ Open a window to compose an email, with the template - 'event_badge'
+ message loaded by default
+ """
+ self.ensure_one()
+ template = self.env.ref('event.event_registration_mail_template_badge')
+ compose_form = self.env.ref('mail.email_compose_message_wizard_form')
+ ctx = dict(
+ default_model='event.registration',
+ default_res_id=self.id,
+ default_use_template=bool(template),
+ default_template_id=template.id,
+ default_composition_mode='comment',
+ )
+ return {
+ 'name': _('Compose Email'),
+ 'type': 'ir.actions.act_window',
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'res_model': 'mail.compose.message',
+ 'views': [(compose_form.id, 'form')],
+ 'view_id': compose_form.id,
+ 'target': 'new',
+ 'context': ctx,
+ }
diff --git a/addons/event/event_report.xml b/addons/event/event_report.xml
deleted file mode 100644
index 9a2ee6e2e42..00000000000
--- a/addons/event/event_report.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<openerp>
- <data>
-
- <record id="paperformat_euro_lowmargin" model="report.paperformat">
- <field name="name">European A4 low margin</field>
- <field name="default" eval="True" />
- <field name="format">A4</field>
- <field name="page_height">0</field>
- <field name="page_width">0</field>
- <field name="orientation">Portrait</field>
- <field name="margin_top">5</field>
- <field name="margin_bottom">5</field>
- <field name="margin_left">5</field>
- <field name="margin_right">5</field>
- <field name="header_line" eval="False" />
- <field name="header_spacing">0</field>
- <field name="dpi">80</field>
- </record>
-
- <report id="action_report_registration_badge" model="event.registration"
- string="Badge" report_type="qweb-html"
- name="event.report_registration_badge"
- file="event.report_registration_badge"
- paperformat="event.paperformat_euro_lowmargin"/>
-
- </data>
-</openerp>
diff --git a/addons/event/event_tip_data.xml b/addons/event/event_tip_data.xml
index f7c6a66064c..9d34113523b 100644
--- a/addons/event/event_tip_data.xml
+++ b/addons/event/event_tip_data.xml
@@ -7,7 +7,7 @@
<field name="model">event.event</field>
<field name="mode">form</field>
<field name="trigger_selector">.oe_form_buttons_view:visible,div.oe_right.oe_button_box > button</field>
- <field name="highlight_selector">div.oe_right.oe_button_box:visible > button:nth-child(1)</field>
+ <field name="highlight_selector">div.oe_right.oe_button_box:visible > button.oe_event_attendee_button</field>
<field name="placement">bottom</field>
</record>
</odoo>
diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml
index d4a9c760347..6ec68c6b479 100644
--- a/addons/event/event_view.xml
+++ b/addons/event/event_view.xml
@@ -37,7 +37,7 @@
<field name="res_model">event.type</field>
<field name="view_type">form</field>
</record>
-
+
<menuitem id="menu_event_configuration" name="Event" parent="base.menu_config"
sequence="14"/>
<menuitem name="Events Types" id="menu_event_type" action="action_event_type" parent="menu_event_configuration" groups="base.group_no_one"/>
@@ -70,10 +70,10 @@
<h1><field name="name"/></h1>
</div>
<div class="oe_right oe_button_box" groups="base.group_user">
- <button name="%(event.act_event_registration_from_event)d"
- type="action"
- class="oe_stat_button oe_inline"
- icon="fa-github"
+ <button name="%(event.act_event_registration_from_event)d"
+ type="action"
+ class="oe_stat_button oe_inline oe_event_attendee_button"
+ icon="fa-github"
help="Register with this event">
<field name="seats_reserved" widget="statinfo" string="Attendees"/>
</button>
@@ -302,6 +302,7 @@
<field name="arch" type="xml">
<form string="Event Registration">
<header>
+ <button name="action_send_badge_email" string="Send by Email" type="object" states="open,done" class="oe_highlight"/>
<button name="confirm_registration" string="Confirm" states="draft" type="object" class="oe_highlight"/>
<button name="button_reg_close" string="Attended" states="open" type="object" class="oe_highlight"/>
<button string="Set To Unconfirmed" name="do_draft" states="cancel,done" type="object" />
@@ -451,7 +452,7 @@
<field name="res_model">event.mail</field>
<field name="view_type">form</field>
</record>
-
+
<menuitem name="Events Mail Schedulers" id="menu_event_type" action="action_event_mail" parent="menu_event_configuration" groups="base.group_no_one"/>
</data>
diff --git a/addons/event/report/event_event_reports.xml b/addons/event/report/event_event_reports.xml
new file mode 100644
index 00000000000..d15e72e4faa
--- /dev/null
+++ b/addons/event/report/event_event_reports.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <record id="paperformat_euro_lowmargin" model="report.paperformat">
+ <field name="name">European A4 low margin</field>
+ <field name="default" eval="True"/>
+ <field name="format">A4</field>
+ <field name="page_height">0</field>
+ <field name="page_width">0</field>
+ <field name="orientation">Portrait</field>
+ <field name="margin_top">5</field>
+ <field name="margin_bottom">5</field>
+ <field name="margin_left">5</field>
+ <field name="margin_right">5</field>
+ <field name="header_line" eval="False"/>
+ <field name="header_spacing">0</field>
+ <field name="dpi">80</field>
+ </record>
+
+ <report
+ id="report_event_registration_badge"
+ model="event.registration"
+ string="Registration Badge"
+ report_type="qweb-pdf"
+ name="event.event_registration_report_template_badge"
+ file="event.event_registration_report_template_badge"
+ paperformat="event.paperformat_euro_lowmargin"/>
+
+ <report
+ id="report_event_event_badge"
+ model="event.event"
+ string="Event Badge"
+ report_type="qweb-html"
+ name="event.event_event_report_template_badge"
+ file="event.event_event_report_template_badge"
+ menu="False"
+ paperformat="event.paperformat_euro_lowmargin"/>
+
+</odoo>
diff --git a/addons/event/report/event_event_templates.xml b/addons/event/report/event_event_templates.xml
new file mode 100644
index 00000000000..39f4b21bf6f
--- /dev/null
+++ b/addons/event/report/event_event_templates.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <!-- template use to render a Registration Badge -->
+ <template id="event_registration_report_template_badge">
+ <t t-call="report.html_container">
+ <t t-foreach="docs" t-as="o">
+ <div class="page">
+ <div class="row">
+ <!-- Front -->
+ <div class="col-xs-6 text-center" style="padding-left:7mm; border-left:1px dashed black; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 7mm">
+ <div class="row">
+ <div class="col-xs-12">
+ <t t-if="o.event_id.event_logo">
+ <div t-field="o.event_id.event_logo"/>
+ </t>
+ <span t-if="not o.event_id.event_logo and o.event_id.organizer_id.company_id.logo_web and o.event_id.organizer_id.is_company">
+ <img t-att-src="'data:image/png;base64,%s' % o.event_id.organizer_id.company_id.logo_web" style="max-height:1cm; max-width:4cm;"/>
+ </span>
+ <h5 t-field="o.event_id.name"/>
+ <h5>( <i class="fa fa-clock-o"></i> <span itemprop="startDate" t-field="o.event_id.date_begin" t-field-options='{"hide_seconds":"True"}'> </span> <i>to</i> <span itemprop="endDate" t-field="o.event_id.date_end" t-field-options='{"hide_seconds":"True"}'> </span> )</h5>
+ </div>
+ <div class="row">
+ <div class="col-xs-12 text-center" id="o_event_name">
+ <small>
+ <h3 t-field="o.name"/>
+ </small>
+ </div>
+ </div>
+ <div class="row">
+ <div t-field="o.event_id.badge_front"></div>
+ </div>
+ </div>
+ </div>
+ <!-- Back -->
+ <div class="col-xs-6" style="padding-right:7mm; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 2mm;">
+ <span t-field="o.event_id.badge_back"/>
+ </div>
+ </div>
+ <div class="row">
+ <!-- Inner left -->
+ <div class="col-xs-6 text-center" style="padding-right:7mm; border-top:1px dashed black; height: 148mm;">
+ <span t-field="o.event_id.badge_innerleft"/>
+ </div>
+ <!-- Inner right -->
+ <div class="col-xs-6 text-center" style="border-left:1px dashed black; border-top:1px dashed black; height: 148mm; text-center">
+ <span t-field="o.event_id.badge_innerright"/>
+ </div>
+ </div>
+ </div>
+ </t>
+ </t>
+ </template>
+
+
+ <!-- template use to edit Event Badget (allow to set the HTML badge fields) -->
+ <template id="event_event_report_template_badge">
+ <t t-call="report.html_container">
+ <div class="page">
+ <t t-foreach="docs" t-as="event">
+ <div class="row">
+ <!-- Front -->
+ <div class="col-xs-6 text-center" style="padding-left:7mm; border-right:1px dashed black; height: 149mm; padding-top: 7mm">
+ <div class="row" t-ignore="true">
+ <div class="col-xs-12">
+ <span t-if="event.organizer_id.is_company and event.organizer_id.company_id.logo_web">
+ <div t-field="event.event_logo">
+ <img t-att-src="'data:image/png;base64,%s' % event.organizer_id.company_id.logo_web" style="max-height:1cm; max-width:4cm;"/>
+ </div>
+ </span>
+ <h4 t-field="event.name"/>
+ <h5>( <i class="fa fa-clock-o"></i> <span itemprop="startDate" t-field="event.date_begin" t-field-options='{"hide_seconds":"True"}'> </span> <i>to</i> <span itemprop="endDate" t-field="event.date_end" t-field-options='{"hide_seconds":"True"}'> </span> )</h5>
+ </div>
+ </div>
+ <div class="row" t-ignore="true">
+ <div class="col-xs-12 text-center" id="o_event_attendee_name">
+ <small><h3>Attendee Name</h3></small>
+ </div>
+ </div>
+ <div class="row">
+ <div t-field="event.badge_front"></div>
+ </div>
+ </div>
+ <!-- Back -->
+ <div class="col-xs-6" style="padding-right:7mm; height: 149mm; padding-top: 2mm;">
+ <div t-field="event.badge_back"/>
+ </div>
+ </div>
+ <div class="row">
+ <!-- Inner left -->
+ <div class="col-xs-6 text-center" style="padding-right:7mm; border-top:1px dashed black; height: 148mm;">
+ <div t-field="event.badge_innerleft"/>
+ </div>
+ <!-- Inner right -->
+ <div class="col-xs-6 text-center" style="border-left:1px dashed black; border-top:1px dashed black; height: 148mm; text-center">
+ <div t-field="event.badge_innerright"/>
+ </div>
+ </div>
+ </t>
+ </div>
+ </t>
+ </template>
+
+</odoo>
diff --git a/addons/event/views/report_registrationbadge.xml b/addons/event/views/report_registrationbadge.xml
deleted file mode 100644
index 69156f4a184..00000000000
--- a/addons/event/views/report_registrationbadge.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<openerp>
- <data>
- <template id="report_registration_badge">
- <t t-call="report.html_container">
- <t t-foreach="docs" t-as="o">
- <div class="page">
- <div class="row" style="border-bottom:1px dashed black;">
- <div class="col-xs-6 text-center" style="padding-right:7mm; border-right:1px dashed black; height: 147mm; padding-top: 7mm">
- <div class="row">
- <div class="col-xs-12">
- <span t-if="o.event_id.organizer_id.company_id.logo_web and o.event_id.organizer_id.is_company">
- <img t-att-src="'data:image/png;base64,%s' % o.event_id.organizer_id.company_id.logo_web" style="max-height:1cm; max-width:4cm;"/>
- </span>
- <h4 t-field="o.event_id.name"/>
- <h5>( <i class="fa fa-clock-o"></i> <span itemprop="startDate" t-field="o.event_id.date_begin" t-field-options='{"hide_seconds":"True"}'> </span> <i>to</i> <span itemprop="endDate" t-field="o.event_id.date_end" t-field-options='{"hide_seconds":"True"}'> </span> )</h5>
- </div>
- </div>
- <div class="row">
- <div class="col-xs-12 text-center">
- <small><h3 t-if="o.partner_id.is_company == True" t-field="o.partner_id.name"/><h5 t-field="o.name"/></small>
- </div>
- </div>
- <div class="row">
- <div class="col-xs-12 mt32 text-center" style="background: lightgrey;">
- <h3>FREE TICKET</h3>
- </div>
- </div>
- </div>
- <!-- Inner right -->
- <div class="col-xs-6 text-center" style="padding-left:7mm; height: 149mm; padding-top: 2mm;">
- </div>
- </div>
- </div>
- </t>
- </t>
- </template>
- </data>
-</openerp>
diff --git a/addons/event_sale/__openerp__.py b/addons/event_sale/__openerp__.py
index 42c528d6862..1e3b5493d91 100644
--- a/addons/event_sale/__openerp__.py
+++ b/addons/event_sale/__openerp__.py
@@ -25,7 +25,7 @@ this event.
'views/product.xml',
'views/sale_order.xml',
'event_sale_data.xml',
- 'views/report_registrationbadge.xml',
+ 'report/event_event_templates.xml',
'security/ir.model.access.csv',
'wizard/event_edit_registration.xml',
],
diff --git a/addons/event_sale/models/event.py b/addons/event_sale/models/event.py
index b1b81db9d60..90b63763157 100644
--- a/addons/event_sale/models/event.py
+++ b/addons/event_sale/models/event.py
@@ -13,10 +13,6 @@ class event_event(models.Model):
'event.event.ticket', 'event_id', string='Event Ticket',
default=lambda rec: rec._default_tickets(), copy=True)
- badge_back = fields.Html('Badge Back', translate=True, states={'done': [('readonly', True)]})
- badge_innerleft = fields.Html('Badge Innner Left', translate=True, states={'done': [('readonly', True)]})
- badge_innerright = fields.Html('Badge Inner Right', translate=True, states={'done': [('readonly', True)]})
-
@api.model
def _default_tickets(self):
try:
diff --git a/addons/event_sale/report/event_event_templates.xml b/addons/event_sale/report/event_event_templates.xml
new file mode 100644
index 00000000000..850f8fbdf8d
--- /dev/null
+++ b/addons/event_sale/report/event_event_templates.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+
+ <template id="event_registration_report_template_badge" inherit_id="event.event_registration_report_template_badge">
+ <xpath expr="//div[@id='o_event_name']" position="after">
+ <div t-if="o.event_ticket_id" class="col-xs-12 mt32 text-center" style="background: lightgrey; height: 65px">
+ <h3><span t-field="o.event_ticket_id"/></h3>
+ </div>
+ </xpath>
+ </template>
+
+ <template id="event_event_report_template_badge" inherit_id="event.event_event_report_template_badge">
+ <xpath expr="//div[@id='o_event_attendee_name']" position="after">
+ <div t-if="bool(len(event.event_ticket_ids))" class="col-xs-12 mt16 text-center" style="background: lightgrey; height: 65px;" t-ignore="true">
+ <h3>Ticket Type</h3>
+ </div>
+ </xpath>
+ </template>
+
+</odoo>
diff --git a/addons/event_sale/views/report_registrationbadge.xml b/addons/event_sale/views/report_registrationbadge.xml
deleted file mode 100644
index 93148ecf115..00000000000
--- a/addons/event_sale/views/report_registrationbadge.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<openerp>
- <data>
- <template id="event.report_registration_badge">
- <t t-call="report.html_container">
- <t t-foreach="docs" t-as="o">
- <div class="page">
- <div class="row">
- <!-- Inner right -->
- <div class="col-xs-6 text-center" style="padding-left:7mm; border-left:1px dashed black; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 7mm">
- <div class="row">
- <div class="col-xs-12">
- <span t-if="o.event_id.organizer_id.company_id.logo_web and o.event_id.organizer_id.is_company">
- <img t-att-src="'data:image/png;base64,%s' % o.event_id.organizer_id.company_id.logo_web" style="max-height:1cm; max-width:4cm;"/>
- </span>
- <h5 t-field="o.event_id.name"/>
- <h5>( <i class="fa fa-clock-o"></i> <span itemprop="startDate" t-field="o.event_id.date_begin" t-field-options='{"hide_seconds":"True"}'> </span> <i>to</i> <span itemprop="endDate" t-field="o.event_id.date_end" t-field-options='{"hide_seconds":"True"}'> </span> )</h5>
- </div>
- <div class="col-xs-12 text-center">
- <t t-if="o.event_ticket_id">
- <div>
- <strong><span t-field="o.event_ticket_id"/></strong>
- </div>
- </t>
- <div>
- <t t-if="o.partner_id.is_company == True">
- <small>
- <h3 t-field="o.partner_id.name"/>
- <h5 t-field="o.name"/>
- </small>
- </t>
- </div>
- </div>
- <div class="col-xs-12 mt32 text-center" style="background: lightgrey;">
- <h3>Status</h3>
- </div>
- </div>
- </div>
-
- <!-- Inner left -->
- <div class="col-xs-6" style="padding-right:7mm; height: 149mm; -webkit-transform:rotate(180deg); padding-top: 2mm;">
- <span t-field="o.event_id.badge_back"/>
- </div>
- </div>
-
- <div class="row">
- <!-- Back -->
- <div class="col-xs-6 text-center" style="padding-right:7mm; border-top:1px dashed black; height: 148mm;">
- <span t-field="o.event_id.badge_innerleft"/>
- </div>
-
- <!-- Front -->
- <div class="col-xs-6 text-center" style="border-left:1px dashed black; border-top:1px dashed black; height: 148mm; text-center">
- <span t-field="o.event_id.badge_innerright"/>
- </div>
- </div>
- </div>
- </t>
- </t>
- </template>
- </data>
-</openerp>
diff --git a/addons/website/static/src/css/website.css b/addons/website/static/src/css/website.css
index 3c892b60562..a7d05da9eed 100644
--- a/addons/website/static/src/css/website.css
+++ b/addons/website/static/src/css/website.css
@@ -994,5 +994,8 @@ div.carousel .item.text_only .container > .carousel-image {
#oe_main_menu_navbar .navbar-nav.navbar-right:last-child {
margin-right: 0 !important;
}
+.container nav#oe_main_menu_navbar {
+ position: inherit;
+}
/*# sourceMappingURL=website.css.map */
diff --git a/addons/website/static/src/css/website.sass b/addons/website/static/src/css/website.sass
index cf52f51fd9d..022b07066ad 100644
--- a/addons/website/static/src/css/website.sass
+++ b/addons/website/static/src/css/website.sass
@@ -791,3 +791,7 @@ div.carousel
font-size: 13px
.navbar-nav.navbar-right:last-child
margin-right: 0 !important
+
+.container
+ nav#oe_main_menu_navbar
+ position: inherit
diff --git a/addons/website_event/models/event.py b/addons/website_event/models/event.py
index f117aea2810..8c75c7890ec 100644
--- a/addons/website_event/models/event.py
+++ b/addons/website_event/models/event.py
@@ -93,3 +93,13 @@ class event(models.Model):
elif 'website_published' in init_values and not self.website_published:
return 'website_event.mt_event_unpublished'
return super(event, self)._track_subtype(init_values)
+
+ @api.multi
+ def action_open_badge_editor(self):
+ """ open the event badge editor : redirect to the report page of event badge report """
+ self.ensure_one()
+ return {
+ 'type': 'ir.actions.act_url',
+ 'target': 'new',
+ 'url': '/report/html/%s/%s' % ('event.event_event_report_template_badge', self.id),
+ }
diff --git a/addons/website_event/views/website_event_backend.xml b/addons/website_event/views/website_event_backend.xml
index a1300e5f607..ddfc26a0e24 100644
--- a/addons/website_event/views/website_event_backend.xml
+++ b/addons/website_event/views/website_event_backend.xml
@@ -18,6 +18,15 @@
<xpath expr="//field[@name='organizer_id']" position="after">
<field name="twitter_hashtag"/>
</xpath>
+ <xpath expr="//div[@class='oe_right oe_button_box']/button" position="before">
+ <button name="action_open_badge_editor"
+ type="object"
+ class="oe_stat_button oe_inline"
+ icon="fa-newspaper-o"
+ string="Badge"
+ help="Edit Event Badge">
+ </button>
+ </xpath>
</field>
</record>