def cms_media(request, path): file_name = path.rsplit('/', 1)[-1] mime_type = mimetypes.guess_type(file_name)[0] if mime_type is None: mime_type = DEFAULT_MIMETYPE resp = HttpResponse(mimetype=mime_type) data = oe_session.objects('cms.media.file', 'get_data', path) resp.write(base64.decodestring(data)) return resp
def process_request(self, request): if not getattr(settings, 'OPENERP_CONDITIONAL_RESET_CACHE'): return None last_reset = cache.get_last_cache_reset(oe_session.database) if not last_reset: last_reset = DEFAULT_DATE now = datetime.datetime.now() if datetime.datetime.strptime(last_reset, DATETIME_FORMATS[1]) + \ datetime.timedelta(seconds=settings.OPENERP_CACHE_CHECK_TIMEOUT) \ > now: return None ctx = oe_session.get_default_context() try: reset_cache_ids = oe_session.objects('cache.log', 'search', [('last_modified', '>', last_reset)], 0, None, 'last_modified', ctx) except OpenERPException, exc: if "Object cache.log doesn't exist" in unicode(exc): return raise