diff --git a/addons/event/event.py b/addons/event/event.py
index d76dd2ee0b2..fc01ae8bdfc 100644
--- a/addons/event/event.py
+++ b/addons/event/event.py
@@ -37,7 +37,7 @@ class event_type(osv.osv):
}
event_type()
-class event_event(osv.osv):
+class event_event(crm.crm_case, osv.osv):
"""Event"""
_name = 'event.event'
_description = __doc__
@@ -246,6 +246,7 @@ class event_event(osv.osv):
'state': 'draft',
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'event.event', context=c),
'user_id': lambda obj, cr, uid, context: uid,
+ 'section_id': crm.crm_case._get_section,
}
def _check_recursion(self, cr, uid, ids):
diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml
index ed1e13ceec8..185b1d33ec9 100644
--- a/addons/event/event_view.xml
+++ b/addons/event/event_view.xml
@@ -164,6 +164,7 @@
+
@@ -171,6 +172,7 @@
+
@@ -231,13 +233,20 @@
+
+
+
-
+
@@ -254,7 +263,7 @@
event.event
form
tree,form,calendar,graph
- {"search_default_draft": "1"}
+ {"search_default_draft": "1", "search_default_section_id": section_id}
diff --git a/addons/event/security/event_security.xml b/addons/event/security/event_security.xml
index a847550d7dd..bcd172ce8c7 100644
--- a/addons/event/security/event_security.xml
+++ b/addons/event/security/event_security.xml
@@ -1,11 +1,11 @@
-
-
-
+
+
Marketing / Manager
+
Marketing / User
@@ -17,8 +17,7 @@
Sales / User
-
-
+
diff --git a/addons/event/wizard/event_make_invoice.py b/addons/event/wizard/event_make_invoice.py
index 96bffff537c..12ad2cf0d68 100644
--- a/addons/event/wizard/event_make_invoice.py
+++ b/addons/event/wizard/event_make_invoice.py
@@ -45,12 +45,9 @@ class event_make_invoice(osv.osv_memory):
data = context and context.get('active_ids', [])
for event_reg in obj_event_reg.browse(cr, uid, data, context=context):
- if event_reg.state == 'draft':
+ if event_reg.state in ('draft', 'done', 'cancel'):
raise osv.except_osv(_('Warning !'),
- _("Invoice cannot be created if the registration is in draft state."))
- if event_reg.state == 'done':
- raise osv.except_osv(_('Warning !'),
- _("Invoice cannot be created if the registration is in done state."))
+ _("Invoice cannot be created if the registration is in %s state.") % (event_reg.state))
if (not event_reg.tobe_invoiced):
raise osv.except_osv(_('Warning !'),