diff --git a/addons/event/event.py b/addons/event/event.py index daf2b2aa982..122432a9c77 100644 --- a/addons/event/event.py +++ b/addons/event/event.py @@ -225,7 +225,9 @@ 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, - 'visibility': 'employees', + 'visibility': 'public', + 'organizer_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, context=c).company_id.partner_id.id, + 'address_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, context=c).company_id.partner_id.id } def subscribe_to_event(self, cr, uid, ids, context=None): diff --git a/addons/event_sale/__openerp__.py b/addons/event_sale/__openerp__.py index c274669af98..88e27fd9a3d 100644 --- a/addons/event_sale/__openerp__.py +++ b/addons/event_sale/__openerp__.py @@ -39,7 +39,10 @@ this event. """, 'author': 'OpenERP SA', 'depends': ['event', 'sale_crm'], - 'data': ['event_sale_view.xml'], + 'data': [ + 'event_sale_view.xml', + 'event_sale_data.xml', + ], 'demo': ['event_demo.xml'], 'test': ['test/confirm.yml'], 'installable': True, diff --git a/addons/event_sale/event_sale.py b/addons/event_sale/event_sale.py index 09e67382188..0354f38603c 100644 --- a/addons/event_sale/event_sale.py +++ b/addons/event_sale/event_sale.py @@ -116,6 +116,18 @@ class event_event(osv.osv): result[rec.id] = sum([ep.register_max for ep in rec.event_ticket_ids]) return result + def _get_tickets(self, cr, uid, context={}): + md = self.pool.get('ir.model.data') + try: + dummy, res_id = md.get_object_reference(cr, uid, 'event_sale', 'product_product_event') + except ValueError: + return [] + return [{ + 'name': _('Subscription'), + 'product_id': res_id, + 'price': 100, + }] + _columns = { 'event_ticket_ids': fields.one2many('event.event.ticket', "event_id", "Event Ticket"), 'register_max': fields.function(_get_register_max, @@ -124,6 +136,9 @@ class event_event(osv.osv): "If you have too much registrations you are not able to confirm your event. (0 to ignore this rule )", type='integer') } + _defaults = { + 'event_ticket_ids': _get_tickets + } def check_registration_limits(self, cr, uid, ids, context=None): for event in self.browse(cr, uid, ids, context=context): @@ -181,6 +196,18 @@ class event_ticket(osv.osv): 'register_prospect': fields.function(_get_register, string='Unconfirmed Registrations', type='integer', multi='register_numbers'), 'register_attended': fields.function(_get_register, string='# of Participations', type='integer', multi='register_numbers'), } + def _default_product_id(self, cr, uid, context={}): + md = self.pool.get('ir.model.data') + try: + dummy, res_id = md.get_object_reference(cr, uid, 'event_sale', 'product_product_event') + except ValueError: + return False + return res_id + + _defaults = { + 'product_id': _default_product_id + } + def check_registration_limits_before(self, cr, uid, ids, number, context=None): for ticket in self.browse(cr, uid, ids, context=context): diff --git a/addons/event_sale/event_sale_data.xml b/addons/event_sale/event_sale_data.xml new file mode 100644 index 00000000000..9c5dae6042b --- /dev/null +++ b/addons/event_sale/event_sale_data.xml @@ -0,0 +1,25 @@ + + + + + + Generic Events + + + + 10.0 + + 30.0 + + + Event Subscription + + service + + + + + + + + diff --git a/addons/product/product_data.xml b/addons/product/product_data.xml index 52dfe7b790b..17109fb7029 100644 --- a/addons/product/product_data.xml +++ b/addons/product/product_data.xml @@ -184,7 +184,7 @@ parameter) will see those record just disappear. Product UoS - +