def show_resource(request, project_id, resource_id, variant): resource = get_object_or_404(ResourceFile, pk=resource_id, project__owner=request.user) if variant == '0': variant = '' variant = resource.get_best_variant(variant) content_types = { u'png': 'image/png', u'png-trans': 'image/png', u'bitmap': 'image/png', u'pbi': 'image/png', u'font': 'application/octet-stream', u'raw': 'application/octet-stream' } content_disposition = "attachment; filename=\"%s\"" % resource.file_name content_type = content_types[resource.kind] if settings.AWS_ENABLED: headers = { 'response-content-disposition': content_disposition, 'Content-Type': content_type } return HttpResponseRedirect(s3.get_signed_url('source', variant.s3_path, headers=headers)) else: response = HttpResponse(open(variant.local_filename), content_type=content_type) response['Content-Disposition'] = content_disposition return response
def show_resource(request, project_id, resource_id, variant): resource = get_object_or_404(ResourceFile, pk=resource_id, project__owner=request.user) if variant == '0': variant = '' variant = resource.get_best_variant(variant) content_types = { u'png': 'image/png', u'png-trans': 'image/png', u'bitmap': 'image/png', u'pbi': 'image/png', u'font': 'application/octet-stream', u'raw': 'application/octet-stream' } content_disposition = "attachment; filename=\"%s\"" % resource.file_name content_type = content_types[resource.kind] if settings.AWS_ENABLED: headers = { 'response-content-disposition': content_disposition, 'Content-Type': content_type } return HttpResponseRedirect( s3.get_signed_url('source', variant.s3_path, headers=headers)) else: response = HttpResponse(open(variant.local_filename), content_type=content_type) response['Content-Disposition'] = content_disposition return response