def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = ViewExportSerializer(context['views'], many=True) xml = ViewRenderer().render(serializer.data) return XMLResponse(xml, name='views') else: return render_to_format(self.request, format, _('Views'), 'views/views_export.html', context)
def render_project_answers(self, project, snapshot, attachments_format): return render_to_format(self.request, attachments_format, project.title, 'projects/project_answers_export.html', { 'project': project, 'current_snapshot': snapshot, 'format': attachments_format, 'title': project.title, })
def render_project_answers(self, project, snapshot, attachments_format): return render_to_format( self.request, attachments_format, project.title, 'projects/project_answers_export.html', { 'project': ProjectWrapper(project, snapshot), 'format': attachments_format, 'title': project.title, 'resource_path': get_value_path(project, snapshot) })
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = ExportSerializer(context['optionsets'], many=True) response = HttpResponse(XMLRenderer().render(serializer.data), content_type="application/xml") response['Content-Disposition'] = 'filename="options.xml"' return response else: return render_to_format(self.request, format, _('Options'), 'options/options_export.html', context)
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = OptionSetExportSerializer(context['optionsets'], many=True) xml = OptionSetRenderer().render(serializer.data) return XMLResponse(xml, name='options') else: return render_to_format(self.request, format, _('Options'), 'options/options_export.html', context)
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = CatalogExportSerializer(context['catalog']) xml = CatalogRenderer().render([serializer.data]) return XMLResponse(xml, name=context['catalog'].key) else: return render_to_format(self.request, format, context['catalog'].title, 'questions/catalog_export.html', context)
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = ExportSerializer(context['catalog']) xmldata = XMLRenderer().render(serializer.data) response = HttpResponse(prettify_xml(xmldata), content_type="application/xml") response['Content-Disposition'] = 'filename="%s.xml"' % context['catalog'].key return response else: return render_to_format(self.request, format, context['catalog'].title, 'questions/catalog_export.html', context)
def render_project_views(self, project, snapshot, view, attachments_format): try: rendered_view = view.render(project, snapshot) except TemplateSyntaxError: return HttpResponse() return render_to_format(self.request, attachments_format, project.title, 'projects/project_view_export.html', { 'project': project, 'current_snapshot': snapshot, 'format': attachments_format, 'title': project.title, 'view': view, 'rendered_view': rendered_view })
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = AttributeExportSerializer(context['attributes'], many=True) xml = AttributeRenderer().render(serializer.data) return XMLResponse(xml, name='domain') elif format[:3] == 'csv': if format == 'csvcomma': delimiter = ',' else: delimiter = ';' rows = [] for attribute in context['attributes']: rows.append((attribute.key, attribute.comment, attribute.uri)) return render_to_csv(_('Domain'), rows, delimiter) else: return render_to_format(self.request, format, _('Domain'), 'domain/domain_export.html', context)
def export_view(self, key): current_snapshot = None if self.format not in dict(settings.EXPORT_FORMATS): raise CommandError( 'Format "{}" is not supported for answers.'.format( self.format)) try: view = View.objects.get(key=key) except View.DoesNotExist: raise CommandError( 'A view with the key "{}" was not found.'.format(key)) for project in self.get_queryset(): context = { 'project': project, 'current_snapshot': current_snapshot, 'view': project.views.get(pk=view.id), 'rendered_view': view.render(project, snapshot=current_snapshot, export_format=self.format), 'project_wrapper': ProjectWrapper(project, current_snapshot), 'title': project.title, 'format': self.format, 'resource_path': get_value_path(project, current_snapshot) } response = render_to_format(None, context['format'], context['title'], 'projects/project_view_export.html', context) self.write_file(self.path / str(project.id) / key, response)
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = ExportSerializer(context['attributes'], many=True) xmldata = XMLRenderer().render(serializer.data) response = HttpResponse(prettify_xml(xmldata), content_type="application/xml") response['Content-Disposition'] = 'filename="domain.xml"' return response elif format[:3] == 'csv': if format == 'csvcomma': delimiter = ',' else: delimiter = ';' rows = [] for attribute in context['attributes']: rows.append((attribute.key, attribute.comment, attribute.uri)) return render_to_csv(self.request, _('Domain'), rows, delimiter) else: return render_to_format(self.request, format, _('Domain'), 'domain/domain_export.html', context)
def render_to_response(self, context, **response_kwargs): format = self.kwargs.get('format') if format == 'xml': serializer = ExportSerializer(context['entities'], many=True) xmldata = XMLRenderer().render(serializer.data) response = HttpResponse(prettify_xml(xmldata), content_type="application/xml") response['Content-Disposition'] = 'filename="domain.xml"' return response elif format == 'csv': rows = [] for entity in context['entities']: rows.append( (_('Attribute') if entity.is_attribute else _('Entity'), _('collection') if entity.is_collection else '', entity.key, entity.comment, entity.uri, entity.attribute.value_type if entity.is_attribute else '', entity.attribute.unit if entity.is_attribute else '')) return render_to_csv(self.request, _('Domain'), rows) else: return render_to_format(self.request, format, _('Domain'), 'domain/domain_export.html', context)
def export_answers(self): current_snapshot = None if self.format not in dict(settings.EXPORT_FORMATS): raise CommandError( 'Format "{}" is not supported for answers.'.format( self.format)) for project in self.get_queryset(): context = { 'project': project, 'current_snapshot': current_snapshot, 'project_wrapper': ProjectWrapper(project, current_snapshot), 'title': project.title, 'format': self.format, 'resource_path': get_value_path(project, current_snapshot) } response = render_to_format( None, context['format'], context['title'], 'projects/project_answers_export.html', context) self.write_file(self.path / str(project.id) / 'answers', response)
def render_to_response(self, context, **response_kwargs): return render_to_format(self.request, context['format'], context['title'], 'projects/project_view_export.html', context)