[IMP] event: clean regarding start date, end date and improve calendar view

bzr revid: hmo@tinyerp.com-20100716101651-gvh1lcjl4d85ixml
This commit is contained in:
Harry (OpenERP)
2010-07-16 15:46:51 +05:30
parent e018cce627
commit 603d901247
2 changed files with 24 additions and 44 deletions
+7 -27
View File
@@ -192,7 +192,7 @@ class event_event(osv.osv):
return res
_columns = {
'name': fields.char('Name', size=64, required=True, translate=True, readonly=False, states={'done': [('readonly', True)]}),
'name': fields.char('Summary', size=64, required=True, translate=True, readonly=False, states={'done': [('readonly', True)]}),
'user_id': fields.many2one('res.users', 'Responsible User', readonly=False, states={'done': [('readonly', True)]}),
'parent_id': fields.many2one('event.event', 'Parent Event', readonly=False, states={'done': [('readonly', True)]}),
'section_id': fields.many2one('crm.case.section', 'Sale Team', readonly=False, states={'done': [('readonly', True)]}),
@@ -313,13 +313,14 @@ class event_registration(osv.osv):
'ref2': fields.reference('Reference 2', selection=crm._links_get, size=128),
'message_ids': fields.one2many('mailgate.message', 'res_id', 'Messages', domain=[('history', '=', True),('model','=',_name)]),
'log_ids': fields.one2many('mailgate.message', 'res_id', 'Logs', domain=[('history', '=', False),('model','=',_name)]),
'date_deadline': fields.related('event_id','date_end', type='datetime', string="End Date", readonly=True, store=True),
'date': fields.related('event_id', 'date_begin', type='datetime', string="Start Date", readonly=True, store=True),
'section_id': fields.related('event_id', 'section_id', type='many2one', relation='crm.case.section', string='Sale Team', store=True, readonly=True, states={'draft':[('readonly',False)]}),
'company_id': fields.related('event_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True, states={'draft':[('readonly',False)]}),
}
_defaults = {
'nb_register': 1,
'tobe_invoiced': True,
'date': time.strftime('%Y-%m-%d %H:%M:%S')
}
def _make_invoice(self, cr, uid, reg, lines, context=None):
@@ -505,29 +506,7 @@ class event_registration(osv.osv):
registrations = self.browse(cr, uid, ids)
self._history(cr, uid, registrations, _('Cancel'))
self.write(cr, uid, ids, {'state': 'cancel'})
return True
def create(self, cr, uid, values, context=None):
""" Overrides orm create method.
"""
event_obj = self.pool.get('event.event')
event = event_obj.browse(cr, uid, values['event_id'], context=context)
values['date_deadline']= event.date_begin
values['description']= event.mail_confirm
res = super(event_registration, self).create(cr, uid, values, context=context)
registrations = self.browse(cr, uid, [res], context=context)
self._history(cr, uid, registrations, _('Created'))
return res
def write(self, cr, uid, ids, values, context=None):
""" Overrides orm write method.
"""
event_obj = self.pool.get('event.event')
if 'event_id' in values:
event = event_obj.browse(cr, uid, values['event_id'], context=context)
values['date_deadline']= event.date_begin
values['description']= event.mail_confirm
return super(event_registration, self).write(cr, uid, ids, values, context=context)
return True
def mail_user(self, cr, uid, ids, confirm=False, context=None):
"""
@@ -618,10 +597,11 @@ class event_registration(osv.osv):
event_obj = self.pool.get('event.event')
prod_obj = self.pool.get('product.product')
res_obj = self.pool.get('res.partner')
res_obj = self.pool.get('res.partner')
data_event = event_obj.browse(cr, uid, event_id)
res = {'value': {'unit_price': False, 'event_product': False, 'user_id': False}}
res = {'value': {'unit_price': False, 'event_product': False, 'user_id': False,
'date': data_event.date_begin, 'date_deadline': data_event.date_end, 'description': data_event.note, 'name': data_event.name}}
if data_event.user_id.id:
res['value'].update({'user_id':data_event.user_id.id})
if data_event.product_id:
+17 -17
View File
@@ -45,7 +45,7 @@
<field name="arch" type="xml">
<form string="Events">
<group col="6" colspan="4">
<field name="name" string="Event"/>
<field name="name"/>
<field name="date_begin"/>
<field name="date_end"/>
<field name="type" widget="selection"/>
@@ -54,7 +54,7 @@
</group>
<notebook colspan="4">
<page string="Event">
<group colspan="4" col="4">
<group colspan="4" col="4">
<separator string="Invoice Information" colspan="4"/>
<field name="product_id" on_change="onchange_product(product_id)" colspan="4"/>
<field name="unit_price"/>
@@ -72,6 +72,8 @@
<field name="address_id" domain="[('country_id','=',country_id)]"/>
</group>
<separator string="Description" colspan="4"/>
<field name="note" colspan="4" nolabel="1"/>
<field name="state" select="1"/>
<group col="4" colspan="2">
<button string="Confirm Event" name="button_confirm" states="draft" type="object" icon="gtk-apply"/>
@@ -91,7 +93,7 @@
<field name="register_max"/>
<field name="register_current"/>
<field name="register_prospect"/>
<field name="registration_ids" colspan="4" nolabel="1">
<field name="registration_ids" colspan="4" nolabel="1" readonly="1">
<form string="Registration">
<field name="name"/>
<field name="date" string="Date"/>
@@ -112,8 +114,8 @@
<button name="button_reg_cancel" string="Cancel Registration" states="draft,open" type="object" icon="gtk-cancel"/>
</group>
</form>
<tree string="Registration" editable="bottom">
<field name="date" string="Date"/>
<tree string="Registration">
<field name="create_date" string="Registration Date"/>
<field name="partner_id" required="1" string="Partner" on_change="onchange_partner_id(partner_id,event_id)"/>
<field name="event_product"/>
<field name="nb_register"/>
@@ -145,11 +147,7 @@
<separator string="Confirmation Email Body" colspan="2"/>
<field name="mail_confirm" colspan="2" nolabel="1" attrs="{'readonly':[('mail_auto_confirm','=',False)]}"/>
</group>
</page>
<page string="Notes">
<separator string="Notes" colspan="4"/>
<field name="note" colspan="4" nolabel="1"/>
</page>
</page>
</notebook>
</form>
</field>
@@ -308,7 +306,7 @@
<form string="Registration">
<group col="6" colspan="4">
<field name="event_id" on_change="onchange_event(event_id, partner_invoice_id)" domain="[('state','in',('draft','confirm'))]"/>
<field name="date" string="Registration Date"/>
<field name="create_date" string="Registration Date"/>
<field name="name"/>
<field name="partner_id" required="1" on_change="onchange_partner_id(partner_id,event_id)" />
<field name="user_id"/>
@@ -316,6 +314,8 @@
</group>
<notebook colspan="4">
<page string="Registration">
<field name="date" />
<field name="date_deadline" />
<group colspan="2" col="2">
<separator string="Registration Cost" colspan="4"/>
<field name="nb_register"/>
@@ -328,7 +328,8 @@
<field name="partner_invoice_id" attrs="{'required':[('tobe_invoiced','=',True)]}" on_change="onchange_partner_invoice_id(event_id, partner_invoice_id)"/>
<field name="invoice_id"/>
</group>
<separator string="Description" colspan="4"/>
<field name="description" colspan="4" nolabel="1"/>
<group col="8" colspan="4">
<separator string="" colspan="4"/>
<newline/>
@@ -354,12 +355,11 @@
<field name="address_id"/>
</form>
</field>
<group col="2" colspan="2">
<separator string="Dates" colspan="2"/>
<field name="create_date"/>
<group col="2" colspan="2" groups="base.group_extended">
<separator string="Dates" colspan="2"/>
<field name="date_closed"/>
</group>
<group col="2" colspan="2">
<group col="2" colspan="2" groups="base.group_extended">
<separator string="Misc" colspan="2"/>
<field name="id"/>
<field name="active"/>
@@ -417,7 +417,7 @@
<field name="type">calendar</field>
<field eval="2" name="priority"/>
<field name="arch" type="xml">
<calendar color="event_id" date_start="create_date" string="Event Registration">
<calendar color="event_id" date_start="date" date_delay="duration" string="Event Registration">
<field name="event_id"/>
<field name="partner_invoice_id"/>
</calendar>