def application(environ, start_response): # emit status / headers form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ) #check if input is correct! lng = float(form.getvalue("lng")) lat = float(form.getvalue("lat")) elv = float(form.getvalue("elv")) filename = form.getvalue("filename") prettyprint = form.getvalue("pretty") isLocal = int(form.getvalue("isLocal")) fileitem = form['datafile'] # Test if the file was uploaded if fileitem.filename: if isLocal == 1: dir = '../output/tmpfolder' + str(time.time()) else: dir = '/var/www/converter/output/tmpfolder' + str(time.time()) dir = dir[:-3] diroriginal = dir + '/temp' dirnew = dir + '/out' os.mkdir(dir, 0777) os.mkdir(diroriginal, 0777) os.mkdir(dirnew, 0777) fn = diroriginal + "/" + os.path.basename(fileitem.filename) open(fn, 'wb').write(fileitem.file.read()) message = 'The file "' + fn + '" was uploaded successfully' else: message = 'No file was uploaded' #check if it's a zip file... #print fileitem.filename[-3:] if fileitem.filename[-3:] == 'dae': if (lng == 0 or lat == 0): convertedfilepath = "error: longitude or latitute is null..." else: convertedfilepath = convertCollada(fn, [lng, lat, elv], dirnew) elif fileitem.filename[-3:] == 'kmz' or fileitem.filename[-3:] == 'zip': kmzconv = kmzConverter.kmzConverter() convertedfilepath = kmzconv.convertKmz(fn, diroriginal, dirnew, fileitem.filename) else: convertedfilepath = "error: filetype not suported" status = "200 OK" headers = [('Content-Type', 'text/json'), ('Access-Control-Allow-Origin', '*'), ('Content-Length', str(len(convertedfilepath))), ('Cache-Control', 'no-cache')] start_response(status, headers) return convertedfilepath
os.mkdir(dirnew, 0777) #check if it's a zip file.. if inputfile[-3:] == 'dae': try: center except: print 'No center defined!' print "Usage: ColladaToJson.py -i <inputfile.dae> -c lng,lat,elv\nExample: ColladaToJson -i mymodel.dae -c 7.1234,45.243,1200" sys.exit(2) convertedfilepath = convertCollada(inputfile, center, dir) print "\n Generated model: " + convertedfilepath elif inputfile[-3:] == 'kmz' or inputfile[-3:] == 'zip': kmzconv = kmzConverter.kmzConverter() convertedfilepath = kmzconv.convertKmz(inputfile, diroriginal, dirnew, inputfile) print "\n Generated model zip: " + convertedfilepath else: print "filetype not suported" if convertedfilepath.find('error') > 0: print convertedfilepath sys.exit(2) os.rmdir(dir) shutil.rmtree(diroriginal) shutil.rmtree(dirnew) print '\n\n Conversion Succesful\n See the converted model in new folder: ' + dir except:
def application(environ, start_response): # emit status / headers form = cgi.FieldStorage(fp=environ['wsgi.input'],environ=environ) #check if input is correct! lng = float(form.getvalue("lng")) lat = float(form.getvalue("lat")) elv = float(form.getvalue("elv")) filename = form.getvalue("filename") prettyprint = form.getvalue("pretty") isLocal = int(form.getvalue("isLocal")) fileitem = form['datafile'] # Test if the file was uploaded if fileitem.filename: if isLocal == 1: dir = '../output/tmpfolder'+str(time.time()) else: dir = '/var/www/converter/output/tmpfolder'+str(time.time()) dir = dir[:-3] diroriginal = dir+'/temp' dirnew = dir+'/out' os.mkdir(dir, 0777) os.mkdir(diroriginal, 0777) os.mkdir(dirnew, 0777) fn = diroriginal+"/"+os.path.basename(fileitem.filename) open(fn, 'wb').write(fileitem.file.read()) message = 'The file "' + fn + '" was uploaded successfully' else: message = 'No file was uploaded' #check if it's a zip file... #print fileitem.filename[-3:] if fileitem.filename[-3:]=='dae': if(lng==0 or lat==0): convertedfilepath = "error: longitude or latitute is null..." else: convertedfilepath = convertCollada(fn,[lng,lat,elv],dirnew) elif fileitem.filename[-3:]=='kmz' or fileitem.filename[-3:]=='zip': kmzconv = kmzConverter.kmzConverter(); convertedfilepath = kmzconv.convertKmz(fn,diroriginal,dirnew,fileitem.filename) else: convertedfilepath = "error: filetype not suported" status = "200 OK" headers = [ ('Content-Type', 'text/json'), ('Access-Control-Allow-Origin','*'), ('Content-Length',str(len(convertedfilepath))), ('Cache-Control','no-cache')] start_response(status, headers) return convertedfilepath
os.mkdir(dirnew, 0777) #check if it's a zip file.. if inputfile[-3:]=='dae': try: center except: print 'No center defined!' print "Usage: ColladaToJson.py -i <inputfile.dae> -c lng,lat,elv\nExample: ColladaToJson -i mymodel.dae -c 7.1234,45.243,1200" sys.exit(2) convertedfilepath = convertCollada(inputfile,center,dir) print "\n Generated model: "+convertedfilepath elif inputfile[-3:]=='kmz' or inputfile[-3:]=='zip': kmzconv = kmzConverter.kmzConverter(); convertedfilepath = kmzconv.convertKmz(inputfile,diroriginal,dirnew,inputfile) print "\n Generated model zip: "+convertedfilepath else: print "filetype not suported" if convertedfilepath.find('error')>0: print convertedfilepath sys.exit(2) os.rmdir(dir) shutil.rmtree(diroriginal) shutil.rmtree(dirnew) print '\n\n Conversion Succesful\n See the converted model in new folder: '+dir except: print sys.exc_info()[1]