#
##############################################################################
-import time
from document_webdav import nodes
-from document.nodes import _str2time
+from document.nodes import _str2time, nodefd_static
import logging
-import StringIO
from orm_utils import get_last_modified
try:
- from tools.dict_tools import dict_merge, dict_merge2
+ from tools.dict_tools import dict_merge2
except ImportError:
- from document.dict_tools import dict_merge, dict_merge2
+ from document.dict_tools import dict_merge2
# TODO: implement DAV-aware errors, inherit from IOError
res.append(child._get_caldav_calendar_data(cr))
return res
+ def open_data(self, cr, mode):
+ return nodefd_static(self, cr, mode)
+
def _get_caldav_calendar_description(self, cr):
uid = self.context.uid
calendar_obj = self.context._dirobj.pool.get('basic.calendar')
try:
calendar = calendar_obj.browse(cr, uid, self.calendar_id, context=ctx)
return calendar.description or calendar.name
- except Exception, e:
+ except Exception:
return None
def _get_dav_supported_report_set(self, cr):
self.model = res_model
self.res_id = res_id
- def open(self, cr, mode=False):
- if self.type in ('collection','database'):
- return False
- s = StringIO.StringIO(self.get_data(cr))
- s.name = self
- return s
+ def open_data(self, cr, mode):
+ return nodefd_static(self, cr, mode)
- def get_data(self, cr, fil_obj = None):
+ def get_data(self, cr, fil_obj=None):
uid = self.context.uid
calendar_obj = self.context._dirobj.pool.get('basic.calendar')
context = self.context.context.copy()
res = '%d' % (self.calendar_id)
return res
+ def _get_wtag(self, cr):
+ uid = self.context.uid
+ context = self.context.context
+ if self.model and self.res_id:
+ mod_obj = self.context._dirobj.pool.get(self.model)
+ pr = mod_obj.perm_read(cr, uid, [self.res_id], context=context, details=False)[0]
+ self.write_date = pr.get('write_date') or pr.get('create_date')
+
+ # Super will use self.write_date, so we should be fine.
+ return super(res_node_calendar, self)._get_wtag(cr)
+
def rm(self, cr):
uid = self.context.uid
res = False