[IMP]: Add write_date for dtstamp Using standard RFC 5545, par 3.8.7.2.
bzr revid: atp@tinyerp.co.in-20101203093116-yh6jnd3qtc43baqa
This commit is contained in:
parent
5bf2d70671
commit
010c665513
|
@ -148,7 +148,6 @@ def get_attribute_mapping(cr, uid, calname, context=None):
|
|||
@param uid: the current user’s ID for security checks,
|
||||
@param calname: Get Calendar name
|
||||
@param context: A standard dictionary for contextual values """
|
||||
|
||||
if not context:
|
||||
context = {}
|
||||
pool = pooler.get_pool(cr.dbname)
|
||||
|
@ -276,7 +275,6 @@ class CalDAV(object):
|
|||
@param self: The object pointer,
|
||||
@param type: Get Attribute Type
|
||||
"""
|
||||
|
||||
for name in self.__attribute__:
|
||||
if self.__attribute__[name]:
|
||||
self.__attribute__[name][type] = None
|
||||
|
@ -340,8 +338,6 @@ class CalDAV(object):
|
|||
date_local = cal_data.value.astimezone(_server_tzinfo)
|
||||
self.ical_set(cal_data.name.lower(), date_local, 'value')
|
||||
continue
|
||||
# date_local = cal_data.value.astimezone(pytz.utc)
|
||||
|
||||
self.ical_set(cal_data.name.lower(), cal_data.value, 'value')
|
||||
vals = map_data(cr, uid, self, context=context)
|
||||
return vals
|
||||
|
@ -854,7 +850,7 @@ class basic_calendar_fields(osv.osv):
|
|||
}
|
||||
|
||||
_defaults = {
|
||||
'fn': lambda *a: 'field',
|
||||
'fn': 'field',
|
||||
}
|
||||
|
||||
_sql_constraints = [
|
||||
|
@ -906,7 +902,6 @@ class basic_calendar_fields(osv.osv):
|
|||
@param vals: Get Values
|
||||
@param context: A standard dictionary for contextual values
|
||||
"""
|
||||
|
||||
if not vals:
|
||||
return
|
||||
for id in ids:
|
||||
|
@ -1186,11 +1181,16 @@ class Alarm(CalDAV, osv.osv_memory):
|
|||
self.__attribute__ = get_attribute_mapping(cr, uid, self._calname, ctx)
|
||||
for child in ical_data.getChildren():
|
||||
if child.name.lower() == 'trigger':
|
||||
seconds = child.value.seconds
|
||||
days = child.value.days
|
||||
diff = (days * 86400) + seconds
|
||||
interval = 'days'
|
||||
related = 'before'
|
||||
if isinstance(child.value, timedelta):
|
||||
seconds = child.value.seconds
|
||||
days = child.value.days
|
||||
diff = (days * 86400) + seconds
|
||||
interval = 'days'
|
||||
related = 'before'
|
||||
elif isinstance(child.value, datetime):
|
||||
# TODO
|
||||
# remember, spec says this datetime is in UTC
|
||||
raise NotImplementedError("we cannot parse absolute triggers")
|
||||
if not seconds:
|
||||
duration = abs(days)
|
||||
related = days > 0 and 'after' or 'before'
|
||||
|
@ -1294,4 +1294,5 @@ class Attendee(CalDAV, osv.osv_memory):
|
|||
|
||||
Attendee()
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -79,7 +79,7 @@ class calendar_event_import(osv.osv_memory):
|
|||
}
|
||||
|
||||
_defaults = {
|
||||
'msg':lambda *a:'Import Sucessful'
|
||||
'msg': lambda cr, uid, ids, context: _('Import Sucessful')
|
||||
}
|
||||
|
||||
calendar_event_import()
|
||||
|
|
|
@ -45,6 +45,12 @@ class crm_meeting(osv.osv):
|
|||
ical = event_obj.export_cal(cr, uid, event_data, context=context)
|
||||
return ical.serialize()
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if "write_date" in vals:
|
||||
del vals['write_date']
|
||||
return super(crm_meeting, self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
|
||||
def import_cal(self, cr, uid, data, data_id=None, context=None):
|
||||
"""
|
||||
@param self: The object pointer
|
||||
|
@ -91,6 +97,7 @@ class crm_meeting(osv.osv):
|
|||
val.update({'recurrent_uid': exists})
|
||||
model_obj.write(cr, uid, [r_id], val)
|
||||
ids.append(r_id)
|
||||
|
||||
elif exists:
|
||||
model_obj.write(cr, uid, [exists], val)
|
||||
ids.append(exists)
|
||||
|
|
|
@ -117,8 +117,8 @@
|
|||
<record model="basic.calendar.fields" id="map_event_13">
|
||||
<field name="name" ref="caldav.field_event_dtstamp"/>
|
||||
<field name="type_id" ref="base_calendar.calendar_lines_event" />
|
||||
<field name="field_id" search="[('name','=','date'),('model_id.model','=','calendar.event')]" />
|
||||
<field name="fn">field</field>
|
||||
<field name="field_id" search="[('name','=','write_date'),('model_id.model','=','crm.meeting')]" />
|
||||
<field name="fn">datetime_utc</field>
|
||||
</record>
|
||||
|
||||
<record model="basic.calendar.fields" id="map_event_14">
|
||||
|
|
|
@ -176,8 +176,8 @@
|
|||
<record id="basic_calendar_fields_24" model="basic.calendar.fields">
|
||||
<field name="name" ref="caldav.field_event_dtstamp"/>
|
||||
<field name="type_id" ref="basic_calendar_lines_vevent0"/>
|
||||
<field name="field_id" ref="base_calendar.field_calendar_event_date"/>
|
||||
<field name="fn">field</field>
|
||||
<field name="field_id" ref="crm.field_crm_meeting_write_date"/>
|
||||
<field name="fn">datetime_utc</field>
|
||||
</record>
|
||||
<record id="basic_calendar_fields_25" model="basic.calendar.fields">
|
||||
<field name="name" ref="caldav.field_event_description"/>
|
||||
|
|
Loading…
Reference in New Issue