def overlaps(self, start, end): """ Returns true if the current timespan overlaps with the given start and end date. """ start, end = rasterize_span(start, end, self.raster) return utils.overlaps(start, end, self.start, self.end)
def overlapping_timeframe(context, start, end): if context.portal_type == 'seantis.reservation.timeframe': folder = context.aq_inner.aq_parent else: folder = context frames = timeframes_in_context(folder) for frame in frames: if frame.id == context.id: continue if utils.overlaps(start, end, frame.start, frame.end): return frame.getObject() return None