diff --git a/addons/base_vat/base_vat.py b/addons/base_vat/base_vat.py
index e9ecf70b39b..9b3862508b0 100644
--- a/addons/base_vat/base_vat.py
+++ b/addons/base_vat/base_vat.py
@@ -126,6 +126,7 @@ class res_partner(osv.osv):
continue
vat_country, vat_number = self._split_vat(partner.vat)
if not check_func(cr, uid, vat_country, vat_number, context=context):
+ _logger.info(_("Importing VAT Number [%s] is not valid !" % vat_number))
return False
return True
@@ -149,7 +150,9 @@ class res_partner(osv.osv):
vat_no = "'CC##' (CC=Country Code, ##=VAT Number)"
if default_vat_check(vat_country, vat_number):
vat_no = _ref_vat[vat_country] if vat_country in _ref_vat else vat_no
- return '\n' + _('This VAT number does not seem to be valid.\nNote: the expected format is %s') % vat_no
+ #Retrieve the current partner for wich the VAT is not valid
+ error_partner = self.browse(cr, uid, ids, context=context)
+ return '\n' + _('The VAT number [%s] for partner [%s] does not seem to be valid. \nNote: the expected format is %s') % (error_partner[0].vat, error_partner[0].name, vat_no)
_constraints = [(check_vat, _construct_constraint_msg, ["vat"])]
diff --git a/addons/calendar/calendar.py b/addons/calendar/calendar.py
index 3dc1fa75b8d..e928432821b 100644
--- a/addons/calendar/calendar.py
+++ b/addons/calendar/calendar.py
@@ -714,7 +714,7 @@ class calendar_event(osv.Model):
"""
Return date and time (from to from) based on duration with timezone in string :
eg.
- 1) if user add duration for 2 hours, return : August-23-2013 at ( 04-30 To 06-30) (Europe/Brussels)
+ 1) if user add duration for 2 hours, return : August-23-2013 at (04-30 To 06-30) (Europe/Brussels)
2) if event all day ,return : AllDay, July-31-2013
"""
if context is None:
@@ -733,7 +733,7 @@ class calendar_event(osv.Model):
time = _("AllDay , %s") % (event_date)
elif meeting.duration < 24:
duration = date + timedelta(hours=meeting.duration)
- time = ("%s at ( %s To %s) (%s)") % (event_date, display_time, duration.strftime('%H-%M'), tz)
+ time = ("%s at (%s To %s) (%s)") % (event_date, display_time, duration.strftime('%H-%M'), tz)
else:
time = ("%s at %s To\n %s at %s (%s)") % (event_date, display_time, date_deadline.strftime('%B-%d-%Y'), date_deadline.strftime('%H-%M'), tz)
return time
@@ -1298,9 +1298,14 @@ class calendar_event(osv.Model):
invitation['attendee'].append({'name': attendee.cn, 'status': attendee.state})
return invitation
- def get_interval(self, cr, uid, ids, date, interval, context=None):
+ def get_interval(self, cr, uid, ids, date, interval, tz=None, context=None):
#Function used only in calendar_event_data.xml for email template
date = datetime.strptime(date.split('.')[0], DEFAULT_SERVER_DATETIME_FORMAT)
+
+ if tz:
+ timezone = pytz.timezone(tz or 'UTC')
+ date = date.replace(tzinfo=pytz.timezone('UTC')).astimezone(timezone)
+
if interval == 'day':
res = str(date.day)
elif interval == 'month':
@@ -1582,6 +1587,8 @@ class mail_message(osv.Model):
return super(mail_message, self).search(cr, uid, args, offset=offset, limit=limit, order=order, context=context, count=count)
def _find_allowed_model_wise(self, cr, uid, doc_model, doc_dict, context=None):
+ if context is None:
+ context = {}
if doc_model == 'calendar.event':
order = context.get('order', self._order)
for virtual_id in self.pool[doc_model].get_recurrent_ids(cr, uid, doc_dict.keys(), [], order=order, context=context):
diff --git a/addons/calendar/calendar_data.xml b/addons/calendar/calendar_data.xml
index 268c4b96bed..ef413ee3bb5 100644
--- a/addons/calendar/calendar_data.xml
+++ b/addons/calendar/calendar_data.xml
@@ -147,7 +147,7 @@
${object.event_id.get_interval(object.event_id.date,'day')}
${object.event_id.get_interval(object.event_id.date, 'month')}
- ${object.event_id.get_interval(object.event_id.date, 'time')}
+ ${not object.event_id.allday and object.event_id.get_interval(object.event_id.date, 'time', tz=object.partner_id.tz) or ''}
@@ -212,7 +212,7 @@
:
% for attendee in object.event_id.attendee_ids:
-
+
% if attendee.cn != object.cn:
${attendee.cn}
% else:
@@ -227,9 +227,9 @@
|
|