def add_directory(): """ End point to create a new directory. Name of the new directory and the directory under which it should be created must be sent via POST. Required arguments: parent, name """ if request.method != 'POST': return helpers.generate_error('2') name = request.form.get('name') parent = request.form.get('parent') if name is None: return helpers.generate_error('4', 'Name of directory missing') if parent is None: return helpers.generate_error('4', 'Name of parent missing') # Clean the names received from client name = secure_filename(name) parent = secure_filename(parent) parent = helpers.convert_to_os_slashes(parent) parent = os.path.join(CONTENT_FOLDER, parent) # Do not overwrite if directory exists if name in next(os.walk(parent))[1]: return helpers.generate_error( '3', 'Directory of that name already exists.') name = os.path.join(parent, name) os.makedirs(name) return helpers.generate_error('0', 'Directory created.')
def add_directory(): """ End point to create a new directory. Name of the new directory and the directory under which it should be created must be sent via POST. Required arguments: parent, name """ if request.method != 'POST': return helpers.generate_error('2') name = request.form.get('name') parent = request.form.get('parent') if name is None: return helpers.generate_error('4', 'Name of directory missing') if parent is None: return helpers.generate_error('4', 'Name of parent missing') # Clean the names received from client name = secure_filename(name) parent = secure_filename(parent) parent = helpers.convert_to_os_slashes(parent) parent = os.path.join(CONTENT_FOLDER, parent) # Do not overwrite if directory exists if name in next(os.walk(parent))[1]: return helpers.generate_error('3', 'Directory of that name already exists.') name = os.path.join(parent, name) os.makedirs(name) return helpers.generate_error('0', 'Directory created.')
def upload(self, theFile = None): if not theFile: return helpers.generate_error('Error processing request','Try changing the filename') size = 0 allData = '' while True and size < settings.MAX_FILE_SIZE: data = theFile.file.read(8192) if not data: break size += len(data) allData += data else: return helpers.generate_error('File too big','The max file size is 2mb') finalName = helpers.getmd5(allData) + os.path.splitext(theFile.filename)[1] storageFile = absDir + settings.UPLOADS_DIR + finalName tmpl = lookup.get_template('uploaded.html') if not os.path.exists(storageFile): output = open(storageFile, 'w') output.write(allData) output.close() import Image try: im=Image.open(storageFile) mark = Image.open(settings.WATERMARK_IMG) position = (im.size[0]-mark.size[0] - 30, im.size[1]-mark.size[1] - 30) helpers.watermark(im, mark, position, 0.9).save(absDir + settings.UPLOADS_DIR + settings.PROCESSED_PREFIX + finalName) return tmpl.render(title='Uploaded', filename=finalName) except IOError: os.remove(storageFile) return helpers.generate_error('Invalid format', 'You can only upload image files'); else: return tmpl.render(title='Uploaded', filename=finalName)
def upload_handler(): """ End point to upload files. Upload files asynchronously. """ path = request.form.get('path') or '' if request.method == 'POST': files = request.files.getlist('files') filenames = [_ for _ in os.listdir(os.path.join(CONTENT_FOLDER, path ))] for file in files: if file and helpers.is_allowed_file(file.filename): filename = helpers.get_name(file.filename, filenames) file.save(os.path.join(app.config['UPLOAD_FOLDER'], path, filename)) return helpers.generate_error('0', 'Upload successful.')
def upload_handler(): """ End point to upload files. Upload files asynchronously. """ path = request.form.get('path') or '' if request.method == 'POST': files = request.files.getlist('files') filenames = [_ for _ in os.listdir(os.path.join(CONTENT_FOLDER, path))] for file in files: if file and helpers.is_allowed_file(file.filename): filename = helpers.get_name(file.filename, filenames) file.save( os.path.join(app.config['UPLOAD_FOLDER'], path, filename)) return helpers.generate_error('0', 'Upload successful.')
MODEL = "friend" METHOD = "GET" USER = "******" RDB_CONN = rethink.connect(host="localhost", db="cactus") DATA = list(rethink.table(MODEL + "s").run(RDB_CONN)) if DATA == []: print("ERRORS AND DOOM!") error_packet, errors = generate_error( uid=uuid4(), status="404", code="405", title="Table does not have any entries", detail="Friends table does not have any entries", source={"pointer": PATH}) if errors is not None: print("Errors happened when making the error packet!") print(errors) else: print({"errors": [error_packet]}) POST_IGNORE = [] # Remove the ignored keys for name, obj in inspect.getmembers(models): if name.lower() == MODEL: