def image_asset_detail(request, pk): """ Display detail information for a specific image asset.""" image = get_object_or_404(ImageAsset, id=pk) image_usage = ImageAsset.get_image_usage(image) if request.method =="POST": editimageform = ImageAssetForm(data=request.POST, instance=image) if editimageform.is_valid(): editimageform.save() #record action for activity stream action.send(request.user, verb="updated", action_object=image) return redirect('asset_detail', pk=image.id) else: editimageform = ImageAssetForm(instance=image) return render(request, 'editorial/assetdetail_image.html', { 'image': image, 'image_usage': image_usage, 'editimageform': editimageform, })
def copy_network_story(request, pk): """ Copy a story and related facets. """ original_story = get_object_or_404(Story, pk=pk) original_org = original_story.organization original_webfacet = original_story.webfacetstory.all() original_printfacet = original_story.printfacetstory.all() original_audiofacet = original_story.audiofacetstory.all() original_videofacet = original_story.videofacetstory.all() user = request.user organization = request.user.organization partner = request.user.organization # record action for activity story_team # action.send(request.user, verb="picked up", action_object=original_story) if request.method == "POST": # Create a copy of the story and a storycopydetail record copied_story = Story.copy_story(original_story) copied_story.owner = user copied_story.organization = organization copied_story.save() story_copy_record = StoryCopyDetail.objects.create_story_copy_record( original_org=original_org, partner=partner, original_story=original_story, partner_story=copied_story ) # Create copy of facets if they exist # Copy the WebFacet if original_webfacet: print original_webfacet[0] copied_webfacet = WebFacet.copy_webfacet(original_webfacet[0]) copied_webfacet.story = copied_story copied_webfacet.owner = user copied_webfacet.organization = organization copied_webfacet.save() webfacet_copy_record = WebFacetCopyDetail.objects.create_webfacet_copy_record( original_org=original_org, partner=partner, original_webfacet=original_webfacet[0], partner_webfacet=copied_webfacet ) # create copy of webfacet images original_webfacet_images = WebFacet.get_webfacet_images(original_webfacet[0]) for image in original_webfacet_images: copied_image = ImageAsset.copy_image(image) copied_image.owner = user copied_image.organization = organization copied_image.save() imageasset_copy_record = ImageAssetCopyDetail.objects.create_imageasset_copy_record( original_org=original_org, partner=partner, original_imageasset=image, partner_imageasset=copied_image ) # add image to copied webfacet copied_webfacet.image_assets.add(copied_image) copied_webfacet.save() # create copy of webfacet documents original_webfacet_documents = WebFacet.get_webfacet_documents(original_webfacet[0]) for document in original_webfacet_documents: copied_document = DocumentAsset.copy_document(document) copied_document.owner = user copied_document.organization = organization copied_document.save() documentasset_copy_record = DocumentAssetCopyDetail.objects.create_documentasset_copy_record( original_org=original_org, partner=partner, original_documentasset=document, partner_documentasset=copied_document ) # add document to copied webfacet copied_webfacet.document_assets.add(copied_document) copied_webfacet.save() # create copy of webfacet audio original_webfacet_audiofiles = WebFacet.get_webfacet_audio(original_webfacet[0]) for audio in original_webfacet_audiofiles: copied_audio = AudioAsset.copy_audio(audio) copied_audio.owner = user copied_audio.organization = organization copied_audio.save() audioasset_copy_record = AudioAssetCopyDetail.objects.create_audioasset_copy_record( original_org=original_org, partner=partner, original_audioasset=audio, partner_audioasset=copied_audio ) # add audio to copied webfacet copied_webfacet.audio_assets.add(copied_audio) copied_webfacet.save() # create copy of webfacet video # original_webfacet_video = WebFacet.get_webfacet_video(original_webfacet[0]) for video in original_webfacet_videos: copied_video = VideoAsset.copy_video(video) copied_video.owner = user copied_video.organization = organization copied_video.save() videoasset_copy_record = VideoAssetCopyDetail.objects.create_videoasset_copy_record( original_org=original_org, partner=partner, original_videoasset=video, partner_videoasset=copied_video ) # add video to copied webfacet copied_webfacet.video_assets.add(copied_video) copied_webfacet.save() # Copy the PrintFacet if original_printfacet: print original_printfacet[0] copied_printfacet = PrintFacet.copy_printfacet(original_printfacet[0]) copied_printfacet.story = copied_story copied_printfacet.owner = user copied_printfacet.organization = organization copied_printfacet.save() printfacet_copy_record = PrintFacetCopyDetail.objects.create_printfacet_copy_record( original_org=original_org, partner=partner, original_printfacet=original_printfacet, partner_printfacet=copied_printfacet ) # create copy of printfacet images original_printfacet_images = PrintFacet.get_printfacet_images(original_printfacet[0]) for image in original_printfacet_images: copied_image = ImageAsset.copy_image(image) copied_image.owner = user copied_image.organization = organization copied_image.save() imageasset_copy_record = ImageAssetCopyDetail.objects.create_imageasset_copy_record( original_org=original_org, partner=partner, original_imageasset=image, partner_imageasset=copied_image ) # add image to copied printfacet copied_printfacet.image_assets.add(copied_image) copied_printfacet.save() # create copy of printfacet documents original_printfacet_documents = PrintFacet.get_printfacet_documents(original_printfacet[0]) for document in original_printfacet_documents: copied_document = DocumentAsset.copy_document(document) copied_document.owner = user copied_document.organization = organization copied_document.save() documentasset_copy_record = DocumentAssetCopyDetail.objects.create_documentasset_copy_record( original_org=original_org, partner=partner, original_documentasset=document, partner_documentasset=copied_document ) # add document to copied printfacet copied_printfacet.document_assets.add(copied_document) copied_printfacet.save() # create copy of printfacet audio original_printfacet_audiofiles = PrintFacet.get_printfacet_audio(original_printfacet[0]) for audio in original_printfacet_audios: copied_audio = AudioAsset.copy_audio(audio) copied_audio.owner = user copied_audio.organization = organization copied_audio.save() audioasset_copy_record = AudioAssetCopyDetail.objects.create_audioasset_copy_record( original_org=original_org, partner=partner, original_audioasset=audio, partner_audioasset=copied_audio ) # add audio to copied printfacet copied_printfacet.audio_assets.add(copied_audio) copied_printfacet.save() # create copy of printfacet video original_printfacet_video = PrintFacet.get_printfacet_video(original_printfacet[0]) for video in original_printfacet_videos: copied_video = VideoAsset.copy_video(video) copied_video.owner = user copied_video.organization = organization copied_video.save() videoasset_copy_record = VideoAssetCopyDetail.objects.create_videoasset_copy_record( original_org=original_org, partner=partner, original_videoasset=video, partner_videoasset=copied_video ) # add video to copied printfacet copied_printfacet.video_assets.add(copied_video) copied_printfacet.save() # Copy the AudioFacet if original_audiofacet: print original_audiofacet[0] copied_audiofacet = AudioFacet.copy_audiofacet(original_audiofacet[0]) copied_audiofacet.story = copied_story copied_audiofacet.owner = user copied_audiofacet.organization = organization copied_audiofacet.save() audiofacet_copy_record = AudioFacetCopyDetail.objects.create_audiofacet_copy_record( original_org=original_org, partner=partner, original_audiofacet=original_audiofacet, partner_audiofacet=copied_audiofacet ) print "Audiofacet Copied" # create copy of audiofacet images original_audiofacet_images = AudioFacet.get_audiofacet_images(original_audiofacet[0]) for image in original_audiofacet_images: copied_image = ImageAsset.copy_image(image) copied_image.owner = user copied_image.organization = organization copied_image.save() imageasset_copy_record = ImageAssetCopyDetail.objects.create_imageasset_copy_record( original_org=original_org, partner=partner, original_imageasset=image, partner_imageasset=copied_image ) # add image to copied audiofacet copied_audiofacet.image_assets.add(copied_image) copied_audiofacet.save() # create copy of audiofacet documents original_audiofacet_documents = AudioFacet.get_audiofacet_documents(original_audiofacet[0]) for document in original_audiofacet_documents: copied_document = DocumentAsset.copy_document(document) copied_document.owner = user copied_document.organization = organization copied_document.save() documentasset_copy_record = DocumentAssetCopyDetail.objects.create_documentasset_copy_record( original_org=original_org, partner=partner, original_documentasset=document, partner_documentasset=copied_document ) # add document to copied audiofacet copied_audiofacet.document_assets.add(copied_document) copied_audiofacet # create copy of audiofacet audio original_audiofacet_audiofiles = AudioFacet.get_audiofacet_audio(original_audiofacet[0]) for audio in original_audiofacet_audios: copied_audio = AudioAsset.copy_audio(audio) copied_audio.owner = user copied_audio.organization = organization copied_audio.save() audioasset_copy_record = AudioAssetCopyDetail.objects.create_audioasset_copy_record( original_org=original_org, partner=partner, original_audioasset=audio, partner_audioasset=copied_audio ) # add audio to copied audiofacet copied_audiofacet.audio_assets.add(copied_audio) copied_audiofacet.save() # create copy of audiofacet video original_audiofacet_video = AudioFacet.get_audiofacet_video(original_audiofacet[0]) for video in original_audiofacet_videos: copied_video = VideoAsset.copy_video(video) copied_video.owner = user copied_video.organization = organization copied_video.save() videoasset_copy_record = VideoAssetCopyDetail.objects.create_videoasset_copy_record( original_org=original_org, partner=partner, original_videoasset=video, partner_videoasset=copied_video ) # add video to copied audiofacet copied_audiofacet.video_assets.add(copied_video) copied_audiofacet.save() # Copy the VideoFacet if original_videofacet: print original_videofacet[0] copied_videofacet = VideoFacet.copy_videofacet(original_videofacet[0]) copied_videofacet.story = copied_story copied_videofacet.owner = user copied_videofacet.organization = organization copied_videofacet.save() videofacet_copy_record = VideoFacetCopyDetail.objects.create_videofacet_copy_record( original_org=original_org, partner=partner, original_videofacet=original_videofacet, partner_videofacet=copied_videofacet ) print "Videofacet Copied" # create copy of videofacet images original_videofacet_images = VideoFacet.get_videofacet_images(original_videofacet[0]) for image in original_videofacet_images: copied_image = ImageAsset.copy_image(image) copied_image.owner = user copied_image.organization = organization copied_image.save() imageasset_copy_record = ImageAssetCopyDetail.objects.create_imageasset_copy_record( original_org=original_org, partner=partner, original_imageasset=image, partner_imageasset=copied_image ) # add image to copied videofacet partner_videofacet.image_assets.add(copied_image) partner_videofacet.save() # create copy of videofacet documents original_videofacet_documents = VideoFacet.get_videofacet_documents(original_videofacet[0]) for document in original_videofacet_documents: copied_document = DocumentAsset.copy_document(document) copied_document.owner = user copied_document.organization = organization copied_document.save() documentasset_copy_record = DocumentAssetCopyDetail.objects.create_documentasset_copy_record( original_org=original_org, partner=partner, original_documentasset=document, partner_documentasset=copied_document ) # add document to copied videofacet partner_documentasset.document_assets.add(copied_document) partner_documentasset.save() # create copy of videofacet audio original_videofacet_audiofiles = VideoFacet.get_videofacet_audio(original_videofacet[0]) for audio in original_videofacet_audiofiles: copied_audio = AudioAsset.copy_audio(audio) copied_audio.owner = user copied_audio.organization = organization copied_audio.save() audioasset_copy_record = AudioAssetCopyDetail.objects.create_audioasset_copy_record( original_org=original_org, partner=partner, original_audioasset=audio, partner_audioasset=copied_audio ) # add audio to copied audiofacet partner_audioasset.audio_assets.add(copied_audio) partner_audioasset.save() # create copy of videofacet video original_videofacet_video = VideoFacet.get_videofacet_video(original_videofacet[0]) for video in original_videofacet_videos: copied_video = VideoAsset.copy_video(video) copied_video.owner = user copied_video.organization = organization copied_video.save() videoasset_copy_record = VideoAssetCopyDetail.objects.create_videoasset_copy_record( original_org=original_org, partner=partner, original_videoasset=video, partner_videoasset=copied_video ) # add video to copied videofacet partner_videoasset.video_assets.add(copied_video) partner_videoasset.save() return redirect('network_stories')
def create_download(request, pk): """ Process download form to collect objects and create download file.""" # get the story and associated facets no matter what options are selected story_id = request.POST.get('story') story = get_object_or_404(Story, id=pk) story_txt = Story.get_story_download(story) select_all_images = [] image_txt = "" select_all_documents = [] document_txt = "" select_all_audio = [] audio_txt = "" if story.webfacetstory.all(): webfacet = story.webfacetstory.all()[0] webfacet_images = WebFacet.get_webfacet_images(webfacet) webfacet_documents = WebFacet.get_webfacet_documents(webfacet) webfacet_audio = WebFacet.get_webfacet_audio(webfacet) select_all_images.extend(webfacet_images) select_all_documents.extend(webfacet_documents) select_all_audio.extend(webfacet_audio) webfacet_txt = WebFacet.get_webfacet_download(webfacet) if story.printfacetstory.all(): printfacet = story.printfacetstory.all()[0] printfacet_images = PrintFacet.get_printfacet_images(printfacet) printfacet_documents = PrintFacet.get_printfacet_documents(printfacet) printfacet_audio = PrintFacet.get_printfacet_audio(printfacet) select_all_images.extend(printfacet_images) select_all_documents.extend(printfacet_documents) select_all_audio.extend(printfacet_audio) printfacet_txt = PrintFacet.get_printfacet_download(printfacet) if story.audiofacetstory.all(): audiofacet = story.audiofacetstory.all()[0] audiofacet_images = AudioFacet.get_audiofacet_images(audiofacet) audiofacet_documents = AudioFacet.get_audiofacet_documents(audiofacet) audiofacet_audio = AudioFacet.get_audiofacet_audio(audiofacet) select_all_images.extend(audiofacet_images) select_all_documents.extend(audiofacet_documents) select_all_audio.extend(audiofacet_audio) audiofacet_txt = AudioFacet.get_audiofacet_download(audiofacet) if story.videofacetstory.all(): videofacet = story.videofacetstory.all()[0] videofacet_images = VideoFacet.get_videofacet_images(videofacet) videofacet_documents = VideoFacet.get_videofacet_documents(videofacet) videofacet_audio = VideoFacet.get_videofacet_audio(videofacet) select_all_images.extend(videofacet_images) select_all_documents.extend(videofacet_documents) select_all_audio.extend(videofacet_audio) videofacet_txt = VideoFacet.get_videofacet_download(videofacet) # Set up zip file fp = StringIO() z = ZipFile(fp, mode="w") # Always Zip up story meta z.writestr("story.txt", story_txt) # ------------------------------ # # IF SELECT ALL # # ------------------------------ # # if select_all is chosen, then all items will be downloaded select_all = request.POST.get('select_all') print "select all: ", select_all if select_all: # Zip up all facets and assets including story metadata if story.webfacetstory.all(): z.writestr("webstory.txt", webfacet_txt) if story.printfacetstory.all(): z.writestr("printstory.txt", printfacet_txt) if story.audiofacetstory.all(): z.writestr("audiostory.txt", audiofacet_txt) if story.videofacetstory.all(): z.writestr("videostory.txt", videofacet_txt) for image in select_all_images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info for document in select_all_documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info for audiofile in select_all_audio: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # user can also select download all items associated with certain facets # ------------------------------ # # IF WEBFACET ALL # # ------------------------------ # webfacet_sa = request.POST.get('webfacet_sa') print "WSA: ", webfacet_sa if webfacet_sa: # Zip up story meta, webfacet content and webfacet images if story.webfacetstory.all(): z.writestr("webstory.txt", webfacet_txt) for image in webfacet_images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info for document in webfacet_documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info for audiofile in webfacet_audio: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # ------------------------------ # # IF PRINTFACET ALL # # ------------------------------ # printfacet_sa = request.POST.get('printfacet_sa') print "PSA: ", printfacet_sa if printfacet_sa: # Zip up story meta, printfacet content and printfacet images if story.printfacetstory.all(): z.writestr("printstory.txt", printfacet_txt) for image in printfacet_images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info for document in printfacet_documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info for audiofile in printfacet_audio: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # ------------------------------ # # IF AUDIOFACET ALL # # ------------------------------ # audiofacet_sa = request.POST.get('audiofacet_sa') print "ASA: ", audiofacet_sa if audiofacet_sa: # Zip up story meta, audiofacet content and audiofacet images if story.audiofacetstory.all(): z.writestr("audiostory.txt", audiofacet_txt) for image in audiofacet_images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info for document in audiofacet_documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info for audiofile in audiofacet_audio: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # ------------------------------ # # IF VIDEOFACET ALL # # ------------------------------ # videofacet_sa = request.POST.get('videofacet_sa') print "VDS: ", videofacet_sa if videofacet_sa: # Zip up story meta, audiofacet content and audiofacet images if story.videofacetstory.all(): z.writestr("videostory.txt", videofacet_txt) for image in videofacet_images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info for document in videofacet_documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info for audiofile in videofacet_audio: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # if not select all OR facet select all, then user chooses the facet and the images # ------------------------------ # # IF WEBFACET SPECIFIC # # ------------------------------ # webfacet_only = request.POST.get('webfacet') if webfacet_only: z.writestr("webstory.txt", webfacet_txt) # ------------------------------ # # IF PRINTFACET SPECIFIC # # ------------------------------ # printfacet_only = request.POST.get('printfacet') if printfacet_only: z.writestr("printstory.txt", printfacet_txt) # ------------------------------ # # IF AUDIOFACET SPECIFIC # # ------------------------------ # audiofacet_only = request.POST.get('audiofacet') if audiofacet_only: z.writestr("audiostory.txt", audiofacet_txt) # ------------------------------ # # IF VIDEOFACET SPECIFIC # # ------------------------------ # videofacet_only = request.POST.get('videofacet') if videofacet_only: z.writestr("videostory.txt", videofacet_txt) # ------------------------------ # # IF SPECIFIC IMAGES # # ------------------------------ # # if not select all or by facet, then user chooses specific images images = request.POST.getlist('images') images = ImageAsset.objects.filter(pk__in=images) print "Images: ", images if images: for image in images: z.writestr("{image}.jpg".format(image=image.asset_title), image.photo.read()) new_info = ImageAsset.get_image_download_info(image) image_txt += new_info # ------------------------------ # # IF SPECIFIC DOCUMENTS # # ------------------------------ # # if not select all or by facet, then user chooses specific documents documents = request.POST.getlist('documents') documents = DocumentAsset.objects.filter(pk__in=documents) print "Documents: ", documents if documents: for document in documents: if document.doc_type == "PDF": z.writestr("{document}.pdf".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "WORD": z.writestr("{document}.docx".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "TXT": z.writestr("{document}.txt".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "CSV": z.writestr("{document}.csv".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info if document.doc_type == "XLS": z.writestr("{document}.xls".format(document=document.asset_title), document.document.read()) new_info = DocumentAsset.get_document_download_info(document) document_txt += new_info # ------------------------------ # # IF SPECIFIC AUDIO # # ------------------------------ # # if not select all or by facet, then user chooses specific audiofiles audiofiles = request.POST.getlist('audiofiles') audiofiles = AudioAsset.objects.filter(pk__in=audiofiles) print "Audiofiles: ", audiofiles if audiofiles: for audiofile in audiofiles: if audiofile.audio_type == "MP3": z.writestr("{audiofile}.mp3".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info if audiofile.audio_type == "WAV": z.writestr("{audiofile}.wav".format(audiofile=document.asset_title), audiofile.audio.read()) new_info = AudioAsset.get_audio_download_info(audiofile) audio_txt += new_info # ------------------------------ # # Create download # # ------------------------------ # #Take the final version of image_txt and write it. z.writestr("image.txt", image_txt) z.writestr("document.txt", document_txt) z.writestr("audio.txt", audio_txt) z.close() fp.seek(0) response = HttpResponse(fp, content_type='application/zip') fp.close() return response