def upload_file(): force_local = request.args.get('force_local', 'false') if 'file' in request.files: files = request.files['file'] file_uploaded = uploaded_file(files=files) if force_local == 'true': files_url = upload_local( file_uploaded, UPLOAD_PATHS['temp']['event'].format(uuid=uuid.uuid4())) else: files_url = upload( file_uploaded, UPLOAD_PATHS['temp']['event'].format(uuid=uuid.uuid4())) elif 'files[]' in request.files: files = request.files.getlist('files[]') files_uploaded = uploaded_file(files=files, multiple=True) files_url = [] for file_uploaded in files_uploaded: if force_local == 'true': files_url.append( upload_local( file_uploaded, UPLOAD_PATHS['temp']['event'].format( uuid=uuid.uuid4()))) else: files_url.append( upload( file_uploaded, UPLOAD_PATHS['temp']['event'].format( uuid=uuid.uuid4()))) else: abort(make_response(jsonify(error="Bad Request"), 400)) return jsonify({"url": files_url})
def test_upload_local(self, uploadedfile_object, settings, generated_hash, uploadlocal): expected_response = 'https://next.eventyay.com/static/media/upload_key/hash/test.pdf' uploadedfile_object.filename = 'test.pdf' with self.app.test_request_context(): actual_response = upload_local(uploadedfile_object, 'upload_key') self.assertEqual(expected_response, actual_response)
def upload_image(): image = request.json['data'] extension = '.{}'.format(image.split(";")[0].split("/")[1]) image_file = uploaded_image(extension=extension, file_content=image) force_local = request.args.get('force_local', 'false') if force_local == 'true': image_url = upload_local( image_file, UPLOAD_PATHS['temp']['image'].format(uuid=uuid.uuid4())) else: image_url = upload( image_file, UPLOAD_PATHS['temp']['image'].format(uuid=uuid.uuid4())) return jsonify({"url": image_url})