def render_fragment(self, request, context, template_name): """ Uses block rendering functions, see end of file. """ if template_name is None: if 'redirect' in context: return HttpResponse(simplejson.dumps({ 'redirect': request.build_absolute_uri(context['redirect']) }), mimetype="application/json") raise NotImplementedError body = render_blocks_to_string(template_name + '.html', context, RequestContext(request)) uri = tidy_query_string(request.get_full_path()) try: title = xhtml_slimmer(body['whole_title']) except: logger.warn('Slimmer failed to slim title', exc_info=True) title = body['whole_title'] try: pagebody = xhtml_slimmer(body['body']) except: logger.warn('Slimmer failed to slim body', exc_info=True) pagebody = body['body'] return HttpResponse(simplejson.dumps({ 'uri': uri, 'body': pagebody, 'title': title, }), mimetype="application/json")
def render_fragment(self, request, context, template_name): """ Uses block rendering functions, see end of file. """ if template_name is None: if 'redirect' in context: return HttpResponse( simplejson.dumps({ 'redirect': request.build_absolute_uri( context['redirect']) }), mimetype="application/json") raise NotImplementedError body = render_blocks_to_string(template_name + '.html', context, RequestContext(request)) scheme, netloc, path, params, query, fragment = \ urlparse(request.get_full_path()) args = [] for k, vs in parse_qs(query).items(): if k in ('format', 'language_code'): continue else: for v in vs: args.append((k, v)) query = urlencode(args) uri = urlunparse((scheme, netloc, path, params, query, fragment)) try: title = xhtml_slimmer(body['whole_title']) except Exception: logger.warn('Slimmer failed to slim title', exc_info=True) title = body['whole_title'] try: pagebody = xhtml_slimmer(body['body']) except Exception: logger.warn('Slimmer failed to slim body', exc_info=True) pagebody = body['body'] return HttpResponse( simplejson.dumps({ 'uri': uri, 'body': pagebody, 'title': title, }), mimetype="application/json")
def render_fragment(self, request, context, template_name): """ Uses block rendering functions, see end of file. """ if template_name is None: if 'redirect' in context: return HttpResponse( simplejson.dumps({ 'redirect': request.build_absolute_uri( context['redirect']) }), mimetype="application/json") raise NotImplementedError body = render_blocks_to_string(template_name + '.html', context, RequestContext(request)) uri = tidy_query_string(request.get_full_path()) try: title = xhtml_slimmer(body['whole_title']) except: logger.warn('Slimmer failed to slim title', exc_info=True) title = body['whole_title'] try: pagebody = xhtml_slimmer(body['body']) except: logger.warn('Slimmer failed to slim body', exc_info=True) pagebody = body['body'] return HttpResponse( simplejson.dumps({ 'uri': uri, 'body': pagebody, 'title': title, }), mimetype="application/json")