def upload_livery(): user = validate_request(request.headers) if not user: abort(401) if not os.path.exists(download_dir): os.mkdir(download_dir) filename = str(uuid.uuid4()) + '.zip' if not 'file' in request.files\ or not 'Name' in request.form\ or not 'Checksum' in request.form: abort(400) liv = Livery() liv.name = request.form['Name'][:50] # limited to 50 chars liv.checksum = request.form['Checksum'][:40] # limited to 40 liv.filename = filename liv.owner_id = user.id if Connector.get_livery_by_name(liv.name): abort(409) # livery duplicate liv = Connector.add_livery(liv) data = request.files['file'] data.save(download_dir + filename) return jsonify(liv.to_json())