[FIX] calendar: onchange_dates

When creating a calendar event with all_day=False, the fields 'start' and
'stop' did not have to be set by onchange_dates due to a bad datetime format.

Then the function used to set fields 'start', 'stop', 'start_date' and 'end_date'
must be onchange_duration(only used when with all_day=False).
This function has been introduced by b7e393a.

opw:653045
This commit is contained in:
Goffin Simon
2015-11-04 14:47:03 +01:00
parent de757b754b
commit e48a660791
+2 -10
View File
@@ -1011,8 +1011,10 @@ class calendar_event(osv.Model):
return value
start = datetime.strptime(start, DEFAULT_SERVER_DATETIME_FORMAT)
value['stop_date'] = (start + timedelta(hours=duration)).strftime(DEFAULT_SERVER_DATE_FORMAT)
value['stop'] = (start + timedelta(hours=duration)).strftime(DEFAULT_SERVER_DATETIME_FORMAT)
value['stop_datetime'] = (start + timedelta(hours=duration)).strftime(DEFAULT_SERVER_DATETIME_FORMAT)
value['start_date'] = start.strftime(DEFAULT_SERVER_DATE_FORMAT)
value['start'] = start.strftime(DEFAULT_SERVER_DATETIME_FORMAT)
return {'value': value}
def onchange_dates(self, cr, uid, ids, fromtype, start=False, end=False, checkallday=False, allday=False, context=None):
@@ -1038,16 +1040,6 @@ class calendar_event(osv.Model):
value['stop_datetime'] = datetime.strftime(end, DEFAULT_SERVER_DATETIME_FORMAT)
value['stop'] = datetime.strftime(end, DEFAULT_SERVER_DATETIME_FORMAT)
else:
if fromtype == 'start' and start:
start = datetime.strptime(start, DEFAULT_SERVER_DATETIME_FORMAT)
value['start_date'] = datetime.strftime(start, DEFAULT_SERVER_DATE_FORMAT)
value['start'] = datetime.strftime(start, DEFAULT_SERVER_DATETIME_FORMAT)
if fromtype == 'stop' and end:
end = datetime.strptime(end, DEFAULT_SERVER_DATETIME_FORMAT)
value['stop_date'] = datetime.strftime(end, DEFAULT_SERVER_DATE_FORMAT)
value['stop'] = datetime.strftime(end, DEFAULT_SERVER_DATETIME_FORMAT)
return {'value': value}
def new_invitation_token(self, cr, uid, record, partner_id):