Example #1
0
 def serve_from_gridfs(request, path):
     try:
         gridfile = gridfs_storage.open(path)
     except NoFile:
         raise Http404
     else:
         return HttpResponse(gridfile, mimetype=guess_type(path)[0])
Example #2
0
def file_properties(request,path):
	gridfile = gridfs_storage.open(path)
	file_type = str(gridfile.filename).split(".")[1]
	datetime_obj_naive = gridfile.upload_date

	date = datetime_obj_naive.replace(tzinfo=pytz.utc)

	# datetime_obj = gridfile.upload_date #datetime.strptime(gridfile.upload_date, "%Y-%m-%d %H:%M:%S")
	# datetime_obj_naive.utctimetuple()
	datetime_obj_india = date.astimezone(tz=timezone('Asia/Kolkata'))
	# print (datetime_obj_india)
	# datetime_obj_india = date.astimezone(pytz.utc)
	# date = pytz.utc.localize(datetime_obj_india)
	cl = MongoClient()
	db = cl.my_database
	x = db.gridfsuploads_userfiles.find_one({'file_name':path})



	properties = {"file_size":str(float(gridfile.length)/1000)+" KB","file_name":gridfile.filename,
	"file_type":file_type,"upload_date":datetime_obj_india, "owner":x.get("user")}

	return render_to_response(
		'gridfsuploads/file_properties.html',
		{'properties': properties},
		context_instance=RequestContext(request)
	)
Example #3
0
File: views.py Project: helgurd/DMS
def file_properties(request, path):
    gridfile = gridfs_storage.open(path)
    file_type = str(gridfile.filename).split(".")[1]
    datetime_obj_naive = gridfile.upload_date

    date = datetime_obj_naive.replace(tzinfo=pytz.utc)

    # datetime_obj = gridfile.upload_date #datetime.strptime(gridfile.upload_date, "%Y-%m-%d %H:%M:%S")
    # datetime_obj_naive.utctimetuple()
    datetime_obj_india = date.astimezone(tz=timezone('Asia/Kolkata'))
    # print (datetime_obj_india)
    # datetime_obj_india = date.astimezone(pytz.utc)
    # date = pytz.utc.localize(datetime_obj_india)
    cl = MongoClient()
    db = cl.my_database
    x = db.gridfsuploads_userfiles.find_one({'file_name': path})

    properties = {
        "file_size": str(float(gridfile.length) / 1000) + " KB",
        "file_name": gridfile.filename,
        "file_type": file_type,
        "upload_date": datetime_obj_india,
        "owner": x.get("user")
    }

    return render_to_response('gridfsuploads/file_properties.html',
                              {'properties': properties},
                              context_instance=RequestContext(request))
Example #4
0
 def serve_from_gridfs(request, path):
     # Serving GridFS files through Django is inefficient and
     # insecure. NEVER USE IN PRODUCTION!
     try:
         gridfile = gridfs_storage.open(path)
     except NoFile:
         raise Http404
     else:
         return HttpResponse(gridfile, mimetype=guess_type(path)[0])
Example #5
0
def download_file(request, path):
		# Serving GridFS files through Django is inefficient and
		# insecure. NEVER USE IN PRODUCTION!
		try:
			gridfile = gridfs_storage.open(path)
		except NoFile:
			# raise Http404
			return HttpResponse("<h1>Either file name is incorrect or file doesn't exist!</h1>")
		else:
			return HttpResponse(gridfile,mimetype=guess_type(path)[0]) 
Example #6
0
File: views.py Project: helgurd/DMS
def download_file(request, path):
    # Serving GridFS files through Django is inefficient and
    # insecure. NEVER USE IN PRODUCTION!
    try:
        gridfile = gridfs_storage.open(path)
    except NoFile:
        # raise Http404
        return HttpResponse(
            "<h1>Either file name is incorrect or file doesn't exist!</h1>")
    else:
        return HttpResponse(gridfile, mimetype=guess_type(path)[0])
Example #7
0
	def serve_from_gridfs(request, path):
		# Serving GridFS files through Django is inefficient and
		# insecure. NEVER USE IN PRODUCTION!
		try:
			gridfile = gridfs_storage.open(path)
		except NoFile:
			# raise Http404
			return HttpResponse("<h1>Either file name is incorrect or file doesn't exist!</h1>")
		else:
			TEMP_DIR = os.path.join(PROJECT_DIR,'temp/')
			ORIG_FILE_DIR = os.path.join(PROJECT_DIR,'temp_orig/')

			

			#create TEMP_DIR is noy exists
			if not os.path.exists(TEMP_DIR):
				os.makedirs(TEMP_DIR)


			#emtying content of a TEMP_DIR folder
			# filelist = [ f for f in os.listdir(TEMP_DIR) ] #if f.endswith(".")
			# for f in filelist:
			# 	os.remove(f)

			#create ORIG_FILE_DIR if not exist
			if not os.path.exists(ORIG_FILE_DIR):
				os.makedirs(ORIG_FILE_DIR)
			
			

			ORIG_FILE = os.path.join(ORIG_FILE_DIR,gridfile.name);
						
			
			file_type = str(gridfile.name).split(".")[1]
			file_name = str(gridfile.name).split(".")[0]
			

			if file_type != 'pdf':  # for a particular file type
				do = open(ORIG_FILE,"ab")
				# print '++++++file name: '+ORIG_FILE
				#if file exists clear its content
				do.seek(0)
				do.truncate()
				do.write(gridfile.read())
				do.close()
				

				# print '+++++++++++++calling uno: '+ORIG_FILE
				call(["unoconv","-f","pdf","-o",TEMP_DIR,ORIG_FILE])
				# print '-------------uno called'
				os.remove(ORIG_FILE)
				shutil.rmtree(ORIG_FILE_DIR)
				# gridfile.close()

				
				# print '******output file:'+TEMP_DIR+file_name+'.pdf'
				name = file_name+'.pdf'
				# print 'llllllllllllllllll----filename: '+name
				PDF_DIR=os.path.join(TEMP_DIR,name)
				res = open(PDF_DIR,"rb")
			else:
				res = gridfile
				name = path
				# print 'xxxxxxxxxxxx;;;;;---'+path


			# do = open(ORIG_FILE,"ab")
			# print '++++++file name: '+ORIG_FILE
			# #if file exists clear its content
			# do.seek(0)
			# do.truncate()
			# do.write(gridfile.read())
			# do.close()
			# print '+++++++++++++calling uno: '+ORIG_FILE
			# call(["unoconv","-f","pdf","-o",TEMP_DIR,ORIG_FILE])
			# print '-------------uno called'
			# os.remove(ORIG_FILE)
			# shutil.rmtree(ORIG_FILE_DIR)
			# # gridfile.close()				
			# # print '******output file:'+TEMP_DIR+file_name+'.pdf'
			# name = file_name+'.pdf'
			# # print 'llllllllllllllllll----filename: '+name
			# PDF_DIR=os.path.join(TEMP_DIR,name)
			# res = open(PDF_DIR,"rb")

			return HttpResponse(res,mimetype=guess_type(name)[0]) #mimetype=guess_type(res)[0]
Example #8
0
File: views.py Project: helgurd/DMS
    def serve_from_gridfs(request, path):
        # Serving GridFS files through Django is inefficient and
        # insecure. NEVER USE IN PRODUCTION!
        try:
            gridfile = gridfs_storage.open(path)
        except NoFile:
            # raise Http404
            return HttpResponse(
                "<h1>Either file name is incorrect or file doesn't exist!</h1>"
            )
        else:
            TEMP_DIR = os.path.join(PROJECT_DIR, 'temp/')
            ORIG_FILE_DIR = os.path.join(PROJECT_DIR, 'temp_orig/')

            #create TEMP_DIR is noy exists
            if not os.path.exists(TEMP_DIR):
                os.makedirs(TEMP_DIR)

            #emtying content of a TEMP_DIR folder
            # filelist = [ f for f in os.listdir(TEMP_DIR) ] #if f.endswith(".")
            # for f in filelist:
            # 	os.remove(f)

            #create ORIG_FILE_DIR if not exist
            if not os.path.exists(ORIG_FILE_DIR):
                os.makedirs(ORIG_FILE_DIR)

            ORIG_FILE = os.path.join(ORIG_FILE_DIR, gridfile.name)

            file_type = str(gridfile.name).split(".")[1]
            file_name = str(gridfile.name).split(".")[0]

            if file_type != 'pdf':  # for a particular file type
                do = open(ORIG_FILE, "ab")
                # print '++++++file name: '+ORIG_FILE
                #if file exists clear its content
                do.seek(0)
                do.truncate()
                do.write(gridfile.read())
                do.close()

                # print '+++++++++++++calling uno: '+ORIG_FILE
                call(["unoconv", "-f", "pdf", "-o", TEMP_DIR, ORIG_FILE])
                # print '-------------uno called'
                os.remove(ORIG_FILE)
                shutil.rmtree(ORIG_FILE_DIR)
                # gridfile.close()

                # print '******output file:'+TEMP_DIR+file_name+'.pdf'
                name = file_name + '.pdf'
                # print 'llllllllllllllllll----filename: '+name
                PDF_DIR = os.path.join(TEMP_DIR, name)
                res = open(PDF_DIR, "rb")
            else:
                res = gridfile
                name = path
                # print 'xxxxxxxxxxxx;;;;;---'+path

            # do = open(ORIG_FILE,"ab")
            # print '++++++file name: '+ORIG_FILE
            # #if file exists clear its content
            # do.seek(0)
            # do.truncate()
            # do.write(gridfile.read())
            # do.close()
            # print '+++++++++++++calling uno: '+ORIG_FILE
            # call(["unoconv","-f","pdf","-o",TEMP_DIR,ORIG_FILE])
            # print '-------------uno called'
            # os.remove(ORIG_FILE)
            # shutil.rmtree(ORIG_FILE_DIR)
            # # gridfile.close()
            # # print '******output file:'+TEMP_DIR+file_name+'.pdf'
            # name = file_name+'.pdf'
            # # print 'llllllllllllllllll----filename: '+name
            # PDF_DIR=os.path.join(TEMP_DIR,name)
            # res = open(PDF_DIR,"rb")

            return HttpResponse(
                res,
                mimetype=guess_type(name)[0])  #mimetype=guess_type(res)[0]